From fecb2f5b3a5b4c7994eb76cc730c2bd27b6f8b67 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期二, 22 四月 2025 09:34:17 +0800 Subject: [PATCH] 测试完成 --- src/views/followvisit/record/detailpage/index.vue | 288 ++++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 202 insertions(+), 86 deletions(-) diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue index c4eaf3b..60a7b10 100644 --- a/src/views/followvisit/record/detailpage/index.vue +++ b/src/views/followvisit/record/detailpage/index.vue @@ -1,6 +1,6 @@ <template> <!-- 鑱婅繛椤甸潰璁板綍 --> - <div class="Followupdetailspage"> + <div class="Followupdetailspage" id="app-container"> <div class="Followuserinfo"> <div> <div class="userinfo-text"> @@ -33,13 +33,26 @@ </div> <div> <el-table :data="logsheetlist" style="width: 100%"> - <el-table-column prop="sendname" align="center" label="濮撳悕"> + <el-table-column + prop="sendname" + align="center" + label="濮撳悕" + width="100" + > + </el-table-column> + <el-table-column + prop="taskName" + align="center" + width="200" + show-overflow-tooltip + label="浠诲姟鍚嶇О" + > </el-table-column> <el-table-column prop="sendstate" align="center" width="200" - label="鏈嶅姟鐘舵��" + label="浠诲姟鐘舵��" > <template slot-scope="scope"> <div v-if="scope.row.sendstate == 1"> @@ -49,7 +62,7 @@ </div> <div v-if="scope.row.sendstate == 2"> <el-tag type="primary" :disable-transitions="false" - >寰呮墽琛�</el-tag + >寰呴殢璁�</el-tag > </div> <div v-if="scope.row.sendstate == 3"> @@ -75,7 +88,7 @@ <el-table-column prop="finishtime" align="center" - label="瀹屾垚鏃堕棿" + label="闅忚瀹屾垚鏃堕棿" width="200" show-overflow-tooltip > @@ -134,19 +147,19 @@ /> </template> </el-table-column> - <el-table-column - prop="taskName" - align="center" - width="200" - show-overflow-tooltip - label="浠诲姟鍚嶇О" - > - </el-table-column> <el-table-column prop="templatename" align="center" label="鏈嶅姟妯℃澘" + width="200" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="remark" + align="center" + label="鏈嶅姟璁板綍" width="200" show-overflow-tooltip > @@ -173,7 +186,7 @@ @click="Seedetails(scope.row)" v-hasPermi="['system:user:edit']" ><span class="button-zx" - ><i class="el-icon-s-order"></i>鏌ョ湅鏈嶅姟缁撴灉</span + ><i class="el-icon-s-order"></i>鏌ョ湅</span ></el-button > </template> @@ -181,15 +194,34 @@ </el-table> </div> </div> - <div :class="form.serviceType == 2 ? 'Followuserinfo' : 'Followuserinfos'"> + <div class="Followuserinfos"> <div> - <div class="headline"> - <div>浜哄伐澶勭悊</div> - <div style="margin-left: 30px"> - <el-button type="warning">涓�閿懠鍙�</el-button> + <el-form ref="form" :model="form" label-width="120px"> + <div class="headline"> + <div>浜哄伐澶勭悊</div> + <el-row :gutter="20"> + <el-col :span="12" + ><el-form-item label="鑱旂郴鐢佃瘽"> + <el-input + placeholder="鑱旂郴鐢佃瘽缂哄け" + v-model="userform.telcode" + ></el-input> </el-form-item + ></el-col> + <el-col :span="12" + ><el-form-item label="鑱旂郴浜虹數璇�"> + <el-input + placeholder="鑱旂郴浜虹數璇濈己澶�" + v-model="userform.relativetelcode" + ></el-input> </el-form-item + ></el-col> + </el-row> + <div style="margin-left: 30px"> + <el-button type="primary" plain @click="Editsingletasksonyic('')" + >淇濆瓨鏈嶅姟</el-button + > + </div> </div> - </div> - <el-form ref="form" :model="form" label-width="80px"> + <el-form-item label="闅忚璁板綍"> <el-input type="textarea" v-model="form.remark"></el-input> </el-form-item> @@ -259,7 +291,7 @@ /> </el-form-item ></el-col> </el-row> - <el-row :gutter="20"> + <!-- <el-row :gutter="20"> <el-col :span="24"> <el-form-item label="鏍囩" prop="desc"> <div class="xinz-inf"> @@ -274,14 +306,14 @@ </div> </el-form-item> </el-col> - </el-row> + </el-row> --> </el-form> </div> </el-collapse-item> </el-collapse> </div> </div> - <div v-if="form.serviceType == 2"> + <div> <el-tabs v-model="activeName" type="border-card"> <el-tab-pane name="wj"> <span class="mulsz" slot="label" @@ -291,12 +323,12 @@ <div class="title">{{ taskname ? taskname : "闂嵎" }}</div> <div class="preview-left" v-if="!Voicetype"> - <!-- 鍗曢�� --> <div class="topic-dev" v-for="(item, index) in tableDatatop" :key="item.id" > + <!-- 鍗曢�� --> <div :class=" item.isabnormal @@ -500,8 +532,12 @@ </el-tab-pane> </el-tabs> </div> - <el-dialog title="鎮h�呭啀娆¢殢璁�" :visible.sync="dialogFormVisible"> - <el-form ref="form" :model="form" label-width="80px"> + <el-dialog + title="鎮h�呭啀娆¢殢璁�" + v-dialogDrags + :visible.sync="dialogFormVisible" + > + <el-form ref="zcform" :rules="zcrules" :model="form" label-width="80px"> <el-form-item label="浠诲姟鍚嶇О"> <el-input style="width: 400px" @@ -533,8 +569,15 @@ v-model="form.leavehospitaldistrictname" ></el-input> </el-form-item> + <el-form-item label="鍑洪櫌鏃堕棿"> + <el-input + style="width: 400px" + disabled + v-model="form.endtime" + ></el-input> + </el-form-item> - <el-form-item label="闅忚鏂瑰紡"> + <el-form-item label="闅忚鏂瑰紡" prop="resource"> <el-radio-group v-model="form.resource"> <el-radio label="1">鏈梾鍖洪殢璁�</el-radio> <el-radio label="2">闅忚涓績闅忚</el-radio> @@ -543,7 +586,7 @@ <!-- <el-form-item label="鍗冲埢鍙戦��"> <el-switch v-model="zcform.delivery"></el-switch> </el-form-item> --> - <el-form-item label="闅忚鏃堕棿"> + <el-form-item label="闅忚鏃堕棿" prop="date1"> <el-date-picker type="date" placeholder="閫夋嫨鏃ユ湡" @@ -576,7 +619,7 @@ updatePersonVoices, addPersonVoices, } from "@/api/AiCentre/index"; -import { messagelistpatient } from "@/api/patient/homepage"; +import { messagelistpatient, alterpatient } from "@/api/patient/homepage"; export default { dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"], data() { @@ -593,7 +636,14 @@ tableDatatop: [], //棰樼洰琛� voiceDatatop: [], //棰樼洰琛� dynamicTags: [], - + zcrules: { + date1: [ + { required: true, message: "璇烽�夋嫨闅忚鏂瑰紡", trigger: "change" }, + ], + resource: [ + { required: true, message: "璇烽�夋嫨闅忚鏃堕棿", trigger: "blur" }, + ], + }, userform: {}, Whetherall: false, //鏄惁鍏ㄩ儴璁板綍灞曠ず dialogFormVisible: false, @@ -615,6 +665,7 @@ this.patid = this.$route.query.patid; this.Voicetype = this.$route.query.Voicetype; this.serviceType = this.$route.query.serviceType; + console.log(this.id, this.patid); this.getTaskservelist(this.id); }, @@ -629,14 +680,13 @@ isFinish: false, }).then((res) => { if (res.code === 200) { - this.tableDatatop = res.data.scriptResult.script; + this.tableDatatop = res.data.scriptResult; this.tableDatatop.forEach((item) => { - console.log(item.scriptResultId, "scriptResultId"); - - if (item.scriptResultId && item.scriptType != 2) { + if (item.scriptType == 2) item.scriptResult = []; + if (item.scriptResult && item.scriptType != 2) { item.isoption = 3; item.scriptResult = item.scriptResult; - } else if (item.scriptResultId && item.scriptType == 2) { + } else if (item.scriptResult && item.scriptType == 2) { item.scriptResult = item.scriptResult.split("&"); item.isoption = 3; } @@ -649,14 +699,16 @@ // 鑾峰彇鍩虹淇℃伅 getuserinfo() { const queryParams = { - pid: Number(this.id), + pid: Number(this.patid), allhosp: "0", pageNum: 1, }; // 鎮h�呭熀纭�淇℃伅 messagelistpatient(queryParams).then((response) => { - this.userform = response.rows[0]; - this.dynamicTags = response.rows[0].tagList.map(this.processElement); + if (response.rows[0]) { + this.userform = response.rows[0]; + // this.dynamicTags = response.rows[0].tagList.map(this.processElement); + } }); }, // 鑾峰彇璇煶鏁版嵁 @@ -673,7 +725,7 @@ if (res.code == 200) { this.voiceDatatop = res.data.serviceSubtaskDetails; this.voice = res.data.voice; - // // this.activeName = "yy"; + this.activeName = "yy"; this.taskname = res.data.taskName; // 闂嵎灞曠ず鏁版嵁澶勭悊 this.tableDatatop = res.data.filteredDetails; @@ -684,6 +736,8 @@ item.scriptResult = []; } }); + console.log(this.tableDatatop, "this.tableDatatop"); + if (!this.tableDatatop.length) { this.puttaskid(this.templateid); } @@ -718,6 +772,7 @@ // 鍖绘姢浜哄憳瀛樺偍鏁版嵁 getdetail() { let excep = ""; + const promises = []; this.tableDatatop.forEach((item) => { var objs = item.svyLibTemplateTargetoptions.find( (items) => items.optioncontent == item.scriptResult @@ -727,13 +782,13 @@ excep = 1; } } - let obj = { asrtext: null, patid: this.patid, subId: this.id, taskid: this.taskid, scriptid: item.id, + excep: excep, questiontext: item.scriptContent, }; if (item.scriptType == 2 && item.scriptResult[0]) { @@ -743,23 +798,38 @@ } if (item.isoption == 3) { - serviceSubtaskDetailedit(obj).then((res) => { - if (res.code == 200) { - } else { - this.$modal.error("淇敼澶辫触"); - } - }); + promises.push(serviceSubtaskDetailedit(obj)); } else { - serviceSubtaskDetailadd(obj).then((res) => { - if (res.code == 200) { - console.log(res); - } else { - this.$modal.error("淇敼澶辫触"); - } - }); + promises.push(serviceSubtaskDetailadd(obj)); } }); - this.Editsingletasksonyic(excep); + // 浣跨敤 Promise.all 绛夊緟鎵�鏈夊紓姝ユ搷浣滃畬鎴� + Promise.all(promises) + .then((results) => { + // 鎵�鏈夊紓姝ユ搷浣滄垚鍔熷畬鎴愬悗鐨勯�昏緫 + results.forEach((res) => { + if (res.code !== 200) { + this.$modal.error("淇敼澶辫触"); + } + }); + this.Editsingletasksonyic(6); + + this.$modal + .confirm( + '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' + + this.logsheetlist[0].sendname + + '"鍐嶆闅忚锛�' + ) + .then(() => { + document.querySelector("#app").scrollTo(0, 0); + this.dialogFormVisible = true; + }) + .catch(() => {}); + }) + .catch((error) => { + // 濡傛灉鏈変换浣曚竴涓紓姝ユ搷浣滃け璐ワ紝浼氳繘鍏ヨ繖閲� + console.error("鍙戠敓閿欒锛�", error); + }); }, yuyingetdetail() { this.tableDatatop.forEach((item, index) => { @@ -785,13 +855,23 @@ addPersonVoices(obj).then((res) => { if (res.code == 200) { this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛"); + this.$modal + .confirm( + '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' + this.userform.name + '"鍐嶆闅忚锛�' + ) + .then(() => { + document.querySelector("#app").scrollTo(0, 0); + this.dialogFormVisible = true; + }) + .catch(() => {}); } }); }, // 鑾峰彇鎮h�呰褰� getTaskservelist(id) { - this.id = id; + console.log(id, "idsub"); + if (id) { this.Whetherall = false; } else { @@ -804,11 +884,23 @@ }).then((res) => { if (res.code == 200) { this.form = res.rows[0].serviceSubtaskList[0]; - console.log(this.form, "form3"); this.logsheetlist = res.rows[0].serviceSubtaskList; this.templateid = this.logsheetlist[0].templateid; - console.log(this.form.serviceType, "serviceType"); + const targetDate = new Date(this.form.longSendTime); // 鐩爣鏃ユ湡 + const now = new Date(); // 褰撳墠鏃堕棿 + this.form.endtime = this.formatTime(this.form.endtime); + if (now < targetDate && this.form.sendstate == 2) { + this.$confirm("褰撳墠鏈嶅姟鏈埌鍙戦�佹椂闂磋璋ㄦ厧淇敼", "鎻愮ず", { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + type: "warning", + }) + .then(() => {}) + .catch(() => {}); + } + this.getuserinfo(); } + console.log(this.Voicetype, "this.Voicetype"); if (this.Voicetype) { this.getPersonVoices(); @@ -828,14 +920,16 @@ objson.suggest = son; Editsingletaskson(objson).then((res) => { if (res.code) { - this.$modal.msgSuccess("璁板綍鎴愬姛"); + this.$modal.msgSuccess("鏈嶅姟璁板綍鎴愬姛"); this.getTaskservelist(this.id); } }); } }); }, - Editsingletasksonyic(excep) { + Editsingletasksonyic(sendstate) { + console.log(sendstate, "sendstate"); + let objson = {}; getTaskservelist({ patid: this.patid, @@ -843,10 +937,18 @@ }).then((res) => { if (res.code == 200) { objson = res.rows[0].serviceSubtaskList[0]; - objson.excep = excep; + objson.remark = this.form.remark; + if (sendstate) objson.sendstate = sendstate; Editsingletaskson(objson).then((res) => { if (res.code) { this.$modal.msgSuccess("鏈嶅姟淇敼鎴愬姛"); + alterpatient(this.userform).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("鍩虹淇℃伅淇濆瓨鎴愬姛"); + } else { + this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触"); + } + }); this.getTaskservelist(this.id); } }); @@ -855,15 +957,27 @@ }, // 璋冭捣鍐嶆鍙戦�� sendAgain() { + document.querySelector("#app").scrollTo(0, 0); + // scrollTo(0, 0) this.dialogFormVisible = true; }, - // 鏇存敼寮傚父鐘舵�� + // 鏌ョ湅璇︽儏 Seedetails(row) { this.$modal - .confirm('鏄惁鏌ョ湅浠诲姟涓�"' + optionids + '"鐨勬湇鍔¢」锛�') - .then(function () {}) + .confirm('鏄惁鏌ョ湅浠诲姟涓�"' + row.taskName + '"鐨勬湇鍔¤鎯呮暟鎹紵') .then(() => { - this.getList(); + if (row.preachformson) { + if (row.preachformson.includes("3")) { + this.Voicetype = 1; + } + } + console.log(this.Voicetype, "this.Voicetype"); + + this.taskid = row.taskid; + this.id = row.id; + this.patid = row.patid; + this.serviceType = row.serviceType; + this.getTaskservelist(this.id); }) .catch(() => {}); }, @@ -888,8 +1002,6 @@ }, overdata() { this.tableDatatop.forEach((item, index) => { - console.log(item.svyLibTemplateTargetoptions); - var obj = item.svyLibTemplateTargetoptions.find( (items) => items.optioncontent == item.scriptResult ); @@ -905,25 +1017,30 @@ }, // 鍒涘缓鍐嶆闅忚鏈嶅姟 setupsubtask() { - console.log(this.form); - let form = structuredClone(this.form); - form.longSendTime = this.formatTime(form.date1); - if (form.resource) { - if (form.resource == 2) { - form.serviceType = 10; + this.$refs["zcform"].validate((valid) => { + if (valid) { + let form = structuredClone(this.form); + form.longSendTime = this.formatTime(form.date1); + form.finishtime = ""; + if (form.resource) { + if (form.resource == 2) { + form.serviceType = 10; + } + } else { + this.$modal.msgError("鏈�夋嫨闅忚鏂瑰紡"); + } + form.id = null; + form.sendstate = 2; + addserviceSubtask(form).then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("鍒涘缓鎴愬姛"); + } else { + this.$modal.msgError("鍒涘缓澶辫触"); + } + document.querySelector("#app").scrollTo(0, 0); + this.dialogFormVisible = false; + }); } - } else { - this.$modal.msgError("鏈�夋嫨闅忚鏂瑰紡"); - } - form.id = null; - form.sendstate = 2; - addserviceSubtask(form).then((res) => { - if (res.code == 200) { - this.$modal.msgSuccess("鍒涘缓鎴愬姛"); - }else{ - this.$modal.msgError("鍒涘缓澶辫触"); - } - this.dialogFormVisible=false; }); }, updateScore(a, b, c) { @@ -962,7 +1079,6 @@ .Followuserinfos { margin: 20px 10px; align-items: center; - height: 300px; padding: 30px; background: #ffff; border: 1px solid #dcdfe6; -- Gitblit v1.9.3