| | |
| | | <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="submitForm"></el-input> |
| | | <el-input |
| | | v-model="queryParams.name" |
| | | style="width: 116px" |
| | | placeholder="请输入姓名" |
| | | clearable |
| | | @keyup.enter.native="submitForm" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="体检号" prop="tjNumber"> |
| | | <el-input ref="inputName" v-model="queryParams.tjNumber" style="width: 240px" placeholder="请输入体检号" clearable |
| | | @blur="hb" @keyup.enter.native="submitForm"></el-input> |
| | | <el-input |
| | | ref="inputName" |
| | | v-model="queryParams.tjNumber" |
| | | style="width: 240px" |
| | | placeholder="请输入体检号" |
| | | clearable |
| | | @blur="hb" |
| | | @keyup.enter.native="submitForm" |
| | | ></el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button size="mini" type="primary" @click="submitForm" style="margin-right: 15px">搜索</el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="primary" |
| | | @click="submitForm" |
| | | style="margin-right: 15px" |
| | | >搜索</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"> |
| | | <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-column label="体检号" align="center" prop="tjNumber" width="160px" /> |
| | | <el-table-column label="姓名" align="center" prop="cusName" width="90px" /> |
| | | <el-table |
| | | :data="tableList" |
| | | v-loading="loading" |
| | | ref="table" |
| | | height="536px" |
| | | style="margin: 20px; width: 98%" |
| | | border |
| | | :cell-class-name="myclass" |
| | | > |
| | | <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="pacName" 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="cusBrithday" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | label="套餐名称" |
| | | align="center" |
| | | prop="pacName" |
| | | 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" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <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> |
| | |
| | | <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-button label="1">科室会诊</el-radio-button> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="选择科室" v-if="form.hzType == '1'" style="margin-top: 22px"> |
| | | <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-form-item |
| | | label="选择科室" |
| | | v-if="form.hzType == '1'" |
| | | style="margin-top: 22px" |
| | | > |
| | | <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" style="margin-top: 22px"> |
| | | <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-form-item |
| | | label="申请人" |
| | | prop="hzDoctorId" |
| | | style="margin-top: 22px" |
| | | > |
| | | <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"> |
| | | <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"> |
| | | <div |
| | | v-for="(item, index) in hzReplyLogsList" |
| | | :key="index" |
| | | style="padding-bottom: 5px; border-bottom: 1px solid black" |
| | | > |
| | | <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"> |
| | | <el-button type="primary" @click="submitFormreply">回复</el-button> |
| | |
| | | </el-row> |
| | | </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"> |
| | | <div style="font-size: 14px"> |
| | | <table style=" |
| | | width: 96%; |
| | | height: 70px; |
| | | margin: 10px 10px; |
| | | margin-bottom: 10px; |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | font-size: 16px; |
| | | " 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> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ tableAll.cusName }} |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.cusSex == '0'">男</span> |
| | | <span v-if="scope.row.cusSex == '1'">女</span> |
| | | <span v-if="scope.row.cusSex == '2'">未知</span> |
| | | <span v-if="scope.row.cusSex == '9'">未说明性别</span> |
| | | </template> |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse" align="right"> |
| | | 性别: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ tableAll.cusSex == 0 ? "男" : tableAll.cusSex == 1 ? "女" : "未知" }} |
| | | </td> |
| | | </tr> |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <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> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ date }} |
| | | </td> |
| | | </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> |
| | | <el-drawer |
| | | :visible.sync="drawer" |
| | | :with-header="false" |
| | | size="70%" |
| | | :before-close="handleClose" |
| | | > |
| | | <div |
| | | v-loading="isLoading" |
| | | element-loading-text="正在加载数据,请稍候..." |
| | | element-loading-spinner="el-icon-loading" |
| | | element-loading-background="rgba(255, 255, 255, 0.8)" |
| | | style="height: 100%; padding: 20px; position: relative" |
| | | > |
| | | <div style="font-size: 14px"> |
| | | <table |
| | | style=" |
| | | width: 96%; |
| | | height: 70px; |
| | | margin: 10px 10px; |
| | | margin-bottom: 10px; |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | font-size: 16px; |
| | | " |
| | | 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> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ tableAll.cusName }} |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.cusSex == '0'">男</span> |
| | | <span v-if="scope.row.cusSex == '1'">女</span> |
| | | <span v-if="scope.row.cusSex == '2'">未知</span> |
| | | <span v-if="scope.row.cusSex == '9'">未说明性别</span> |
| | | </template> |
| | | </td> |
| | | <td |
| | | style="border: 1px solid #dfe6ec; border-collapse: collapse" |
| | | align="right" |
| | | > |
| | | 性别: |
| | | </td> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ |
| | | tableAll.cusSex == 0 |
| | | ? "男" |
| | | : tableAll.cusSex == 1 |
| | | ? "女" |
| | | : "未知" |
| | | }} |
| | | </td> |
| | | </tr> |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | <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> |
| | | <td style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | | {{ date }} |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | </div> |
| | | <div style="margin: 10px 10px"> |
| | | <el-button type="primary" size="mini" @click="historicalreport()">历史报告</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> |
| | | <div style="margin: 10px 10px"> |
| | | <el-button type="primary" size="mini" @click="jianqian" |
| | | >检前问诊</el-button |
| | | > |
| | | </div> |
| | | <div style="margin: 10px 10px"> |
| | | <el-button type="primary" size="mini" @click="result" |
| | | >检查检验结果</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | <div style="margin: 10px 10px"> |
| | | <el-button type="primary" size="mini" @click="jianqian">检前问诊</el-button> |
| | | </div> |
| | | <div style="margin: 10px 10px"> |
| | | <el-button type="primary" size="mini" @click="result">检查检验结果</el-button> |
| | | </div> |
| | | </div> |
| | | |
| | | <el-row> |
| | | <el-col v-show="baogaoqian"> |
| | | <template> |
| | | <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px"> |
| | | <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index" |
| | | :lazy="false"> |
| | | <el-table class="bgc" v-loading="loading" :data="proParentList.sons" border height="460px" |
| | | style="width: 96%; margin: 10px 10px" :row-class-name="tableRowClassName"> |
| | | <el-table-column prop="project.proName" label="检测项目" width="150"> |
| | | </el-table-column> |
| | | <el-table-column prop="proResult" label="检测结果" width="150"> |
| | | <template slot-scope="{ row, $index }"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | size="mini" |
| | | v-model="row.proResult" |
| | | :ref="`input-item${index}-row${$index}`" |
| | | @keydown.enter.native="keyInputConfirm($event, index, $index)" |
| | | @focus="handleFocus(row)" |
| | | @blur="handleInputConfirm(row)" |
| | | @input="vale($event, row)" |
| | | :disabled="row.project.proName === 'BMI'" |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="exceptionDesc" label="异常" width="55px" align="center"> |
| | | <el-row> |
| | | <el-col v-show="baogaoqian"> |
| | | <template> |
| | | <el-tabs |
| | | v-model="radio" |
| | | type="border-card" |
| | | @tab-click="handleTabClick" |
| | | style="margin-left: 10px" |
| | | > |
| | | <el-tab-pane |
| | | :label="item.proName" |
| | | :name="item.proId" |
| | | v-for="(item, index) in Parent" |
| | | :key="index" |
| | | :lazy="false" |
| | | > |
| | | <el-table |
| | | class="bgc" |
| | | v-loading="loading" |
| | | :data="proParentList.sons" |
| | | border |
| | | height="460px" |
| | | style="width: 96%; margin: 10px 10px" |
| | | :row-class-name="tableRowClassName" |
| | | > |
| | | <el-table-column |
| | | prop="project.proName" |
| | | label="检测项目" |
| | | width="150" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="proResult" |
| | | label="检测结果" |
| | | width="150" |
| | | > |
| | | <template slot-scope="{ row, $index }"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | size="mini" |
| | | v-model="row.proResult" |
| | | :ref="`input-item${index}-row${$index}`" |
| | | @keydown.enter.native=" |
| | | keyInputConfirm($event, index, $index) |
| | | " |
| | | @focus="handleFocus(row)" |
| | | @blur="handleInputConfirm(row)" |
| | | @input="vale($event, row)" |
| | | :disabled="row.project.proName === 'BMI'" |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column prop="exceptionDesc" label="异常" width="55px" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.exceptionDesc" @change="changDesc(scope.row)" |
| | | :disabled="scope.row.project.sfcyyc === 1"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则" width="70"> |
| | | <template slot-scope="scope"> |
| | | <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="project.proMetering" label="单位" width="55"> |
| | | </el-table-column> |
| | | <el-table-column prop="project.proScope" label="参考范围" width="70"> |
| | | </el-table-column> |
| | | <el-table-column prop="conclusion" label="结果结论" width="200"> |
| | | <template slot-scope="scope"> |
| | | <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="isReturn" label="复诊" width="60px" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.isReturn"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="isPositive" label="重大阳性" width="55"> |
| | | <template slot-scope="scope"> |
| | | <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-column prop="proAdvice" label="结果建议"> |
| | | <template slot-scope="scope"> |
| | | <el-popover placement="top" trigger="hover" width="400"> |
| | | <div> |
| | | {{ scope.row.proAdvice }} |
| | | </div> |
| | | <div slot="reference" class="jianyi"> |
| | | <el-input type="textarea" autosize v-model="scope.row.proAdvice" placeholder="请输入结果建议" |
| | | :disabled="true"></el-input> |
| | | </div> |
| | | </el-popover> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-table-column> --> |
| | | <el-table-column |
| | | prop="exceptionDesc" |
| | | label="异常" |
| | | width="55px" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-checkbox |
| | | v-model="scope.row.exceptionDesc" |
| | | @change="changDesc(scope.row)" |
| | | :disabled=" |
| | | scope.row.project.sfcyyc === 1 || |
| | | scope.row.project.proName === 'BMI' |
| | | " |
| | | ></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则" width="70"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | class="blue-button" |
| | | @click="handleguize(scope.row)" |
| | | >...</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="project.proMetering" |
| | | label="单位" |
| | | width="55" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column label="参考范围" width="70"> |
| | | <template slot-scope="scope"> |
| | | {{ scope.row.project.proScope }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="conclusion" |
| | | label="结果结论" |
| | | width="200" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <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="isReturn" |
| | | label="复诊" |
| | | width="60px" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.isReturn"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="isPositive" |
| | | label="重大阳性" |
| | | width="55" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <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-column prop="proAdvice" label="结果建议"> |
| | | <template slot-scope="scope"> |
| | | <el-popover placement="top" trigger="hover" width="400"> |
| | | <div> |
| | | {{ scope.row.proAdvice }} |
| | | </div> |
| | | <div slot="reference" class="jianyi"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | v-model="scope.row.proAdvice" |
| | | placeholder="请输入结果建议" |
| | | :disabled="true" |
| | | ></el-input> |
| | | </div> |
| | | </el-popover> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | <div style="font-size: 14px; overflow-y: auto; height: 286px" class="a"> |
| | | <table style=" |
| | | width: 96%; |
| | | margin: 4px 10px; |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " cellspacing="4"> |
| | | <tr style=" |
| | | <div |
| | | style="font-size: 14px; overflow-y: auto; height: 286px" |
| | | class="a" |
| | | > |
| | | <table |
| | | style=" |
| | | width: 96%; |
| | | margin: 4px 10px; |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | "> |
| | | <td style=" |
| | | " |
| | | cellspacing="4" |
| | | > |
| | | <tr |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | "> |
| | | 病种选择: |
| | | </td> |
| | | <td @click="bzxz" style=" |
| | | " |
| | | > |
| | | <td |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | > |
| | | 病种选择: |
| | | </td> |
| | | <td |
| | | @click="bzxz" |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | > |
| | | <el-input |
| | | type="textarea" |
| | | placeholder="请选择内容" |
| | | v-model="titles" |
| | | rows="2" |
| | | > |
| | | </el-input> |
| | | </td> |
| | | <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" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | | </tr> |
| | | <tr |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | "> |
| | | <el-input type="textarea" placeholder="请选择内容" v-model="titles" rows="2"> |
| | | </el-input> |
| | | </td> |
| | | <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"> |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | | </tr> |
| | | <tr style=" |
| | | " |
| | | > |
| | | <td |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | > |
| | | 建议: |
| | | </td> |
| | | <td |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | colspan="2" |
| | | > |
| | | <div style="margin: 0 0px 10px 15px"> |
| | | <el-button |
| | | type="primary" |
| | | @click="propoChange" |
| | | style="margin-top: 10px; height: 37px" |
| | | >快捷建议</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | @click="proposalChange" |
| | | style="margin-top: 10px; height: 37px" |
| | | >生成建议</el-button |
| | | > |
| | | </div> |
| | | <el-input |
| | | type="textarea" |
| | | placeholder="请输入内容" |
| | | v-model="proParentList.remark" |
| | | rows="7" |
| | | > |
| | | </el-input> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div slot="footer" class="dialog-footers1"> |
| | | <el-button type="primary" @click="determine" |
| | | >提 交</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </template> |
| | | </el-col> |
| | | <el-col :span="18" v-show="baogaohou"> |
| | | <template> |
| | | <el-tabs |
| | | v-model="radio" |
| | | type="border-card" |
| | | @tab-click="handleTabClick" |
| | | style="margin-left: 10px" |
| | | > |
| | | <el-tab-pane |
| | | :label="item.proName" |
| | | :name="item.proId" |
| | | v-for="(item, index) in Parent" |
| | | :key="index" |
| | | :lazy="false" |
| | | > |
| | | <el-table |
| | | class="bgc" |
| | | v-loading="loading" |
| | | :data="proParentList.sons" |
| | | border |
| | | height="460px" |
| | | style="width: 96%; margin: 10px 10px" |
| | | :row-class-name="tableRowClassName" |
| | | > |
| | | <el-table-column |
| | | prop="project.proName" |
| | | label="检测项目" |
| | | width="100" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="proResult" |
| | | label="检测结果" |
| | | width="150" |
| | | > |
| | | <template slot-scope="{ row, $index }"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | size="mini" |
| | | v-model="row.proResult" |
| | | :ref="`input-item${index}-row${$index}`" |
| | | @keydown.enter.native=" |
| | | keyInputConfirm($event, index, $index) |
| | | " |
| | | @focus="handleFocus(row)" |
| | | @blur="handleInputConfirm(row)" |
| | | @input="vale($event, row)" |
| | | :disabled="row.project.proName === 'BMI'" |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则" width="70"> |
| | | <template slot-scope="scope"> |
| | | <el-button |
| | | class="blue-button" |
| | | @click="handleguize(scope.row)" |
| | | >...</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="project.proMetering" |
| | | label="单位" |
| | | width="55" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="project.proScope" |
| | | label="参考范围" |
| | | width="80" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="exceptionDesc" |
| | | label="异常" |
| | | width="55px" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-checkbox |
| | | v-model="scope.row.exceptionDesc" |
| | | :disabled="scope.row.project.sfcyyc === 1" |
| | | @change="changDesc(scope.row)" |
| | | ></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="isReturn" |
| | | label="复诊" |
| | | width="55px" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.isReturn"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="isPositive" |
| | | label="重大阳性" |
| | | width="55" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <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-column prop="proAdvice" label="结果建议"> |
| | | <template slot-scope="scope"> |
| | | <el-popover placement="top" trigger="hover" width="400"> |
| | | <div> |
| | | {{ scope.row.proAdvice }} |
| | | </div> |
| | | <div slot="reference" class="jianyi"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | v-model="scope.row.proAdvice" |
| | | placeholder="请输入结果建议" |
| | | :disabled="true" |
| | | ></el-input> |
| | | </div> |
| | | </el-popover> |
| | | </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; |
| | | "> |
| | | <td style=" |
| | | " |
| | | cellspacing="4" |
| | | > |
| | | <tr |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | "> |
| | | 建议: |
| | | </td> |
| | | <td style=" |
| | | " |
| | | > |
| | | <td |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | > |
| | | 病种选择: |
| | | </td> |
| | | <td |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " |
| | | > |
| | | <el-input |
| | | type="textarea" |
| | | placeholder="请选择内容" |
| | | v-model="titles" |
| | | rows="2" |
| | | > |
| | | </el-input> |
| | | </td> |
| | | <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" |
| | | > |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | | </tr> |
| | | <tr |
| | | style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | " colspan="2"> |
| | | " |
| | | > |
| | | <div style="margin: 0 0px 10px 15px"> |
| | | <el-button type="primary" @click="propoChange" |
| | | style="margin-top: 10px; height: 37px">快捷建议</el-button> |
| | | <el-button type="primary" @click="proposalChange" |
| | | style="margin-top: 10px; height: 37px">生成建议</el-button> |
| | | <el-button |
| | | type="primary" |
| | | @click="propoChange" |
| | | style="margin-top: 10px; height: 37px" |
| | | >快捷建议</el-button |
| | | > |
| | | <el-button |
| | | type="primary" |
| | | @click="proposalChange" |
| | | style="margin-top: 10px; height: 37px" |
| | | >生成建议</el-button |
| | | > |
| | | </div> |
| | | <el-input type="textarea" placeholder="请输入内容" v-model="proParentList.remark" rows="7"> |
| | | </el-input> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | <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" |
| | | > |
| | | </el-input> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div slot="footer" class="dialog-footers1"> |
| | | <el-button type="primary" @click="determine">提 交</el-button> |
| | | <div slot="footer" class="dialog-footers"> |
| | | <el-button type="primary" @click="determine" |
| | | >提 交</el-button |
| | | > |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </template> |
| | | </el-col> |
| | | <el-col :span="18" v-show="baogaohou"> |
| | | <template> |
| | | <el-tabs v-model="radio" type="border-card" @tab-click="handleTabClick" style="margin-left: 10px"> |
| | | <el-tab-pane :label="item.proName" :name="item.proId" v-for="(item, index) in Parent" :key="index" |
| | | :lazy="false"> |
| | | <el-table class="bgc" v-loading="loading" :data="proParentList.sons" border height="460px" |
| | | style="width: 96%; margin: 10px 10px" :row-class-name="tableRowClassName"> |
| | | <el-table-column prop="project.proName" label="检测项目" width="100"> |
| | | </el-table-column> |
| | | <el-table-column prop="proResult" label="检测结果" width="150"> |
| | | <template slot-scope="{ row, $index }"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | size="mini" |
| | | v-model="row.proResult" |
| | | :ref="`input-item${index}-row${$index}`" |
| | | @keydown.enter.native="keyInputConfirm($event, index, $index)" |
| | | @focus="handleFocus(row)" |
| | | @blur="handleInputConfirm(row)" |
| | | @input="vale($event, row)" |
| | | :disabled="row.project.proName === 'BMI'" |
| | | ></el-input> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="规则" width="70"> |
| | | <template slot-scope="scope"> |
| | | <el-button class="blue-button" @click="handleguize(scope.row)">...</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="project.proMetering" label="单位" width="55"> |
| | | </el-table-column> |
| | | <el-table-column prop="project.proScope" label="参考范围" width="80"> |
| | | </el-table-column> |
| | | <el-table-column prop="exceptionDesc" label="异常" width="55px" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.exceptionDesc" :disabled="scope.row.project.sfcyyc === 1" |
| | | @change="changDesc(scope.row)"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="isReturn" label="复诊" width="55px" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-checkbox v-model="scope.row.isReturn"></el-checkbox> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="isPositive" label="重大阳性" width="55"> |
| | | <template slot-scope="scope"> |
| | | <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-column prop="proAdvice" label="结果建议"> |
| | | <template slot-scope="scope"> |
| | | <el-popover placement="top" trigger="hover" width="400"> |
| | | <div> |
| | | {{ scope.row.proAdvice }} |
| | | </div> |
| | | <div slot="reference" class="jianyi"> |
| | | <el-input type="textarea" autosize v-model="scope.row.proAdvice" placeholder="请输入结果建议" |
| | | :disabled="true"></el-input> |
| | | </div> |
| | | </el-popover> |
| | | </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"> |
| | | <tr 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-input type="textarea" placeholder="请选择内容" v-model="titles" rows="2"> |
| | | </el-input> |
| | | </td> |
| | | <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"> |
| | | </el-option> |
| | | </el-select> |
| | | </td> |
| | | </tr> |
| | | <tr style=" |
| | | border: 1px solid #dfe6ec; |
| | | border-collapse: collapse; |
| | | "> |
| | | <div style="margin: 0 0px 10px 15px"> |
| | | <el-button type="primary" @click="propoChange" |
| | | style="margin-top: 10px; height: 37px">快捷建议</el-button> |
| | | <el-button type="primary" @click="proposalChange" |
| | | style="margin-top: 10px; height: 37px">生成建议</el-button> |
| | | </div> |
| | | <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"> |
| | | </el-input> |
| | | </td> |
| | | </tr> |
| | | </table> |
| | | |
| | | <div slot="footer" class="dialog-footers"> |
| | | <el-button type="primary" @click="determine">提 交</el-button> |
| | | </div> |
| | | </div> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </template> |
| | | </el-col> |
| | | <el-col :span="6" style="margin-top: 15px"> |
| | | <Historicalreport v-show="lishi" :reportHistorydata="reportHistorydata"></Historicalreport> |
| | | </el-col> |
| | | </el-row> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </template> |
| | | </el-col> |
| | | <el-col :span="6" style="margin-top: 15px"> |
| | | <Historicalreport |
| | | v-show="lishi" |
| | | :reportHistorydata="reportHistorydata" |
| | | ></Historicalreport> |
| | | </el-col> |
| | | </el-row> |
| | | </div> |
| | | </el-drawer> |
| | | <Public ref="aaa" :row="row" @add="handleChanges" /> |
| | | <jianceResult ref="bbb" @add="handleChangesZt" /> |
| | | <el-dialog title="提示" :visible.sync="jianqians" width="1000px" :before-close="handleClose1"> |
| | | <jianqianwenzhen :jianqianwenzhendata="jianqianwenzhendata" v-if="flags"></jianqianwenzhen> |
| | | <el-dialog |
| | | title="提示" |
| | | :visible.sync="jianqians" |
| | | width="1000px" |
| | | :before-close="handleClose1" |
| | | > |
| | | <jianqianwenzhen |
| | | :jianqianwenzhendata="jianqianwenzhendata" |
| | | v-if="flags" |
| | | ></jianqianwenzhen> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="jianqians = false">取 消</el-button> |
| | | </span> |
| | |
| | | <createproposal ref="createproposal" :creatobj="creatobj" /> |
| | | |
| | | <el-dialog title="检查检验结果" :visible.sync="openOne" width="80%"> |
| | | <div style=" |
| | | <div |
| | | style=" |
| | | width: 100%; |
| | | margin-left: 10px; |
| | | display: flex; |
| | | justify-content: space-around; |
| | | "> |
| | | " |
| | | > |
| | | <div style="width: 44%"> |
| | | <el-table v-loading="loading" border :data="xiangmuList" height="520" ref="tab1" highlight-current-row> |
| | | <el-table-column label="科室" align="center" prop="deptName" width="100" :show-overflow-tooltip="true" /> |
| | | <el-table-column label="项目" align="center" prop="proName" width="150" :show-overflow-tooltip="true" /> |
| | | <el-table-column label="状态" align="center" prop="type" :show-overflow-tooltip="true" width="100"> |
| | | <el-table |
| | | v-loading="loading" |
| | | border |
| | | :data="xiangmuList" |
| | | height="520" |
| | | ref="tab1" |
| | | highlight-current-row |
| | | > |
| | | <el-table-column |
| | | label="科室" |
| | | align="center" |
| | | prop="deptName" |
| | | width="100" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="项目" |
| | | align="center" |
| | | prop="proName" |
| | | width="150" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="状态" |
| | | align="center" |
| | | prop="type" |
| | | :show-overflow-tooltip="true" |
| | | width="100" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span v-if="scope.row.type == '0'" :style="type == 0 ? { color: 'red' } : { color: '#409EFF' }"> |
| | | <span |
| | | v-if="scope.row.type == '0'" |
| | | :style="type == 0 ? { color: 'red' } : { color: '#409EFF' }" |
| | | > |
| | | {{ type == 0 ? "未 检" : "在 检" }} |
| | | </span> |
| | | <span v-if="scope.row.type == '1'">已完成</span> |
| | |
| | | <span v-if="scope.row.type == '3'">延期</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="检查时间" align="center" prop="bcupdateTime" width="160" /> |
| | | <el-table-column |
| | | label="检查时间" |
| | | align="center" |
| | | prop="bcupdateTime" |
| | | width="160" |
| | | /> |
| | | <el-table-column label="操作" align="center" width="120px"> |
| | | <template slot-scope="scope"> |
| | | <el-button size="mini" type="text" :disabled="scope.row.type === 0 || scope.row.type === 2" |
| | | @click="queryResultone(scope.row)">结果查询</el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | :disabled="scope.row.type === 0 || scope.row.type === 2" |
| | | @click="queryResultone(scope.row)" |
| | | >结果查询</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | </div> |
| | | <div class="a"> |
| | | <div v-if="jyjc == 0"> |
| | | <el-table :data="jieguoList" border :row-style="changRed" height="520" highlight-current-row |
| | | style="width: 100%" :header-cell-style="{ background: '#AAD8DF' }"> |
| | | <el-table |
| | | :data="jieguoList" |
| | | border |
| | | :row-style="changRed" |
| | | height="520" |
| | | highlight-current-row |
| | | style="width: 100%" |
| | | :header-cell-style="{ background: '#AAD8DF' }" |
| | | > |
| | | <el-table-column label="检测项目" prop="pro_name"> |
| | | </el-table-column> |
| | | <el-table-column label="检测结果" prop="pro_result"> |
| | |
| | | <div class="check-result-container"> |
| | | <div class="check-item"> |
| | | <div class="check-title">检查所见:</div> |
| | | <div class="check-description" :style="{ color: isRed ? 'red' : '' }"> |
| | | <div |
| | | class="check-description" |
| | | :style="{ color: isRed ? 'red' : '' }" |
| | | > |
| | | {{ jieguoList[0].pro_result }} |
| | | </div> |
| | | </div> |
| | | <div class="check-item"> |
| | | <div class="check-title">检查结论:</div> |
| | | <div class="check-description" :style="{ color: isRed ? 'red' : '' }"> |
| | | <div |
| | | class="check-description" |
| | | :style="{ color: isRed ? 'red' : '' }" |
| | | > |
| | | {{ jieguoList[0].yxzd || "暂无结论" }} |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="选择病种" :visible.sync="taocan" width="80%" height="700px" :close-on-click-modal="false"> |
| | | <el-tabs type="border-card" style="min-height: 538px; margin: 0 10px; width: 100%" @tab-click="handleClick" |
| | | v-model="activeNames"> |
| | | <el-dialog |
| | | title="选择病种" |
| | | :visible.sync="taocan" |
| | | width="80%" |
| | | height="700px" |
| | | :close-on-click-modal="false" |
| | | > |
| | | <el-tabs |
| | | type="border-card" |
| | | style="min-height: 538px; margin: 0 10px; width: 100%" |
| | | @tab-click="handleClick" |
| | | v-model="activeNames" |
| | | > |
| | | <el-tab-pane label="病种" name="first"> |
| | | <div class="tab8"> |
| | | <div class="tab3"> |
| | | <el-form @submit.native.prevent :model="queryParam1" ref="tableList" :inline="true" label-width="76px" |
| | | style="margin-top: 10px"> |
| | | <el-form |
| | | @submit.native.prevent |
| | | :model="queryParam1" |
| | | ref="tableList" |
| | | :inline="true" |
| | | label-width="76px" |
| | | style="margin-top: 10px" |
| | | > |
| | | <el-form-item> |
| | | <el-input placeholder="输入关键字进行过滤" v-model="queryParam1.nr" clearable> |
| | | <el-input |
| | | placeholder="输入关键字进行过滤" |
| | | v-model="queryParam1.nr" |
| | | clearable |
| | | > |
| | | </el-input> |
| | | </el-form-item> |
| | | <el-form-item> |
| | | <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuerys">搜索</el-button> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-search" |
| | | size="mini" |
| | | @click="handleQuerys" |
| | | >搜索</el-button |
| | | > |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-table ref="multipleTable" border :data="deptAdviceList" height="430px" |
| | | @selection-change="handleSelectionChanges"> |
| | | <el-table |
| | | ref="multipleTable" |
| | | border |
| | | :data="deptAdviceList" |
| | | height="430px" |
| | | @selection-change="handleSelectionChanges" |
| | | > |
| | | <el-table-column type="selection" width="40"> </el-table-column> |
| | | <el-table-column prop="title" label="病种名称" align="center" width="130px"></el-table-column> |
| | | <el-table-column prop="advice" label="建议" align="center" :show-overflow-tooltip="true"> |
| | | <el-table-column |
| | | prop="title" |
| | | label="病种名称" |
| | | align="center" |
| | | width="130px" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | prop="advice" |
| | | label="建议" |
| | | align="center" |
| | | :show-overflow-tooltip="true" |
| | | > |
| | | </el-table-column> |
| | | </el-table> |
| | | <pagination v-show="total1 > 0" :total="total1" :page.sync="queryParam1.page" |
| | | :limit.sync="queryParam1.pageSize" @pagination="getbzlist" /> |
| | | <pagination |
| | | v-show="total1 > 0" |
| | | :total="total1" |
| | | :page.sync="queryParam1.page" |
| | | :limit.sync="queryParam1.pageSize" |
| | | @pagination="getbzlist" |
| | | /> |
| | | </div> |
| | | <div class="tab4"> |
| | | <div class="tab4_txt"> |
| | |
| | | <el-table border :data="deptAdviceList1" height="430px"> |
| | | <el-table-column prop="title" label="病种名称" align="center"> |
| | | </el-table-column> |
| | | <el-table-column label="操作" align="center" fixed="right" class-name="small-padding fixed-width" |
| | | width="50px"> |
| | | <el-table-column |
| | | label="操作" |
| | | align="center" |
| | | fixed="right" |
| | | class-name="small-padding fixed-width" |
| | | width="50px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" |
| | | title="删除"></el-button> |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-delete" |
| | | @click="handleDelete(scope.row)" |
| | | title="删除" |
| | | ></el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | selected: false, |
| | | checkval: false, |
| | | loading: false, |
| | | isLoading: false, |
| | | open: false, |
| | | foropen: false, |
| | | dialogVisible: false, |
| | |
| | | const bmi = weightInKg / (heightInMeters * heightInMeters); |
| | | return bmi.toFixed(1); // 保留一位小数 |
| | | } |
| | | return ''; |
| | | return ""; |
| | | }, |
| | | |
| | | getBMIStatus(row) { |
| | | const bmi = parseFloat(row.proResult); |
| | | if (isNaN(bmi) || !row.proResult) return ""; // 处理无效或空的BMI值 |
| | | if (bmi > 28) { |
| | | row.exceptionDesc = true; // 自动勾选异常复选框 |
| | | row.conclusion = "偏高"; // 设置结论 |
| | | return "偏高"; |
| | | } |
| | | if (bmi < 12) { |
| | | row.exceptionDesc = true; // 自动勾选异常复选框 |
| | | row.conclusion = "偏低"; // 设置结论 |
| | | return "偏低"; |
| | | } |
| | | row.exceptionDesc = false; // 正常范围内取消勾选 |
| | | row.conclusion = "正常"; // 设置结论 |
| | | return "正常"; |
| | | }, |
| | | |
| | | // 实时更新 BMI 并验证输入 |
| | | vale(value, row) { |
| | | if (row.project.proName === '身高' || row.project.proName === '体重') { |
| | | // 输入验证 |
| | | if (!/^\d*\.?\d*$/.test(value) || parseFloat(value) <= 0) { |
| | | this.$message.error('请输入有效的正数'); |
| | | row.proResult = ''; // 清空无效输入 |
| | | return; |
| | | } |
| | | |
| | | console.log(3333); |
| | | if (row.project.proName === "身高" || row.project.proName === "体重") { |
| | | const heightRow = this.proParentList.sons.find( |
| | | item => item.project.proName === '身高' |
| | | (item) => item.project.proName === "身高" |
| | | ); |
| | | const weightRow = this.proParentList.sons.find( |
| | | item => item.project.proName === '体重' |
| | | (item) => item.project.proName === "体重" |
| | | ); |
| | | const bmiRow = this.proParentList.sons.find( |
| | | item => item.project.proName === 'BMI' |
| | | (item) => item.project.proName === "BMI" |
| | | ); |
| | | |
| | | if (!heightRow || !weightRow || !bmiRow) { |
| | | |
| | | return; |
| | | if (heightRow && weightRow && bmiRow) { |
| | | const height = |
| | | row.project.proName === "身高" ? value : heightRow.proResult; |
| | | const weight = |
| | | row.project.proName === "体重" ? value : weightRow.proResult; |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ""; // 实时更新BMI值 |
| | | this.getBMIStatus(bmiRow); // 检查BMI状态并更新异常复选框 |
| | | } |
| | | } |
| | | |
| | | const height = row.project.proName === '身高' ? value : heightRow.proResult; |
| | | const weight = row.project.proName === '体重' ? value : weightRow.proResult; |
| | | |
| | | if (!height || !weight) { |
| | | this.$message.warning('请填写身高和体重以计算 BMI'); |
| | | bmiRow.proResult = ''; |
| | | return; |
| | | } |
| | | |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ''; // 实时更新 BMI |
| | | // 现有的规则检查逻辑保持不变 |
| | | this.focusrow = row; |
| | | this.proResult = row; |
| | | const pattern3 = new RegExp("[0-9]+"); |
| | | if (row.proResult) { |
| | | } |
| | | if (pattern3.test(row.proResult)) { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | tjNum: this.tableAll.tjNumber, |
| | | keyNum: this.proResult.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = res.data; |
| | | if (row.project.sfcyyc == 1) { |
| | | return; |
| | | } else { |
| | | if (res.data.length > 0) { |
| | | const conditions = ["正常", "未见异常", "阴性", "未见明显异常"]; |
| | | this.focusrow.exceptionDesc = !conditions.some((condition) => |
| | | this.autorule[0].bz.includes(condition) |
| | | ); |
| | | } else { |
| | | this.focusrow.exceptionDesc = false; |
| | | } |
| | | } |
| | | if ( |
| | | this.autorule.length !== 0 && |
| | | (this.autorule[0] || this.autorule[0].nr) |
| | | ) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | this.autorule.forEach((item) => { |
| | | this.focusrow.conclusion += this.focusrow.conclusion |
| | | ? item.bz |
| | | : item.bz; |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | /* vale(value, row) { |
| | | if (row.project.proName === '身高' || row.project.proName === '体重') { |
| | | // 输入验证 |
| | | if (!/^\d*\.?\d*$/.test(value) || parseFloat(value) <= 0) { |
| | | this.$message.error('请输入有效的正数'); |
| | | row.proResult = ''; // 清空无效输入 |
| | | return; |
| | | } |
| | | |
| | | const heightRow = this.proParentList.sons.find( |
| | | item => item.project.proName === '身高' |
| | | ); |
| | | const weightRow = this.proParentList.sons.find( |
| | | item => item.project.proName === '体重' |
| | | ); |
| | | const bmiRow = this.proParentList.sons.find( |
| | | item => item.project.proName === 'BMI' |
| | | ); |
| | | |
| | | if (!heightRow || !weightRow || !bmiRow) { |
| | | |
| | | return; |
| | | } |
| | | |
| | | const height = row.project.proName === '身高' ? value : heightRow.proResult; |
| | | const weight = row.project.proName === '体重' ? value : weightRow.proResult; |
| | | |
| | | if (!height || !weight) { |
| | | this.$message.warning('请填写身高和体重以计算 BMI'); |
| | | bmiRow.proResult = ''; |
| | | return; |
| | | } |
| | | |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ''; // 实时更新 BMI |
| | | } |
| | | }, |
| | | */ |
| | | // 输入确认时更新 BMI |
| | | handleInputConfirm(row, params) { |
| | | handleInputConfirm(row) { |
| | | if (row.proResult) { |
| | | if (row.project.proName === "身高" || row.project.proName === "体重") { |
| | | const heightRow = this.proParentList.sons.find( |
| | | (item) => item.project.proName === "身高" |
| | | ); |
| | | const weightRow = this.proParentList.sons.find( |
| | | (item) => item.project.proName === "体重" |
| | | ); |
| | | const bmiRow = this.proParentList.sons.find( |
| | | (item) => item.project.proName === "BMI" |
| | | ); |
| | | |
| | | if (heightRow && weightRow && bmiRow) { |
| | | const height = heightRow.proResult; |
| | | const weight = weightRow.proResult; |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ""; |
| | | this.getBMIStatus(bmiRow); // 检查BMI状态并更新异常复选框 |
| | | } |
| | | } |
| | | } |
| | | // 现有的规则检查逻辑保持不变 |
| | | this.focusrow = row; |
| | | this.proResult = row; |
| | | const pattern3 = new RegExp("[0-9]+"); |
| | | if (pattern3.test(row.proResult)) { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | tjNum: this.tableAll.tjNumber, |
| | | keyNum: this.proResult.proResult, |
| | | }; |
| | | AutoGetRule(data).then((res) => { |
| | | this.focusrow.conclusion = ""; |
| | | if (res.data) { |
| | | this.autorule = res.data; |
| | | this.focusrow.rulesList = res.data; |
| | | if (row.project.sfcyyc == 1) { |
| | | return; |
| | | } else { |
| | | if (res.data.length > 0) { |
| | | const conditions = ["正常", "未见异常", "阴性", "未见明显异常"]; |
| | | this.focusrow.exceptionDesc = !conditions.some((condition) => |
| | | this.autorule[0].bz.includes(condition) |
| | | ); |
| | | } else { |
| | | this.focusrow.exceptionDesc = false; |
| | | } |
| | | } |
| | | if ( |
| | | this.autorule.length !== 0 && |
| | | (this.autorule[0] || this.autorule[0].nr) |
| | | ) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | this.autorule.forEach((item) => { |
| | | this.focusrow.conclusion += this.focusrow.conclusion |
| | | ? item.bz |
| | | : item.bz; |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | this.rows.push(row); |
| | | }, |
| | | /* handleInputConfirm(row, params) { |
| | | console.log(row, params, 55555); |
| | | // 如果有 params 且为空,取消异常状态并清空相关字段 |
| | | if (params && params.length === 0) { |
| | |
| | | item => item.project.proName === 'BMI' |
| | | ); |
| | | |
| | | if (!heightRow || !weightRow || !bmiRow) { |
| | | return; |
| | | if (heightRow && weightRow && bmiRow) { |
| | | const height = heightRow.proResult; |
| | | const weight = weightRow.proResult; |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ''; |
| | | this.getBMIStatus(bmiRow); // 检查BMI状态并更新异常复选框 |
| | | } |
| | | |
| | | const height = heightRow.proResult; |
| | | const weight = weightRow.proResult; |
| | | |
| | | if (!height || !weight) { |
| | | this.$message.warning('请填写身高和体重以计算 BMI'); |
| | | bmiRow.proResult = ''; |
| | | return; |
| | | } |
| | | |
| | | const bmi = this.calculateBMI(height, weight); |
| | | bmiRow.proResult = bmi || ''; |
| | | } |
| | | |
| | | this.focusrow = row; |
| | |
| | | this.rows.push(row); |
| | | console.log(this.rows, row); |
| | | } |
| | | }, |
| | | }, */ |
| | | |
| | | // 初始化数据时计算 BMI |
| | | getParentIdsss() { |
| | | this.proParentList={} |
| | | let data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | |
| | | if (response.data != {}) { |
| | | this.proParentList = response.data; |
| | | const heightRow = this.proParentList.sons.find( |
| | | item => item.project.proName === '身高' |
| | | (item) => item.project.proName === "身高" |
| | | ); |
| | | const weightRow = this.proParentList.sons.find( |
| | | item => item.project.proName === '体重' |
| | | (item) => item.project.proName === "体重" |
| | | ); |
| | | const bmiRow = this.proParentList.sons.find( |
| | | item => item.project.proName === 'BMI' |
| | | (item) => item.project.proName === "BMI" |
| | | ); |
| | | if (heightRow && weightRow && bmiRow) { |
| | | const bmi = this.calculateBMI(heightRow.proResult, weightRow.proResult); |
| | | bmiRow.proResult = bmi || ''; |
| | | const bmi = this.calculateBMI( |
| | | heightRow.proResult, |
| | | weightRow.proResult |
| | | ); |
| | | bmiRow.proResult = bmi || ""; |
| | | } else { |
| | | this.$message.error('缺少身高、体重或 BMI 项目'); |
| | | // this.$message.error('缺少身高、体重或 BMI 项目'); |
| | | } |
| | | this.proParentList.xiaoJie.forEach((item) => { |
| | | this.titles += item.title + ","; |
| | |
| | | if (item.isReturn == 1) item.isReturn = true; |
| | | if (item.isReturn == 0) item.isReturn = false; |
| | | if (item.exceptionDesc == "1") item.exceptionDesc = true; |
| | | if (item.exceptionDesc == "0" || item.project.sfcyyc == 1) item.exceptionDesc = false; |
| | | if (item.exceptionDesc == "0" || item.project.sfcyyc == 1) |
| | | item.exceptionDesc = false; |
| | | }); |
| | | if (this.proParentList.xiaoJie && this.proParentList.xiaoJie.length != 0) { |
| | | if ( |
| | | this.proParentList.xiaoJie && |
| | | this.proParentList.xiaoJie.length != 0 |
| | | ) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === this.nums) { |
| | | this.proParentList.remark = item3.remark; |
| | |
| | | getAdviceByTjNumAndPro(data).then((res) => { |
| | | if (res.data) { |
| | | this.deptAdviceList3 = res.data; |
| | | this.deptAdviceList1 = [...new Set(this.deptAdviceList2.concat(this.deptAdviceList3))]; |
| | | this.deptAdviceList1 = [ |
| | | ...new Set(this.deptAdviceList2.concat(this.deptAdviceList3)), |
| | | ]; |
| | | this.deptAdviceList3.forEach((items) => { |
| | | this.idss.push(items.id); |
| | | this.remakes += items.advice + ","; |
| | |
| | | this.$refs.multipleTable.toggleRowSelection(del_row, false); |
| | | } |
| | | selection.forEach((item) => this.deptAdviceList2.push(item)); |
| | | this.deptAdviceList1 = [...new Set(this.deptAdviceList2.concat(this.deptAdviceList3))]; |
| | | this.deptAdviceList1 = [ |
| | | ...new Set(this.deptAdviceList2.concat(this.deptAdviceList3)), |
| | | ]; |
| | | }, |
| | | |
| | | queding() { |
| | |
| | | if (this.proParentList.remark != null) { |
| | | this.titles += item1.title + ","; |
| | | this.remakes += item1.advice + ","; |
| | | this.proParentList.remark = this.proParentList.remark + this.remakes; |
| | | this.proParentList.remark = |
| | | this.proParentList.remark + this.remakes; |
| | | this.value += item1.title + ","; |
| | | this.vaids.push(item1.id); |
| | | this.vaids1 = this.vaids.concat(this.idss); |
| | |
| | | this.deptAdviceList.forEach((item) => { |
| | | this.ids = item.id; |
| | | val.forEach((item1) => { |
| | | if (item1 === item.id && !this.proParentList.remark.includes(item.title)) { |
| | | this.proParentList.remark = this.proParentList.remark ? this.proParentList.remark + item.title + "," : item.title + ","; |
| | | if ( |
| | | item1 === item.id && |
| | | !this.proParentList.remark.includes(item.title) |
| | | ) { |
| | | this.proParentList.remark = this.proParentList.remark |
| | | ? this.proParentList.remark + item.title + "," |
| | | : item.title + ","; |
| | | } |
| | | }); |
| | | }); |
| | |
| | | this.deptAdviceList.forEach((item) => { |
| | | this.ids = item.id; |
| | | val.forEach((item1) => { |
| | | if (item1 === item.id && !this.proParentList.remark.includes(item.title)) { |
| | | this.proParentList.remark = this.proParentList.remark ? this.proParentList.remark + item.title + "," : item.title + ","; |
| | | if ( |
| | | item1 === item.id && |
| | | !this.proParentList.remark.includes(item.title) |
| | | ) { |
| | | this.proParentList.remark = this.proParentList.remark |
| | | ? this.proParentList.remark + item.title + "," |
| | | : item.title + ","; |
| | | } |
| | | }); |
| | | }); |
| | |
| | | }, |
| | | |
| | | initInputDOM() { |
| | | const inputDoms = document.querySelectorAll('.el-input__inner'); |
| | | inputDoms.forEach((item, index) => item.setAttribute('data-index', index)); |
| | | const inputDoms = document.querySelectorAll(".el-input__inner"); |
| | | inputDoms.forEach((item, index) => |
| | | item.setAttribute("data-index", index) |
| | | ); |
| | | this.inputDoms = inputDoms; |
| | | }, |
| | | |
| | |
| | | if (response.code == 200) { |
| | | this.loading = false; |
| | | if (response.data) { |
| | | this.tableList = response.data.date || response.data.customers || []; |
| | | this.tableList = |
| | | response.data.date || response.data.customers || []; |
| | | this.total = response.data.total; |
| | | } else { |
| | | this.tableList = []; |
| | |
| | | |
| | | eventchange(data) { |
| | | this.dataText = data; |
| | | data.forEach((item) => this.proParentList.remark += item.advice); |
| | | data.forEach((item) => (this.proParentList.remark += item.advice)); |
| | | }, |
| | | |
| | | proposalChange() { |
| | |
| | | this.open = true; |
| | | this.form = row; |
| | | this.form.hzDoctorId = this.info.userId; |
| | | getChildList().then((res) => this.deptList = res.data); |
| | | getChildList().then((res) => (this.deptList = res.data)); |
| | | this.Hzlog(this.form.tjNumber); |
| | | }, |
| | | |
| | |
| | | if (item.hzType != "0") { |
| | | item.hzDeptIdList.forEach((item1) => { |
| | | this.deptList.forEach((item2) => { |
| | | if (item1 == item2.deptId) item.hzDeptName += item2.deptName + ","; |
| | | if (item1 == item2.deptId) |
| | | item.hzDeptName += item2.deptName + ","; |
| | | }); |
| | | }); |
| | | } |
| | |
| | | submitFormapply() { |
| | | let data = {}; |
| | | this.userList.forEach((item1) => { |
| | | if (this.form.hzDoctorId == item1.userId) this.form.hzDoctorName = item1.nickName; |
| | | if (this.form.hzDoctorId == item1.userId) |
| | | this.form.hzDoctorName = item1.nickName; |
| | | }); |
| | | if (this.form.hzType != undefined) { |
| | | this.$refs["form"].validate((valid) => { |
| | |
| | | background: "rgba(0, 0, 0, 0.7)", |
| | | }); |
| | | setTimeout(() => loading.close(), 3000); |
| | | this.$message({ type: "warning", message: "报告正在生成,请两分钟后预览!" }); |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "报告正在生成,请两分钟后预览!", |
| | | }); |
| | | } else { |
| | | this.dialogVisible = true; |
| | | this.url = window.webkitURL.createObjectURL(response); |
| | |
| | | } else { |
| | | this.allList = []; |
| | | if (selection[0]) { |
| | | if (selection[0].hzReplyLogsList) this.hzReplyLogsList = selection[0].hzReplyLogsList; |
| | | if (selection[0].hzReplyLogsList) |
| | | this.hzReplyLogsList = selection[0].hzReplyLogsList; |
| | | } else { |
| | | this.hzReplyLogsList = []; |
| | | } |
| | |
| | | this.getDept(row.tjNumber); |
| | | this.loading = true; |
| | | this.drawer = true; |
| | | this.isLoading = true; |
| | | this.Parent = [] |
| | | this.tableAll= [] |
| | | this.$nextTick(() => this.initInputDOM()); |
| | | this.tableAll = row; |
| | | this.tjNumber = row.tjNumber; |
| | | let num = 0; |
| | | getParentList(this.tjNumber,this.tjStatus).then((response) => { |
| | | if (response.data) { |
| | | getParentList(this.tjNumber, this.tjStatus) |
| | | .then((response) => { |
| | | if (response.data) { |
| | | this.loading = false; |
| | | this.isLoading = false; |
| | | this.Parent = response.data; |
| | | this.Parent.forEach((item) => { |
| | | if (item.type === 1) item.proName += " ✔"; |
| | | if (num === 0) { |
| | | this.nums = item.proId; |
| | | this.radio = item.proId; |
| | | this.proId = item.proId; |
| | | this.getParentIdsss(); |
| | | this.getbzlist(); |
| | | } |
| | | num = num + 1; |
| | | }); |
| | | } else { |
| | | // this.loading = false; |
| | | // this.isLoading = false; |
| | | this.Parent = []; |
| | | this.$modal.msgError("该科室下无项目!"); |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | console.error("请求失败:", error); |
| | | this.$modal.msgError("数据加载失败"); |
| | | }) |
| | | .finally(() => { |
| | | this.loading = false; |
| | | this.Parent = response.data; |
| | | this.Parent.forEach((item) => { |
| | | if (item.type === 1) item.proName += " ✔"; |
| | | if (num === 0) { |
| | | this.nums = item.proId; |
| | | this.radio = item.proId; |
| | | this.proId = item.proId; |
| | | this.getParentIdsss(); |
| | | this.getbzlist(); |
| | | } |
| | | num = num + 1; |
| | | }); |
| | | } else { |
| | | this.loading = false; |
| | | this.Parent = []; |
| | | this.$modal.msgError("该科室下无项目!"); |
| | | } |
| | | }); |
| | | this.isLoading = false; // 确保最终状态重置 |
| | | }); |
| | | this.getbzlist(); |
| | | }, |
| | | |
| | |
| | | if (item.hzType != "0") { |
| | | item.hzDeptIdList.forEach((item1) => { |
| | | this.deptList.forEach((item2) => { |
| | | if (item1 == item2.deptId) item.hzDeptName += item2.deptName + ","; |
| | | if (item1 == item2.deptId) |
| | | item.hzDeptName += item2.deptName + ","; |
| | | }); |
| | | }); |
| | | } |
| | |
| | | if (tab.name == item.proId) this.Parentcheck = item; |
| | | }); |
| | | |
| | | this.$confirm("检测到体检结果未提交,是否在离开该项目前提交修改?", "确认信息", { |
| | | distinguishCancelAndClose: true, |
| | | confirmButtonText: "提交", |
| | | cancelButtonText: "不保存,离开", |
| | | }) |
| | | this.$confirm( |
| | | "检测到体检结果未提交,是否在离开该项目前提交修改?", |
| | | "确认信息", |
| | | { |
| | | distinguishCancelAndClose: true, |
| | | confirmButtonText: "提交", |
| | | cancelButtonText: "不保存,离开", |
| | | } |
| | | ) |
| | | .then(() => { |
| | | let tjNumber = this.tableAll.tjNumber; |
| | | this.userList.forEach((item) => { |
| | |
| | | }); |
| | | }); |
| | | |
| | | var data = [{ |
| | | tjNumber, |
| | | proId: this.proId, |
| | | remark: this.proParentList.remark, |
| | | proName: this.proName, |
| | | summaryList: this.value, |
| | | doctorName: this.doctorName, |
| | | tjOrderDetailList: this.tjOrderDetail, |
| | | }]; |
| | | var data = [ |
| | | { |
| | | tjNumber, |
| | | proId: this.proId, |
| | | remark: this.proParentList.remark, |
| | | proName: this.proName, |
| | | summaryList: this.value, |
| | | doctorName: this.doctorName, |
| | | tjOrderDetailList: this.tjOrderDetail, |
| | | }, |
| | | ]; |
| | | getaddRemark(data).then((res) => this.$modal.msgSuccess("提交成功")); |
| | | this.proName = this.Parentcheck.proName; |
| | | this.nums = tab.name; |
| | |
| | | this.getbzlist(); |
| | | }) |
| | | .catch((action) => { |
| | | if (action === "cancel") this.$message({ type: "warning", message: "放弃保存并离开" }); |
| | | if (action === "cancel") |
| | | this.$message({ type: "warning", message: "放弃保存并离开" }); |
| | | this.proName = this.Parentcheck.proName; |
| | | this.nums = tab.name; |
| | | this.proId = tab.name; |
| | |
| | | }); |
| | | }); |
| | | |
| | | let data = [{ |
| | | tjNumber, |
| | | proId: this.proId, |
| | | remark: this.proParentList.remark, |
| | | proName: this.proName, |
| | | summaryList: this.vaids1, |
| | | doctorName: this.doctorName, |
| | | tjOrderDetailList: this.tjOrderDetail, |
| | | }]; |
| | | let data = [ |
| | | { |
| | | tjNumber, |
| | | proId: this.proId, |
| | | remark: this.proParentList.remark, |
| | | proName: this.proName, |
| | | summaryList: this.vaids1, |
| | | doctorName: this.doctorName, |
| | | tjOrderDetailList: this.tjOrderDetail, |
| | | }, |
| | | ]; |
| | | getaddRemark(data).then((res) => { |
| | | this.$modal.msgSuccess("提交成功"); |
| | | this.rows = []; // 提交成功后清空 this.rows |
| | |
| | | /* 轻微的红色背景 */ |
| | | } |
| | | |
| | | ::v-deep .bgc .el-table__body tr:hover>td { |
| | | ::v-deep .bgc .el-table__body tr:hover > td { |
| | | background-color: #ffe6e6 !important; |
| | | } |
| | | |