From 09abeae851f72a25f105030e37c6a0c9f3189378 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期二, 07 七月 2026 14:54:57 +0800
Subject: [PATCH] 测试完成
---
src/views/followvisit/record/detailpage/index.vue | 705 ++++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 490 insertions(+), 215 deletions(-)
diff --git a/src/views/followvisit/record/detailpage/index.vue b/src/views/followvisit/record/detailpage/index.vue
index f433753..7a81969 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" v-if="orgname != '鐪佺珛鍚屽痉缈犺嫅闄㈠尯'">
+ 闂嵎鐭俊鎺ㄩ��
+ </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>
@@ -576,7 +684,7 @@
type="primary"
round
@click="sendAgain"
- v-if="form.isVisitAgain != 2"
+ v-if="(form.isVisitAgain == 1) & (visitAgain == 2)"
>
鍐嶆闅忚
</el-button>
@@ -792,7 +900,13 @@
</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"
@@ -815,6 +929,13 @@
>
鏆備笉澶勭悊
</el-button>
+ <el-button
+ plain
+ type="success"
+ @click="Editsingletaskson('6')"
+ >
+ 宸查潰璁�
+ </el-button>
<el-button
plain
type="success"
@@ -832,7 +953,7 @@
<el-button plain type="info" @click="Editsingletaskson('5')">
浜哄伐闅忚
</el-button>
- <el-button type="primary" round @click="sendAgainmsg">
+ <el-button type="primary" round @click="sendAgainmsg" v-if="orgname != '鐪佺珛鍚屽痉缈犺嫅闄㈠尯'">
鐭俊鍙戦��
</el-button>
</div>
@@ -938,34 +1059,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>
@@ -981,51 +1089,37 @@
</div>
</el-dialog>
<el-dialog
- title="鎮h�呭啀娆¢殢璁�"
- v-dialogDrags
- :visible.sync="dialogFormVisible"
- >
- <el-form ref="zcform" :rules="zcrules" :model="form" label-width="80px">
+ title="鎮h�呭啀娆¢殢璁�"
+ v-dialogDrags
+ :visible.sync="dialogFormVisible"
+ width="700px"
+>
+ <el-form ref="zcform" :rules="zcrules" :model="form" label-width="80px">
+ <!-- 鍩虹鏈嶅姟淇℃伅 - 榛樿鎶樺彔 -->
+ <el-collapse v-model="activeNames" @change="handleCollapseChange">
+ <el-collapse-item title="鍩虹鏈嶅姟淇℃伅" name="basic">
<el-form-item label="浠诲姟鍚嶇О">
- <el-input
- style="width: 400px"
- disabled
- v-model="form.taskName"
- ></el-input>
+ <el-input style="width: 100%" disabled v-model="form.taskName"></el-input>
</el-form-item>
<el-form-item label="鎮h�呭悕绉�">
- <el-input
- style="width: 400px"
- disabled
- v-model="form.sendname"
- ></el-input>
+ <el-input style="width: 100%" disabled 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: 100%" disabled v-model="form.age"></el-input>
</el-form-item>
<el-form-item label="绉戝">
- <el-input
- style="width: 400px"
- disabled
- v-model="form.deptname"
- ></el-input>
+ <el-input style="width: 100%" disabled 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-input style="width: 100%" disabled 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-input style="width: 100%" disabled v-model="form.endtime"></el-input>
</el-form-item>
- <div class="headline">涓婃闅忚</div>
- <el-divider></el-divider>
+ </el-collapse-item>
+
+ <!-- 涓婃闅忚淇℃伅 - 榛樿鎶樺彔 -->
+ <el-collapse-item title="涓婃闅忚" name="last">
<el-row>
<el-col :span="12">
<el-form-item label="闅忚鏂瑰紡">
@@ -1037,6 +1131,7 @@
disabled
placeholder="璇烽�夋嫨闅忚鏂瑰紡"
class="custom-disabled"
+ style="width: 90%"
>
<el-option
v-for="item in options"
@@ -1058,11 +1153,11 @@
align="right"
v-model="form.date2"
class="custom-disabled"
+ style="width: 95%"
></el-date-picker>
</el-form-item>
</el-col>
</el-row>
-
<el-form-item label="闅忚璁板綍">
<el-input
class="custom-disabled"
@@ -1071,8 +1166,10 @@
v-model="form.remark2"
></el-input>
</el-form-item>
- <div class="headline">涓嬫闅忚</div>
- <el-divider></el-divider>
+ </el-collapse-item>
+
+ <!-- 涓嬫闅忚淇℃伅 - 榛樿灞曞紑 -->
+ <el-collapse-item title="涓嬫闅忚" name="next">
<el-row>
<el-col :span="12">
<el-form-item label="闅忚鏂瑰紡" prop="visitType">
@@ -1083,6 +1180,7 @@
default-first-option
@change="visitChange"
placeholder="璇烽�夋嫨闅忚鏂瑰紡(渚濆嚭闄㈡椂闂磋绠�)"
+ style="width: 90%"
>
<el-option
v-for="item in options"
@@ -1103,6 +1201,7 @@
align="right"
v-model="form.date1"
class="custom-disabled"
+ style="width: 92%"
value-format="yyyy-MM-dd hh:mm:ss"
@change="checkFollowupDate"
></el-date-picker>
@@ -1115,18 +1214,17 @@
<el-radio label="2">闅忚涓績闅忚</el-radio>
</el-radio-group>
</el-form-item>
-
<el-form-item label="闅忚璁板綍" :required="form.resource == '2'">
<el-input type="textarea" v-model="form.remark"></el-input>
</el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="warning" @click="dialogFormVisible = false"
- >鍙� 娑�</el-button
- >
- <el-button type="primary" @click="setupsubtask">纭鍒涘缓鏈嶅姟</el-button>
- </div>
- </el-dialog>
+ </el-collapse-item>
+ </el-collapse>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="warning" @click="dialogFormVisible = false">鍙� 娑�</el-button>
+ <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> -->
@@ -1156,7 +1254,11 @@
savequestiondetail,
addPersonVoices,
query360PatInfo,
+ updateTemplate,
+ query360PatInfonh,
sendMsg,
+ smsSubTask,
+ getconfigKey,
} from "@/api/AiCentre/index";
import {
messagelistpatient,
@@ -1164,13 +1266,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: {
@@ -1235,6 +1340,7 @@
},
dicts: [
"sys_normal_disable",
+ "dimensionality_type",
"quickfollow_up",
"sys_user_sex",
"sys_yujing",
@@ -1254,7 +1360,10 @@
}, 300);
};
return {
+ visitAgain: 1,
+ activeNames: ['next'], // 鍙睍寮�"涓嬫闅忚"锛屽叾浠栭兘鎶樺彔
userid: "",
+ defaultKey: false, //鏄惁鍙粯璁ゅ~鎶�
currentPhoneNumber: "",
callType: "", // 鐢ㄤ簬鍖哄垎鏄摢涓數璇�
isSipRegistering: true, // SIP娉ㄥ唽鐘舵��
@@ -1292,6 +1401,7 @@
showContinuationCareBtn: false, // 鎺у埗寤剁画鎶ょ悊鎸夐挳鏄剧ず
// 璺敱鐩戝惉鐩稿叧
routeWatcher: null,
+
lastRoutePath: this.$route.path,
input: "浠婂ぉ韬綋杩樹笉閿�",
radio: "2",
@@ -1436,56 +1546,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: [
{
@@ -1571,6 +1631,8 @@
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 == "鐪佺珛鍚屽痉缈犺嫅闄㈠尯") {
@@ -1606,6 +1668,7 @@
];
}
this.getTaskservelist();
+ this.getconfigKey();
},
mounted() {
// 鐩戝惉瀛愮粍浠剁殑sipStatus灞炴�у彉鍖�
@@ -1645,7 +1708,32 @@
return "scriptTopic-dev"; // 姝e父 - 榛樿鏍峰紡
}
},
-
+ handleCollapseChange(val) {
+ console.log('鎶樺彔闈㈡澘鐘舵�佸彉鍖�:', val);
+ },
+ 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) {
@@ -1706,7 +1794,9 @@
item.scriptResult = item.scriptResult;
} else if (item.scriptResultId && item.scriptType == 2) {
console.log(item.scriptResult, "item.scriptResult");
- item.scriptResult = item.scriptResult.split("&");
+ item.scriptResult = item.scriptResult
+ ? item.scriptResult.split("&")
+ : [];
item.isoption = 3;
} else if (!item.scriptResultId && item.scriptType == 2) {
item.scriptResult = [];
@@ -1718,8 +1808,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;
@@ -1929,33 +2036,38 @@
this.Editsingletasksonyic(this.serviceStates);
const orgName = localStorage.getItem("orgname");
- if (this.form.isVisitAgain != 1 || orgName == "涓芥按甯備腑鍖婚櫌") {
+ if (this.form.isVisitAgain != 1 || 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();
- });
+ if (
+ orgName == "鏅畞鐣叉棌鑷不鍘夸汉姘戝尰闄�" ||
+ orgName == "缂欎簯绗簩浜烘皯鍖婚櫌"
+ ) {
+ 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();
+ });
+ }
}
});
},
@@ -2013,6 +2125,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) {
@@ -2126,13 +2319,20 @@
const orgName = localStorage.getItem("orgname");
console.log(orgName, "orgName");
- if (this.form.isVisitAgain != 1 || orgName == "涓芥按甯備腑鍖婚櫌") {
- this.Torouter();
- return;
- }
savequestiondetail(obj).then((res) => {
if (res.code == 200) {
this.$modal.msgSuccess("鏈嶅姟淇濆瓨鎴愬姛");
+ // this.Torouter();
+ if (
+ this.form.isVisitAgain != 1 ||
+ orgName == "涓芥按甯備腑鍖婚櫌" ||
+ this.visitAgain == 1
+ ) {
+ console.log("c4");
+
+ this.Torouter();
+ return;
+ }
this.$modal
.confirm(
'浠诲姟淇濆瓨鎴愬姛鏄惁閽堝鎮h�咃細"' +
@@ -2191,14 +2391,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",
@@ -2217,8 +2422,15 @@
},
// 璋冭捣鐭俊鍙戦�佸璇濇
sendAgainmsg() {
- this.smsDialogVisible = true;
- // 鍙互鍦ㄨ繖閲屽垵濮嬪寲 smsContent锛屼緥濡� this.smsContent = '';
+ // this.smsDialogVisible = true;
+ this.$store.dispatch("sms/openSmsDialog", {
+ name: this.form.sendname,
+ age: this.form.age,
+ phone: this.userform.telcode,
+ deptName: this.form.deptname,
+ wardName: this.form.leavehospitaldistrictname,
+ smsTemplate: `灏婃暚鐨�${this.form.sendname}锛屾偍濂斤紒`,
+ });
},
// 鍙戦�佺煭淇$殑鏂规硶
@@ -2252,6 +2464,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("鏈嶅姟璁板綍鎴愬姛");
@@ -2292,13 +2507,14 @@
});
},
alterpatient(sendstate) {
- alterpatient(this.userform).then((res) => {
- if (res.code == 200) {
- this.$modal.msgSuccess("鍩虹淇℃伅淇濆瓨鎴愬姛");
- } else {
- this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触");
- }
- });
+ this.Editsingletasksonyic(this.serviceStates);
+ // alterpatient(this.userform).then((res) => {
+ // if (res.code == 200) {
+ // this.$modal.msgSuccess("鍩虹淇℃伅淇濆瓨鎴愬姛");
+ // } else {
+ // this.$modal.msgError("鍩虹淇℃伅淇敼澶辫触");
+ // }
+ // });
},
// 寮傚父鍒楁覆鏌�
tableRowClassName({ row, rowIndex }) {
@@ -2429,15 +2645,26 @@
if (document.activeElement) {
document.activeElement.blur();
}
+ let selectedOptionObj = null;
+ if (this.Voicetype) {
+ console.log('Voicetype');
- // 鎵惧埌琚�変腑鐨勯�夐」瀵硅薄
- const selectedOptionObj = options.find(
- (item) => item.optioncontent == selectedOption
- );
+ selectedOptionObj = options.find(
+ (item) => item.targetvalue == selectedOption
+ );
+ } else {
+ // 鎵惧埌琚�変腑鐨勯�夐」瀵硅薄
+ selectedOptionObj = options.find(
+ (item) => item.optioncontent == selectedOption
+ );
+ }
+ console.log(this.tableDatatop, "this.tableDatatop");
+ console.log(selectedOptionObj, "selectedOptionObj");
// 澶勭悊寮傚父鐘舵�侀珮浜�
this.tableDatatop[questionIndex].isabnormal =
selectedOptionObj.isabnormal;
+
// 澶勭悊闄勫姞杈撳叆妗嗘樉绀�
this.tableDatatop[questionIndex].showAppendInput =
@@ -2690,13 +2917,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);
@@ -3026,6 +3277,7 @@
.dev-text {
margin-bottom: 10px;
+ display: flex;
}
}
}
@@ -3785,4 +4037,27 @@
color: #66b1ff;
transform: scale(1.1);
}
+/* 璋冩暣鎶樺彔闈㈡澘鏍峰紡 */
+.el-collapse {
+ border-top: none;
+}
+
+.el-collapse-item__header {
+ font-size: 16px;
+ font-weight: bold;
+ background-color: #f5f7fa;
+ padding-left: 15px;
+ border-radius: 4px;
+ margin-bottom: 5px;
+}
+
+.el-collapse-item__wrap {
+ border-bottom: none;
+}
+
+.el-collapse-item__content {
+ padding: 20px 15px;
+ background-color: #fff;
+}
+
</style>
--
Gitblit v1.9.3