From 303d443d2a337e991d6e5e3579c28e1704711c27 Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期五, 06 六月 2025 17:20:56 +0800 Subject: [PATCH] 测试完成 --- src/views/followvisit/record/detailpage/index.vue | 287 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 238 insertions(+), 49 deletions(-) diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue index 286c174..dbb2ba3 100644 --- a/src/views/followvisit/record/detailpage/index.vue +++ b/src/views/followvisit/record/detailpage/index.vue @@ -32,7 +32,11 @@ </div> </div> <div> - <el-table :data="logsheetlist" :row-class-name="tableRowClassName" style="width: 100%"> + <el-table + :data="logsheetlist" + :row-class-name="tableRowClassName" + style="width: 100%" + > <el-table-column prop="sendname" align="center" @@ -372,7 +376,7 @@ : 'scriptTopic-dev' " :key="index" - v-if="item.scriptType == 1" + v-if="item.scriptType == 1 && !item.astrict" > <div class="dev-text"> {{ index + 1 }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span> @@ -380,14 +384,20 @@ <div class="dev-xx"> <el-radio-group v-model="item.scriptResult" - @change="handleOptionChange($event, index, item)" + @change=" + handleOptionChange( + $event, + index, + item.svyLibTemplateTargetoptions + ) + " > <el-radio v-for="( - items, index + items, indexs ) in item.svyLibTemplateTargetoptions" :class="items.isabnormal ? 'red-star' : ''" - :key="index" + :key="indexs" :label="items.optioncontent" >{{ items.optioncontent }}</el-radio > @@ -405,7 +415,7 @@ : 'scriptTopic-dev' " :key="index" - v-if="item.scriptType == 2" + v-if="item.scriptType == 2 && !item.astrict" > <div class="dev-text"> {{ index + 1 }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span> @@ -436,7 +446,7 @@ <div class="scriptTopic-dev" :key="index" - v-if="item.scriptType == 4" + v-if="item.scriptType == 4 && !item.astrict" > <div class="dev-text"> {{ index + 1 }}銆乕闂瓟]<span>{{ item.scriptContent }}</span> @@ -612,6 +622,43 @@ v-model="form.endtime" ></el-input> </el-form-item> + <div class="headline">涓婃闅忚</div> + <el-divider></el-divider> + <el-row> + <el-col> + <el-select + v-model="form.visitType" + multiple + filterable + allow-create + default-first-option + placeholder="璇烽�夋嫨鏂囩珷鏍囩" + > + <el-option + v-for="item in options" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-col> + </el-row> + <el-form-item label="闅忚鏃堕棿" prop="date1"> + <el-date-picker + type="date" + placeholder="閫夋嫨鏃ユ湡" + :picker-options="pickerOptions" + align="right" + v-model="form.date1" + style="width: 100%" + ></el-date-picker> + </el-form-item> + <el-form-item label="闅忚璁板綍"> + <el-input type="textarea" v-model="form.remark"></el-input> + </el-form-item> + <div class="headline">涓嬫闅忚</div> + <el-divider></el-divider> <el-form-item label="闅忚鏂瑰紡" prop="resource"> <el-radio-group v-model="form.resource"> @@ -626,8 +673,8 @@ <el-date-picker type="date" placeholder="閫夋嫨鏃ユ湡" - :picker-options="pickerOptions" - align="right" + :picker-options="pickerOptions" + align="right" v-model="form.date1" style="width: 100%" ></el-date-picker> @@ -676,19 +723,17 @@ activeName: "wj", voice: "", templateid: "", - again:'', + again: "", zcform: {}, form: {}, tableDatatop: [], //棰樼洰琛� voiceDatatop: [], //棰樼洰琛� dynamicTags: [], zcrules: { - date1: [ + resource: [ { required: true, message: "璇烽�夋嫨闅忚鏂瑰紡", trigger: "change" }, ], - resource: [ - { required: true, message: "璇烽�夋嫨闅忚鏃堕棿", trigger: "blur" }, - ], + date1: [{ required: true, message: "璇烽�夋嫨闅忚鏃堕棿", trigger: "blur" }], }, url: "http://9.208.2.190:8090/smartor/serviceExternal/query360PatInfo", postData: { @@ -725,33 +770,88 @@ }, }, pickerOptions: { - shortcuts: [{ - text: '涓冨ぉ鍚�', + shortcuts: [ + { + text: "涓冨ぉ鍚�", onClick(picker) { const date = new Date(); date.setTime(date.getTime() + 3600 * 1000 * 24 * 7); - picker.$emit('pick', date); - } - }, { - text: '15澶╁悗', + picker.$emit("pick", date); + }, + }, + { + text: "15澶╁悗", onClick(picker) { const date = new Date(); - date.setTime(date.getTime() + 3600 * 1000 * 24* 15); - picker.$emit('pick', date); - } - }, { - text: '30澶╁悗', + date.setTime(date.getTime() + 3600 * 1000 * 24 * 15); + picker.$emit("pick", date); + }, + }, + { + text: "涓�涓湀鍚�", onClick(picker) { const date = new Date(); date.setTime(date.getTime() + 3600 * 1000 * 24 * 30); - picker.$emit('pick', date); - } - }] + picker.$emit("pick", date); + }, + }, + { + text: "涓変釜鏈堝悗", + onClick(picker) { + const date = new Date(); + date.setTime(date.getTime() + 3600 * 1000 * 24 * 90); + picker.$emit("pick", date); + }, + }, + { + text: "鍏釜鏈堝悗", + onClick(picker) { + const date = new Date(); + date.setTime(date.getTime() + 3600 * 1000 * 24 * 180); + picker.$emit("pick", date); + }, + }, + { + text: "涓�骞村悗", + onClick(picker) { + const date = new Date(); + date.setTime(date.getTime() + 3600 * 1000 * 24 * 365); + picker.$emit("pick", date); + }, + }, + ], + }, + options: [ + { + value: "涓冨ぉ鍚�", + label: "涓冨ぉ鍚�", }, + { + value: "15澶╁悗", + label: "15澶╁悗", + }, + { + value: "涓�涓湀鍚�", + label: "涓�涓湀鍚�", + }, + { + value: "涓変釜鏈堝悗", + label: "涓変釜鏈堝悗", + }, + { + value: "鍏釜鏈堝悗", + label: "鍏釜鏈堝悗", + }, + { + value: "涓�骞村悗", + label: "涓�骞村悗", + }, + ], userform: {}, Whetherall: true, //鏄惁鍏ㄩ儴璁板綍灞曠ず dialogFormVisible: false, Voicetype: 0, //鏄惁涓鸿闊虫湇鍔� + visitCount: null, logsheetlist: [], topicobj: {}, sendname: null, @@ -769,6 +869,7 @@ this.patid = this.$route.query.patid; this.again = this.$route.query.again; this.Voicetype = this.$route.query.Voicetype; + this.visitCount = this.$route.query.visitCount; this.serviceType = this.$route.query.serviceType; this.getTaskservelist(); @@ -784,17 +885,25 @@ isFinish: false, }).then((res) => { if (res.code === 200) { - if (this.again&&res.data.upScriptResult) { - this.tableDatatop = res.data.upScriptResult; - }else{ - this.tableDatatop = res.data.scriptResult; + // 閽堝鍐嶆闅忚鏈嶅姟杩涜鍒犻櫎缁撴灉璧嬪�� + if (this.again && res.data.upScriptResult) { + res.data.upScriptResult.forEach((itemA) => { + const itemB = res.data.scriptResult.find( + (item) => item.scriptContent === itemA.scriptContent + ); + if (itemB) { + itemB.scriptResult = itemA.scriptResult; + } + }); } + this.tableDatatop = res.data.scriptResult; + this.tableDatatop.forEach((item) => { if (item.scriptType == 2) item.scriptResult = []; - if (item.scriptResult && item.scriptType != 2) { + if (item.scriptResultId && item.scriptType != 2) { item.isoption = 3; item.scriptResult = item.scriptResult; - } else if (item.scriptResult && item.scriptType == 2) { + } else if (item.scriptResultId && item.scriptType == 2) { item.scriptResult = item.scriptResult.split("&"); item.isoption = 3; } @@ -945,13 +1054,44 @@ .confirm( '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' + this.logsheetlist[0].sendname + - '"鍐嶆闅忚锛�' + '"鍐嶆闅忚锛�', + "纭", + { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + showCancelButton: true, + dangerouslyUseHTMLString: true, + confirmButtonClass: "custom-confirm-button", // 鑷畾涔夌‘璁ゆ寜閽殑绫诲悕 + cancelButtonClass: "custom-cancel-button", // 鑷畾涔夊彇娑堟寜閽殑绫诲悕 + } ) .then(() => { document.querySelector("#app").scrollTo(0, 0); this.dialogFormVisible = true; }) - .catch(() => {}); + .catch(() => { + if (this.form.serviceType == 13) { + if (this.visitCount) { + this.$router.push({ + path: "/logisticsservice/zbAgain", + }); + } else { + this.$router.push({ + path: "/logisticsservice/record", + }); + } + } else if (form.serviceType == 2) { + if (this.visitCount) { + this.$router.push({ + path: "/followvisit/again", + }); + } else { + this.$router.push({ + path: "/followvisit/discharge", + }); + } + } + }); }) .catch((error) => { // 濡傛灉鏈変换浣曚竴涓紓姝ユ搷浣滃け璐ワ紝浼氳繘鍏ヨ繖閲� @@ -983,13 +1123,46 @@ this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛"); this.$modal .confirm( - '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' + this.userform.name + '"鍐嶆闅忚锛�' + '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' + + this.userform.name + + '"鍐嶆闅忚锛�', + "纭", + { + confirmButtonText: "纭畾", + cancelButtonText: "鍙栨秷", + showCancelButton: true, + dangerouslyUseHTMLString: true, + confirmButtonClass: "custom-confirm-button", // 鑷畾涔夌‘璁ゆ寜閽殑绫诲悕 + cancelButtonClass: "custom-cancel-button", // 鑷畾涔夊彇娑堟寜閽殑绫诲悕 + } ) .then(() => { document.querySelector("#app").scrollTo(0, 0); this.dialogFormVisible = true; }) - .catch(() => {}); + .catch(() => { + if (this.form.serviceType == 13) { + if (this.visitCount) { + this.$router.push({ + path: "/logisticsservice/zbAgain", + }); + } else { + this.$router.push({ + path: "/logisticsservice/record", + }); + } + } else if (form.serviceType == 2) { + if (this.visitCount) { + this.$router.push({ + path: "/followvisit/again", + }); + } else { + this.$router.push({ + path: "/followvisit/discharge", + }); + } + } + }); } }); }, @@ -1007,7 +1180,9 @@ subId: id, }).then((res) => { if (res.code == 200) { - this.form = res.rows[0].serviceSubtaskList.find(item => item.id == this.id); + this.form = res.rows[0].serviceSubtaskList.find( + (item) => item.id == this.id + ); this.logsheetlist = res.rows[0].serviceSubtaskList; this.templateid = this.logsheetlist[0].templateid; const targetDate = new Date(this.form.longSendTime); // 鐩爣鏃ユ湡 @@ -1050,14 +1225,15 @@ }); }, Editsingletasksonyic(sendstate) { - let objson = {}; getTaskservelist({ patid: this.patid, subId: this.id, }).then((res) => { if (res.code == 200) { - objson = res.rows[0].serviceSubtaskList.find(item => item.id == this.id); + objson = res.rows[0].serviceSubtaskList.find( + (item) => item.id == this.id + ); objson.remark = this.form.remark; if (sendstate) objson.sendstate = sendstate; Editsingletaskson(objson).then((res) => { @@ -1108,8 +1284,18 @@ .catch(() => {}); }, handleOptionChange(a, b, c) { -console.log(a); - + const result = c.find((item) => item.optioncontent == a); + if (result.nextQuestion == 0) { + this.tableDatatop = this.tableDatatop.reduce((acc, item, i) => { + acc.push(i > b ? { ...item, astrict: 1 } : item); + return acc; + }, []); + } else { + this.tableDatatop = this.tableDatatop.reduce((acc, item, i) => { + acc.push(i > b ? { ...item, astrict: 0 } : item); + return acc; + }, []); + } if (this.Voicetype) { var obj = this.tableDatatop[b].ivrTaskScriptTargetoptionList.find( (item) => item.optioncontent == a @@ -1164,11 +1350,11 @@ this.$modal.msgSuccess("鍒涘缓鎴愬姛"); if (form.serviceType == 13) { this.$router.push({ - path: "/logisticsservice/record", + path: "/logisticsservice/zbAgain", }); } else if (form.serviceType == 2) { this.$router.push({ - path: "/followvisit/discharge", + path: "/followvisit/again", }); } } else { @@ -1191,14 +1377,12 @@ return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; }, - updateScore(a, b, c) { - - }, + updateScore(a, b, c) {}, }, }; </script> -<style lang="scss" scoped> +<style lang="scss"> .Followupdetailspage { margin: 10px; } @@ -1369,6 +1553,11 @@ ::v-deep.el-link.el-link--default { color: #02a7f0 !important; } +.el-message-box__btns button:nth-child(2) { + margin-left: 10px; + background-color: #f57676; + border-color: #f57676; +} .mulsz { font-size: 25px; margin-top: 20px; -- Gitblit v1.9.3