From d90b45d7e9e38e34c044b772006004f2a4cb8b8e Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期五, 26 六月 2026 13:51:50 +0800
Subject: [PATCH] 测试完成
---
src/views/followvisit/record/detailpage/index.vue | 702 ++++++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 513 insertions(+), 189 deletions(-)
diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue
index d8ae58d..ed5040e 100644
--- a/src/views/followvisit/record/detailpage/index.vue
+++ b/src/views/followvisit/record/detailpage/index.vue
@@ -76,7 +76,8 @@
gettoken360(
scope.row.sfzh,
scope.row.drcode,
- scope.row.drname
+ scope.row.drname,
+ scope.row.patid
)
"
><span class="button-textsc">{{
@@ -94,43 +95,36 @@
>
</el-table-column>
<el-table-column
- prop="sendstate"
+ label="闅忚鐘舵��"
align="center"
- width="200"
- label="浠诲姟鐘舵��"
+ key="sendstateView"
+ prop="sendstateView"
+ width="120"
>
<template slot-scope="scope">
- <div v-if="scope.row.sendstate == 1">
- <el-tag type="primary" :disable-transitions="false"
- >琛ㄥ崟宸查鍙�</el-tag
- >
- </div>
- <div v-if="scope.row.sendstate == 2">
- <el-tag type="primary" :disable-transitions="false"
- >寰呴殢璁�</el-tag
- >
- </div>
- <div v-if="scope.row.sendstate == 3">
- <el-tag type="success" :disable-transitions="false"
- >琛ㄥ崟宸插彂閫�</el-tag
- >
- </div>
- <div v-if="scope.row.sendstate == 4">
- <el-tag type="info" :disable-transitions="false">涓嶆墽琛�</el-tag>
- </div>
- <div v-if="scope.row.sendstate == 5">
- <el-tag type="danger" :disable-transitions="false"
- >鍙戦�佸け璐�</el-tag
- >
- </div>
- <div v-if="scope.row.sendstate == 6">
- <el-tag type="success" :disable-transitions="false"
- >宸插畬鎴�</el-tag
- >
- </div>
- <div v-if="scope.row.sendstate == 7">
- <el-tag type="danger" :disable-transitions="false">瓒呮椂</el-tag>
- </div>
+ <el-tooltip
+ class="item"
+ effect="dark"
+ :content="scope.row.remark"
+ placement="top-start"
+ popper-class="statistics-tooltip"
+ >
+ <div v-if="scope.row.sendstateView == 1">
+ <el-tag type="primary" :disable-transitions="false"
+ >寰呴殢璁�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstateView == 2">
+ <el-tag type="success" :disable-transitions="false"
+ >宸插畬鎴�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstateView == 3">
+ <el-tag type="warning" :disable-transitions="false"
+ >鏃犻渶闅忚</el-tag
+ >
+ </div>
+ </el-tooltip>
</template>
</el-table-column>
<el-table-column
@@ -142,6 +136,18 @@
>
</el-table-column>
<el-table-column
+ v-if="orgname == '鍗楀崕澶у闄勫睘绗竴鍖婚櫌'"
+ label="鍏ラ櫌鏃ユ湡"
+ width="200"
+ align="center"
+ key="starttime"
+ prop="starttime"
+ >
+ <template slot-scope="scope">
+ <span>{{ formatTime(scope.row.starttime) }}</span>
+ </template></el-table-column
+ >
+ <el-table-column
label="鍑洪櫌鏃ユ湡"
width="200"
align="center"
@@ -152,6 +158,7 @@
<span>{{ formatTime(scope.row.endtime) }}</span>
</template></el-table-column
>
+
<el-table-column
label="璐d换鎶ゅ+"
width="120"
@@ -166,7 +173,58 @@
key="drname"
prop="drname"
/>
-
+ <el-table-column
+ label="浠诲姟鐘舵��"
+ align="center"
+ key="sendstate"
+ prop="sendstate"
+ width="120"
+ >
+ <template slot-scope="scope">
+ <el-tooltip
+ class="item"
+ effect="dark"
+ :content="scope.row.remark"
+ placement="top-start"
+ >
+ <div v-if="scope.row.sendstate == 1">
+ <el-tag type="primary" :disable-transitions="false"
+ >琛ㄥ崟宸查鍙�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstate == 2">
+ <el-tag type="primary" :disable-transitions="false"
+ >寰呴殢璁�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstate == 3">
+ <el-tag type="success" :disable-transitions="false"
+ >琛ㄥ崟宸插彂閫�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstate == 4">
+ <el-tag type="info" :disable-transitions="false"
+ >涓嶆墽琛�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstate == 5">
+ <el-tag type="danger" :disable-transitions="false"
+ >鍙戦�佸け璐�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstate == 6">
+ <el-tag type="success" :disable-transitions="false"
+ >宸插畬鎴�</el-tag
+ >
+ </div>
+ <div v-if="scope.row.sendstate == 7">
+ <el-tag type="danger" :disable-transitions="false"
+ >瓒呮椂</el-tag
+ >
+ </div>
+ </el-tooltip>
+ </template>
+ </el-table-column>
<el-table-column
label="缁撴灉鐘舵��"
align="center"
@@ -261,9 +319,38 @@
<!-- 闅忚鍐呭 -->
<div class="call-action">
<div class="call-container">
- <!-- <div class="call-header">
- <h2>涓�閿懠鍙姛鑳�</h2>
- </div> -->
+ <div
+ style="display: flex"
+ v-if="
+ (orgname == '鍗楀崕澶у闄勫睘绗竴鍖婚櫌' ||
+ orgname == '涓芥按甯傜浜屼汉姘戝尰闄�' ||
+ orgname == '缂欎簯鍘夸汉姘戝尰闄�') &&
+ !Voicetype
+ "
+ >
+ <template-selector
+ v-model="form.templateid"
+ :templateName="form.templatename"
+ :service-type="form.serviceType"
+ :is-editable="form.sendState !== 2"
+ @select="handleTemplateSelect"
+ @clear="handleTemplateClear"
+ />
+ <div
+ v-if="defaultKey"
+ style="
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ height: 100%;
+ padding: 33px 0 0 50px;
+ "
+ >
+ <el-button type="success" round @click="handleConfirmReplace">
+ 榛樿濉厖
+ </el-button>
+ </div>
+ </div>
<div class="headline">
<div>闅忚鍐呭</div>
@@ -275,7 +362,14 @@
><i class="el-icon-notebook-1"></i> 闂嵎闅忚缁撴灉</span
>
<div class="CONTENT">
- <div class="title">{{ taskname ? taskname : "闂嵎" }}</div>
+ <div class="title">
+ {{ taskname ? taskname : "闂嵎" }}
+ <span style="margin-left: 50px">
+ <el-button type="primary" round @click="smsSubTask">
+ 闂嵎鐭俊鎺ㄩ��
+ </el-button>
+ </span>
+ </div>
<div class="preview-left" v-if="!Voicetype">
<div
@@ -290,9 +384,14 @@
v-if="item.scriptType == 1 && !item.astrict"
>
<div class="dev-text">
- {{ index + 1 }}銆乕鍗曢�塢<span>{{
- item.scriptContent
- }}</span>
+ {{ index + 1 }}. [鍗曢�塢
+
+ <span> {{ item.scriptContent }}</span>
+ <span style="margin-left: 20px"
+ ><dict-tag
+ :options="dict.type.dimensionality_type"
+ :value="item.dimension"
+ /></span>
</div>
<div class="dev-xx">
<el-radio-group v-model="item.scriptResult">
@@ -343,9 +442,14 @@
v-if="item.scriptType == 2 && !item.astrict"
>
<div class="dev-text">
- {{ index + 1 }}銆乕澶氶�塢<span>{{
+ {{ index + 1 }}. [澶氶�塢<span>{{
item.scriptContent
}}</span>
+ <span style="margin-left: 20px"
+ ><dict-tag
+ :options="dict.type.dimensionality_type"
+ :value="item.dimension"
+ /></span>
</div>
<div class="dev-xx">
<el-checkbox-group
@@ -377,9 +481,14 @@
v-if="item.scriptType == 4 && !item.astrict"
>
<div class="dev-text">
- {{ index + 1 }}銆乕闂瓟]<span>{{
+ {{ index + 1 }}. [闂瓟]<span>{{
item.scriptContent
}}</span>
+ <span style="margin-left: 20px"
+ ><dict-tag
+ :options="dict.type.dimensionality_type"
+ :value="item.dimension"
+ /></span>
<span v-if="item.valueType == 3">(鍙兘杈撳叆鏁板瓧)</span>
</div>
<div class="dev-xx" v-if="item.valueType == 3">
@@ -413,9 +522,8 @@
>
<div v-if="item.targetvalue">
<div class="dev-text">
- {{ index + 1 }}銆乕鍗曢�塢<span>{{
- item.questiontext
- }}</span>
+ {{ index + 1 }}. [鍗曢�塢
+ <span>{{ item.questiontext }}</span>
</div>
<div class="dev-xx">
<el-radio-group
@@ -446,7 +554,7 @@
<div class="scriptTopic-dev" :key="index" v-else>
<div class="dev-text">
- {{ index + 1 }}銆乕闂瓟]<span>{{
+ {{ index + 1 }}. [闂瓟]<span>{{
item.questiontext
}}</span>
<span v-if="item.valueType == 3">(鍙兘杈撳叆鏁板瓧)</span>
@@ -558,11 +666,7 @@
<div class="header-actions">
<!-- 鍩虹鎿嶄綔鎸夐挳缁� -->
<div class="action-group basic-actions">
- <el-button
- type="primary"
- plain
- @click="Editsingletasksonyic('')"
- >
+ <el-button type="primary" plain @click="alterpatient('')">
淇濆瓨鍩虹淇℃伅
</el-button>
@@ -580,7 +684,7 @@
type="primary"
round
@click="sendAgain"
- v-if="form.isVisitAgain != 2"
+ v-if="(form.isVisitAgain != 2) & (visitAgain == 2)"
>
鍐嶆闅忚
</el-button>
@@ -755,16 +859,54 @@
/>
</div>
</div>
-
+ <el-form-item label="浠诲姟澶勭悊鐘舵��">
+ <el-select
+ v-model="serviceStates"
+ placeholder="璇烽�夋嫨鐘舵��"
+ clearable
+ style="width: 150px; margin-right: 10px"
+ >
+ <el-option
+ v-for="item in serviceState"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ />
+ </el-select>
+ </el-form-item>
<!-- 闅忚鍐呭/璁板綍 -->
<el-form-item
:label="orgname == '涓芥按甯備腑鍖婚櫌' ? '闅忚鍐呭' : '闅忚璁板綍'"
>
- <el-input type="textarea" v-model="form.remark"></el-input>
+ <!-- 蹇嵎鐭鏍囩 -->
+ <div style="margin-bottom: 8px">
+ <el-tag
+ v-for="(item, index) in dict.type.quickfollow_up"
+ :key="index"
+ style="margin-right: 8px; cursor: pointer"
+ @click="insertText(item.value)"
+ >
+ {{ item.value }}
+ </el-tag>
+ </div>
+ <!-- 鏂囨湰鍩� -->
+ <el-input
+ type="textarea"
+ :rows="4"
+ v-model="form.remark"
+ ref="textareaRef"
+ placeholder="鍙偣鍑讳笂鏂瑰揩鎹锋爣绛炬垨鎵嬪姩杈撳叆"
+ ></el-input>
</el-form-item>
<!-- 闅忚鎯呭喌 -->
- <el-form-item label="闅忚鎯呭喌" v-if="orgname == '涓芥按甯備腑鍖婚櫌'">
+ <el-form-item
+ label="闅忚鎯呭喌"
+ v-if="
+ orgname == '涓芥按甯備腑鍖婚櫌' ||
+ orgname == '鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�'
+ "
+ >
<el-radio-group v-model="form.taskSituation">
<el-radio
v-for="city in cities"
@@ -910,34 +1052,21 @@
<!-- 娉ㄦ剰杩欓噷浣跨敤浜� smsDialogVisible 浠ュ尯鍒嗗凡鏈夌殑 dialogFormVisible -->
<el-form ref="smsForm" :model="form" label-width="80px">
<el-form-item label="鎮h�呭悕绉�">
- <el-input
- style="width: 400px"
- disabled
- v-model="form.sendname"
- ></el-input>
+ <el-input style="width: 400px" v-model="form.sendname"></el-input>
</el-form-item>
<el-form-item label="骞撮緞">
- <el-input style="width: 400px" disabled v-model="form.age"></el-input>
+ <el-input style="width: 400px" v-model="form.age"></el-input>
</el-form-item>
<el-form-item label="鐢佃瘽">
- <el-input
- style="width: 400px"
- disabled
- v-model="userform.telcode"
- ></el-input>
+ <el-input style="width: 400px" v-model="userform.telcode"></el-input>
<!-- 娉ㄦ剰杩欓噷鍙兘浣跨敤 userform.telcode -->
</el-form-item>
<el-form-item label="绉戝">
- <el-input
- style="width: 400px"
- disabled
- v-model="form.deptname"
- ></el-input>
+ <el-input style="width: 400px" v-model="form.deptname"></el-input>
</el-form-item>
<el-form-item label="鐥呭尯">
<el-input
style="width: 400px"
- disabled
v-model="form.leavehospitaldistrictname"
></el-input>
</el-form-item>
@@ -1128,7 +1257,11 @@
savequestiondetail,
addPersonVoices,
query360PatInfo,
+ updateTemplate,
+ query360PatInfonh,
sendMsg,
+ smsSubTask,
+ getconfigKey,
} from "@/api/AiCentre/index";
import {
messagelistpatient,
@@ -1136,13 +1269,16 @@
listcontactinformation,
} from "@/api/patient/homepage";
import CallButton from "@/components/CallButton";
+import TemplateSelector from "@/components/optionalModule";
import MergeAndModify from "./MergeAndModify.vue";
import CallCenterLs from "@/components/CallCenterLs";
+import store from "@/store";
export default {
components: {
CallButton,
MergeAndModify,
CallCenterLs,
+ TemplateSelector,
},
directives: {
numericOnly: {
@@ -1205,7 +1341,14 @@
},
},
},
- dicts: ["sys_normal_disable", "sys_user_sex", "sys_yujing", "sys_suggest"],
+ dicts: [
+ "sys_normal_disable",
+ "dimensionality_type",
+ "quickfollow_up",
+ "sys_user_sex",
+ "sys_yujing",
+ "sys_suggest",
+ ],
data() {
const validatePhone = (rule, value, callback) => {
if (!value) {
@@ -1220,7 +1363,9 @@
}, 300);
};
return {
+ visitAgain: 1,
userid: "",
+ defaultKey: false, //鏄惁鍙粯璁ゅ~鎶�
currentPhoneNumber: "",
callType: "", // 鐢ㄤ簬鍖哄垎鏄摢涓數璇�
isSipRegistering: true, // SIP娉ㄥ唽鐘舵��
@@ -1230,11 +1375,35 @@
isEndingCall: false,
CaldialogVisible: false,
currentCall: null, // 褰撳墠閫氳瘽瀵硅薄
+ serviceStates: 6,
+ serviceState: [
+ {
+ value: 2,
+ label: "寰呴殢璁�",
+ },
+ {
+ value: 3,
+ label: "琛ㄥ崟宸插彂閫�",
+ },
+ {
+ value: 5,
+ label: "鍙戦�佸け璐�",
+ },
+ {
+ value: 6,
+ label: "宸插畬鎴�",
+ },
+ {
+ value: 4,
+ label: "涓嶆墽琛�",
+ },
+ ],
// 鏂板鍔熻兘鏁版嵁
showPatientInfo: true,
showContinuationCareBtn: false, // 鎺у埗寤剁画鎶ょ悊鎸夐挳鏄剧ず
// 璺敱鐩戝惉鐩稿叧
routeWatcher: null,
+
lastRoutePath: this.$route.path,
input: "浠婂ぉ韬綋杩樹笉閿�",
radio: "2",
@@ -1275,6 +1444,14 @@
label: "鍏朵粬",
value: "7",
},
+ ],
+ quickContents: [
+ "鐥呮儏绋冲畾锛岀户缁綋鍓嶆不鐤�",
+ "鎮h�呭凡姝讳骸",
+ "鎮h�呬笉闇�瑕侀殢璁�",
+ "鎸夋椂鏈嶈嵂锛屾敞鎰忎紤鎭�",
+ "楗娓呮贰锛屽繉杈涜荆",
+ "棰勭害涓嬫澶嶈瘖",
],
tableDatatop: [], //棰樼洰琛�
voiceDatatop: [], //棰樼洰琛�
@@ -1371,56 +1548,6 @@
// 绂佺敤浠婂ぉ鍙婁箣鍓嶇殑鏃ユ湡
return time.getTime() < Date.now() - 24 * 60 * 60 * 1000;
},
- // shortcuts: [
- // {
- // text: "涓冨ぉ鍚�",
- // onClick(picker) {
- // const date = new Date();
- // date.setTime(date.getTime() + 3600 * 1000 * 24 * 7);
- // 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: "涓�涓湀鍚�",
- // onClick(picker) {
- // const date = new Date();
- // date.setTime(date.getTime() + 3600 * 1000 * 24 * 30);
- // 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: [
{
@@ -1506,6 +1633,9 @@
this.Voicetype = this.$route.query.Voicetype;
this.visitCount = this.$route.query.visitCount;
this.serviceType = this.$route.query.serviceType;
+ this.visitAgain = store.getters.visitAgain;
+ console.log(store.getters.visitAgain);
+
this.orgname = localStorage.getItem("orgname");
if (this.orgname == "鐪佺珛鍚屽痉缈犺嫅闄㈠尯") {
this.showContinuationCareBtn = true;
@@ -1540,6 +1670,7 @@
];
}
this.getTaskservelist();
+ this.getconfigKey();
},
mounted() {
// 鐩戝惉瀛愮粍浠剁殑sipStatus灞炴�у彉鍖�
@@ -1579,7 +1710,29 @@
return "scriptTopic-dev"; // 姝e父 - 榛樿鏍峰紡
}
},
-
+ getconfigKey() {
+ getconfigKey("default.value.icon").then((res) => {
+ if (res.msg) {
+ if (
+ this.getAssignArr(res.msg).includes(this.$store.state.user.name) ||
+ this.$store.state.user.name == "admin"
+ ) {
+ this.defaultKey = true;
+ } else {
+ this.defaultKey = false;
+ }
+ }
+ });
+ },
+ getAssignArr(rule) {
+ let arr = [];
+ let assiginArr = rule.split(",");
+ for (let i = 0; i < assiginArr.length; i++) {
+ arr[i] = assiginArr[i];
+ }
+ arr.sort(this.compare);
+ return arr;
+ },
// 鑾峰彇閫夐」鏍峰紡绫�
getOptionClass(items) {
if (items.isabnormal == 1) {
@@ -1588,6 +1741,29 @@
return "yellow-star"; // 璀﹀憡 - 榛勮壊鏄熷彿
}
return ""; // 姝e父 - 鏃犵壒娈婃牱寮�
+ },
+ insertText(text) {
+ const textarea = this.$refs.textareaRef;
+ console.log(textarea);
+
+ if (!textarea) return;
+
+ const target = textarea.$el.querySelector("textarea");
+ const start = target.selectionStart;
+ const end = target.selectionEnd;
+ const original = this.form.remark;
+ console.log(original, 11);
+
+ // 鍦ㄥ厜鏍囧鎻掑叆锛屽苟鏇存柊鍏夋爣浣嶇疆
+ this.form.remark =
+ original.substring(0, start) + text + original.substring(end);
+
+ // 淇濇寔鐒︾偣骞剁Щ鍔ㄥ厜鏍囧埌鎻掑叆鍐呭鍚�
+ this.$nextTick(() => {
+ target.focus();
+ const newPos = start + text.length;
+ target.setSelectionRange(newPos, newPos);
+ });
},
// 鑾峰彇闂嵎鏁版嵁
getsearchrResults(id) {
@@ -1629,8 +1805,25 @@
});
},
//鎮h��360璺宠浆
- gettoken360(sfzh, drcode, drname) {
- // this.$modal.msgWarning("360鍔熻兘鏆傛湭寮�閫�");
+ gettoken360(sfzh, drcode, drname, id) {
+ const orgname = localStorage.getItem("orgname");
+ if (orgname == "鍗楀崕澶у闄勫睘绗竴鍖婚櫌") {
+ query360PatInfonh(id).then((res) => {
+ if (res.data) {
+ window.open(res.data, "_blank");
+ } else {
+ this.$modal.msgWarning("360鏌ヨ鏃犵粨鏋�");
+ }
+ });
+ return;
+ } else if (
+ orgname == "绗竴浜烘皯鍖婚櫌婀栨花闄㈠尯" ||
+ orgname == "绗竴浜烘皯鍖婚櫌鍚村北闄㈠尯"
+ ) {
+ let url = `http://192.200.81.189:9100/blj/view?BINGRENID=${id}&YONGHUID=DBA`;
+ window.open(url, "_blank");
+ return;
+ }
this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
@@ -1806,10 +1999,7 @@
// 澶勭悊 scriptResult锛岀洿鎺ヤ慨鏀瑰師濮嬫暟鎹�
if (item.scriptType == 2 && item.scriptResult) {
// 澶勭悊鏁扮粍绫诲瀷鐨� scriptResult
- if (
- Array.isArray(item.scriptResult) &&
- item.scriptResult.length > 0
- ) {
+ if (Array.isArray(item.scriptResult)) {
item.originalScriptResult = item.scriptResult; // 淇濆瓨鍘熷鏁扮粍锛堝彲閫夛級
item.scriptResult = item.scriptResult.join("&"); // 杞崲涓哄瓧绗︿覆
}
@@ -1840,36 +2030,40 @@
savequestiondetail(obj).then((res) => {
if (res.code == 200) {
this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛");
- this.Editsingletasksonyic(6);
+ this.Editsingletasksonyic(this.serviceStates);
const orgName = localStorage.getItem("orgname");
- if (this.form.isVisitAgain != 1 || orgName == "涓芥按甯備腑鍖婚櫌") {
+ if (
+ this.form.isVisitAgain != 1 ||
+ orgName == "涓芥按甯備腑鍖婚櫌" ||
+ this.visitAgain == 1
+ ) {
this.Torouter();
return;
}
- this.$modal
- .confirm(
- '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮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.formtidy();
- this.dialogFormVisible = true;
- })
- .catch(() => {
- this.Torouter();
- });
+ // this.$modal
+ // .confirm(
+ // '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮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.formtidy();
+ // this.dialogFormVisible = true;
+ // })
+ // .catch(() => {
+ // this.Torouter();
+ // });
}
});
},
@@ -1927,6 +2121,87 @@
message: "璇疯緭鍏ユ纭殑鐢佃瘽鍙风爜锛堟墜鏈哄彿鎴栧甫鍖哄彿鐨勫浐瀹氱數璇濓級",
};
}
+ },
+ handleTemplateSelect(templateData) {
+ console.log("閫夋嫨浜嗘ā鏉�:", templateData);
+ // 澶勭悊妯℃澘閫夋嫨閫昏緫
+ let templateobj = templateData.templateData;
+ templateobj.templateid = templateobj.svyid;
+ templateobj.taskid = this.form.taskid;
+ templateobj.isoperation = 1;
+ templateobj.svyTaskTemplateScriptVOS = templateobj.svyTemplateLibScripts;
+ templateobj.svyTaskTemplateScriptVOS.forEach((item) => {
+ item.taskid = this.form.taskid;
+ item.templateid = item.svyid;
+ item.svyTaskTemplateTargetoptions = item.svyLibTemplateTargetoptions;
+ });
+ let obj = {
+ subId: this.form.id,
+ svyTaskTemplateVO: templateobj,
+ };
+ updateTemplate(obj).then((res) => {
+ if (res.code) {
+ location.reload();
+ this.$modal.msgSuccess("妯℃澘淇敼鎴愬姛");
+ } else {
+ }
+ });
+ },
+
+ handleTemplateClear() {
+ console.log("娓呴櫎浜嗘ā鏉块�夋嫨");
+ },
+ smsSubTask() {
+ this.$modal
+ .confirm("鏄惁鍚戞偅鑰呴�氳繃鐭俊鎺ㄩ�佹枃浠跺唴瀹癸紵")
+ .then(() => {
+ console.log(11, this.id);
+
+ smsSubTask(this.id).then((res) => {
+ console.log(11);
+
+ if (res.code) {
+ this.$modal.msgSuccess("鏂囦欢宸查�氳繃鐭俊鎺ㄩ�佺粰鎮h��");
+ } else {
+ }
+ });
+ })
+ .catch((err) => {
+ console.log(err);
+ });
+ },
+ handleConfirmReplace() {
+ // 閬嶅巻鎵�鏈夐鐩紙tableDatatop锛�
+ this.tableDatatop.forEach((item) => {
+ // 鍙鐞嗘湭濉姤鐨勯鐩紙scriptResult 涓虹┖鎴栫┖鏁扮粍锛�
+ if (
+ !item.scriptResult ||
+ (Array.isArray(item.scriptResult) && item.scriptResult.length === 0)
+ ) {
+ // 鏌ユ壘閫夐」涓� defaultValue 涓� 2 鐨勯�夐」
+ const defaultOption = item.svyTaskTemplateTargetoptions?.find(
+ (opt) => opt.defaultValue == 2
+ );
+ console.log(item);
+
+ if (defaultOption) {
+ // 鏍规嵁棰樼洰绫诲瀷璧嬪��
+ if (item.scriptType === "1") {
+ // 鍗曢�夐锛氱洿鎺ヨ祴鍊间负 optioncontent 瀛楃涓�
+ item.scriptResult = defaultOption.optioncontent;
+ } else if (item.scriptType === "2") {
+ // 澶氶�夐锛氳祴鍊间负鍖呭惈 optioncontent 鐨勬暟缁�
+ item.scriptResult = [defaultOption.optioncontent];
+ } else if (item.scriptType === "4") {
+ // 濉┖棰橈細涓�鑸病鏈夐�夐」锛屼絾濡傛灉鏈夊垯璧嬪��
+ item.scriptResult = defaultOption.optioncontent;
+ }
+
+ // 瑙﹀彂瑙嗗浘鏇存柊锛堝洜涓� Vue 鍙兘鏃犳硶妫�娴嬪埌娣卞眰宓屽瀵硅薄鐨勫彉鍖栵級
+ this.$forceUpdate();
+ }
+ }
+ });
},
// 浣跨敤绀轰緥
isValidPhone(phone) {
@@ -2023,7 +2298,7 @@
}
item.patid = this.patid;
item.templateid = item.templateID;
- if (item.nextScriptno == null) {
+ if (item.nextScriptno == null) {
item.nextScriptno = index == dataToSubmit.length - 1 ? 0 : index + 2;
}
});
@@ -2040,36 +2315,42 @@
const orgName = localStorage.getItem("orgname");
console.log(orgName, "orgName");
- if (this.form.isVisitAgain != 1 || orgName == "涓芥按甯備腑鍖婚櫌") {
+ if (
+ this.form.isVisitAgain != 1 ||
+ orgName == "涓芥按甯備腑鍖婚櫌" ||
+ this.visitAgain == 1
+ ) {
this.Torouter();
return;
}
savequestiondetail(obj).then((res) => {
if (res.code == 200) {
this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛");
- this.$modal
- .confirm(
- '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮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.formtidy();
- this.dialogFormVisible = true;
- })
- .catch(() => {
- this.Torouter();
- });
+ this.Torouter();
+
+ // this.$modal
+ // .confirm(
+ // '浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮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.formtidy();
+ // this.dialogFormVisible = true;
+ // })
+ // .catch(() => {
+ // this.Torouter();
+ // });
}
});
},
@@ -2105,14 +2386,19 @@
this.form = res.rows[0].serviceSubtaskList.find(
(item) => item.id == this.id
);
+ console.log(this.form.templatename, "templatename");
+ this.form.remark = this.form.remark || "";
this.logsheetlist = res.rows[0].serviceSubtaskList;
this.templateid = this.form.templateid;
this.selectedTag = this.form.excep;
const targetDate = new Date(this.form.visitTime); // 鐩爣鏃ユ湡
const now = new Date(); // 褰撳墠鏃堕棿
+ console.log(now, "褰撳墠鏃堕棿");
+ console.log(targetDate, "鐩爣鏃ユ湡");
+
if (now < targetDate && this.form.sendstate == 2) {
- this.$confirm("褰撳墠鏈嶅姟鏈埌鍙戦�佹椂闂磋璋ㄦ厧淇敼", "鎻愮ず", {
+ this.$confirm("褰撳墠鏈嶅姟鏈埌闅忚鏃堕棿璇疯皑鎱庝慨鏀�", "鎻愮ず", {
confirmButtonText: "纭畾",
cancelButtonText: "鍙栨秷",
type: "warning",
@@ -2166,6 +2452,9 @@
if (res.code == 200) {
objson = res.rows[0].serviceSubtaskList[0];
objson.suggest = son;
+ objson.remark = this.form.remark;
+ objson.sendstate = this.serviceStates;
+ objson.taskSituation = this.form.taskSituation;
Editsingletaskson(objson).then((res) => {
if (res.code) {
this.$modal.msgSuccess("鏈嶅姟璁板綍鎴愬姛");
@@ -2204,6 +2493,16 @@
});
}
});
+ },
+ alterpatient(sendstate) {
+ this.Editsingletasksonyic(this.serviceStates);
+ // alterpatient(this.userform).then((res) => {
+ // if (res.code == 200) {
+ // this.$modal.msgSuccess("鍩虹淇℃伅淇濆瓨鎴愬姛");
+ // } else {
+ // this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触");
+ // }
+ // });
},
// 寮傚父鍒楁覆鏌�
tableRowClassName({ row, rowIndex }) {
@@ -2595,13 +2894,37 @@
// console.log(11);
// },
beforeRouteLeave(to, from, next) {
- this.$refs.callButton.cleanupResources();
- if (this.$refs.CallCenterLs) {
- console.log(1);
+ const callButton = this.$refs.callButton;
- this.$refs.CallCenterLs.handleSeatLogout();
+ // 濡傛灉瀛樺湪鍛煎彨缁勪欢涓旀鍦ㄩ�氳瘽涓�
+ if (callButton && callButton.isCalling) {
+ this.$confirm("褰撳墠姝e湪閫氳瘽涓紝纭畾瑕佺寮�姝ら〉闈㈠悧锛�", "鎻愮ず", {
+ confirmButtonText: "鎸傛柇骞剁寮�",
+ cancelButtonText: "缁х画閫氳瘽",
+ type: "warning",
+ })
+ .then(() => {
+ // 鐢ㄦ埛纭绂诲紑锛屼富鍔ㄦ寕鏂苟娓呯悊
+ callButton.cleanupResources();
+ if (this.$refs.CallCenterLs) {
+ this.$refs.CallCenterLs.handleSeatLogout();
+ }
+ next();
+ })
+ .catch(() => {
+ // 鐢ㄦ埛鍙栨秷锛岄樆姝㈣矾鐢辫烦杞�
+ next(false);
+ });
+ } else {
+ // 鏈�氳瘽鎴栧懠鍙粍浠朵笉瀛樺湪锛屾甯告竻鐞�
+ if (callButton) {
+ callButton.cleanupResources();
+ }
+ if (this.$refs.CallCenterLs) {
+ this.$refs.CallCenterLs.handleSeatLogout();
+ }
+ next();
}
- next(); // 纭繚璋冪敤 nex
},
// beforeRouteUpdate() {
// console.log(33);
@@ -2931,6 +3254,7 @@
.dev-text {
margin-bottom: 10px;
+ display: flex;
}
}
}
--
Gitblit v1.9.3