From 3bb35f1f7b7ea2854edb46b3b699244c29e5297d Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期二, 04 三月 2025 21:01:52 +0800 Subject: [PATCH] 测试完成 --- src/views/patient/propaganda/QuestionnaireTask.vue | 237 +++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 166 insertions(+), 71 deletions(-) diff --git a/src/views/patient/propaganda/QuestionnaireTask.vue b/src/views/patient/propaganda/QuestionnaireTask.vue index 9129547..0a1d7e0 100644 --- a/src/views/patient/propaganda/QuestionnaireTask.vue +++ b/src/views/patient/propaganda/QuestionnaireTask.vue @@ -198,13 +198,13 @@ </el-form-item> <el-form-item label="浠诲姟鍏宠仈" prop="longTask"> <el-radio-group v-model="form.appltype"> - <el-radio label="0">绉戝鍏宠仈</el-radio> - <el-radio label="1">鐥呭尯鍏宠仈</el-radio> - <el-radio label="2">鐤剧梾鍏宠仈</el-radio> - <el-radio label="3">鎵嬫湳鍏宠仈</el-radio> + <el-radio label="1">绉戝鍏宠仈</el-radio> + <el-radio label="2">鐥呭尯鍏宠仈</el-radio> + <el-radio label="3">鐤剧梾鍏宠仈</el-radio> + <el-radio label="4">鎵嬫湳鍏宠仈</el-radio> </el-radio-group> </el-form-item> - <el-row v-if="form.appltype == 0"> + <el-row v-if="form.appltype == 1"> <el-col :span="20" ><el-form-item label="閫傜敤绉戝" prop="region"> <el-select @@ -219,7 +219,6 @@ <el-option class="ruleFormaa" v-for="item in belongDepts" - :key="item.deptCode" :label="item.deptName" :value="item.deptCode" > @@ -227,7 +226,7 @@ </el-select> </el-form-item ></el-col> </el-row> - <el-row v-if="form.appltype == 1"> + <el-row v-if="form.appltype == 2"> <el-col :span="20" ><el-form-item label="閫傜敤鐥呭尯" prop="region"> <el-select @@ -242,7 +241,6 @@ <el-option class="ruleFormaa" v-for="item in belongWards" - :key="item.districtCode" :label="item.districtName" :value="item.districtCode" > @@ -250,13 +248,13 @@ </el-select> </el-form-item ></el-col> </el-row> - <el-row v-if="form.appltype == 2"> - <el-col :span="20" + <el-row v-if="form.appltype == 3"> + <!-- <el-col :span="20" ><el-form-item label="閫傜敤鐤剧梾" prop="region"> <el-select v-model="illnesscodes" style="width: 400px" - @remove-tag="removehpsp" + @remove-tag="removediagg" size="medium" :remote-method="remotedonor" multiple @@ -273,15 +271,46 @@ > </el-option> </el-select> </el-form-item - ></el-col> + ></el-col> --> + <div class="xinz-infs"> + <el-form-item> + <template #label> + <el-tooltip + class="item" + effect="light" + content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!" + placement="top-start" + > + <i class="el-icon-warning-outline"></i> + </el-tooltip> + </template> + <div style="margin-bottom: 10px"> + <el-button + type="warning" + @click="$refs.child.handleAddpatient()" + >娣诲姞鐤剧梾璇婃柇</el-button + > + </div> + <el-tag + v-for="tag in diagglist" + @close="removediagg(tag.icd10code)" + type="warning" + closable + :disable-transitions="false" + > + {{ tag.icdname }} + </el-tag> + <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> --> + </el-form-item> + </div> </el-row> - <el-row v-if="form.appltype == 3"> + <el-row v-if="form.appltype == 4"> <el-col :span="20" ><el-form-item label="閫傜敤鎵嬫湳" prop="region"> <el-select v-model="operationcodes" style="width: 400px" - @remove-tag="removehpsp" + @remove-tag="removeopera" size="medium" :remote-method="remoteopcode" multiple @@ -292,7 +321,6 @@ <el-option class="ruleFormaa" v-for="item in baseoperaList" - :key="item.opcode" :label="item.opdesc" :value="item.opcode" > @@ -645,31 +673,6 @@ </div> </el-form-item> - <div class="xinz-infs"> - <el-form-item> - <template #label> - 閫傜敤鐤剧梾 - <el-tooltip - class="item" - effect="light" - content="閫夋嫨濂介�傜敤鐤剧梾鍚庯紝鍙互鏂逛究鎮ㄩ�氳繃鐤剧梾璇婃柇鏌ユ壘鍒板搴旂殑鐥呬汉!" - placement="top-start" - > - <i class="el-icon-warning-outline"></i> - </el-tooltip> - </template> - - <el-tag - v-for="tag in illnesslist" - :key="tag.icdid" - type="warning" - :disable-transitions="false" - > - {{ tag.icdname }} - </el-tag> - <!-- <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag> --> - </el-form-item> - </div> <el-form-item label="闂嵎鎻忚堪" prop="description"> <el-input type="textarea" @@ -836,6 +839,13 @@ </div> </div> </el-drawer> + <Optional-Form + ref="child" + :dialogVisiblepatient="dialogVisiblepatientjb" + :overallCase="diagglist" + @addoption="dialogVisiblepatientjb = false" + @kkoption="dialogVisiblepatientjb = true" + /> </div> </template> @@ -844,6 +854,8 @@ import store from "@/store"; import { getTaskpatientQC, + taskoperhospgetsondel, + taskdiaghospgetsondel, getillnesslist, getbaseopera, Externallist, @@ -859,8 +871,10 @@ getQtemplateclassify, taskdepthospgetsondel, taskdepthospgetsonlist, + taskdiaggetlist, + taskopergetlist, } from "@/api/AiCentre/index"; - +import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢 import { MessageBox } from "element-ui"; @@ -888,6 +902,7 @@ loading: false, // 閬僵灞� patientloading: false, // 閬僵灞� dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗� + dialogVisiblepatientjb: false, //娣诲姞鐤剧梾寮规 deptcodesWards: [], //绉戝鏁版嵁 leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁 operationcodes: [], //鎵嬫湳鏁版嵁 @@ -1077,6 +1092,10 @@ value: "6", label: "闄㈠鎮h��", }, + { + value: "5", + label: "鎵嬫湳鐥呬汉", + }, ], source: [ { @@ -1127,6 +1146,8 @@ belongWards: [], deptlist: [], hosplist: [], + diagglist: [], + operlist: [], tempDetpRelevanceslist: [], //绉戝鏁版嵁 tempDetpRelevanceslistform: [], //绉戝鏁版嵁 tempbelongWards: [], //鐥呭尯鏁版嵁 @@ -1158,7 +1179,7 @@ serviceType: null, }; }, - components: { SFtable }, + components: { SFtable, OptionalForm }, created() { this.appraiselist = store.getters.appraiselist; @@ -1183,13 +1204,21 @@ this.getQtemplateclassify(); } }, - + computed: { + displayedTags() { + // 杩斿洖鍓�10涓猼ag + return this.illnesslist.slice(0, 10); + }, + hasMore() { + // 鍒ゆ柇鏄惁鏈夋洿澶氱殑tag + return this.illnesslist.length > 10; + }, + remaining() { + // 璁$畻鍓╀綑鐨則ag鏁伴噺 + return this.illnesslist.length - 10; + }, + }, methods: { - // { - // 濮撳悕: { "${name}": "榫欏偛澶�" }, - // 鍦板潃: { "${dzz}": "榫欏" }, - // 鐢佃瘽: { "${dhh}": "鍏釜鍏�" }, - // } // 鍙橀噺杞崲瀵硅薄杞暟缁� convertFormat1ToFormat2(data) { let result = []; @@ -1268,7 +1297,12 @@ // label: "鏅鸿兘鏈哄櫒浜�", // }, ]; - } else if (this.form.serviceType == 7 || this.form.serviceType == 9) { + } else if ( + this.form.serviceType == 7 || + this.form.serviceType == 10 || + this.form.serviceType == 11 || + this.form.serviceType == 9 + ) { this.checkboxlist = [ { value: "1", @@ -1293,6 +1327,10 @@ { value: "6", label: "寰俊灏忕▼搴�", + }, + { + value: "7", + label: "鏈悗闅忚", }, ]; } else if ( @@ -1356,22 +1394,22 @@ xh: 1, }, ]; - if (this.form.appltype == 0) { - this.leavehospitaldistrictcodes=[]; - this.operationcodes=[]; - this.illnesscodes=[]; - } else if (this.form.appltype == 1) { - this.deptcodesWards=[]; - this.operationcodes=[]; - this.illnesscodes=[]; + if (this.form.appltype == 1) { + this.leavehospitaldistrictcodes = []; + this.operationcodes = []; + this.illnesscodes = []; } else if (this.form.appltype == 2) { - this.deptcodesWards=[]; - this.leavehospitaldistrictcodes=[]; - this.illnesscodes=[]; + this.deptcodesWards = []; + this.operationcodes = []; + this.illnesscodes = []; } else if (this.form.appltype == 3) { - this.deptcodesWards=[]; - this.operationcodes=[]; - this.leavehospitaldistrictcodes=[]; + this.deptcodesWards = []; + this.leavehospitaldistrictcodes = []; + this.operationcodes = []; + } else if (this.form.appltype == 4) { + this.deptcodesWards = []; + this.illnesscodes = []; + this.leavehospitaldistrictcodes = []; } if (this.checkList) { this.form.preachform = this.checkList; @@ -1379,14 +1417,17 @@ this.$modal.msgError("璇烽�夋嫨鏈嶅姟绫诲瀷"); return; } + console.log(this.operationcodes[0]); + console.log(this.operationcodes); + if ( this.deptcodesWards[0] || this.leavehospitaldistrictcodes[0] || - this.illnesscodes[0] || + this.diagglist[0] || this.operationcodes[0] ) { } else { - this.$modal.msgError("璇烽�夋嫨绉戝鎴栫梾鍖�"); + this.$modal.msgError("璇烽�夋嫨浠诲姟鍏宠仈鏉′欢"); return; } @@ -1426,8 +1467,9 @@ this.form.leavehospitaldistrictcode = this.leavehospitaldistrictcodes.join(","); this.form.opcode = this.operationcodes.join(","); - this.form.icd10code = this.illnesscodes.join(","); - + this.form.icd10code = this.diagglist + .map((item) => item.icdcode) + .join(","); Editsingletask(this.form).then((res) => { if (res.code == 200) { if (this.form.taskid) { @@ -1522,12 +1564,12 @@ // 鎵嬫湳鏌ヨ remoteopcode(name) { if (name) { - getillnesslist({ + getbaseopera({ pageNum: 1, pageSize: 1000, - icdname: name, + opdesc: name, }).then((res) => { - this.donorchargeList = res.rows; + this.baseoperaList = res.rows; }); } }, @@ -1876,7 +1918,7 @@ this.time3 = ""; //鏅氫笂鏃堕棿娈� this.time4 = ""; //鏅氫笂鏃堕棿娈� }, - // 鑾峰彇浠诲姟绉戝鍒楄〃 + // 鑾峰彇鍚勭被 listDept() { this.leavehospitaldistrictcodes = []; this.deptcodesWards = []; @@ -1895,6 +1937,29 @@ }); } }); + taskdiaggetlist(this.queryParamsdept).then((res) => { + if (res.code == 200) { + let arr = res.rows; + arr.forEach((item) => { + getillnesslist({ + icdcode: item.icd10code, + }).then((res) => { + item.icdname = res.rows[0].icdname; + this.diagglist.push(item); + }); + this.illnesscodes.push(item.icd10code); + }); + } + }); + taskopergetlist(this.queryParamsdept).then((res) => { + if (res.code == 200) { + let arr = res.rows; + arr.forEach((item) => { + this.operlist.push(item); + this.operationcodes.push(item.opcode); + }); + } + }); }, // 浠诲姟绉戝鍒犻櫎瑙﹀彂 removetag(row) { @@ -1905,6 +1970,7 @@ if (result.length) { taskdepthospgetsondel(result).then((res) => { if (res.code) { + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); } }); } @@ -1917,10 +1983,39 @@ if (result.length) { taskdepthospgetsondel(result).then((res) => { if (res.code) { + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); } }); } }, + // 鎵嬫湳鍒犻櫎瑙﹀彂 + removeopera(row) { + let result = this.operlist + .filter((item) => item.opcode == row) + .map((item) => item.id); + if (result.length) { + taskoperhospgetsondel(result).then((res) => { + if (res.code) { + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); + } + }); + } + }, + // 鐤剧梾鍒犻櫎瑙﹀彂 + removediagg(row) { + let result = this.diagglist + .filter((item) => item.icd10code == row) + .map((item) => item.id); + if (result.length) { + taskdiaghospgetsondel(result).then((res) => { + if (res.code) { + this.diagglist=this.diagglist.filter(item => item.icd10code != row); + this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); + } + }); + } + }, + getQtemplateclassify() { getQtemplateclassify({}).then((res) => { this.optionsclass = res.rows; -- Gitblit v1.9.3