From 6be49398a90a339a6c72ac9ea7a09fc368acda87 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期三, 30 四月 2025 15:48:08 +0800 Subject: [PATCH] 测试完成 --- src/views/patient/propaganda/QuestionnaireTask.vue | 229 +++++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 164 insertions(+), 65 deletions(-) diff --git a/src/views/patient/propaganda/QuestionnaireTask.vue b/src/views/patient/propaganda/QuestionnaireTask.vue index 434e013..542a537 100644 --- a/src/views/patient/propaganda/QuestionnaireTask.vue +++ b/src/views/patient/propaganda/QuestionnaireTask.vue @@ -219,7 +219,6 @@ <el-option class="ruleFormaa" v-for="item in belongDepts" - :key="item.deptCode" :label="item.deptName" :value="item.deptCode" > @@ -242,7 +241,6 @@ <el-option class="ruleFormaa" v-for="item in belongWards" - :key="item.districtCode" :label="item.districtName" :value="item.districtCode" > @@ -251,7 +249,7 @@ ></el-col> </el-row> <el-row v-if="form.appltype == 3"> - <el-col :span="20" + <!-- <el-col :span="20" ><el-form-item label="閫傜敤鐤剧梾" prop="region"> <el-select v-model="illnesscodes" @@ -273,7 +271,38 @@ > </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 == 4"> <el-col :span="20" @@ -292,7 +321,6 @@ <el-option class="ruleFormaa" v-for="item in baseoperaList" - :key="item.opcode" :label="item.opdesc" :value="item.opcode" > @@ -515,6 +543,12 @@ @keyup.enter.native="handleQuery" ></el-input> </el-form-item> + <el-form-item label="鎮h�呰瘖鏂細"> + <el-input + v-model="patientqueryParams.leavediagname" + @keyup.enter.native="handleQuery" + ></el-input> + </el-form-item> <el-select v-model="patientqueryParams.searchscope" placeholder="璇烽�夋嫨鎮h�呰寖鍥�" @@ -559,6 +593,8 @@ <pagination v-show="patienttotal > 0 && this.patientqueryParams.allhosp != 6" :total="patienttotal" + :page.sync="patientqueryParams.pageNum" + :limit.sync="patientqueryParams.pageSize" @pagination="handleAddpatient" /> </div> @@ -645,31 +681,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" @@ -724,7 +735,7 @@ {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span> </div> <div class="dev-xx"> - <el-checkbox-group v-model="qremark"> + <el-checkbox-group v-model="item.qremark"> <el-checkbox v-for="(items, index) in item.svyLibTemplateTargetoptions" :key="index" @@ -758,7 +769,7 @@ </el-tabs> <span slot="footer" class="dialog-footer"> - <!-- <el-button @click="previewGo">淇濆瓨妯℃澘璇︽儏淇敼</el-button> --> + <el-button @click="previewGo">淇濆瓨妯℃澘璇︽儏淇敼</el-button> <el-button type="primary" @click="Departmenttreatment" >淇濆瓨浣跨敤</el-button > @@ -785,7 +796,10 @@ label-width="98px" > <el-form-item label="闂嵎鍚嶇О"> - <el-input v-model="topqueryParams.svyname"></el-input> + <el-input + v-model="topqueryParams.svyname" + @keyup.enter.native="handleQuerymb" + ></el-input> </el-form-item> <!-- <el-form-item label="閫傜敤褰㈠紡" prop="status"> <el-select v-model="topqueryParams.topica" placeholder="璇烽�夋嫨"> @@ -809,7 +823,7 @@ <el-button icon="el-icon-refresh" size="medium" - @click="resetQuery" + @click="resetQuerymb" >閲嶇疆</el-button > </el-form-item> @@ -836,6 +850,13 @@ </div> </div> </el-drawer> + <Optional-Form + ref="child" + :dialogVisiblepatient="dialogVisiblepatientjb" + :overallCase="diagglist" + @addoption="dialogVisiblepatientjb = false" + @kkoption="dialogVisiblepatientjb = true" + /> </div> </template> @@ -864,7 +885,7 @@ taskdiaggetlist, taskopergetlist, } from "@/api/AiCentre/index"; - +import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢 import SFtable from "@/components/SFtable"; //琛ㄦ牸缁勪欢 import { MessageBox } from "element-ui"; @@ -892,6 +913,7 @@ loading: false, // 閬僵灞� patientloading: false, // 閬僵灞� dialogVisiblepatient: false, //娣诲姞鎮h�呭脊妗� + dialogVisiblepatientjb: false, //娣诲姞鐤剧梾寮规 deptcodesWards: [], //绉戝鏁版嵁 leavehospitaldistrictcodes: [], //鐥呭尯鏁版嵁 operationcodes: [], //鎵嬫湳鏁版嵁 @@ -916,6 +938,7 @@ tableLabelhz: [ { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "inhosptime" }, { label: "鎮h��", width: "", prop: "name" }, + { label: "鎮h�呰瘖鏂�", width: "", prop: "leavediagname" }, { label: "韬唤璇�", width: "200", prop: "idcardno" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, @@ -928,6 +951,7 @@ tableLabelhzwb: [ { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" }, { label: "鎮h��", width: "", prop: "name" }, + { label: "鎮h�呰瘖鏂�", width: "", prop: "leavediagname" }, { label: "韬唤璇�", width: "200", prop: "sfzh" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, @@ -1057,7 +1081,10 @@ templatename: "", templateid: null, libtemplateid: null, - kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄櫙瀹佷汉姘戝尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�", + kcb: + "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾垜浠槸" + + localStorage.getItem("orgname") + + "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瑙傜湅杩欎唤瀹f暀璧勮銆�", jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈瀹f暀鍐呭灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒", }, taskoptions: [ @@ -1103,33 +1130,57 @@ tasktypes: [ { - value: 1, - label: "蹇冪數闅忚", + value: "1", + label: "鐩戞祴璇勪及", }, { - value: 2, + value: "2", label: "鍑洪櫌闅忚", }, { - value: 3, - label: "褰卞儚闅忚", + value: "3", + label: "闂ㄨ瘖闅忚", }, { - value: 4, + value: "4", label: "瀹f暀鍏虫��", }, { - value: 5, + value: "5", + label: "澶嶈瘖绠$悊", + }, + // { + // value: "5", + // label: "婊℃剰搴﹁皟鏌�", + // }, + { + value: "7", + label: "鎮h�呮姤鍛�", + }, + // { + // value: "8", + // label: "鍏朵粬閫氱煡", + // }, + { + value: "9", label: "浣撴闅忚", }, + // { + // value: "10", + // label: "鍖绘妧闅忚", + // }, { - value: 11, - label: "鍖绘妧闅忚", + value: "11", + label: "褰卞儚闅忚", }, { - value: 10, - label: "涓撶闅忚", + value: "12", + label: "蹇冪數闅忚", }, + // { + // value: "13", + // label: "涓撶梾闅忚", + // }, ], // 绉戝/鐥呭尯 belongWards: [], @@ -1168,7 +1219,7 @@ serviceType: null, }; }, - components: { SFtable }, + components: { SFtable, OptionalForm }, created() { this.appraiselist = store.getters.appraiselist; @@ -1193,13 +1244,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 = []; @@ -1278,7 +1337,15 @@ // label: "鏅鸿兘鏈哄櫒浜�", // }, ]; - } else if (this.form.serviceType == 7|| this.form.serviceType == 10|| this.form.serviceType == 11|| this.form.serviceType == 9) { + } else if ( + this.form.serviceType == 7 || + this.form.serviceType == 10 || + this.form.serviceType == 11 || + this.form.serviceType == 8 || + this.form.serviceType == 12 || + this.form.serviceType == 13 || + this.form.serviceType == 9 + ) { this.checkboxlist = [ { value: "1", @@ -1399,7 +1466,7 @@ if ( this.deptcodesWards[0] || this.leavehospitaldistrictcodes[0] || - this.illnesscodes[0] || + this.diagglist[0] || this.operationcodes[0] ) { } else { @@ -1443,8 +1510,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) { @@ -1479,11 +1547,13 @@ this.tempbelongWards = []; this.objyl.suitway = this.objyl.suitway.split(","); this.questionList = res.rows[0].svyTemplateLibScripts; + this.questionList.forEach((item) => { + item.qremark = []; + }); this.getillness(row.svyid); this.previewtf = true; } }); - console.log(row.svyTemplateLibScripts); this.previewid = row.svyid; this.Variablehandling(row.svyTemplateLibScripts, 1); } else if (type == 2) { @@ -1505,6 +1575,9 @@ getQtemplateobj({ svyid: this.form.libtemplateid }).then((res) => { if (res.code == 200) { this.questionList = res.rows[0].svyTemplateLibScripts; + this.questionList.forEach((item) => { + item.qremark = []; + }); this.objyl.svyTemplateLibScripts = res.rows[0].svyTemplateLibScripts; } @@ -1539,12 +1612,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; }); } }, @@ -1602,6 +1675,7 @@ // { label: "鍏ラ櫌鏃ユ湡", width: "170", prop: "starttime" }, { label: "鍑洪櫌鏃ユ湡", width: "150", prop: "endtime" }, { label: "鎮h��", width: "", prop: "name" }, + { label: "鎮h�呰瘖鏂�", width: "", prop: "leavediagname" }, { label: "韬唤璇�", width: "200", prop: "idcardno" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, @@ -1615,6 +1689,7 @@ this.tableLabelhz = [ { label: "鍏ラ櫌鏃ユ湡", width: "150", prop: "starttime" }, { label: "鎮h��", width: "", prop: "name" }, + { label: "鎮h�呰瘖鏂�", width: "", prop: "leavediagname" }, { label: "韬唤璇�", width: "200", prop: "idcardno" }, { label: "鎬у埆", width: "", prop: "sex" }, { label: "骞撮緞", width: "", prop: "age" }, @@ -1796,7 +1871,20 @@ }); }, - resetQuery() {}, + resetQuerymb() { + this.topqueryParams = { svyname: "" }; + this.handleQuerymb(); + }, + resetQuery() { + this.patientqueryParams = { + pageNum: 1, // + pageSize: 10, + topica: 1, //0鍏ㄩ儴1绉戝2鐥呭尯 + leavehospitaldistrictcodes: [], + leaveldeptcodes: [], + }; + this.handleQuery(); + }, handleQuerymb() { getQtemplatelist(this.topqueryParams).then((response) => { this.userList = response.rows; @@ -1828,7 +1916,10 @@ templatename: "", templateid: null, libtemplateid: null, - kcb: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄櫙瀹佷汉姘戝尰闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�", + kcb: + "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾垜浠槸" + + localStorage.getItem("orgname") + + "鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闂嵎銆�", jsy: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒", }; @@ -1916,7 +2007,12 @@ if (res.code == 200) { let arr = res.rows; arr.forEach((item) => { - this.diagglist.push(item); + getillnesslist({ + icdcode: item.icd10code, + }).then((res) => { + item.icdname = res.rows[0].icdname; + this.diagglist.push(item); + }); this.illnesscodes.push(item.icd10code); }); } @@ -1979,6 +2075,9 @@ if (result.length) { taskdiaghospgetsondel(result).then((res) => { if (res.code) { + this.diagglist = this.diagglist.filter( + (item) => item.icd10code != row + ); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); } }); -- Gitblit v1.9.3