From d412b5bcb0b293f70c8a6ed82bce06e12e222db9 Mon Sep 17 00:00:00 2001 From: WXL (wul) <wl_5969728@163.com> Date: 星期二, 21 十月 2025 09:08:23 +0800 Subject: [PATCH] 问卷联调 --- src/views/followvisit/record/detailpage/index.vue | 125 ++++++++++++++++++++++++++++++++++++----- 1 files changed, 110 insertions(+), 15 deletions(-) diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue index 3d96308..9fd2622 100644 --- a/src/views/followvisit/record/detailpage/index.vue +++ b/src/views/followvisit/record/detailpage/index.vue @@ -52,7 +52,7 @@ <el-table :data="logsheetlist" :row-class-name="tableRowClassName" - :max-height="350" + :max-height="350" style="width: 100%" @selection-change="handleSelectionChange" > @@ -302,7 +302,7 @@ handleOptionChange( $event, index, - item.svyLibTemplateTargetoptions, + item.svyTaskTemplateTargetoptions, item ) " @@ -310,7 +310,7 @@ <el-radio v-for="( items, indexs - ) in item.svyLibTemplateTargetoptions" + ) in item.svyTaskTemplateTargetoptions" :class="items.isabnormal ? 'red-star' : ''" :key="indexs" :label="items.optioncontent" @@ -360,7 +360,7 @@ @change="$forceUpdate()" v-for="( items, indexs - ) in item.svyLibTemplateTargetoptions" + ) in item.svyTaskTemplateTargetoptions" :key="indexs" :label="items.optioncontent" > @@ -688,10 +688,24 @@ /> </div> </div> - <el-form-item label="闅忚璁板綍"> + <el-form-item label="闅忚鍐呭" v-if="orgname == '涓芥按甯備腑鍖婚櫌'"> + <el-input type="textarea" v-model="form.remark"></el-input> + </el-form-item> + <el-form-item label="闅忚璁板綍" v-else> <el-input type="textarea" v-model="form.remark"></el-input> </el-form-item> + <el-form-item label="闅忚鎯呭喌" v-if="orgname == '涓芥按甯備腑鍖婚櫌'"> + <el-radio-group v-model="form.taskSituation"> + <el-radio + v-for="city in cities" + :label="city.value" + :value="city.value" + :key="city.value" + >{{ city.label }}</el-radio + > + </el-radio-group> + </el-form-item> <el-form-item label="澶勭悊鎰忚"> <div> <el-button @@ -737,6 +751,24 @@ </el-row> <el-row :gutter="20"> <el-col :span="12" + ><el-form-item label="鎬у埆" prop="telcode"> + <el-select v-model="userform.sex" placeholder="璇烽�夋嫨"> + <el-option label="鐢�" :value="1"> </el-option> + <el-option label="濂�" :value="2"> </el-option> + </el-select> </el-form-item + ></el-col> + <el-col :span="12"> + <el-form-item label="骞撮緞" prop="name"> + <el-input + v-model="userform.age" + placeholder="璇疯緭鍏ュ鍚�" + maxlength="20" + ></el-input> </el-form-item + ></el-col> + </el-row> + + <el-row :gutter="20"> + <el-col :span="12" ><el-form-item label="鑱旂郴鏂瑰紡" prop="telcode"> <el-input v-model="userform.telcode" @@ -750,6 +782,16 @@ v-model="userform.relativetelcode" placeholder="璇疯緭鍏ュ鍚�" maxlength="20" + ></el-input> </el-form-item + ></el-col> + </el-row> + <el-row :gutter="20"> + <el-col :span="24"> + <el-form-item label="璇婃柇鍚嶇О" prop="name"> + <el-input + v-model="form.leavediagname" + placeholder="璇疯緭鍏ヨ瘖鏂�" + maxlength="50" ></el-input> </el-form-item ></el-col> </el-row> @@ -971,6 +1013,18 @@ <el-button type="primary" @click="setupsubtask">纭鍒涘缓鏈嶅姟</el-button> </div> </el-dialog> + <div class="main-content" v-if="orgname == '鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�'"> + <!-- <el-button @click="CaldialogVisible = true">鎵撳紑寮规</el-button> --> + + <!-- 寮规璋冪敤 --> + <el-dialog + title="鍛煎彨鍔熻兘妗�" + :visible.sync="CaldialogVisible" + width="60%" + > + <CallCenterLs ref="callCenterModal" :initial-phone="currentPhoneNumber" /> + </el-dialog> + </div> </div> </template> @@ -996,10 +1050,12 @@ } from "@/api/patient/homepage"; import CallButton from "@/components/CallButton"; import MergeAndModify from "./MergeAndModify.vue"; +import CallCenterLs from "@/components/CallCenterLs"; export default { components: { CallButton, MergeAndModify, + CallCenterLs, }, directives: { numericOnly: { @@ -1083,6 +1139,7 @@ // 宸叉湁鏁版嵁... callStatus: "idle", // idle, calling, connected, ended, failed isEndingCall: false, + CaldialogVisible: false, currentCall: null, // 褰撳墠閫氳瘽瀵硅薄 input: "浠婂ぉ韬綋杩樹笉閿�", radio: "2", @@ -1091,8 +1148,35 @@ voice: "", templateid: "", again: "", + orgname: "", zcform: {}, form: {}, + cities: [ + { + label: "姝e父璇煶", + value: "1", + }, + { + label: "鎮h�呮嫆鎺ユ垨鎷掕", + value: "2", + }, + { + label: "闈㈣鎴栬�呮帴璇�", + value: "3", + }, + { + label: "寰俊闅忚", + value: "4", + }, + { + label: "闅忚鐢佃瘽涓嶆纭�", + value: "5", + }, + { + label: "鍏朵粬鎯呭喌涓嶅疁闅忚", + value: "6", + }, + ], tableDatatop: [], //棰樼洰琛� voiceDatatop: [], //棰樼洰琛� dynamicTags: [], @@ -1296,6 +1380,7 @@ this.Voicetype = this.$route.query.Voicetype; this.visitCount = this.$route.query.visitCount; this.serviceType = this.$route.query.serviceType; + this.orgname = localStorage.getItem("orgname"); this.getTaskservelist(); }, @@ -1471,7 +1556,7 @@ return; } } - var objs = item.svyLibTemplateTargetoptions.find( + var objs = item.svyTaskTemplateTargetoptions.find( (items) => items.optioncontent == item.scriptResult ); if (obj) { @@ -1603,8 +1688,13 @@ this.$message.error("璇疯緭鍏ユ纭殑鎵嬫満鍙风爜"); return; } - this.currentPhoneNumber = phone; + // 鍛煎彨鍒ゆ柇 + if (this.orgname == "鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�") { + this.CaldialogVisible = true; + return + } + this.callType = type; this.callStatus = "calling"; @@ -1651,7 +1741,10 @@ }, 3000); }, yuyingetdetail() { - this.tableDatatop.forEach((item, index) => { + const dataToSubmit = JSON.parse(JSON.stringify(this.tableDatatop)); + + dataToSubmit.forEach((item, index) => { + // 瀵规嫹璐濈殑鏁版嵁杩涜鎿嶄綔锛屼笉褰卞搷鍘熷鐨� scriptResult 鏁扮粍 item.scriptResult = item.scriptResult.join("&"); item.templatequestionnum = index + 1; item.subId = this.id; @@ -1663,8 +1756,9 @@ item.patid = this.patid; item.templateid = item.templateID; }); + let obj = { - serviceSubtaskDetailList: this.tableDatatop, + serviceSubtaskDetailList: dataToSubmit, // 鎻愪氦澶勭悊鍚庣殑鍓湰 param1: this.taskid, param2: this.patid, subId: this.id, @@ -1742,11 +1836,11 @@ this.form = res.rows[0].serviceSubtaskList.find( (item) => item.id == this.id ); - console.log(this.form.serviceType, "serviceType"); + console.log(this.form, "serviceType"); this.logsheetlist = res.rows[0].serviceSubtaskList; - this.templateid = this.logsheetlist[0].templateid; - this.selectedTag = this.logsheetlist[0].excep; + this.templateid = this.form.templateid; + this.selectedTag = this.form.excep; const targetDate = new Date(this.form.longSendTime); // 鐩爣鏃ユ湡 const now = new Date(); // 褰撳墠鏃堕棿 if (now < targetDate && this.form.sendstate == 2) { @@ -1824,6 +1918,7 @@ (item) => item.id == this.id ); objson.remark = this.form.remark; + objson.taskSituation = this.form.taskSituation; objson.excep = this.selectedTag; if (sendstate) objson.sendstate = sendstate; Editsingletaskson(objson).then((res) => { @@ -1916,7 +2011,7 @@ (item) => item.optioncontent == a ); } else { - var obj = this.tableDatatop[b].svyLibTemplateTargetoptions.find( + var obj = this.tableDatatop[b].svyTaskTemplateTargetoptions.find( (item) => item.optioncontent == a ); } @@ -2021,7 +2116,7 @@ }, overdata() { this.tableDatatop.forEach((item, index) => { - var obj = item.svyLibTemplateTargetoptions.find( + var obj = item.svyTaskTemplateTargetoptions.find( (items) => items.optioncontent == item.scriptResult ); if (obj) { @@ -2560,7 +2655,7 @@ margin: 0 10px 20px 10px; /* 褰撶缉鏀炬瘮渚嬪ぇ浜�100%鎴栧睆骞曞搴﹁緝灏忔椂鏀逛负涓婁笅鎺掑垪 */ - @media screen and (max-width: 1200px), (min-resolution: 1.1dppx) { + @media screen and (max-width: 1200px), (min-resolution: 1dppx) { flex-direction: column; .call-action, -- Gitblit v1.9.3