| | |
| | | <template> |
| | | <div> |
| | | <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin-top: 10px"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="tableList" |
| | | :inline="true" |
| | | label-width="76px" |
| | | style="margin-top: 10px" |
| | | > |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input v-model="queryParams.name" style="width: 116px" placeholder="请输入姓名" clearable |
| | | @keyup.enter.native="handleQuery"></el-input> |
| | | <el-input |
| | | v-model="queryParams.name" |
| | | style="width: 116px" |
| | | placeholder="请输入姓名" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="体检号" prop="tjNumber"> |
| | | <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 240px" placeholder="请输入体检号"></el-input> |
| | | <el-input |
| | | ref="inputName" |
| | | v-model="queryParams.tjNumber" |
| | | style="width: 240px" |
| | | placeholder="请输入体检号" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button size="mini" type="primary" @click="submitForm">搜索</el-button> |
| | | <el-button size="mini" type="primary" @click="submitForm" |
| | | >搜索</el-button |
| | | > |
| | | <el-button size="mini" @click="resetQuery">重置</el-button> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div style="display: flex;"> |
| | | <el-radio-group v-model="tjStatus" @input="radioChange" style="margin-left: 30px"> |
| | | <div style="display: flex"> |
| | | <el-radio-group |
| | | v-model="tjStatus" |
| | | @input="radioChange" |
| | | style="margin-left: 30px" |
| | | > |
| | | <el-radio-button label="0">未检</el-radio-button> |
| | | <el-radio-button label="1">已检</el-radio-button> |
| | | </el-radio-group> |
| | | </div> |
| | | |
| | | <template> |
| | | <el-table :data="tableList" v-loading="loading" ref="table" height="536px" style="margin: 20px; width: 98%" border |
| | | :cell-class-name="myclass"> |
| | | <el-table |
| | | :data="tableList" |
| | | v-loading="loading" |
| | | ref="table" |
| | | height="536px" |
| | | style="margin: 20px; width: 98%" |
| | | border |
| | | :cell-class-name="myclass" |
| | | > |
| | | <!-- <template slot="empty">数据正在加载中</template> --> |
| | | <el-table-column label="体检号" align="center" prop="tjNumber" width="160px" /> |
| | | <el-table-column label="姓名" align="center" prop="cusName" width="90px" /> |
| | | <el-table-column |
| | | label="体检号" |
| | | align="center" |
| | | prop="tjNumber" |
| | | width="160px" |
| | | /> |
| | | <el-table-column |
| | | label="姓名" |
| | | align="center" |
| | | prop="cusName" |
| | | width="90px" |
| | | /> |
| | | <el-table-column label="性别" align="center" prop="cusSex" width="60px"> |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.cusSex == '0'">男</span> |
| | |
| | | <span v-if="scope.row.cusSex == '9'">未说明性别</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="出生日期" align="center" prop="cusBrithday" width="100px" /> |
| | | <el-table-column label="电话" align="center" prop="cusPhone" width="100px" /> |
| | | <el-table-column label="体检类型" align="center" prop="tjType" width="80px" /> |
| | | <el-table-column label="登记时间" align="center" prop="tjTime" width="160px"> |
| | | |
| | | <el-table-column |
| | | label="出生日期" |
| | | align="center" |
| | | prop="cusBrithday" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | label="电话" |
| | | align="center" |
| | | prop="cusPhone" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | label="体检类型" |
| | | align="center" |
| | | prop="tjType" |
| | | width="80px" |
| | | /> |
| | | <el-table-column |
| | | label="登记时间" |
| | | align="center" |
| | | prop="tjTime" |
| | | width="160px" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column label="体检时间" align="center" prop="tjTime" width="100px"> |
| | | <el-table-column |
| | | label="体检时间" |
| | | align="center" |
| | | prop="tjTime" |
| | | width="100px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span>{{ parseTime(scope.row.tjTime, '{y}-{m}-{d}') }}</span> |
| | | <span>{{ parseTime(scope.row.tjTime, "{y}-{m}-{d}") }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="未检项" prop="notCheckeds" :show-overflow-tooltip="true" /> |
| | | <el-table-column |
| | | label="未检项" |
| | | prop="notCheckeds" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column label="操作" align="center" width="130px"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="primary" icon="el-icon-first-aid-kit" size="mini" @click="Changeapplyfor(scope.row)" |
| | | title="会诊申请" v-if="tjStatus == '1'"></el-button> |
| | | <el-button type="primary" icon="el-icon-share" size="mini" @click="handleClick(scope.row)" |
| | | title="详情"></el-button> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-first-aid-kit" |
| | | size="mini" |
| | | @click="Changeapplyfor(scope.row)" |
| | | title="会诊申请" |
| | | v-if="tjStatus == '1'" |
| | | ></el-button> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-share" |
| | | size="mini" |
| | | @click="handleClick(scope.row)" |
| | | title="详情" |
| | | ></el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <div class="pag"> |
| | | <div class="pag1"> |
| | | <pagination v-show="total > 0" :total="total" :page.sync="queryParams.page" :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" /> |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :page.sync="queryParams.page" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body> |
| | | <el-dialog |
| | | :title="title" |
| | | :visible.sync="open" |
| | | width="1000px" |
| | | append-to-body |
| | | > |
| | | <el-row> |
| | | <el-col :span="9" v-if="hzlogList.length >= 1"> |
| | | <h3>会诊申请记录</h3> |
| | | <el-table :data="hzlogList" style="width: 100%" border> |
| | | <el-table-column label="申请人" align="center" prop="hzDoctorName" width="100px" /> |
| | | <el-table-column |
| | | label="申请人" |
| | | align="center" |
| | | prop="hzDoctorName" |
| | | width="100px" |
| | | /> |
| | | <el-table-column label="科室" align="center" prop="hzDeptName" /> |
| | | <el-table-column label="操作" align="center" width="150px"> |
| | | <template slot-scope="scope"> |
| | | <el-button type="primary" size="mini" @click="hadleedit(scope.row)" |
| | | v-if="scope.row.hzReplyLogsList.length == 0 && scope.row.hzDoctorId == info.userId">修改</el-button> |
| | | <el-button type="primary" size="mini" |
| | | v-if="scope.row.hzReplyLogsList.length == 0 && scope.row.hzDoctorId == info.userId" |
| | | @click="handledele(scope.row)">删除</el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | @click="hadleedit(scope.row)" |
| | | v-if=" |
| | | scope.row.hzReplyLogsList.length == 0 && |
| | | scope.row.hzDoctorId == info.userId |
| | | " |
| | | >修改</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | v-if=" |
| | | scope.row.hzReplyLogsList.length == 0 && |
| | | scope.row.hzDoctorId == info.userId |
| | | " |
| | | @click="handledele(scope.row)" |
| | | >删除</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-col> |
| | | <el-col :span="14"> |
| | | <h3 style="text-align: center;">会诊记录申请</h3> |
| | | <h3 style="text-align: center">会诊记录申请</h3> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="80px"> |
| | | <el-form-item label="姓名" prop="cusName"> |
| | | <el-input v-model="form.cusName" placeholder="请输入姓名" disabled /> |
| | | <el-input |
| | | v-model="form.cusName" |
| | | placeholder="请输入姓名" |
| | | disabled |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="体检号" prop="tjNumber"> |
| | | <el-input v-model="form.tjNumber" placeholder="请输入体检号" disabled /> |
| | | <el-input |
| | | v-model="form.tjNumber" |
| | | placeholder="请输入体检号" |
| | | disabled |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="会诊科室" prop="hzType"> |
| | | <el-radio-group v-model="form.hzType"> |
| | |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="选择科室" v-if="form.hzType == '1'"> |
| | | <el-select v-model="form.hzDeptId" multiple filterable style="width: 100%"> |
| | | <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName" |
| | | :value="item.deptId"></el-option> |
| | | <el-select |
| | | v-model="form.hzDeptId" |
| | | multiple |
| | | filterable |
| | | style="width: 100%" |
| | | > |
| | | <el-option |
| | | v-for="item in deptList" |
| | | :key="item.deptId" |
| | | :label="item.deptName" |
| | | :value="item.deptId" |
| | | ></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="申请人" prop="hzDoctorId"> |
| | | <el-select v-model="form.hzDoctorId" placeholder="请选择" style="width: 100%" filterable> |
| | | <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId"> |
| | | <el-select |
| | | v-model="form.hzDoctorId" |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | filterable |
| | | > |
| | | <el-option |
| | | v-for="item in userList" |
| | | :key="item.userId" |
| | | :label="item.nickName" |
| | | :value="item.userId" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <el-dialog :title="title" :visible.sync="foropen" width="1000px" append-to-body> |
| | | <el-dialog |
| | | :title="title" |
| | | :visible.sync="foropen" |
| | | width="1000px" |
| | | append-to-body |
| | | > |
| | | <el-row> |
| | | <el-col :span="8" v-if="hasdeptList.length >= 1"> |
| | | <h3 style="text-align: center;">会诊申请记录</h3> |
| | | <el-table :data="hasdeptList" style="width: 100%" border ref="tab" @selection-change="handleSelectionChange"> |
| | | <h3 style="text-align: center">会诊申请记录</h3> |
| | | <el-table |
| | | :data="hasdeptList" |
| | | style="width: 100%" |
| | | border |
| | | ref="tab" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="50" align="center" /> |
| | | <el-table-column label="申请人" align="center" prop="hzDoctorName" width="100px" /> |
| | | <el-table-column label="科室" align="center" prop="hzDeptName" width="260px" /> |
| | | <el-table-column |
| | | label="申请人" |
| | | align="center" |
| | | prop="hzDoctorName" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | label="科室" |
| | | align="center" |
| | | prop="hzDeptName" |
| | | width="260px" |
| | | /> |
| | | </el-table> |
| | | </el-col> |
| | | <el-col :span="16" style="padding: 0 10px;"> |
| | | <h3 style="text-align: center;">会诊意见</h3> |
| | | <div v-if="hzReplyLogsList.length >= 1" style="margin-bottom: 10px;"> |
| | | <div v-for="(item, index) in hzReplyLogsList" :key="index" |
| | | style="padding-bottom:5px;border-bottom: 1px solid black;"> |
| | | <el-col :span="16" style="padding: 0 10px"> |
| | | <h3 style="text-align: center">会诊意见</h3> |
| | | <div v-if="hzReplyLogsList.length >= 1" style="margin-bottom: 10px"> |
| | | <div |
| | | v-for="(item, index) in hzReplyLogsList" |
| | | :key="index" |
| | | style="padding-bottom: 5px; border-bottom: 1px solid black" |
| | | > |
| | | <!-- <div>会诊科室:{{ item.replyDeptName }}</div> --> |
| | | <div> 医生:{{ item.hzDoctorName }} </div> |
| | | <div>医生:{{ item.hzDoctorName }}</div> |
| | | <div>回复:{{ item.replyContent }}</div> |
| | | </div> |
| | | </div> |
| | | <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="textarea"> |
| | | <el-input |
| | | type="textarea" |
| | | :rows="2" |
| | | placeholder="请输入内容" |
| | | v-model="textarea" |
| | | > |
| | | </el-input> |
| | | <div style="padding: 10px 10px;"> |
| | | <div style="padding: 10px 10px"> |
| | | <el-button type="primary" @click="submitFormreply">回复</el-button> |
| | | </div> |
| | | </el-col> |
| | |
| | | </div> --> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="填写是否重大阳性" :visible.sync="checkval" width="800px" append-to-body> |
| | | <el-dialog |
| | | title="填写是否重大阳性" |
| | | :visible.sync="checkval" |
| | | width="800px" |
| | | append-to-body |
| | | > |
| | | <el-form ref="form" :model="formIn" label-width="100px"> |
| | | <el-form-item label="姓名"> |
| | | <el-input v-model="formIn.cusName" disabled></el-input> |
| | |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="等级"> |
| | | <el-select v-model="formIn.level" placeholder="请选择" filterable style="width: 100%;"> |
| | | <el-option v-for="item in dict.type.lj_positive" :key="item.value" :label="item.label" :value="item.value"> |
| | | <el-select |
| | | v-model="formIn.level" |
| | | placeholder="请选择" |
| | | filterable |
| | | style="width: 100%" |
| | | > |
| | | <el-option |
| | | v-for="item in dict.type.lj_positive" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | |
| | | <el-dialog title="PDF 预览" :visible.sync="dialogVisible" :close-on-click-modal="false"> |
| | | <el-dialog |
| | | title="PDF 预览" |
| | | :visible.sync="dialogVisible" |
| | | :close-on-click-modal="false" |
| | | > |
| | | <div class="main"> |
| | | <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe> |
| | | <iframe |
| | | id="printIframe" |
| | | :src="url" |
| | | frameborder="0" |
| | | style="width: 100%; height: 100%" |
| | | ></iframe> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 点击右边弹出层 --> |
| | | <el-drawer :visible.sync="drawer" :with-header="false" size="70%" :before-close="handleClose"> |
| | | <el-drawer |
| | | :visible.sync="drawer" |
| | | :with-header="false" |
| | | size="70%" |
| | | :before-close="handleClose" |
| | | > |
| | | <div style="font-size: 14px"> |
| | | <table style=" |
| | | <table |
| | | style=" |
| | | width: 96%; |
| | | height:70px |
| | | margin: 10px 10px; |
| | |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | font-size:16px |
| | | " cellspacing="4"> |
| | | " |
| | | cellspacing="4" |
| | | > |
| | | <caption style="background-color: #f8f8f9; font-size: 18px"> |
| | | 填写{{ |
| | | tableAll.cusName |
| | | }}的体检资料 |
| | | </caption> |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | align="right" |
| | | > |
| | | 姓名: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | |
| | | <span v-if="scope.row.cusSex == '9'">未说明性别</span> |
| | | </template> |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | align="right" |
| | | > |
| | | 性别: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | |
| | | </td> |
| | | </tr> |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | align="right" |
| | | > |
| | | 体检单号: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ tableAll.tjNumber }} |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | align="right" |
| | | > |
| | | 体检时间: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | |
| | | </tr> |
| | | </table> |
| | | </div> |
| | | <div style="display: flex;"> |
| | | <div style="margin: 10px 10px;" v-if="hasdeptList.length >= 1"> |
| | | <el-button type="primary" size="mini" @click="Changeapply()">会诊申请</el-button> |
| | | <div style="display: flex"> |
| | | <div style="margin: 10px 10px" v-if="hasdeptList.length >= 1"> |
| | | <el-button type="primary" size="mini" @click="Changeapply()" |
| | | >会诊申请</el-button |
| | | > |
| | | </div> |
| | | <div style="margin: 10px 10px;"> |
| | | <el-button type="primary" size="mini" @click="historicalreport()">历史报告</el-button> |
| | | <div style="margin: 10px 10px"> |
| | | <el-button type="primary" size="mini" @click="historicalreport()" |
| | | >历史报告</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <el-col :span="18"> |
| | | <template> |
| | | <div style="margin-left: 10px"> |
| | | <el-radio-group v-model="radio" v-for="(item, index) in Parent" :key="index" |
| | | @input="radioChange1(item.proId, item)"> |
| | | <el-radio-group |
| | | v-model="radio" |
| | | v-for="(item, index) in Parent" |
| | | :key="index" |
| | | @input="radioChange1(item.proId, item)" |
| | | > |
| | | <el-radio-button :label="item.proId">{{ |
| | | item.proName |
| | | }}</el-radio-button> |
| | | </el-radio-group> |
| | | </div> |
| | | </template> |
| | | <el-table v-loading="loading" :data="proParentList.sons" border height="460px" |
| | | style="width: 96%; margin: 10px 10px"> |
| | | <el-table-column prop="project.proName" label="检测项目" width="150"> |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="proParentList.sons" |
| | | border |
| | | height="460px" |
| | | style="width: 96%; margin: 10px 10px" |
| | | > |
| | | <el-table-column |
| | | prop="project.proName" |
| | | label="检测项目" |
| | | width="150" |
| | | > |
| | | <!-- <template slot-scope="scope"> |
| | | {{ scope.row.project.proName }} |
| | | </template> --> |
| | | </el-table-column> |
| | | <el-table-column prop="proResult" label="检测结果" width="280"> |
| | | <el-table-column prop="proResult" label="检测结果" width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-input size="mini" v-model="scope.row.proResult" autocomplete="off" placeholder="请输入检测结果" |
| | | @blur="handleInputConfirm(scope.row)" @input="vale" @focus="handleInConfirm(scope.row)"></el-input> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | size="mini" |
| | | v-model="scope.row.proResult" |
| | | autocomplete="off" |
| | | placeholder="请输入检测结果" |
| | | @blur="handleInputConfirm(scope.row)" |
| | | @input="vale" |
| | | @focus="handleInConfirm(scope.row)" |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则" width="55"> |
| | | <template slot-scope="scope"> |
| | | <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button> |
| | | <el-button class="blue-button" @click="handleguize(scope.row)" |
| | | >...</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="project.proMetering" label="单位"> |
| | |
| | | </el-table-column> |
| | | <el-table-column prop="project.proScope" label="参考范围"> |
| | | </el-table-column> |
| | | <el-table-column prop="conclusion" label="结果结论" width="280"> |
| | | <el-table-column prop="conclusion" label="结果结论" width="200"> |
| | | <template slot-scope="scope"> |
| | | <el-input size="mini" v-model="scope.row.conclusion" autocomplete="off" placeholder="请输入检测结果" |
| | | disabled></el-input> |
| | | <el-input |
| | | size="mini" |
| | | type="textarea" |
| | | autosize |
| | | v-model="scope.row.conclusion" |
| | | autocomplete="off" |
| | | placeholder="请输入检测结果" |
| | | disabled |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="exceptionDesc" label="是否异常" width="80px" align="center"> |
| | | <el-table-column |
| | | prop="exceptionDesc" |
| | | label="是否异常" |
| | | width="80px" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.exceptionDesc"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="isReturn" label="是否复诊" width="80px" align="center"> |
| | | <el-table-column |
| | | prop="isReturn" |
| | | label="是否复诊" |
| | | width="80px" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.isReturn"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="project.resultType" label="结果类型"> |
| | | <template slot-scope="scope"> |
| | | <dict-tag :options="dict.type.tj_result_type" :value="scope.row.project.resultType" /> |
| | | <dict-tag |
| | | :options="dict.type.tj_result_type" |
| | | :value="scope.row.project.resultType" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="isPositive" label="重大阳性"> |
| | | <template slot-scope="scope"> |
| | | <el-switch v-model="scope.row.isPositive" active-value="1" inactive-value="0" |
| | | @change="checkboxchange(scope.row)"></el-switch> |
| | | |
| | | <el-switch |
| | | v-model="scope.row.isPositive" |
| | | active-value="1" |
| | | inactive-value="0" |
| | | @change="checkboxchange(scope.row)" |
| | | ></el-switch> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <div style="font-size: 14px; overflow-y: auto; height: 286px"> |
| | | <table style=" |
| | | width: 96%; |
| | | margin: 4px 10px; |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " cellspacing="4"> |
| | | <table |
| | | style=" |
| | | width: 96%; |
| | | margin: 4px 10px; |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | cellspacing="4" |
| | | > |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | > |
| | | 病种选择: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <el-select v-model="value" multiple placeholder="请选择" style="width: 100%; height: 45px" |
| | | v-if="deptAdviceList" @change="sel" filterable> |
| | | <el-option v-for="item in deptAdviceList" :key="item.id" :label="item.title" :value="item.id"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | > |
| | | <el-select |
| | | v-model="value" |
| | | multiple |
| | | placeholder="请选择" |
| | | style="width: 100%; height: 45px" |
| | | v-if="deptAdviceList" |
| | | @change="sel" |
| | | filterable |
| | | > |
| | | <el-option |
| | | v-for="item in deptAdviceList" |
| | | :key="item.id" |
| | | :label="item.title" |
| | | :value="item.id" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | > |
| | | 主检医师: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <el-select v-model="doctorName" placeholder="请选择" style="width: 100%" v-if="deptAdviceList" |
| | | @change="selName" filterable> |
| | | <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | > |
| | | <el-select |
| | | v-model="doctorName" |
| | | placeholder="请选择" |
| | | style="width: 100%" |
| | | v-if="deptAdviceList" |
| | | @change="selName" |
| | | filterable |
| | | > |
| | | <el-option |
| | | v-for="item in userList" |
| | | :key="item.userId" |
| | | :label="item.nickName" |
| | | :value="item.userId" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | | </tr> |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | > |
| | | 建议: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse" colspan="2"> |
| | | <el-input type="textarea" placeholder="请输入内容" v-model="proParentList.remark" rows="7"> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | colspan="2" |
| | | > |
| | | <el-input |
| | | type="textarea" |
| | | placeholder="请输入内容" |
| | | v-model="proParentList.remark" |
| | | rows="7" |
| | | > |
| | | </el-input> |
| | | </td> |
| | | </tr> |
| | |
| | | v-hasPermi="['system:notice:add']" |
| | | v-show="tjStatus == '1'" |
| | | >会诊申请</el-button> --> |
| | | <el-button type="primary" @click="determine" v-show="tjStatus == '0'">提 交</el-button> |
| | | <el-button |
| | | type="primary" |
| | | @click="determine" |
| | | v-show="tjStatus == '0'" |
| | | >提 交</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="6"> |
| | | <Historicalreport :reportHistorydata="reportHistorydata"></Historicalreport> |
| | | <Historicalreport |
| | | :reportHistorydata="reportHistorydata" |
| | | ></Historicalreport> |
| | | </el-col> |
| | | </el-row> |
| | | |
| | |
| | | getParentList, |
| | | getParentId, |
| | | getDeptAdvice, |
| | | reportHistory |
| | | reportHistory, |
| | | } from "@/api/doctor/check"; |
| | | import { |
| | | addBigPositive |
| | | } from "@/api/doctor/bigPositive"; |
| | | import { |
| | | addReplylog, hzHasDept |
| | | } from "@/api/hosp/replylog"; |
| | | import { addBigPositive } from "@/api/doctor/bigPositive"; |
| | | import { addReplylog, hzHasDept } from "@/api/hosp/replylog"; |
| | | import { listHzlog, addHzlog, delHzlog, updateHzlog } from "@/api/hosp/hzlog"; |
| | | import { listUser } from "@/api/system/user"; |
| | | import { getChildList } from "@/api/system/dept"; |
| | |
| | | info: {}, |
| | | allList: [], |
| | | autorule: [], |
| | | vals:{}, |
| | | vals: {}, |
| | | form: { |
| | | createTime: new Date() |
| | | createTime: new Date(), |
| | | }, |
| | | // 医生 |
| | | doctorName: "", |
| | |
| | | name: null, |
| | | }, |
| | | rules: { |
| | | hzType: [ |
| | | { required: true, message: '', trigger: 'change' } |
| | | ] |
| | | } |
| | | hzType: [{ required: true, message: "", trigger: "change" }], |
| | | }, |
| | | }; |
| | | }, |
| | | |
| | |
| | | } |
| | | ); |
| | | getInfo().then((response) => { |
| | | this.info = response.user |
| | | this.info = response.user; |
| | | this.deptId = response.user.deptId; |
| | | this.userId = response.user.userId; |
| | | this.nickName = response.user.nickName; |
| | |
| | | |
| | | myclass(row, column, rowIndex, columnIndex) { |
| | | if (row.row.isPositive == 1) { |
| | | return "setclass" |
| | | return "setclass"; |
| | | } |
| | | }, |
| | | // 小结获取备注 |
| | |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | keyNum: this.proResult |
| | | } |
| | | AutoGetRule(data).then(res => { |
| | | this.focusrow.conclusion = "" |
| | | keyNum: this.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = this.autorule; |
| | | this.autorule.forEach(item => { |
| | | this.autorule.forEach((item) => { |
| | | if (this.focusrow.conclusion) { |
| | | this.focusrow.conclusion += item.bingzhong; |
| | | } else { |
| | | this.focusrow.conclusion = item.bingzhong; |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | }) |
| | | }); |
| | | } else { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | keyWord: this.proResult |
| | | } |
| | | AutoGetRule(data).then(res => { |
| | | this.focusrow.conclusion = "" |
| | | keyWord: this.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = this.autorule; |
| | | this.autorule.forEach(item => { |
| | | this.autorule.forEach((item) => { |
| | | if (this.focusrow.conclusion) { |
| | | this.focusrow.conclusion += item.bingzhong; |
| | | } else { |
| | | this.focusrow.conclusion = item.bingzhong; |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | |
| | | // this.$refs.aaa.open = true; |
| | | // this.$refs.aaa.getList(); |
| | |
| | | this.tableList = []; |
| | | } |
| | | } |
| | | |
| | | }); |
| | | }, |
| | | |
| | |
| | | this.tableList = []; |
| | | } |
| | | } |
| | | |
| | | }); |
| | | }, |
| | | |
| | |
| | | |
| | | Changeapplyfor(row) { |
| | | this.open = true; |
| | | this.form = row |
| | | this.form = row; |
| | | this.form.hzDoctorId = this.info.userId; |
| | | getChildList().then(res => { |
| | | getChildList().then((res) => { |
| | | this.deptList = res.data; |
| | | }) |
| | | this.Hzlog(this.form.tjNumber) |
| | | }); |
| | | this.Hzlog(this.form.tjNumber); |
| | | }, |
| | | |
| | | checkboxchange(val) { |
| | | this.vals = val |
| | | this.project = val.project |
| | | this.formIn.tjNumber = this.tableAll.tjNumber |
| | | this.formIn.cusId = this.tableAll.cusId |
| | | this.formIn.cusName = this.tableAll.cusName |
| | | this.formIn.proId = this.project.proId |
| | | this.formIn.proName = this.project.proName |
| | | this.formIn.orderId = val.orderId |
| | | this.Parent.forEach(item => { |
| | | this.vals = val; |
| | | this.project = val.project; |
| | | this.formIn.tjNumber = this.tableAll.tjNumber; |
| | | this.formIn.cusId = this.tableAll.cusId; |
| | | this.formIn.cusName = this.tableAll.cusName; |
| | | this.formIn.proId = this.project.proId; |
| | | this.formIn.proName = this.project.proName; |
| | | this.formIn.orderId = val.orderId; |
| | | this.Parent.forEach((item) => { |
| | | if (this.radio == item.proId) { |
| | | this.Parentcheck.proName = item.proName |
| | | this.formIn.proParentId = item.proId |
| | | this.Parentcheck.proName = item.proName; |
| | | this.formIn.proParentId = item.proId; |
| | | } |
| | | }) |
| | | }); |
| | | if (val.isPositive == "1") { |
| | | this.checkval = true; |
| | | this.formIn.flag = "0" |
| | | this.formIn.level="" |
| | | this.formIn.flag = "0"; |
| | | this.formIn.level = ""; |
| | | } else { |
| | | this.formIn.flag = "0" |
| | | addBigPositive(this.formIn).then(res => { |
| | | this.formIn.flag = "0"; |
| | | addBigPositive(this.formIn).then((res) => { |
| | | this.$modal.msgSuccess("删除成功"); |
| | | this.getParentIdsss() |
| | | }) |
| | | this.getParentIdsss(); |
| | | }); |
| | | } |
| | | }, |
| | | submitcheckval() { |
| | | addBigPositive(this.formIn).then(res => { |
| | | addBigPositive(this.formIn).then((res) => { |
| | | this.$modal.msgSuccess("新增成功"); |
| | | this.getParentIdsss() |
| | | this.getParentIdsss(); |
| | | this.checkval = false; |
| | | }) |
| | | }); |
| | | }, |
| | | cancell() { |
| | | this.checkval = false; |
| | | this.vals.isPositive = "0" |
| | | this.vals.isPositive = "0"; |
| | | }, |
| | | |
| | | Hzlog(val) { |
| | | let data = { |
| | | tjNumber: val |
| | | } |
| | | listHzlog(data).then(response => { |
| | | tjNumber: val, |
| | | }; |
| | | listHzlog(data).then((response) => { |
| | | this.hzlogList = response.rows; |
| | | this.hzlogList.forEach(item => { |
| | | item.hzDeptName = "" |
| | | this.hzlogList.forEach((item) => { |
| | | item.hzDeptName = ""; |
| | | if (item.hzType == "0") { |
| | | item.hzDeptName = "全院会诊" |
| | | item.hzDeptName = "全院会诊"; |
| | | } else { |
| | | item.hzDeptIdList.forEach(item1 => { |
| | | this.deptList.forEach(item2 => { |
| | | item.hzDeptIdList.forEach((item1) => { |
| | | this.deptList.forEach((item2) => { |
| | | if (item1 == item2.deptId) { |
| | | item.hzDeptName += item2.deptName + "," |
| | | item.hzDeptName += item2.deptName + ","; |
| | | } |
| | | }) |
| | | }) |
| | | }); |
| | | }); |
| | | } |
| | | }) |
| | | }); |
| | | }); |
| | | }, |
| | | handledele(row) { |
| | | this.id = [] |
| | | this.id.push(row.id) |
| | | delHzlog(this.id).then(res => { |
| | | this.id = []; |
| | | this.id.push(row.id); |
| | | delHzlog(this.id).then((res) => { |
| | | this.$modal.msgSuccess("删除成功"); |
| | | this.Hzlog(this.form.tjNumber) |
| | | }) |
| | | this.Hzlog(this.form.tjNumber); |
| | | }); |
| | | }, |
| | | |
| | | hadleedit(row) { |
| | | this.form.hzType = row.hzType |
| | | this.form.id = row.id |
| | | this.form.hzType = row.hzType; |
| | | this.form.id = row.id; |
| | | }, |
| | | |
| | | submitFormapply() { |
| | | console.log(this.form) |
| | | let data = {} |
| | | this.userList.forEach(item1 => { |
| | | console.log(this.form); |
| | | let data = {}; |
| | | this.userList.forEach((item1) => { |
| | | if (this.form.hzDoctorId == item1.userId) { |
| | | this.form.hzDoctorName = item1.nickName |
| | | this.form.hzDoctorName = item1.nickName; |
| | | } |
| | | }) |
| | | }); |
| | | if (this.form.hzType != undefined) { |
| | | if (this.form.hzDeptId && this.form.id) { |
| | | // let hzDeptId = "" |
| | |
| | | hzType: this.form.hzType, |
| | | orderId: this.form.orderId, |
| | | hzDoctorName: this.form.hzDoctorName, |
| | | id: this.form.id |
| | | } |
| | | id: this.form.id, |
| | | }; |
| | | } else { |
| | | data = { |
| | | tjNumber: this.form.tjNumber, |
| | |
| | | hzDoctorId: this.form.hzDoctorId, |
| | | hzType: this.form.hzType, |
| | | orderId: this.form.orderId, |
| | | hzDoctorName: this.form.hzDoctorName |
| | | } |
| | | hzDoctorName: this.form.hzDoctorName, |
| | | }; |
| | | } |
| | | this.$refs["form"].validate((valid) => { |
| | | if (valid) { |
| | | if (this.form.id != null) { |
| | | updateHzlog(data).then(res => { |
| | | updateHzlog(data).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("修改成功"); |
| | | this.form = {} |
| | | this.Hzlog() |
| | | this.radioChange(1) |
| | | this.form = {}; |
| | | this.Hzlog(); |
| | | this.radioChange(1); |
| | | } |
| | | }) |
| | | }); |
| | | } else { |
| | | addHzlog(data).then(res => { |
| | | addHzlog(data).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("申请成功"); |
| | | this.form = {} |
| | | this.Hzlog() |
| | | this.radioChange(1) |
| | | this.form = {}; |
| | | this.Hzlog(); |
| | | this.radioChange(1); |
| | | } |
| | | }) |
| | | }); |
| | | this.open = false; |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | } else { |
| | | this.$modal.msgError("请选择会诊科室"); |
| | | } |
| | | |
| | | }, |
| | | cancel() { |
| | | this.open = false; |
| | | this.foropen = false; |
| | | |
| | | }, |
| | | |
| | | Changeapply() { |
| | | this.foropen = true |
| | | this.Hzlog(this.tableAll.tjNumber) |
| | | this.foropen = true; |
| | | this.Hzlog(this.tableAll.tjNumber); |
| | | }, |
| | | historicalreport() { |
| | | this.loading = true |
| | | this.loading = true; |
| | | let data = { |
| | | cusId: this.tableAll.cusId |
| | | } |
| | | reportHistory(data).then(res => { |
| | | this.loading = false |
| | | cusId: this.tableAll.cusId, |
| | | }; |
| | | reportHistory(data).then((res) => { |
| | | this.loading = false; |
| | | if (res.data[0] != null) { |
| | | this.reportHistorydata = res.data |
| | | this.reportHistorydata = res.data; |
| | | } |
| | | }) |
| | | }); |
| | | }, |
| | | |
| | | handlecan(row) { |
| | | this.dialogVisible = true |
| | | this.dialogVisible = true; |
| | | const tjNumber = row.tjNumber; |
| | | const flag = true; |
| | | getPdf(tjNumber, flag).then((response) => { |
| | | if (response.size === 0) { |
| | | const loading = this.$loading({ |
| | | lock: true, |
| | | text: 'Loading', |
| | | spinner: 'el-icon-loading', |
| | | background: 'rgba(0, 0, 0, 0.7)' |
| | | text: "Loading", |
| | | spinner: "el-icon-loading", |
| | | background: "rgba(0, 0, 0, 0.7)", |
| | | }); |
| | | setTimeout(() => { |
| | | loading.close(); |
| | |
| | | type: "warning ", |
| | | message: "报告正在生成,请两分钟后预览!!", |
| | | }); |
| | | |
| | | } else { |
| | | this.dialogVisible = true; |
| | | |
| | |
| | | hzType: this.allList[0].hzType, |
| | | replyDoctorName: this.nickName, |
| | | replyDeptId: this.deptId, |
| | | replyDoctorId: this.userId |
| | | |
| | | } |
| | | addReplylog(data).then(res => { |
| | | replyDoctorId: this.userId, |
| | | }; |
| | | addReplylog(data).then((res) => { |
| | | this.$modal.msgSuccess("回复成功"); |
| | | this.getDept(this.allList[0].tjNumber) |
| | | }) |
| | | this.getDept(this.allList[0].tjNumber); |
| | | }); |
| | | }, |
| | | |
| | | // 多选框选中数据 |
| | |
| | | }); |
| | | // this.allList = [] |
| | | // if(newRows[0].hzReplyLogsList){ |
| | | // this.hzReplyLogsList = newRows[0].hzReplyLogsList |
| | | // this.hzReplyLogsList = newRows[0].hzReplyLogsList |
| | | // } |
| | | // console.log(this.hzReplyLogsList) |
| | | // this.allList = newRows |
| | | } else { |
| | | this.allList = [] |
| | | this.allList = []; |
| | | if (selection[0]) { |
| | | if (selection[0].hzReplyLogsList) { |
| | | this.hzReplyLogsList = selection[0].hzReplyLogsList |
| | | this.hzReplyLogsList = selection[0].hzReplyLogsList; |
| | | } |
| | | } else { |
| | | this.hzReplyLogsList = [] |
| | | this.hzReplyLogsList = []; |
| | | } |
| | | this.allList = selection |
| | | this.allList = selection; |
| | | } |
| | | }, |
| | | |
| | | // 点击详情 |
| | | handleClick(row) { |
| | | this.getDept(row.tjNumber) |
| | | this.getDept(row.tjNumber); |
| | | this.loading = true; |
| | | this.drawer = true; |
| | | this.tableAll = row; |
| | |
| | | this.radio = item.proId; |
| | | this.proId = item.proId; |
| | | // this.radioChange1(item.proId, item); |
| | | this.getParentIdsss() |
| | | this.getParentIdsss(); |
| | | |
| | | getDeptAdvice(this.proId).then((response) => { |
| | | this.deptAdviceList = response.data; |
| | |
| | | this.Parent = []; |
| | | this.$modal.msgError("该科室下无项目!"); |
| | | } |
| | | |
| | | }); |
| | | getDeptAdvice().then((response) => { |
| | | this.deptAdviceList = response.data; |
| | |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2) |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | |
| | | getDept(val) { |
| | | let data = { |
| | | tjNumber: val, |
| | | deptId: this.deptId |
| | | } |
| | | hzHasDept(data).then(res => { |
| | | deptId: this.deptId, |
| | | }; |
| | | hzHasDept(data).then((res) => { |
| | | if (res.data) { |
| | | this.hasdeptList = res.data |
| | | this.hasdeptList.forEach(item => { |
| | | item.hzDeptName = "" |
| | | this.hasdeptList = res.data; |
| | | this.hasdeptList.forEach((item) => { |
| | | item.hzDeptName = ""; |
| | | if (item.hzType == "0") { |
| | | item.hzDeptName = "全院会诊" |
| | | item.hzDeptName = "全院会诊"; |
| | | } else { |
| | | item.hzDeptIdList.forEach(item1 => { |
| | | this.deptList.forEach(item2 => { |
| | | item.hzDeptIdList.forEach((item1) => { |
| | | this.deptList.forEach((item2) => { |
| | | if (item1 == item2.deptId) { |
| | | item.hzDeptName += item2.deptName + "," |
| | | item.hzDeptName += item2.deptName + ","; |
| | | } |
| | | }) |
| | | }) |
| | | }); |
| | | }); |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | |
| | | }) |
| | | }); |
| | | }, |
| | | |
| | | // 按钮点击事件 |
| | | radioChange1(proParentId, item) { |
| | | this.Parentcheck = item |
| | | this.Parentcheck = item; |
| | | this.$confirm( |
| | | "检测到体检结果未提交,是否在离开该项目前提交修改?", |
| | | "确认信息", |
| | |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2) |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2) |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | |
| | | }); |
| | | }, |
| | | handleInConfirm(row) { |
| | | this.focusrow = row |
| | | this.focusrow = row; |
| | | }, |
| | | |
| | | handleInputConfirm(row) { |
| | |
| | | background-color: #f86b35; |
| | | color: black; |
| | | } |
| | | |
| | | |
| | | .blue-button { |
| | | width: 10px; |