| | |
| | | <template> |
| | | <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="cusSex" width="60px"> |
| | |
| | | </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="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="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> |
| | |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="申请时间" prop="createTime"> |
| | | <el-date-picker v-model="form.createTime" type="datetime" placeholder="选择申请时间"> |
| | | </el-date-picker> |
| | | </el-form-item> --> |
| | | </el-form> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | <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.replyContent }}</div> |
| | | </div> |
| | |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <!-- 点击右边弹出层 --> |
| | | <el-drawer :visible.sync="drawer" :with-header="false" size="70%" :before-close="handleClose"> |
| | | <div style="font-size: 14px"> |
| | | <table style=" |
| | |
| | | font-size: 16px; |
| | | " cellspacing="4"> |
| | | <caption style="background-color: #f8f8f9; font-size: 18px"> |
| | | 填写{{ |
| | | tableAll.cusName |
| | | }}的体检资料 |
| | | 填写{{ 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.cusSex == 0 |
| | | ? "男" |
| | | : tableAll.cusSex == 1 |
| | | ? "女" |
| | | : "未知" |
| | | }} |
| | | {{ tableAll.cusSex == 0 ? "男" : tableAll.cusSex == 1 ? "女" : "未知" }} |
| | | </td> |
| | | </tr> |
| | | <tr style="border: 1px solid #dfe6ec; border-collapse: collapse"> |
| | |
| | | <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" |
| | | <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"></el-input> |
| | | @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"> |
| | |
| | | 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" |
| | |
| | | <el-table-column prop="project.proName" label="检测项目" width="100"> |
| | | </el-table-column> |
| | | <el-table-column prop="proResult" label="检测结果" width="150"> |
| | | <!-- slot-scope="scope" --> |
| | | <template slot-scope="{ row, $index }"> |
| | | <el-input type="textarea" autosize size="mini" v-model="row.proResult" |
| | | <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)"></el-input> |
| | | <!-- @input="vale" --> |
| | | <!-- <el-input type="textarea" autosize size="mini" v-model="scope.row.proResult" autocomplete="off" :ref="`input-${scope.$index}-${scope.row.proResult}`" |
| | | placeholder="请输入检测结果" @keyup=" |
| | | keyInputConfirm($event,scope.$index,'proResult') |
| | | " @focus="handleFocus(scope.row)" @blur="handleInputConfirm(scope.row)" |
| | | @input="vale"></el-input> --> |
| | | @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"> |
| | |
| | | </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" |
| | |
| | | <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" |
| | |
| | | "> |
| | | <el-input type="textarea" placeholder="请选择内容" v-model="titles" rows="2"> |
| | | </el-input> |
| | | <!-- <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; |
| | |
| | | <proposal ref="proposal" :cusobj="cusobj" @event1="eventchange($event)" /> |
| | | <createproposal ref="createproposal" :creatobj="creatobj" /> |
| | | |
| | | <!-- 检查检验结果按钮的弹框 --> |
| | | <el-dialog title="检查检验结果" :visible.sync="openOne" width="80%"> |
| | | <div style=" |
| | | width: 100%; |
| | |
| | | <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" width="120px"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-button |
| | | size="mini" |
| | | type="text" |
| | | :disabled="scope.row.type === 1" |
| | | @click="qijian(scope.row)" |
| | | >{{ scope.row.type === 0 ? "弃检" : "恢复" }}</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 v-if="jyjc == 1"> |
| | | <div style="text-align: center; background-color: #aad8df"></div> |
| | | <div class="check-result-container"> |
| | |
| | | {{ jieguoList[0].pro_result }} |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="check-item"> |
| | | <div class="check-title">检查结论:</div> |
| | | <div class="check-description" :style="{ color: isRed ? 'red' : '' }"> |
| | |
| | | <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-form-item> |
| | |
| | | <div class="tab4_txt"> |
| | | <h4>已选病种</h4> |
| | | </div> |
| | | |
| | | <el-table border :data="deptAdviceList1" height="430px"> |
| | | <el-table-column prop="title" label="病种名称" align="center"> |
| | | </el-table-column> |
| | |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <!-- <el-table |
| | | :data="DataList" |
| | | border |
| | | style="width: 100%" |
| | | height="400" |
| | | :span-method="objectSpanMethod" |
| | | > |
| | | <el-table-column prop="propinName" label="检查项目"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="proName" |
| | | label="明细项目" |
| | | width="260px" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column prop="proPrice" label="原价" width="56px"> |
| | | </el-table-column> |
| | | |
| | | <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> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> --> |
| | | |
| | | <!-- <el-collapse v-model="activeName" accordion v-if="list1"> |
| | | <div> |
| | | <el-collapse-item title="请选择项目"> |
| | | <el-table |
| | | :data="DataList" |
| | | border |
| | | style="width: 100%" |
| | | height="400" |
| | | :span-method="objectSpanMethod" |
| | | > |
| | | <el-table-column |
| | | prop="proName" |
| | | label="项目" |
| | | width="180" |
| | | > |
| | | </el-table-column> |
| | | <el-table-column prop="ordPrice" label="原价"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-collapse-item> |
| | | </div> |
| | | </el-collapse> --> |
| | | </div> |
| | | </div> |
| | | </el-tab-pane> |
| | |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | |
| | | <script> |
| | | import jianceResult from "@/components/jianceResult"; |
| | |
| | | import { getChildList } from "@/api/system/dept"; |
| | | import { resultList } from "@/api/doctor/examination"; |
| | | import { selectZT } from "@/api/system/package"; |
| | | import { get } from "sortablejs"; |
| | | |
| | | export default { |
| | | dicts: ["sys_user_sex", "sys_yes_no", "tj_result_type", "lj_positive"], |
| | | name: "check", |
| | |
| | | jianqians: false, |
| | | selected: false, |
| | | checkval: false, |
| | | // 遮罩层 |
| | | loading: false, |
| | | open: false, |
| | | foropen: false, |
| | |
| | | formIn: {}, |
| | | focusrow: {}, |
| | | hzlogList: [], |
| | | // proDefault: "", |
| | | // dataList: [], |
| | | rows: [], |
| | | id: [], |
| | | deptAdviceList: [], |
| | |
| | | deptAdviceList3: [], |
| | | deptAdviceList4: [], |
| | | value: {}, |
| | | remark: "", //备注 |
| | | remark: "", |
| | | remarks: "", |
| | | // 总条数 |
| | | total: 0, |
| | | total1: 0, |
| | | // 绑定单选按钮 |
| | | tjStatus: "0", |
| | | // 抽屉打开方式 |
| | | drawer: false, |
| | | Parentcheck: {}, |
| | | // 获取抽屉列表 |
| | | drawerList: [], |
| | | // 获取信息集合 |
| | | tableList: [], |
| | | deptList: [], |
| | | jieguoList: [], |
| | |
| | | form: { |
| | | createTime: new Date(), |
| | | }, |
| | | // 医生 |
| | | doctorName: "", |
| | | // 父项 |
| | | proName: "", |
| | | // 父项Id |
| | | proId: "", |
| | | company: "", |
| | | tjStandardGtValue: "", |
| | | xiangmuList: [], |
| | | name: "", |
| | | // 用户表格数据 |
| | | userList: null, |
| | | // 父项目列表 |
| | | curindex: {}, |
| | | Parent: [], |
| | | hzReplyLogsList: [], |
| | |
| | | nums: "", |
| | | proParentList: [], |
| | | tjNumber: "", |
| | | // 全部小结 |
| | | DeptadviceAll: [], |
| | | project: {}, |
| | | // 小结 |
| | | summaryList: [], |
| | | summaryAll: [], |
| | | tjOrderDetailList: [], |
| | |
| | | .toJSON() |
| | | .substr(0, 19) |
| | | .replace("T", " "), |
| | | // 查询参数 |
| | | queryParams: { |
| | | page: 1, |
| | | pageSize: 10, |
| | |
| | | this.$refs.inputName.focus(); |
| | | }); |
| | | }, |
| | | |
| | | beforeDestroy() { |
| | | if (this.timer) { |
| | | clearInterval(this.timer); |
| | |
| | | }, |
| | | |
| | | methods: { |
| | | // 计算 BMI |
| | | calculateBMI(height, weight) { |
| | | if (height && weight) { |
| | | const heightInMeters = parseFloat(height) / 100; // cm 转换为 m |
| | | const weightInKg = parseFloat(weight); |
| | | const bmi = weightInKg / (heightInMeters * heightInMeters); |
| | | return bmi.toFixed(1); // 保留一位小数 |
| | | } |
| | | 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; |
| | | } |
| | | |
| | | 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) { |
| | | console.log(row, params, 55555); |
| | | // 如果有 params 且为空,取消异常状态并清空相关字段 |
| | | if (params && params.length === 0) { |
| | | row.exceptionDesc = false; |
| | | row.proResult = ""; |
| | | row.conclusion = ""; |
| | | row.proAdvice = ""; |
| | | row.rulesList = []; |
| | | return; |
| | | } |
| | | |
| | | // 处理 BMI 计算 |
| | | 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) { |
| | | this.$message.error('缺少身高、体重或 BMI 项目'); |
| | | return; |
| | | } |
| | | |
| | | 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.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; |
| | | }); |
| | | } |
| | | }); |
| | | } else { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | keyWord: this.proResult.proResult, |
| | | 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; |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | // 将当前行添加到 rows 中 |
| | | this.rows.push(row); |
| | | console.log(this.rows, row); |
| | | } |
| | | }, |
| | | |
| | | // 初始化数据时计算 BMI |
| | | getParentIdsss() { |
| | | let data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | getParentId(data).then((response) => { |
| | | if (response.data != {}) { |
| | | this.proParentList = response.data; |
| | | 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 bmi = this.calculateBMI(heightRow.proResult, weightRow.proResult); |
| | | bmiRow.proResult = bmi || ''; |
| | | } else { |
| | | this.$message.error('缺少身高、体重或 BMI 项目'); |
| | | } |
| | | this.proParentList.xiaoJie.forEach((item) => { |
| | | this.titles += item.title + ","; |
| | | }); |
| | | } |
| | | |
| | | this.loading = false; |
| | | this.value = []; |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | | } |
| | | this.proParentList.sons.forEach((item) => { |
| | | this.doctorName = item.doctorName; |
| | | |
| | | if (this.doctorName == null) { |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | }); |
| | | } |
| | | 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 (this.proParentList.xiaoJie && this.proParentList.xiaoJie.length != 0) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === this.nums) { |
| | | this.proParentList.remark = item3.remark; |
| | | } |
| | | }); |
| | | } else { |
| | | this.proParentList.remark = ""; |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | handleFocus(row) { |
| | | this.autorule = []; |
| | | if (!row.resultType || row.resultType == 2) { |
| | |
| | | }).then((res) => { |
| | | if (res.data.length > 0) { |
| | | this.$refs.bbb.title = "选择检测结果"; |
| | | // this.$refs.bbb.proId = row.proId; |
| | | this.$refs.bbb.open = true; |
| | | this.$refs.bbb.getList(this.curindex); |
| | | } else { |
| | | this.$refs.bbb.open = false; |
| | | } |
| | | }); |
| | | |
| | | } |
| | | }, |
| | | |
| | | handleChangesZt(params) { |
| | | this.curindex.proResult = params.map((item) => item.ruleStr).join(","); |
| | | this.handleInputConfirm(this.curindex, params); |
| | | }, |
| | | |
| | | handleChanges(param1, param2) { |
| | | this.row.conclusion = param1; |
| | | this.row.rulesList = param2; |
| | | }, |
| | | |
| | | handleguize(row) { |
| | | this.row = row; |
| | | this.$refs.aaa.open = true; |
| | | this.$refs.aaa.title = "诊断结果结论"; |
| | | this.$refs.aaa.getList(this.row); |
| | | }, |
| | | |
| | | tableRowClassName({ row }) { |
| | | if (row.exceptionDesc) { |
| | | return "warning-row"; |
| | | } |
| | | if (row.exceptionDesc) return "warning-row"; |
| | | return ""; |
| | | }, |
| | | |
| | | getbzlist() { |
| | | this.loading = true; |
| | | getDeptAdvice(this.queryParam1).then((response) => { |
| | | |
| | | if (response.data.list) { |
| | | this.deptAdviceList = response.data.list; |
| | | this.loading = false |
| | | this.loading = false; |
| | | } |
| | | |
| | | this.total1 = response.data.total; |
| | | }); |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | |
| | | handleQuerys() { |
| | | this.queryParam1.page = 1; |
| | | this.getbzlist(); |
| | | }, |
| | | |
| | | bzxz() { |
| | | this.taocan = true; |
| | | let data = { |
| | | proId: this.proId, |
| | | tjNum: this.tableAll.tjNumber, |
| | | }; |
| | | let data = { proId: this.proId, tjNum: this.tableAll.tjNumber }; |
| | | getAdviceByTjNumAndPro(data).then((res) => { |
| | | if (res.data) { |
| | | // this.deptAdviceList2 = []; |
| | | 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 + ","; |
| | |
| | | } |
| | | }); |
| | | }, |
| | | // 检查检验结果按钮 |
| | | |
| | | result() { |
| | | let tjNumber = this.tableAll.tjNumber; |
| | | |
| | | getXm(tjNumber).then((res) => { |
| | | this.xiangmuList = res.data; |
| | | if (this.xiangmuList.length > 0) { |
| | | this.openOne = true; |
| | | } |
| | | if (this.xiangmuList.length > 0) this.openOne = true; |
| | | else { |
| | | this.openOne = false; |
| | | this.$modal.msgWarning("暂无项目与检查检验结果") |
| | | this.$modal.msgWarning("暂无项目与检查检验结果"); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | queryResultone(row) { |
| | | const tjNum = this.tableAll.tjNumber; |
| | | const proId = row.proId; |
| | | resultList(tjNum, proId).then((res) => { |
| | | this.jieguoList = res.data; |
| | | |
| | | this.jyjc = this.jieguoList[0].jyjc; |
| | | const ycbz = this.jieguoList[0].ycbz; |
| | | // 设置是否需要改变颜色 |
| | | if (ycbz === "1") { |
| | | this.isRed = true; // 设置标识,改变字体颜色 |
| | | } else { |
| | | this.isRed = false; // 恢复默认颜色 |
| | | } |
| | | |
| | | this.isRed = ycbz === "1"; |
| | | if (res.data.length > 0) { |
| | | this.drawer = true; |
| | | this.$nextTick(() => { |
| | | this.initInputDOM() |
| | | }) |
| | | this.$nextTick(() => this.initInputDOM()); |
| | | } else { |
| | | this.$message.warning("该项目没有结果"); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | changRed({ row }) { |
| | | if (row.ycbz != "" && row.ycbz != null && row.ycbz === "1") { |
| | | // 变颜色的条件 |
| | | return { |
| | | color: "red", // 这个return的就是样式 可以是color 也可以是backgroundColor |
| | | }; |
| | | } |
| | | if (row.ycbz === "1") return { color: "red" }; |
| | | }, |
| | | /** 删除按钮操作 */ |
| | | |
| | | handleDelete(row) { |
| | | this.deptAdviceList1.forEach((item, index) => { |
| | | if (item.id == row.id) { |
| | | this.deptAdviceList1.splice(index, 1); |
| | | } |
| | | if (item.id == row.id) this.deptAdviceList1.splice(index, 1); |
| | | }); |
| | | }, |
| | | |
| | | handleSelectionChanges(selection) { |
| | | this.deptAdviceList2 = this.deptAdviceList1; |
| | | if (selection.length > 1) { |
| | | const del_row = selection.shift(); |
| | | this.$refs.multipleTable.toggleRowSelection(del_row, false); |
| | | } |
| | | |
| | | // this.selectArr = selection; |
| | | selection.forEach((item) => { |
| | | this.deptAdviceList2.push(item); |
| | | }); |
| | | this.deptAdviceList1 = [ |
| | | ...new Set(this.deptAdviceList2.concat(this.deptAdviceList3)), |
| | | ]; |
| | | selection.forEach((item) => this.deptAdviceList2.push(item)); |
| | | this.deptAdviceList1 = [...new Set(this.deptAdviceList2.concat(this.deptAdviceList3))]; |
| | | }, |
| | | |
| | | queding() { |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | // this.proParentList.remark = ""; |
| | | this.remakes = ""; |
| | | this.titles = ""; |
| | | // this.deptAdviceList.forEach((item) => { |
| | | // this.ids = item.id; |
| | | this.deptAdviceList1.forEach((item1) => { |
| | | // if ( |
| | | // item1.id === item.id && |
| | | // !this.proParentList.remark.includes(item.title) |
| | | // ) { |
| | | 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.vaids.push(item1.id); |
| | | this.vaids1 = this.vaids.concat(this.idss); |
| | | } |
| | | // } |
| | | }); |
| | | // }); |
| | | this.taocan = false; |
| | | } else { |
| | | // this.proParentList.remark = ""; |
| | | this.titles = ""; |
| | | this.remakes = ""; |
| | | |
| | | this.deptAdviceList1.forEach((item) => { |
| | | this.titles += item.title + ","; |
| | | this.remakes += item.advice + ","; |
| | | this.vaids.push(item.id); |
| | | this.vaids1 = this.vaids.concat(this.idss); |
| | | }); |
| | | |
| | | if (this.proParentList.remark != null) { |
| | | this.proParentList.remark = ""; |
| | | |
| | | let data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | getParentId(data).then((response) => { |
| | | this.proParentList = response.data; |
| | | this.proParentList.remark = |
| | | this.remakes + this.proParentList.remark; |
| | | }); |
| | | this.proParentList.remark = this.remakes + this.proParentList.remark; |
| | | } else { |
| | | this.proParentList.remark = this.remakes; |
| | | } |
| | | |
| | | this.taocan = false; |
| | | } |
| | | }, |
| | | /** 查询用户列表 */ |
| | | |
| | | getListUser() { |
| | | getlistUser().then((response) => { |
| | | this.userList = response.data; |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | if (userName == element.userName) this.doctorName = element.nickName; |
| | | }); |
| | | }); |
| | | getInfo().then((response) => { |
| | |
| | | this.nickName = response.user.nickName; |
| | | }); |
| | | }, |
| | | |
| | | handleClose() { |
| | | // 只刷新表格数据 |
| | | this.getList(); |
| | | this.drawer = false; |
| | | this.drawer = false; // 只关闭抽屉,不刷新页面或重置数据 |
| | | }, |
| | | |
| | | handleClose1() { |
| | | this.jianqians = false; |
| | | }, |
| | | // 获取医生 |
| | | |
| | | selName(val) { |
| | | this.doctorName = val; |
| | | // this.userList.forEach(item =>{ |
| | | // if(val === item.userId){ |
| | | // this.doctorName = item.nickName |
| | | // } |
| | | // }) |
| | | }, |
| | | |
| | | changDesc(item) { |
| | | if (item.exceptionDesc == true) { |
| | | item.conclusion = "异常" |
| | | } else { |
| | | item.conclusion = "正常" |
| | | } |
| | | item.conclusion = item.exceptionDesc ? "异常" : "正常"; |
| | | }, |
| | | |
| | | myclass(row, column, rowIndex, columnIndex) { |
| | | if (row.row.isPositive == 1) { |
| | | return "setclass"; |
| | | } |
| | | if (row.row.isPositive == 1) return "setclass"; |
| | | }, |
| | | // 小结获取备注 |
| | | |
| | | sel(val) { |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | // this.proParentList.remark = ""; |
| | | this.deptAdviceList.forEach((item) => { |
| | | this.ids = item.id; |
| | | val.forEach((item1) => { |
| | | if ( |
| | | item1 === item.id && |
| | | !this.proParentList.remark.includes(item.title) |
| | | ) { |
| | | if (this.proParentList.remark) { |
| | | this.proParentList.remark += item.title + ","; |
| | | } else { |
| | | this.proParentList.remark = 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) |
| | | ) { |
| | | if (this.proParentList.remark) { |
| | | this.proParentList.remark += item.title + ","; |
| | | } else { |
| | | this.proParentList.remark = 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 + ","; |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | }, |
| | | vale(value) { |
| | | // 你可以在这里处理输入事件 |
| | | console.log("输入内容:", value); |
| | | }, |
| | | |
| | | initInputDOM() { |
| | | // 获取id为table-form下的所有input 框 |
| | | const inputDoms = document.querySelectorAll('.el-input__inner') |
| | | // 遍历这个input框给他们一个标识 |
| | | inputDoms.forEach((item, index) => { |
| | | item.setAttribute('data-index', index) |
| | | }) |
| | | this.inputDoms = inputDoms |
| | | // console.log(this.inputDoms) |
| | | const inputDoms = document.querySelectorAll('.el-input__inner'); |
| | | inputDoms.forEach((item, index) => item.setAttribute('data-index', index)); |
| | | this.inputDoms = inputDoms; |
| | | }, |
| | | |
| | | keyInputConfirm(event, index, currentRowIndex) { |
| | | // 阻止默认回车行为,比如提交表单 |
| | | event.preventDefault(); |
| | | event.stopPropagation() |
| | | event.stopPropagation(); |
| | | const nextRowIndex = currentRowIndex + 1; // 计算下一行索引 |
| | | // 如果下一行存在,则聚焦该行的输入框 |
| | | if (nextRowIndex < this.proParentList.sons.length) { |
| | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | }, |
| | | handleInputConfirm(datas, params) { |
| | | if (params && params.length === 0) { |
| | | // 如果没有选中任何项目,取消异常复选框的选中状态 |
| | | this.curindex.exceptionDesc = false; |
| | | this.curindex.proResult = ""; |
| | | this.curindex.conclusion = ""; |
| | | this.curindex.proAdvice = ""; |
| | | this.curindex.rulesList = []; |
| | | // console.log("出发了"); |
| | | return; // 这里的 return 会提前结束函数执行 |
| | | } |
| | | |
| | | if (datas.proResult) { |
| | | this.focusrow = datas; |
| | | this.proResult = datas; |
| | | var pattern3 = new RegExp("[0-9]+"); |
| | | if (pattern3.test(this.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) { |
| | | if (this.autorule[0] || this.autorule[0].nr) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | } |
| | | |
| | | this.autorule.forEach((item) => { |
| | | if (this.focusrow.conclusion) { |
| | | this.focusrow.conclusion += item.bz; |
| | | } else { |
| | | this.focusrow.conclusion += item.bz; |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | } else { |
| | | let data = { |
| | | proId: this.focusrow.proId, |
| | | cusId: this.tableAll.cusId, |
| | | keyWord: this.proResult, |
| | | 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) { |
| | | if (this.autorule[0] || this.autorule[0].nr) { |
| | | this.focusrow.proAdvice = this.autorule[0].nr; |
| | | } |
| | | } |
| | | |
| | | |
| | | this.autorule.forEach((item) => { |
| | | if (this.focusrow.conclusion) { |
| | | this.focusrow.conclusion += item.bz; |
| | | } else { |
| | | this.focusrow.conclusion += item.bz; |
| | | } |
| | | }); |
| | | // this.rows.push(this.focusrow); |
| | | } |
| | | }); |
| | | } |
| | | this.rows.push(datas); |
| | | } |
| | | }, |
| | | |
| | | handleguize(row) { |
| | | this.row = row; |
| | | this.$refs.aaa.open = true; |
| | | this.$refs.aaa.title = "诊断结果结论"; |
| | | this.$refs.aaa.getList(this.row); |
| | | }, |
| | | |
| | | handleChanges(param1, param2) { |
| | | this.row.conclusion = param1; |
| | | this.row.rulesList = param2; |
| | | }, |
| | | |
| | | getList() { |
| | |
| | | if (response.code == 200) { |
| | | this.loading = false; |
| | | if (response.data) { |
| | | if (response.data.date) { |
| | | this.tableList = response.data.date; |
| | | } else { |
| | | this.tableList = response.data.customers; |
| | | } |
| | | this.tableList = response.data.date || response.data.customers || []; |
| | | this.total = response.data.total; |
| | | } else { |
| | | this.tableList = []; |
| | |
| | | }); |
| | | }, |
| | | |
| | | // 单选按钮 |
| | | radioChange(val) { |
| | | this.queryParams.type = val; |
| | | this.loading = true; |
| | | getProList(this.queryParams).then((response) => { |
| | | if (response.code == 200) { |
| | | this.loading = false; |
| | | if (response.data) { |
| | | this.tableList = response.data.date; |
| | | this.total = response.data.total; |
| | | } else { |
| | | this.tableList = []; |
| | | } |
| | | this.tableList = response.data.date || response.data.customers || []; |
| | | this.total = response.data.total; |
| | | } else { |
| | | this.tableList = []; |
| | | } |
| | | }); |
| | | }, |
| | | hb() { |
| | | /* if (this.queryParams.tjNumber != "") { |
| | | // this.submitForm(); |
| | | } */ |
| | | }, |
| | | |
| | | hb() {}, |
| | | |
| | | propoChange() { |
| | | this.cusobj = { sex: this.tableAll.cusSex, isZj: 1 }; |
| | | this.$refs.proposal.open = true; |
| | | this.$refs.proposal.title = "建议方案"; |
| | | // this.$refs.proposal.getList(); |
| | | }, |
| | | |
| | | eventchange(data) { |
| | | this.dataText = data; |
| | | data.forEach((item) => { |
| | | this.proParentList.remark += item.advice; |
| | | }); |
| | | data.forEach((item) => this.proParentList.remark += item.advice); |
| | | }, |
| | | |
| | | proposalChange() { |
| | | if (this.proParentList.remark) { |
| | | this.creatobj = { proParentList: this.proParentList.remark, isZj: 1 }; |
| | | this.$refs.createproposal.open = true; |
| | | this.$refs.createproposal.title = "常用建议维护"; |
| | | } else { |
| | | this.$message({ |
| | | type: "warning ", |
| | | message: "请先填写总检建议", |
| | | }); |
| | | this.$message({ type: "warning", message: "请先填写总检建议" }); |
| | | } |
| | | }, |
| | | |
| | | // 搜索 |
| | | submitForm() { |
| | | this.queryParams.page = 1; |
| | | this.loading = true; |
| | |
| | | getProList(this.queryParams).then((response) => { |
| | | if (response.code == 200) { |
| | | this.loading = false; |
| | | if (response.data) { |
| | | if (response.data.date) { |
| | | this.tableList = response.data.date; |
| | | this.queryParams.tjNumber = ""; |
| | | } else { |
| | | this.tableList = response.data.customers; |
| | | this.queryParams.tjNumber = ""; |
| | | } |
| | | this.total = response.data.total; |
| | | } else { |
| | | this.tableList = []; |
| | | } |
| | | this.tableList = response.data.date || response.data.customers || []; |
| | | this.total = response.data.total; |
| | | this.queryParams.tjNumber = ""; |
| | | } else { |
| | | this.tableList = []; |
| | | } |
| | | }); |
| | | |
| | | // this.loading = true; |
| | | // (this.queryParams = { |
| | | // page: 1, |
| | | // pageSize: 10, |
| | | // tjNumber: this.queryParams.tjNumber, |
| | | // name: this.queryParams.name, |
| | | // }), |
| | | // getProList(this.queryParams).then((response) => { |
| | | // if (response.data) { |
| | | // if (response.data.customers) { |
| | | // this.tableList = response.data.customers; |
| | | // this.loading = false; |
| | | // this.tableList.forEach((item) => { |
| | | // this.tjStatus = item.tjStatus; |
| | | // }); |
| | | // } else { |
| | | // this.tableList = response.data.customers; |
| | | // this.tableList.forEach((item) => { |
| | | // this.tjStatus = item.tjStatus; |
| | | // }); |
| | | // } |
| | | // this.total = response.data.total; |
| | | // } else { |
| | | // this.tableList = []; |
| | | // } |
| | | // }); |
| | | }, |
| | | // 重置 |
| | | |
| | | resetQuery() { |
| | | this.resetForm("tableList"); |
| | | this.submitForm(); |
| | | this.$nextTick(() => { |
| | | this.$refs.inputName.focus(); |
| | | }); |
| | | this.$nextTick(() => this.$refs.inputName.focus()); |
| | | }, |
| | | |
| | | Changeapplyfor(row) { |
| | | 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); |
| | | }, |
| | | |
| | |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | submitcheckval() { |
| | | addBigPositive(this.formIn).then((res) => { |
| | | this.$modal.msgSuccess("新增成功"); |
| | |
| | | this.checkval = false; |
| | | }); |
| | | }, |
| | | |
| | | cancell() { |
| | | this.checkval = false; |
| | | this.vals.isPositive = "0"; |
| | | }, |
| | | |
| | | Hzlog(val) { |
| | | let data = { |
| | | tjNumber: val, |
| | | }; |
| | | let data = { tjNumber: val }; |
| | | listHzlog(data).then((response) => { |
| | | this.hzlogList = response.rows; |
| | | this.hzlogList.forEach((item) => { |
| | | item.hzDeptName = ""; |
| | | if (item.hzType == "0") { |
| | | item.hzDeptName = "全院会诊"; |
| | | } else { |
| | | item.hzDeptName = item.hzType == "0" ? "全院会诊" : ""; |
| | | 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 + ","; |
| | | }); |
| | | }); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | |
| | | handledele(row) { |
| | | this.id = []; |
| | | this.id.push(row.id); |
| | | this.id = [row.id]; |
| | | delHzlog(this.id).then((res) => { |
| | | this.$modal.msgSuccess("删除成功"); |
| | | this.Hzlog(this.form.tjNumber); |
| | |
| | | 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) => { |
| | |
| | | hzDoctorName: this.form.hzDoctorName, |
| | | id: this.form.id, |
| | | }; |
| | | if (this.form.hzDeptId.length != 0) { |
| | | if (this.form.hzDeptId?.length) { |
| | | addHzlog(data).then((res) => { |
| | | if (res.code == 200) { |
| | | this.$modal.msgSuccess("申请成功"); |
| | |
| | | this.$modal.msgError("请选择会诊科室"); |
| | | } |
| | | }, |
| | | |
| | | cancel() { |
| | | this.open = false; |
| | | this.foropen = false; |
| | |
| | | this.foropen = true; |
| | | this.Hzlog(this.tableAll.tjNumber); |
| | | }, |
| | | |
| | | historicalreport() { |
| | | this.baogaoqian = false; |
| | | this.baogaohou = true; |
| | | this.loading = true; |
| | | let data = { |
| | | cusId: this.tableAll.cusId, |
| | | }; |
| | | let data = { cusId: this.tableAll.cusId }; |
| | | reportHistory(data).then((res) => { |
| | | this.loading = false; |
| | | if (res.data[0] != null) { |
| | | this.reportHistorydata = res.data; |
| | | } |
| | | if (this.reportHistorydata.length >= 1) { |
| | | this.lishi = true; |
| | | } else { |
| | | this.lishi = true; |
| | | this.$modal.msgError("暂无历史报告"); |
| | | } |
| | | if (res.data[0] != null) this.reportHistorydata = res.data; |
| | | this.lishi = this.reportHistorydata.length >= 1; |
| | | if (!this.lishi) this.$modal.msgError("暂无历史报告"); |
| | | }); |
| | | }, |
| | | |
| | | jianqian() { |
| | | this.flags = true; |
| | | this.jianqians = true; |
| | | let tjNumber = this.tableAll.tjNumber; |
| | | this.jianqianwenzhendata.push(tjNumber); |
| | | this.jianqianwenzhendata.push(this.tableAll.tjNumber); |
| | | }, |
| | | |
| | | handlecan(row) { |
| | |
| | | spinner: "el-icon-loading", |
| | | background: "rgba(0, 0, 0, 0.7)", |
| | | }); |
| | | setTimeout(() => { |
| | | loading.close(); |
| | | }, 3000); |
| | | // this.$message.msgSuccess("报告正在生成,请两分钟后预览!"); |
| | | this.$message({ |
| | | type: "warning ", |
| | | message: "报告正在生成,请两分钟后预览!!", |
| | | }); |
| | | setTimeout(() => loading.close(), 3000); |
| | | this.$message({ type: "warning", message: "报告正在生成,请两分钟后预览!" }); |
| | | } else { |
| | | this.dialogVisible = true; |
| | | |
| | | this.url = window.webkitURL.createObjectURL(response); //将后端返回的blob文件读取出url |
| | | this.url = window.webkitURL.createObjectURL(response); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | submitFormreply() { |
| | | let data = { |
| | | hzId: this.allList[0].id, |
| | |
| | | }); |
| | | }, |
| | | |
| | | // 多选框选中数据 |
| | | handleSelectionChange(selection) { |
| | | if (selection.length > 1) { |
| | | const newRows = selection.filter((it, index) => { |
| | |
| | | } 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 = []; |
| | | } |
| | |
| | | } |
| | | }, |
| | | |
| | | // 点击详情 |
| | | handleClick(row) { |
| | | this.getDept(row.tjNumber); |
| | | this.loading = true; |
| | | this.drawer = true; |
| | | this.$nextTick(() => { |
| | | this.initInputDOM() |
| | | }) |
| | | this.$nextTick(() => this.initInputDOM()); |
| | | this.tableAll = row; |
| | | // if (this.tableAll.cusSex === 0) { |
| | | // this.tableAll.cusSex = "男"; |
| | | // } |
| | | // if (this.tableAll.cusSex === 1) { |
| | | // this.tableAll.cusSex = "女"; |
| | | // } |
| | | // if (this.tableAll.cusSex === 2) { |
| | | // this.tableAll.cusSex = "未知"; |
| | | // } |
| | | this.tjNumber = row.tjNumber; |
| | | let num = 0; |
| | | let data = { |
| | | type: this.tjStatus, |
| | | tjNumber: this.tjNumber |
| | | } |
| | | getParentList(data).then((response) => { |
| | | getParentList(this.tjNumber,this.tjStatus).then((response) => { |
| | | if (response.data) { |
| | | this.loading = false; |
| | | this.Parent = response.data; |
| | | this.Parent.forEach((item) => { |
| | | if (item.type === 1) { |
| | | item.proName += " ✔"; |
| | | } |
| | | if (item.type === 1) item.proName += " ✔"; |
| | | if (num === 0) { |
| | | this.nums = item.proId; |
| | | this.radio = item.proId; |
| | | this.proId = item.proId; |
| | | // this.radioChange1(item.proId, item); |
| | | this.getParentIdsss(); |
| | | |
| | | this.getbzlist(); |
| | | } |
| | | num = num + 1; |
| | |
| | | } |
| | | }); |
| | | this.getbzlist(); |
| | | |
| | | // getSons(this.tjNumber).then((response) => { |
| | | // response.data.forEach(item1 => { |
| | | // if (item1.parent == '肝功检查') { |
| | | // this.DeptadviceAll = item1.parentAdvices |
| | | // } |
| | | // }) |
| | | // }); |
| | | |
| | | // 获取小结 |
| | | // getDeptadvice().then((response) => { |
| | | // response.data.forEach(item => { |
| | | // this.DeptadviceAll = item |
| | | // }) |
| | | // }); |
| | | }, |
| | | |
| | | getParentIdsss() { |
| | | let data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | getParentId(data).then((response) => { |
| | | if (response.data != {}) { |
| | | this.proParentList = response.data; |
| | | this.proParentList.xiaoJie.forEach((item) => { |
| | | this.titles += item.title + ","; |
| | | // this.advice += item.advice + ","; |
| | | }); |
| | | } |
| | | |
| | | this.loading = false; |
| | | this.value = []; |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | | } |
| | | this.proParentList.sons.forEach((item) => { |
| | | this.doctorName = item.doctorName; |
| | | if (this.doctorName == null) { |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | }); |
| | | } |
| | | |
| | | 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.exceptionDesc = false; |
| | | } |
| | | }); |
| | | if (this.proParentList.xiaoJie) { |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === this.nums) { |
| | | this.proParentList.remark = item3.remark; |
| | | } |
| | | }); |
| | | } |
| | | } else { |
| | | this.proParentList.remark = ""; |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | getDept(val) { |
| | | let data = { |
| | | tjNumber: val, |
| | | deptId: this.deptId, |
| | | }; |
| | | let data = { tjNumber: val, deptId: this.deptId }; |
| | | hzHasDept(data).then((res) => { |
| | | if (res.data) { |
| | | this.hasdeptList = res.data; |
| | | this.hasdeptList.forEach((item) => { |
| | | item.hzDeptName = ""; |
| | | if (item.hzType == "0") { |
| | | item.hzDeptName = "全院会诊"; |
| | | } else { |
| | | item.hzDeptName = item.hzType == "0" ? "全院会诊" : ""; |
| | | 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 + ","; |
| | | }); |
| | | }); |
| | | } |
| | |
| | | |
| | | handleTabClick(tab, event) { |
| | | this.Parent.forEach((item) => { |
| | | if (tab.name == item.proId) { |
| | | this.Parentcheck = item; |
| | | } |
| | | 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) => { |
| | | if (this.doctorName == item.nickName) { |
| | | this.doctorName = item.userId; |
| | | } |
| | | if (this.doctorName == item.nickName) this.doctorName = item.userId; |
| | | }); |
| | | this.proParentList.sons.forEach((item) => { |
| | | if (this.rows) { |
| | | this.rows.forEach((item1) => { |
| | | if (item1 === item) { |
| | | item = item1; |
| | | } |
| | | if (item1 === item) item = item1; |
| | | }); |
| | | } |
| | | this.tjOrderDetail.push({ |
| | | proAdvice: item.proAdvice, |
| | | |
| | | proName: item.project.proName, |
| | | proId: item.project.proId, |
| | | orderDetailId: item.orderDetailId, |
| | |
| | | }); |
| | | }); |
| | | |
| | | 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 = item.proName; |
| | | this.nums = tab.name; |
| | | this.proId = tab.name; |
| | | var data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | this.loading = true; |
| | | getParentId(data).then((response) => { |
| | | this.proParentList = response.data; |
| | | this.value = []; |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | | } |
| | | this.proParentList.sons.forEach((item) => { |
| | | this.doctorName = item.doctorName; |
| | | if (this.doctorName == null) { |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | }); |
| | | } |
| | | 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.exceptionDesc = false; |
| | | } |
| | | }); |
| | | if (this.proParentList.xiaoJie) { |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === tab.name) { |
| | | this.remark = this.Parentcheck.remark; |
| | | } |
| | | }); |
| | | } |
| | | } else { |
| | | this.remark = ""; |
| | | } |
| | | }); |
| | | |
| | | this.getbzlist(); |
| | | }) |
| | | .catch((action) => { |
| | | if (action === "cancel") { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "放弃保存并离开", |
| | | }); |
| | | } |
| | | |
| | | 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.proId = tab.name; |
| | | let data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | getParentId(data).then((response) => { |
| | | this.proParentList = response.data; |
| | | this.value = []; |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | | } |
| | | this.proParentList.sons.forEach((item) => { |
| | | this.doctorName = item.doctorName; |
| | | if (this.doctorName == null) { |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | }); |
| | | } |
| | | 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.exceptionDesc = false; |
| | | } |
| | | }); |
| | | if (this.proParentList.xiaoJie) { |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === tab.name) { |
| | | this.remark = this.Parentcheck.remark; |
| | | } |
| | | }); |
| | | } |
| | | } else { |
| | | this.remark = ""; |
| | | } |
| | | }); |
| | | |
| | | this.getbzlist(); |
| | | }); |
| | | }, |
| | | |
| | | // 按钮点击事件 |
| | | radioChange1(proParentId, item) { |
| | | this.Parentcheck = item; |
| | | this.$confirm( |
| | | "检测到体检结果未提交,是否在离开该项目前提交修改?", |
| | | "确认信息", |
| | | { |
| | | distinguishCancelAndClose: true, |
| | | confirmButtonText: "提交", |
| | | cancelButtonText: "不保存,离开", |
| | | } |
| | | ) |
| | | .then(() => { |
| | | // 体检号 |
| | | let tjNumber = this.tableAll.tjNumber; |
| | | this.userList.forEach((item) => { |
| | | if (this.doctorName == item.nickName) { |
| | | this.doctorName = item.userId; |
| | | } |
| | | }); |
| | | this.proParentList.sons.forEach((item) => { |
| | | if (this.rows) { |
| | | this.rows.forEach((item1) => { |
| | | if (item1 === item) { |
| | | item = item1; |
| | | } |
| | | // if (item.isReturn == true) { |
| | | // item.isReturn = 1; |
| | | // } |
| | | // if (item.isReturn == false) { |
| | | // item.isReturn = 0; |
| | | // } |
| | | }); |
| | | } |
| | | this.tjOrderDetail.push({ |
| | | proAdvice: item.proAdvice, |
| | | |
| | | proName: item.project.proName, |
| | | proId: item.project.proId, |
| | | orderDetailId: item.orderDetailId, |
| | | flowingWaterId: item.flowingWaterId, |
| | | proResult: item.proResult, |
| | | tjStatus: 1, |
| | | isReturn: item.isReturn === true ? 1 : 0, |
| | | exceptionDesc: item.exceptionDesc === true ? 1 : 0, |
| | | conclusion: item.conclusion, |
| | | rulesList: item.rulesList, |
| | | }); |
| | | }); |
| | | |
| | | 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 = item.proName; |
| | | this.nums = proParentId; |
| | | this.proId = proParentId; |
| | | var data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | getParentId(data).then((response) => { |
| | | this.proParentList = response.data; |
| | | this.value = []; |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | | } |
| | | this.proParentList.sons.forEach((item) => { |
| | | this.doctorName = item.doctorName; |
| | | if (this.doctorName == null) { |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | }); |
| | | } |
| | | 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.exceptionDesc = false; |
| | | } |
| | | }); |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === proParentId) { |
| | | this.remark = item.remark; |
| | | } |
| | | }); |
| | | } else { |
| | | this.remark = ""; |
| | | } |
| | | }); |
| | | |
| | | this.getParentIdsss(); |
| | | this.getbzlist(); |
| | | }) |
| | | .catch((action) => { |
| | | if (action === "cancel") { |
| | | this.$message({ |
| | | type: "warning", |
| | | message: "放弃保存并离开", |
| | | }); |
| | | } |
| | | this.proName = item.proName; |
| | | this.nums = proParentId; |
| | | this.proId = proParentId; |
| | | let data = { |
| | | tjNumber: this.tjNumber, |
| | | proParentId: this.nums, |
| | | }; |
| | | getParentId(data).then((response) => { |
| | | this.proParentList = response.data; |
| | | this.value = []; |
| | | if (this.proParentList.xiaoJieIds != null) { |
| | | if (this.proParentList.xiaoJieIds.length != 0) { |
| | | this.proParentList.xiaoJieIds.forEach((item2) => { |
| | | let item = Number(item2); |
| | | this.value.push(item); |
| | | }); |
| | | } |
| | | } |
| | | this.proParentList.sons.forEach((item) => { |
| | | this.doctorName = item.doctorName; |
| | | if (this.doctorName == null) { |
| | | this.userList.forEach((element) => { |
| | | const userName = this.$store.state.user.name; |
| | | if (userName == element.userName) { |
| | | this.doctorName = element.nickName; |
| | | } |
| | | }); |
| | | } |
| | | 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.exceptionDesc = false; |
| | | } |
| | | }); |
| | | if (this.proParentList.xiaoJie.length != 0) { |
| | | this.Parent.forEach((item3) => { |
| | | if (item3.proId === proParentId) { |
| | | this.remark = item.remark; |
| | | } |
| | | }); |
| | | } else { |
| | | this.remark = ""; |
| | | } |
| | | }); |
| | | |
| | | if (action === "cancel") this.$message({ type: "warning", message: "放弃保存并离开" }); |
| | | this.proName = this.Parentcheck.proName; |
| | | this.nums = tab.name; |
| | | this.proId = tab.name; |
| | | this.getParentIdsss(); |
| | | this.getbzlist(); |
| | | }); |
| | | }, |
| | | |
| | | // 点击确认 |
| | | determine() { |
| | | // 清空数组 |
| | | this.tjOrderDetail = []; |
| | | |
| | | // 原有代码 |
| | | let tjNumber = this.tableAll.tjNumber; |
| | | this.userList.forEach((item) => { |
| | | if (this.doctorName == item.nickName) { |
| | | this.doctorName = item.userId; |
| | | } |
| | | if (this.doctorName == item.nickName) this.doctorName = item.userId; |
| | | }); |
| | | this.proParentList.sons.forEach((item) => { |
| | | if (this.rows) { |
| | | this.rows.forEach((item1) => { |
| | | if (item1 === item) { |
| | | item = item1; |
| | | } |
| | | // if (item.isReturn == true) { |
| | | // item.isReturn = 1; |
| | | // } |
| | | // if (item.isReturn == false) { |
| | | // item.isReturn = 0; |
| | | // } |
| | | if (item1 === item) item = item1; |
| | | }); |
| | | } |
| | | this.tjOrderDetail.push({ |
| | |
| | | }); |
| | | }); |
| | | |
| | | 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 |
| | | this.drawer = false; |
| | | }); |
| | | this.handleClose(); |