From 0d541fcd7dc65b10dc475792bb7646976259c2aa Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期三, 23 四月 2025 11:09:48 +0800 Subject: [PATCH] qx --- src/views/doctor/check/index.vue | 658 ++++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 425 insertions(+), 233 deletions(-) diff --git a/src/views/doctor/check/index.vue b/src/views/doctor/check/index.vue index 5c097d8..d0aba2b 100644 --- a/src/views/doctor/check/index.vue +++ b/src/views/doctor/check/index.vue @@ -73,12 +73,14 @@ <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> @@ -150,10 +152,6 @@ </div> </el-col> </el-row> - <!-- <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitFormapply">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> --> </el-dialog> <el-dialog title="濉啓鏄惁閲嶅ぇ闃虫��" :visible.sync="checkval" width="800px" append-to-body> @@ -212,8 +210,8 @@ " 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"> @@ -233,12 +231,12 @@ </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"> @@ -267,30 +265,34 @@ <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"> + <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"> - <!-- <template slot-scope="scope"> - {{ scope.row.project.proName }} - </template> --> </el-table-column> <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="150"> - <template slot-scope="scope"> - <el-input type="textarea" autosize size="mini" v-model="scope.row.proResult" autocomplete="off" - placeholder="璇疯緭鍏ユ娴嬬粨鏋�" @focus="handleFocus(scope.row)" @blur="handleInputConfirm(scope.row)" - @input="vale"></el-input> + + <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"></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"></el-checkbox> + <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"> @@ -299,16 +301,13 @@ </template> </el-table-column> <el-table-column prop="project.proMetering" label="鍗曚綅" width="55"> - <!-- <template slot-scope="scope"> - {{ scope.row.standard.company }} - </template> --> </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> + placeholder="璇疯緭鍏ョ粨鏋滅粨璁�" disabled></el-input> </template> </el-table-column> @@ -339,7 +338,7 @@ </el-table-column> </el-table> - <div style="font-size: 14px; overflow-y: auto; height: 286px"> + <div style="font-size: 14px; overflow-y: auto; height: 286px" class="a"> <table style=" width: 96%; margin: 4px 10px; @@ -362,23 +361,6 @@ "> <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; @@ -424,50 +406,36 @@ </tr> </table> - <div slot="footer" class="dialog-footers"> - <!-- v-show="tjStatus == '0'" --> - <!-- <el-button type="primary" - size="mini" - @click="radioChange" - v-hasPermi="['system:notice:add']" - v-show="tjStatus == '1'" - >浼氳瘖鐢宠</el-button> --> + <div slot="footer" class="dialog-footers1"> <el-button type="primary" @click="determine">鎻� 浜�</el-button> </div> </div> </el-tab-pane> </el-tabs> </template> - <!-- <template> - <div style="margin-left: 10px"> - <el-radio-group - v-model="radio" - v-for="(item, index) in Parent" - :key="index" - @input="radioChange1(item.proId, item)" - > - <el-radio-button :label="item.proId">{{ - item.proName - }}</el-radio-button> - </el-radio-group> - </div> - </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"> + <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"> - <!-- <template slot-scope="scope"> - {{ scope.row.project.proName }} - </template> --> </el-table-column> <el-table-column prop="proResult" label="妫�娴嬬粨鏋�" width="150"> - <template slot-scope="scope"> - <el-input type="textarea" autosize size="mini" v-model="scope.row.proResult" autocomplete="off" - placeholder="璇疯緭鍏ユ娴嬬粨鏋�" @focus="handleFocus(scope.row)" @blur="handleInputConfirm(scope.row)" @input="vale"></el-input> + <!-- slot-scope="scope" --> + <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)"></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> --> </template> </el-table-column> <el-table-column label="瑙勫垯" width="70"> @@ -476,16 +444,14 @@ </template> </el-table-column> <el-table-column prop="project.proMetering" label="鍗曚綅" width="55"> - <!-- <template slot-scope="scope"> - {{ scope.row.standard.company }} - </template> --> </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"></el-checkbox> + <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"> @@ -601,75 +567,17 @@ </table> <div slot="footer" class="dialog-footers"> - <!-- <el-button type="primary" - size="mini" - @click="radioChange" - v-hasPermi="['system:notice:add']" - v-show="tjStatus == '1'" - >浼氳瘖鐢宠</el-button> --> - <!-- v-show="tjStatus == '0'" --> <el-button type="primary" @click="determine">鎻� 浜�</el-button> </div> </div> </el-tab-pane> </el-tabs> </template> - <!-- <template> - <div style="margin-left: 10px"> - <el-radio-group v-model="radio" v-for="(item, index) in Parent" :key="index" - @input="radioChange1(item.proId, item)"> - <el-radio-button :label="item.proId">{{ - item.proName - }}</el-radio-button> - </el-radio-group> - </div> - </template> --> </el-col> <el-col :span="6" style="margin-top: 15px"> <Historicalreport v-show="lishi" :reportHistorydata="reportHistorydata"></Historicalreport> </el-col> </el-row> - - <!-- <div style="background-color: #f3f3f3;font-size:14px;overflow-y:auto;height: calc(100% - 11%);"> - <table style="width:96%;margin: 4px 10px;border:1px solid white" cellspacing="4" border="2" - v-for="(item, index) in proParentList.sons" :key="index"> - <tr align="center"> - <th>妫�娴嬮」鐩�</th> - <th>妫�娴嬬粨鏋�</th> - <th>鍗曚綅</th> - <th>鍙傝�冭寖鍥�</th> - </tr> - - <tr> - <td>{{ item.project.proName }}</td> - <td><el-input v-model="item.proResult" placeholder="璇疯緭鍏ュ唴瀹�"></el-input></td> - <td>{{ item.standard.company }}</td> - <td>{{ item.standard.tjStandardGtValue + "-" + item.standard.tjStandardLtValue }}</td> - </tr> - <tr> - <td>灏忕粨锛�</td> - <td> - <el-select v-model="item.value" multiple filterable placeholder="璇烽�夋嫨" style="width:100%"> - <el-option v-for="item in proParentList.parentAdvice" :key="item.id" :label="item.title" - :value="item.id"> - </el-option> - </el-select> - </td> - <td>涓绘鍖诲笀锛�</td> - <td>{{ item.doctorName }}</td> - </tr> - <tr> - <td>澶囨敞锛�</td> - <td colspan="2"> - <el-input type="textarea" autosize placeholder="璇疯緭鍏ュ唴瀹�" v-model="item.remark"> - </el-input> - </td> - </tr> - </table> - <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="determine">纭� 瀹�</el-button> - </div> - </div> --> </el-drawer> <Public ref="aaa" :row="row" @add="handleChanges" /> <jianceResult ref="bbb" @add="handleChangesZt" /> @@ -682,13 +590,95 @@ <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%; + 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"> + <template slot-scope="scope"> + <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 == '2'">寮冩</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" 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 style="width: 44%; margin-left: 20px"> + <div style="text-align: center; background-color: #aad8df"> + {{ name || "" }} + </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-column label="妫�娴嬮」鐩�" prop="pro_name"> + </el-table-column> + <el-table-column label="妫�娴嬬粨鏋�" prop="pro_result"> + </el-table-column> + <el-table-column label="鍙傝�冭寖鍥�" prop="ckfw"> + </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"> + <div class="check-item"> + <div class="check-title">妫�鏌ユ墍瑙侊細</div> + <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' : '' }"> + {{ jieguoList[0].yxzd || "鏆傛棤缁撹" }} + </div> + </div> + </div> + </div> + </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-tab-pane label="鐥呯" name="first"> <div class="tab8"> <div class="tab3"> - <el-form :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> @@ -816,12 +806,16 @@ getDeptAdvice, reportHistory, getAdviceByTjNumAndPro, + getXm, } from "@/api/doctor/check"; import { addBigPositive } from "@/api/doctor/bigPositive"; import { addReplylog, hzHasDept } from "@/api/hosp/replylog"; import { listHzlog, addHzlog, delHzlog, updateHzlog } from "@/api/hosp/hzlog"; import { getlistUser } from "@/api/system/user"; 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", @@ -831,12 +825,13 @@ jianqianwenzhen, createproposal, proposal, - jianceResult + jianceResult, }, data() { return { remakes: "", titles: "", + type: null, advice: "", idss: [], vaids: [], @@ -860,6 +855,7 @@ open: false, foropen: false, dialogVisible: false, + openOne: false, reportHistorydata: [], url: "", cateringList: [], @@ -894,6 +890,8 @@ // 鑾峰彇淇℃伅闆嗗悎 tableList: [], deptList: [], + jieguoList: [], + jyjc: null, tableAll: {}, row: {}, info: {}, @@ -911,6 +909,8 @@ proId: "", company: "", tjStandardGtValue: "", + xiangmuList: [], + name: "", // 鐢ㄦ埛琛ㄦ牸鏁版嵁 userList: null, // 鐖堕」鐩垪琛� @@ -988,22 +988,30 @@ }, methods: { - handleFocus(row) { - console.log(row) + this.autorule = []; if (!row.resultType || row.resultType == 2) { - return + return; } else { - this.curindex = row - this.$refs.bbb.open = true; - this.$refs.bbb.title = "閫夋嫨妫�娴嬬粨鏋�"; - this.$refs.bbb.proId = row.proId; - this.$refs.bbb.getList(); - } + this.curindex = row; + selectZT({ + proId: row.proId, + }).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[0].ruleStr + this.curindex.proResult = params.map((item) => item.ruleStr).join(","); + this.handleInputConfirm(this.curindex, params); }, tableRowClassName({ row }) { if (row.exceptionDesc) { @@ -1012,8 +1020,14 @@ return ""; }, getbzlist() { + this.loading = true; getDeptAdvice(this.queryParam1).then((response) => { - this.deptAdviceList = response.data.list; + + if (response.data.list) { + this.deptAdviceList = response.data.list; + this.loading = false + } + this.total1 = response.data.total; }); }, @@ -1041,6 +1055,54 @@ }); } }); + }, + // 妫�鏌ユ楠岀粨鏋滄寜閽� + result() { + let tjNumber = this.tableAll.tjNumber; + + getXm(tjNumber).then((res) => { + this.xiangmuList = res.data; + if (this.xiangmuList.length > 0) { + this.openOne = true; + } + else { + this.openOne = false; + 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; // 鎭㈠榛樿棰滆壊 + } + + if (res.data.length > 0) { + this.drawer = true; + this.$nextTick(() => { + this.initInputDOM() + }) + } else { + this.$message.warning("璇ラ」鐩病鏈夌粨鏋�"); + } + }); + }, + changRed({ row }) { + if (row.ycbz != "" && row.ycbz != null && row.ycbz === "1") { + // 鍙橀鑹茬殑鏉′欢 + return { + color: "red", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor + }; + } }, /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { @@ -1079,7 +1141,6 @@ // !this.proParentList.remark.includes(item.title) // ) { if (this.proParentList.remark != null) { - this.titles += item1.title + ","; this.remakes += item1.advice + ","; this.proParentList.remark = @@ -1111,7 +1172,6 @@ }); if (this.proParentList.remark != null) { - this.proParentList.remark = ""; let data = { @@ -1164,6 +1224,14 @@ // }) }, + changDesc(item) { + if (item.exceptionDesc == true) { + item.conclusion = "寮傚父" + } else { + item.conclusion = "姝e父" + } + }, + myclass(row, column, rowIndex, columnIndex) { if (row.row.isPositive == 1) { return "setclass"; @@ -1211,76 +1279,137 @@ // 浣犲彲浠ュ湪杩欓噷澶勭悊杈撳叆浜嬩欢 console.log("杈撳叆鍐呭:", value); }, - handleInputConfirm(datas) { - 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 (res.data.length > 0) { - const conditions = ["姝e父", "鏈寮傚父", "闃存��", "鏈鏄庢樉寮傚父"]; - this.focusrow.exceptionDesc = !conditions.some((condition) => - this.autorule[0].bz.includes(condition) - ); - } else { - this.focusrow.exceptionDesc = false; - } - 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 (res.data.length > 0) { - const conditions = ["姝e父", "鏈寮傚父", "闃存��", "鏈鏄庢樉寮傚父"]; - this.focusrow.exceptionDesc = !conditions.some((condition) => - this.autorule[0].bz.includes(condition) - ); - } else { - this.focusrow.exceptionDesc = false; - } - 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); + + initInputDOM() { + // 鑾峰彇id涓簍able-form涓嬬殑鎵�鏈塱nput 妗� + const inputDoms = document.querySelectorAll('.el-input__inner') + // 閬嶅巻杩欎釜input妗嗙粰浠栦滑涓�涓爣璇� + inputDoms.forEach((item, index) => { + item.setAttribute('data-index', index) + }) + this.inputDoms = inputDoms + // console.log(this.inputDoms) + }, + keyInputConfirm(event, index, currentRowIndex) { + // 闃绘榛樿鍥炶溅琛屼负锛屾瘮濡傛彁浜よ〃鍗� + event.preventDefault(); + event.stopPropagation() + const nextRowIndex = currentRowIndex + 1; // 璁$畻涓嬩竴琛岀储寮� + // 濡傛灉涓嬩竴琛屽瓨鍦紝鍒欒仛鐒﹁琛岀殑杈撳叆妗� + if (nextRowIndex < this.proParentList.sons.length) { + this.$nextTick(() => { + const nextInputRef = `input-item${index}-row${nextRowIndex}`; + const nextInput = this.$refs[nextInputRef]; + if (nextInput) { + // 澶勭悊 ref 鍙兘涓烘暟缁勭殑鎯呭喌锛堝鍔ㄦ�佹覆鏌擄級 + const target = Array.isArray(nextInput) ? nextInput[0] : nextInput; + target.focus(); // 鑱氱劍杈撳叆妗� + // target.select(); // 鍙�夛細閫変腑鏂囨湰 } }); } - this.rows.push(datas); + }, + 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 = ["姝e父", "鏈寮傚父", "闃存��", "鏈鏄庢樉寮傚父"]; + 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 = ["姝e父", "鏈寮傚父", "闃存��", "鏈鏄庢樉寮傚父"]; + 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) { @@ -1299,7 +1428,6 @@ this.loading = true; this.queryParams.type = this.tjStatus; getProList(this.queryParams).then((response) => { - if (response.code == 200) { this.loading = false; if (response.data) { @@ -1333,9 +1461,9 @@ }); }, hb() { - if (this.queryParams.tjNumber != "") { - this.submitForm(); - } + /* if (this.queryParams.tjNumber != "") { + // this.submitForm(); + } */ }, propoChange() { this.cusobj = { sex: this.tableAll.cusSex, isZj: 1 }; @@ -1504,7 +1632,6 @@ hadleedit(row) { this.form.hzType = row.hzType; this.form.id = row.id; - }, submitFormapply() { @@ -1515,7 +1642,6 @@ } }); if (this.form.hzType != undefined) { - this.$refs["form"].validate((valid) => { if (valid) { if (this.form.id != null) { @@ -1667,7 +1793,6 @@ return false; } }); - } else { this.allList = []; if (selection[0]) { @@ -1686,6 +1811,9 @@ this.getDept(row.tjNumber); this.loading = true; this.drawer = true; + this.$nextTick(() => { + this.initInputDOM() + }) this.tableAll = row; // if (this.tableAll.cusSex === 0) { // this.tableAll.cusSex = "鐢�"; @@ -1698,7 +1826,11 @@ // } this.tjNumber = row.tjNumber; let num = 0; - getParentList(this.tjNumber).then((response) => { + let data = { + type: this.tjStatus, + tjNumber: this.tjNumber + } + getParentList(data).then((response) => { if (response.data) { this.loading = false; this.Parent = response.data; @@ -1831,7 +1963,6 @@ }, handleTabClick(tab, event) { - this.Parent.forEach((item) => { if (tab.name == item.proId) { this.Parentcheck = item; @@ -1900,6 +2031,7 @@ tjNumber: this.tjNumber, proParentId: this.nums, }; + this.loading = true; getParentId(data).then((response) => { this.proParentList = response.data; this.value = []; @@ -2202,7 +2334,10 @@ // 鐐瑰嚮纭 determine() { - // 浣撴鍙� + // 娓呯┖鏁扮粍 + this.tjOrderDetail = []; + + // 鍘熸湁浠g爜 let tjNumber = this.tableAll.tjNumber; this.userList.forEach((item) => { if (this.doctorName == item.nickName) { @@ -2240,8 +2375,6 @@ let data = [ { - proAdvice: item.proAdvice, - tjNumber, proId: this.proId, remark: this.proParentList.remark, // 澶囨敞 @@ -2261,6 +2394,10 @@ }; </script> <style lang="scss" scoped> +.a { + position: relative; +} + .el-table .cell { -webkit-box-sizing: border-box; box-sizing: border-box; @@ -2363,4 +2500,59 @@ background-color: #66cc66; border-color: #66cc66; } + +.dialog-footers1 { + position: fixed; + bottom: 0; + left: 63%; + transform: translateX(-50%); + display: flex; + justify-content: center; + align-items: center; + z-index: 1000; + /* 纭繚鎸夐挳灞傜骇鍦ㄥ叾浠栧唴瀹逛笂鏂� */ + width: 300px; + background-color: white; + /* 鍙牴鎹渶瑕佽皟鏁磋儗鏅鑹� */ +} + +/* 纭繚鎸夐挳涔嬮棿鏈夊悎閫傜殑闂磋窛 */ +.dialog-footers1 .el-button { + margin: 0 5px; +} + +.check-result-container { + // background-color: #fafafa; + padding: 20px; + border-radius: 8px; + // box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); + margin: 0 auto; + max-width: 700px; +} + +.check-item { + margin-bottom: 20px; +} + +.check-title { + font-size: 16px; + font-weight: bold; + color: #333; + // margin-bottom: 8px; +} + +.check-description { + font-size: 14px; + color: #555; + /* 涓伆鑹叉枃瀛� */ + line-height: 1.6; + /* 琛岄珮锛屽鍔犲彲璇绘�� */ + padding: 8px 0; + /* 涓婁笅鍐呰竟璺� */ +} + +.check-description.no-result { + color: #bbb; + /* 濡傛灉娌℃湁缁撹锛屾枃瀛椾负娣$伆鑹� */ +} </style> -- Gitblit v1.8.0