From 91f78c7a3c325b7627f269524cdf92f006948cdf Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期一, 20 十月 2025 17:37:35 +0800
Subject: [PATCH] 景宁电话接入
---
src/views/repositoryai/templateku/configurat/index.vue | 722 ++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 506 insertions(+), 216 deletions(-)
diff --git a/src/views/repositoryai/templateku/configurat/index.vue b/src/views/repositoryai/templateku/configurat/index.vue
index 8cc1a63..3ecd00e 100644
--- a/src/views/repositoryai/templateku/configurat/index.vue
+++ b/src/views/repositoryai/templateku/configurat/index.vue
@@ -101,7 +101,7 @@
<el-col :span="12">
<el-form-item label="鍙敤鐘舵��" prop="region">
<el-select
- v-model="ruleForm.usestate"
+ v-model="ruleForm.isenable"
size="medium"
placeholder="璇烽�夋嫨"
>
@@ -234,6 +234,25 @@
>鐤剧梾璇︽儏</el-button
>
</div>
+ <el-form-item label="閫傜敤閫氱敤搴�" prop="region">
+ <el-select
+ style="width: 500px"
+ v-model="ruleForm.submoduleID"
+ size="medium"
+ multiple
+ filterable
+ placeholder="璇烽�夋嫨閫氱敤搴�"
+ >
+ <el-option
+ class="ruleFormaa"
+ v-for="item in generallist"
+ :key="item.id"
+ :label="item.extName"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
<el-form-item label="閫傜敤闄㈠尯" prop="region">
<el-select
style="width: 500px"
@@ -253,58 +272,73 @@
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="閫傜敤绉戝" prop="region">
- <el-cascader
- style="width: 500px"
- v-model="tempDetpRelevanceslist"
- :options="deptList"
- :props="props"
- :show-all-levels="false"
- clearable
- >
- <template slot-scope="{ node, data }">
- <span>{{ data.deptName }}</span>
- <span v-if="!node.isLeaf"> ({{ data.children.length }}) </span>
- </template>
- </el-cascader>
- </el-form-item>
- <el-form-item label="閫氱敤搴�" prop="region">
- <el-select
- style="width: 500px"
- v-model="ruleForm.submoduleID"
- size="medium"
- multiple
- filterable
- placeholder="璇烽�夋嫨搴擄紙澶氶�夛級"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in generallist"
- :key="item.id"
- :label="item.extName"
- :value="item.id"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-row :gutter="20">
- <el-col :span="12">
- <el-form-item label="闅忚鍓嶅鐞�" prop="name">
- <el-input
- type="textarea"
- show-word-limit
- v-model="ruleForm.revisitBefore"
- ></el-input></el-form-item
- ></el-col>
- <el-col :span="12">
- <el-form-item label="闅忚鍚庡鐞�" prop="region">
- <el-input
- type="textarea"
- show-word-limit
- v-model="ruleForm.revisitAfter"
- ></el-input> </el-form-item
+ <el-row>
+ <el-col :span="20"
+ ><el-form-item label="閫傜敤绉戝" prop="region">
+ <el-select
+ v-model="tempDetpRelevanceslist"
+ @remove-tag="removetag"
+ style="width: 55vw"
+ size="medium"
+ multiple
+ filterable
+ placeholder="璇烽�夋嫨绉戝"
+ >
+ <el-option
+ class="ruleFormaa"
+ v-for="item in flatArray"
+ :key="item.deptCode"
+ :label="item.label"
+ :value="item.deptCode"
+ >
+ </el-option>
+ </el-select> </el-form-item
></el-col>
</el-row>
+ <el-row>
+ <el-col :span="20"
+ ><el-form-item label="閫傜敤鐥呭尯" prop="region">
+ <el-select
+ v-model="tempbelongWards"
+ @remove-tag="removehpsp"
+ style="width: 55vw"
+ size="medium"
+ multiple
+ filterable
+ placeholder="璇烽�夋嫨绉戝"
+ >
+ <el-option
+ class="ruleFormaa"
+ v-for="item in flatArray"
+ :key="item.deptCode"
+ :label="item.label"
+ :value="item.deptCode"
+ >
+ </el-option>
+ </el-select> </el-form-item
+ ></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12"
+ ><el-form-item label="寮�鍦虹櫧" prop="revisitBefore">
+ <el-input
+ type="textarea"
+ :rows="3"
+ v-model="ruleForm.revisitBefore"
+ placeholder="璇疯緭鍏ュ紑鍦虹櫧"
+ /> </el-form-item
+ ></el-col>
+ <el-col :span="12"
+ ><el-form-item label="缁撴潫璇�" prop="revisitAfter">
+ <el-input
+ type="textarea"
+ :rows="3"
+ v-model="ruleForm.revisitAfter"
+ placeholder="璇疯緭鍏ョ粨鏉熻"
+ /> </el-form-item
+ ></el-col>
+ </el-row>
+
<el-row :gutter="20">
<el-col :span="8">
<el-form-item label="闈欓粯鏃堕棿(绉�)" prop="name">
@@ -458,28 +492,20 @@
>
<div class="headline">棰樼洰璁剧疆璇︽儏</div>
<el-row>
- <el-col :span="12"
+ <el-col :span="24"
><el-form-item label="棰樼洰鏍囬">
<el-input
v-model="topicobj.scriptTopic"
placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
></el-input> </el-form-item
></el-col>
- <el-col :span="12">
- <el-form-item label="涓嬮璺宠浆">
- <el-input
- v-model="topicobj.nextScriptno"
- placeholder="璇疯緭鍏ラ鍙�"
- ></el-input>
- </el-form-item>
- </el-col>
</el-row>
<el-row>
- <el-col :span="20"
+ <el-col :span="24"
><el-form-item label="闂璇濇湳">
<el-input
type="textarea"
- style="width: 400px"
+ style="width: 600px"
v-model="topicobj.scriptContent"
placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
></el-input> </el-form-item
@@ -492,6 +518,13 @@
v-model="topicobj.sort"
placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
:disabled="true"
+ ></el-input> </el-form-item
+ ></el-col>
+ <el-col :span="12"
+ ><el-form-item label="涓嬮璺宠浆">
+ <el-input
+ v-model="topicobj.nextScriptno"
+ placeholder="璇疯緭鍏ラ鍙�"
></el-input> </el-form-item
></el-col>
</el-row>
@@ -534,13 +567,34 @@
v-if="topicobj.scriptType == 1"
>
<el-radio-group v-model="topicobj.branchFlag">
- <el-radio :label="1">鏄�</el-radio>
- <el-radio :label="0">鍚�</el-radio>
+ <el-radio :label="'1'">鏄�</el-radio>
+ <el-radio :label="'0'">鍚�</el-radio>
</el-radio-group>
</el-form-item>
+ <el-form-item label="閫変腑鎻愮ず" v-if="topicobj.scriptType != 1">
+ <el-input
+ style="width: 24vw"
+ type="textarea"
+ autosize
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="topicobj.prompt"
+ >
+ </el-input
+ ></el-form-item>
+ <el-row>
+ <el-col :span="24"
+ ><el-form-item label="璇煶鏂囨湰">
+ <el-input
+ type="textarea"
+ style="width: 600px"
+ v-model="topicobj.ivrtext"
+ placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
+ ></el-input> </el-form-item
+ ></el-col>
+ </el-row>
<el-row>
<el-col :span="6">
- <el-form-item label="闂璇煶" prop="verbaltrickyy">
+ <el-form-item label="璇煶鏂囦欢" prop="verbaltrickyy">
<el-upload
class="upload-demo"
:action="uploadImgUrl"
@@ -561,10 +615,10 @@
<el-col :span="6">
<span
style="font-size: 18px; margin-top: 10px"
- v-if="topicobj.scriptVoice"
+ v-if="topicobj.ivrVoice"
>{{
- topicobj.scriptVoice.substring(
- topicobj.scriptVoice.lastIndexOf("/") + 1
+ topicobj.ivrVoice.substring(
+ topicobj.ivrVoice.lastIndexOf("/") + 1
)
}}</span
>
@@ -572,8 +626,8 @@
<el-col :span="6">
<mini-audio
:audio-source="
- topicobj.scriptVoice
- ? topicobj.scriptVoice
+ topicobj.ivrVoice
+ ? topicobj.ivrVoice
: 'https://example.com/example.mp3'
"
></mini-audio>
@@ -612,6 +666,7 @@
@branchFlagfn="branchFlagfn"
:branchFlag="topicobj.branchFlag ? true : false"
:controlsc="false"
+ :scriptType="topicobj.scriptType"
/>
<!-- 鏃犲尮閰嶇被鍨� -->
<div class="topicxq">
@@ -874,6 +929,8 @@
<!-- 娣诲姞棰樼洰寮圭獥 -->
<el-drawer
title="娣诲姞棰樼洰"
+ @close="$forceUpdate()"
+ @closed="$forceUpdate()"
:visible.sync="drawer"
custom-class="demo-drawer"
size="50%"
@@ -931,6 +988,20 @@
width="200"
:show-overflow-tooltip="true"
/>
+ <el-table-column
+ label="闂绫诲瀷"
+ align="center"
+ key="valueType"
+ prop="valueType"
+ width="120"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="valuetypes"
+ :value="scope.row.valueType"
+ />
+ </template>
+ </el-table-column>
<el-table-column
label="閫夐」鍐呭"
align="center"
@@ -1004,7 +1075,7 @@
<el-col :span="18"
><el-form-item label="闂璇濇湳">
<el-input
- style="width: 400px"
+ style="width: 600px"
type="textarea"
v-model="indexform.scriptContent"
placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
@@ -1044,9 +1115,33 @@
</el-select> </el-form-item
></el-col> -->
</el-row>
+ <el-form-item
+ label="閫変腑鎻愮ず"
+ v-if="topicobj.scriptType != 1"
+ >
+ <el-input
+ style="width: 24vw"
+ type="textarea"
+ autosize
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ v-model="indexform.prompt"
+ >
+ </el-input
+ ></el-form-item>
+ <el-row :gutter="10">
+ <el-col :span="18"
+ ><el-form-item label="璇煶鏂囨湰">
+ <el-input
+ style="width: 600px"
+ type="textarea"
+ v-model="indexform.ivrtext"
+ placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
+ ></el-input> </el-form-item
+ ></el-col>
+ </el-row>
<el-row>
<el-col :span="6">
- <el-form-item label="闂璇煶" prop="verbaltrickyy">
+ <el-form-item label="璇煶鏂囦欢" prop="verbaltrickyy">
<el-upload
class="upload-demo"
:action="uploadImgUrl"
@@ -1067,10 +1162,10 @@
<el-col :span="6">
<span
style="font-size: 18px; margin-top: 10px"
- v-if="indexform.scriptVoice"
+ v-if="indexform.ivrVoice"
>{{
- indexform.scriptVoice.substring(
- indexform.scriptVoice.lastIndexOf("/") + 1
+ indexform.ivrVoice.substring(
+ indexform.ivrVoice.lastIndexOf("/") + 1
)
}}</span
>
@@ -1078,8 +1173,8 @@
<el-col :span="6">
<mini-audio
:audio-source="
- indexform.scriptVoice
- ? indexform.scriptVoice
+ indexform.ivrVoice
+ ? indexform.ivrVoice
: 'https://example.com/example.mp3'
"
></mini-audio>
@@ -1213,64 +1308,7 @@
</el-col>
</el-row>
</div>
- <div class="topicxq">
- <el-row :gutter="10">
- <el-col :span="20"
- ><el-form-item label="鍚笉娓呰瘽鏈�">
- <el-input
- style="width: 400px"
- type="textarea"
- placeholder="璇疯緭鍏�"
- v-model="indexform.noClearlyText"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- </el-row>
- <el-row>
- <el-col :span="6">
- <el-form-item label="鍚笉娓呰闊�" prop="verbaltrickyy">
- <el-upload
- class="upload-demo"
- :action="uploadImgUrl"
- :show-file-list="false"
- :headers="headers"
- :on-success="
- (response, file) =>
- handleChange(response, file, 4)
- "
- accept=".wav,.mp3"
- :limit="1"
- >
- <el-button size="small" type="primary"
- >鐐瑰嚮涓婁紶</el-button
- >
- </el-upload>
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <span
- style="font-size: 12px"
- v-if="indexform.noclearlyvoice"
- >{{
- indexform.noclearlyvoice.substring(
- indexform.noclearlyvoice.lastIndexOf("/") + 1
- )
- }}</span
- >
- </el-col>
- <el-col :span="6">
- <mini-audio
- :audio-source="
- indexform.noclearlyvoice
- ? indexform.noclearlyvoice
- : 'https://example.com/example.mp3'
- "
- ></mini-audio>
- </el-col>
- </el-row>
- </div>
<div class="topicxq">
<el-row :gutter="10">
<el-col :span="20"
@@ -1329,6 +1367,64 @@
</el-col>
</el-row>
</div>
+ <div class="topicxq">
+ <el-row :gutter="10">
+ <el-col :span="20"
+ ><el-form-item label="鍚笉娓呰瘽鏈�">
+ <el-input
+ style="width: 400px"
+ type="textarea"
+ placeholder="璇疯緭鍏�"
+ v-model="indexform.noClearlyText"
+ show-word-limit
+ >
+ </el-input> </el-form-item
+ ></el-col>
+ </el-row>
+
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鍚笉娓呰闊�" prop="verbaltrickyy">
+ <el-upload
+ class="upload-demo"
+ :action="uploadImgUrl"
+ :show-file-list="false"
+ :headers="headers"
+ :on-success="
+ (response, file) =>
+ handleChange(response, file, 4)
+ "
+ accept=".wav,.mp3"
+ :limit="1"
+ >
+ <el-button size="small" type="primary"
+ >鐐瑰嚮涓婁紶</el-button
+ >
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <span
+ style="font-size: 12px"
+ v-if="indexform.noclearlyvoice"
+ >{{
+ indexform.noclearlyvoice.substring(
+ indexform.noclearlyvoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ indexform.noclearlyvoice
+ ? indexform.noclearlyvoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
+ </el-row>
+ </div>
</div>
</el-form>
</div>
@@ -1366,15 +1462,19 @@
getFollowuplist,
deltargetillness,
getillnesslist,
+ depthospgetson,
+ depthospgetsonlist,
illnesslistget,
getillness,
getgenerallist,
+ depthospgetsondel
} from "@/api/AiCentre/index";
import OptionalForm from "@/components/OptionalForm"; //姝e垯缁勪欢
import { getToken } from "@/utils/auth";
+import { deptTreeSelect } from "@/api/system/user";
export default {
- name: "Tpuconfigurat",
+ name: "tpuconfigurat",
components: { Regular, OptionalForm },
data() {
return {
@@ -1401,14 +1501,18 @@
inputValue: "",
inputValueillness: "",
topicobj: {
- noMatchText: "",
- noClearlyText: "",
- slienceText: "",
+ noMatchText: "鎶辨瓑锛屾垜娌℃湁鍚噦锛屾偍鑳藉啀璇翠竴閬嶅悧?",
+ noClearlyText: "鎶辨瓑锛屾垜娌℃湁鍚竻鎮ㄨ鐨勮瘽锛屾偍鍙互鍐嶈涓�娆″悧?",
+ slienceText: "鎶辨瓑锛屾垜娌℃湁鍚埌鎮ㄨ鐨勮瘽锛屾偍鍙互鍐嶈涓�娆″悧?",
},
total: 1,
id: "",
ruleForm: {
templateName: "",
+ revisitBefore:
+ "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾垜浠槸"+localStorage.getItem("orgname")+"鐨勫尰鎶や汉鍛橈紝涓轰簡鏇村ソ鍦颁簡瑙f偍鐨勫悍澶嶆儏鍐碉紝璇锋偍鎶戒竴鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚銆�",
+ revisitAfter:
+ "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
ivrLibaTemplateTagList: [],
ivrLibaTemplateScriptVOList: [],
tempDetpRelevances: [],
@@ -1417,6 +1521,10 @@
optionstag: [],
prefollowuplist: [],
postfollowuplist: [],
+ tempDetpRelevanceslist: [], //绉戝鏁版嵁
+ tempDetpRelevanceslistform: [], //绉戝鏁版嵁
+ tempbelongWards: [], //鐥呭尯鏁版嵁
+ tempbelongWardsform: [], //鐥呭尯鏁版嵁
generallist: [
{ value: "1", label: "闅忚閫氱敤搴撲竴" },
{ value: "2", label: "闅忚浜屽簱" },
@@ -1440,6 +1548,7 @@
usable: [],
required: [],
valuetype: [],
+ valuetypes: [],
askvaluetype: [],
mode: [],
inputVisible: false,
@@ -1462,7 +1571,9 @@
{ variatename: "鐢佃瘽", variate: "${phone}", default: 1 },
{ variatename: "鐥呮儏", variate: "${illness}", default: 1 },
],
- deptList: [],
+ deptlist: [],
+ hosplist: [],
+ flatArray: [],
props: { multiple: true, value: "deptId", label: "deptName" },
variablelist: [
@@ -1471,12 +1582,18 @@
value: "琛ㄧず鎮h�呯殑鏍囪瘑",
},
],
+ queryParamsdept: {
+ tempid: "",
+ type: 2,
+ },
valssu: [],
radio: "",
addvalue: "娣诲姞棰樼洰",
// 棰樼洰琛ㄦ牸鏁版嵁
userList: [],
+ belongWards: [],
+ belongDepts: [],
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -1491,10 +1608,15 @@
},
activated() {
if (this.id != this.$route.query.id) {
+ console.log(1);
+
this.RoutingDataProcessing();
this.gettabList();
this.getvFollowup();
this.auxiliary();
+ } else {
+ this.tempDetpRelevanceslistform = [];
+ this.tempbelongWardsform = [];
}
},
@@ -1503,14 +1625,19 @@
this.gettabList();
this.getvFollowup();
this.auxiliary();
+ this.getDeptTree();
this.mode = store.getters.mode;
+ console.log(this.mode,'this.mode');
this.usable = store.getters.usable;
this.required = store.getters.required;
this.valuetype = store.getters.valuetype;
+ this.valuetypes = store.getters.valuetypelb;
this.askvaluetype = store.getters.askvaluetype;
this.languagelist = store.getters.languagelist;
this.courtyardlist = store.getters.courtyardlist;
this.precedencetype = store.getters.precedencetype;
+ this.belongWards = store.getters.belongWards;
+ this.belongDepts = store.getters.belongDepts;
},
mounted() {},
computed: {
@@ -1540,11 +1667,34 @@
RoutingDataProcessing() {
this.id = this.$route.query.id;
this.task = this.$route.query.task;
+ this.queryParamsdept.tempid = this.id;
+ },
+ // 鑾峰彇绉戝鏍�
+ getDeptTree() {
+ // 绉戝鍒楄〃
+ deptTreeSelect().then((response) => {
+ this.deptOptions = response.data;
+ this.flatArray = this.flattenArray(response.data);
+ });
+ },
+ flattenArray(multiArray) {
+ let result = [];
- // console.log(this.task, "task");
- // if (this.task) {
- // this.id = this.$route.query.id;
- // }
+ // 閫掑綊鍑芥暟锛岀敤浜庡皢澶氱骇鏁扮粍杞崲涓轰竴缁存暟缁勶紝鍙寘鍚渶搴曞眰鐨勫厓绱�
+ function flatten(element) {
+ // 濡傛灉褰撳墠鍏冪礌鏈夊瓙鍏冪礌锛岀户缁�掑綊
+ if (element.children && element.children.length > 0) {
+ element.children.forEach((child) => flatten(child));
+ } else {
+ // 鍏嬮殕鍏冪礌浠ラ伩鍏嶄慨鏀瑰師濮嬫暟鎹�
+ let item = JSON.parse(JSON.stringify(element));
+ result.push(item); // 灏嗘渶搴曞眰鐨勫厓绱犳坊鍔犲埌缁撴灉鏁扮粍
+ }
+ }
+
+ // 浠庨《灞傚厓绱犲紑濮嬮�掑綊
+ multiArray.forEach((element) => flatten(element));
+ return result; // 杩斿洖鍙寘鍚渶搴曞眰鍏冪礌鐨勪竴缁存暟缁�
},
// 鑾峰彇琛ㄥ崟鏁版嵁
getvFollowup() {
@@ -1553,23 +1703,23 @@
if (res.code == 200) {
console.log(2211);
this.ruleForm = res.data;
- this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
+ if (this.ruleForm.deptNames)
+ console.log(this.ruleForm.suitway,'suitway');
this.ruleForm.suitway = this.ruleForm.suitway.split(",");
- this.ruleForm.campus = this.ruleForm.campus.split(",");
+ console.log(this.ruleForm.suitway,'suitway');
+ if (this.ruleForm.campus)
+ this.ruleForm.campus = this.ruleForm.campus.split(",");
this.ruleForm.submoduleID = this.ruleForm.submoduleID.split(",");
this.ruleForm.submoduleID = this.ruleForm.submoduleID.map((res) => {
return Number(res);
});
- console.log(
- this.ruleForm.submoduleID,
- "this.ruleForm.submoduleID鍙�"
- );
+
this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList;
this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList.map(
this.processElement
);
- console.log(this.ruleForm.suitway);
+ this.sortFn();
}
});
getillness({ outid: this.id, type: 3 }).then((res) => {
@@ -1578,25 +1728,52 @@
item.icdname = item.icd10name;
});
});
+ } else {
+ this.ruleForm = {
+ templateName: "",
+ ivrLibaTemplateTagList: [],
+ ivrLibaTemplateScriptVOList: [],
+ tempDetpRelevances: [],
+ };
+ this.deptOptions = [];
+ this.optionsillness = [];
+ this.illnesslistapi = [];
+ this.illnesslist = [];
+ this.dynamicTags = [];
+ this.tempDetpRelevanceslist = [];
}
-
- listDept(this.queryParams).then((response) => {
- this.deptList = this.handleTree(response.data, "deptId");
- });
},
// 闄勫睘鏁版嵁琛�
auxiliary() {
// 鍒嗙被
getFollowupclassify({}).then((res) => {
this.indexAssortlist = res.rows;
- if (this.$route.query.assortid) {
- this.ruleForm.assortid = Number(this.$route.query.assortid);
- }
});
- // 绉戝
- listDept(this.queryParams).then((response) => {
- this.deptList = this.handleTree(response.data, "deptId");
- });
+ this.tempDetpRelevanceslist = [];
+ this.tempbelongWards = [];
+
+ if (this.id) {
+ depthospgetsonlist(this.queryParamsdept).then((res) => {
+ if (res.code == 200) {
+ let arr = res.rows;
+ console.log(arr, "arr");
+
+ arr.forEach((item) => {
+ if (item.deptType == 1) {
+ console.log(this.deptlist, "11");
+ this.deptlist.push(item);
+ console.log("22");
+ this.tempDetpRelevanceslist.push(item.deptCode);
+ } else if (item.deptType == 2) {
+ this.hosplist.push(item);
+ this.tempbelongWards.push(item.deptCode);
+ console.log("33");
+ }
+ });
+ }
+ });
+ }
+
// 鐤剧梾
getillnesslist({
pageNum: 1,
@@ -1629,10 +1806,13 @@
if (!this.ruleForm.assortid) {
this.ruleForm.assortid = -1;
}
- this.ruleForm.labelInfo = JSON.stringify(this.dynamicTags);
- this.ruleForm.suitway = this.ruleForm.suitway.join(",");
- this.ruleForm.campus = this.ruleForm.campus.join(",");
- this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(",");
+ // this.ruleForm.labelInfo = JSON.stringify(this.dynamicTags);
+ if (Array.isArray(this.ruleForm.suitway))
+ this.ruleForm.suitway = this.ruleForm.suitway.join(",");
+ if (Array.isArray(this.ruleForm.campus))
+ this.ruleForm.campus = this.ruleForm.campus.join(",");
+ if (Array.isArray(this.ruleForm.submoduleID))
+ this.ruleForm.submoduleID = this.ruleForm.submoduleID.join(",");
// 鎻愪氦
this.ruleForm.ivrLibaTemplateScriptVOList.forEach((res) => {
@@ -1648,20 +1828,55 @@
return item;
});
});
- compileFollowup(this.ruleForm).then((res) => {
- if (res.code == 200) {
- this.$modal.msgSuccess("缂栬緫鎴愬姛");
- this.$modal.closeLoading();
- this.confirmillness(res.data);
-
- const obj = { path: "/knowledge/templateku/" };
- this.$tab.closeOpenPage(obj);
- } else {
- this.$modal.msgError("淇濆瓨澶辫触");
-
- this.$modal.closeLoading();
- }
+ this.delScriptVOList.forEach((item) => {
+ this.ruleForm.ivrLibaTemplateScriptVOList.push(item);
});
+ // compileFollowup(this.ruleForm).then((res) => {
+ // if (res.code == 200) {
+ // this.$modal.msgSuccess("缂栬緫鎴愬姛");
+ // this.$modal.closeLoading();
+ // this.confirmillness(res.data);
+ // // window.location.reload();
+ // // const obj = { path: "/knowledge/tpuconfigurat/?id=" + this.id };
+ // // this.$tab.closeOpenPage(obj);
+ // } else {
+ // this.$modal.msgError("淇濆瓨澶辫触");
+ // this.$modal.closeLoading();
+ // }
+ // });
+ if (this.id) {
+ this.ruleForm.isoperation = 2;
+ this.ruleForm.tempDetpRelevances = [];
+ compileFollowup(this.ruleForm).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.confirmillness();
+ this.putbelongDepts(this.id);
+ // this.$modal.closeLoading();
+ // this.$router.go(-1);
+ window.location.reload();
+ } else {
+ this.$modal.closeLoading();
+ }
+ });
+ } else {
+ this.ruleForm.isoperation = 1;
+ this.ruleForm.version = this.ruleForm.version
+ ? this.ruleForm.version
+ : "1.0";
+ this.ruleForm.tempDetpRelevances = [];
+ compileFollowup(this.ruleForm).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.confirmillness(res.data);
+ this.putbelongDepts(res.data);
+ this.$modal.closeLoading();
+ this.$router.go(-1);
+ } else {
+ this.$modal.closeLoading();
+ }
+ });
+ }
},
confirmillness(guid) {
this.illnesslist.forEach((item, index) => {
@@ -1684,38 +1899,60 @@
// 绉戝澶勭悊
Departmenttreatment() {
this.$modal.loading("姝e湪淇淇濆瓨鏁版嵁锛岃绋嶅��...");
- this.ruleForm.deptNames = JSON.stringify(this.tempDetpRelevanceslist);
- this.ruleForm.ivrLibaTemplateScriptVOList =
- this.ruleForm.ivrLibaTemplateScriptVOList.concat(this.delScriptVOList);
- const result = this.tempDetpRelevanceslist.map(
- (subArr) => subArr[subArr.length - 1]
- );
- // id鏁扮粍鏌ユ暟缁勫璞�
- result.forEach((item) => {
- const condition = this.ruleForm.tempDetpRelevances.some(
- (obj) => obj.deptId === item
- );
- if (!condition) {
- listDept({ deptId: item }).then((res) => {
- res.data[0].type = 2;
- this.ruleForm.tempDetpRelevances.push(res.data[0]);
+ this.tempDetpRelevanceslist.forEach((item) => {
+ let result = this.deptlist.some((obj) => obj.deptCode == item);
+
+ if (!result) {
+ this.tempDetpRelevanceslistform.push({
+ deptType: 1,
+ longTemp: this.ruleForm.longTemp,
+ deptCode: item,
+ tempid: this.id,
+ type: 2,
});
}
});
- console.log(this.ruleForm.tempDetpRelevances);
- // 鏁扮粍瀵硅薄鏌d鏁扮粍
- this.ruleForm.tempDetpRelevances.forEach((item) => {
- const condition = result.some((obj) => obj === item.deptId);
- if (!condition) {
- const index = this.ruleForm.tempDetpRelevances.indexOf(item);
- this.ruleForm.tempDetpRelevances[index].delFlag = 1;
+ this.tempbelongWards.forEach((item) => {
+ let result = this.hosplist.some((obj) => obj.deptCode == item);
+ if (!result) {
+ this.tempbelongWardsform.push({
+ deptType: 2,
+ longTemp: this.ruleForm.longTemp,
+ deptCode: item,
+ tempid: this.id,
+ type: 2,
+ // 1 : 闂嵎妯℃澘搴搃d銆�11锛氶棶鍗蜂换鍔℃ā鏉垮簱id锛�2 :璇煶闂嵎搴搃d銆�21锛氳闊充换鍔℃ā鏉垮簱id锛�3 : 瀹f暀妯℃澘搴搃d锛�33锛氬鏁欎换鍔℃ā鏉垮簱id
+ });
}
});
- console.log(this.ruleForm.tempDetpRelevances);
setTimeout(() => {
this.submitForm();
}, 1000);
// this.submitForm();
+ },
+ // 淇濆瓨绉戝/鐥呭尯
+ putbelongDepts(id) {
+ this.tempDetpRelevanceslistform.forEach((item) => {
+ if (!item.tempid) item.tempid = id;
+ });
+
+ this.tempbelongWardsform.forEach((item) => {
+ if (!item.tempid) item.tempid = id;
+ });
+ if (this.tempDetpRelevanceslistform.length > 0) {
+ depthospgetson(this.tempDetpRelevanceslistform).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("绉戝鏂板鎴愬姛");
+ }
+ });
+ }
+ if (this.tempbelongWardsform.length > 0) {
+ depthospgetson(this.tempbelongWardsform).then((res) => {
+ if (res.code == 200) {
+ this.$modal.msgSuccess("闄㈠尯鏂板鎴愬姛");
+ }
+ });
+ }
},
// 涓嬩竴姝�
nextstep() {
@@ -1750,7 +1987,7 @@
console.log(response);
console.log(additionalParam);
if (additionalParam == 1) {
- this.indexform.scriptVoice = response.url;
+ this.indexform.ivrVoice = response.url;
} else if (additionalParam == 2) {
this.indexform.nomatchvoice = response.url;
} else if (additionalParam == 3) {
@@ -1765,7 +2002,7 @@
console.log(response);
console.log(additionalParam);
if (additionalParam == 1) {
- this.topicobj.scriptVoice = response.url;
+ this.topicobj.ivrVoice = response.url;
} else if (additionalParam == 2) {
this.topicobj.nomatchvoice = response.url;
} else if (additionalParam == 3) {
@@ -1791,13 +2028,10 @@
tagcategoryid: "0",
};
listtag(tagqueryParams).then((response) => {
- console.log(response);
this.optionstag = response.rows;
});
},
handleClosetag(tag) {
- console.log(tag);
- console.log(this.dynamicTags.indexOf(tag));
const lindex = this.dynamicTags.indexOf(tag);
this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
this.ruleForm.ivrLibaTemplateTagList[lindex].isoperation = 3;
@@ -1820,6 +2054,13 @@
tagname: tagname,
isoperation: 1,
};
+ }
+ const exists = this.dynamicTags.some(
+ (department) => department.tagname === tagname
+ );
+ if (exists) {
+ this.$modal.msgError("鏍囩閲嶅");
+ return;
}
this.ruleForm.ivrLibaTemplateTagList.push(tagvalue);
this.dynamicTags.push(tagvalue);
@@ -1860,7 +2101,6 @@
});
},
addtopic(row) {
- console.log(row);
if (
this.ruleForm.ivrLibaTemplateScriptVOList.some(
(obj) => obj.scriptTopic == row.scriptTopic
@@ -1883,14 +2123,16 @@
},
handleDelete(row) {
this.$modal
- .confirm('鏄惁纭鍒犻櫎闂锛�"' + row.scriptTopic + '"锛�')
+ .confirm('鏄惁纭鍒犻櫎闂锛�"' + row.scriptTopic + '?')
.then(() => {
this.ruleForm.ivrLibaTemplateScriptVOList.splice(
this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row),
1
);
row.isoperation = 3;
- this.delScriptVOList.push(row);
+ if (row.id) {
+ this.delScriptVOList.push(row);
+ }
this.sortFn();
this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯℃澘鐢熸晥");
})
@@ -1941,25 +2183,45 @@
},
// 闂鎺掑簭
sortFn() {
+ console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
+
this.ruleForm.ivrLibaTemplateScriptVOList.forEach((item, index) => {
item.sort = Number(index) + 1;
- console.log(1);
+ console.log(this.ruleForm.ivrLibaTemplateScriptVOList.length);
+ console.log(item.sort);
if (item.sort == this.ruleForm.ivrLibaTemplateScriptVOList.length) {
item.nextScriptno = 0;
} else {
item.nextScriptno = item.sort + 1;
}
- if (item.ivrLibaScriptTargetoptionList) {
+ if (item.ivrLibaScriptTargetoptionList&&!item.branchFlag) {
item.ivrLibaScriptTargetoptionList.forEach((items) => {
items.nextQuestion = Number(item.sort) + 1;
});
}
});
+ this.$forceUpdate();
+
console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
},
// -----------------------璇濇湳閫夐」
- deloption() {},
+ deloption(item) {
+ const index = this.topicobj.ivrLibaScriptTargetoptionList.indexOf(item);
+ if (index != -1) {
+ if (item.id) {
+ console.log(item, "chunz");
+ item.isoperation = 3;
+ console.log(this.topicobj.ivrLibaScriptTargetoptionList);
+ this.$forceUpdate();
+ } else {
+ this.topicobj.ivrLibaScriptTargetoptionList.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
+ }
+ // this.sortFn();
+ } else {
+ console.log("鏈壘鍒拌瀵硅薄");
+ }
+ },
// 淇敼棰樼洰淇℃伅
Submittopicobj() {
this.$modal
@@ -1979,7 +2241,7 @@
this.drawer = false;
this.sortFn();
- this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鏉垮け鏁�");
+ this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鏉跨敓鏁�");
});
},
@@ -1987,7 +2249,31 @@
resetForm(formName) {
this.$refs[formName].resetFields();
},
-
+ // 绉戝鍒犻櫎瑙﹀彂
+ removetag(row) {
+ let result = this.deptlist
+ .filter((item) => item.deptCode == row)
+ .map((item) => item.id);
+ console.log(result.length);
+ if (result.length) {
+ depthospgetsondel(result).then((res) => {
+ if (res.code) {
+ }
+ });
+ }
+ },
+ // 鍒犻櫎鍒犻櫎瑙﹀彂
+ removehpsp(row) {
+ let result = this.hosplist
+ .filter((item) => item.deptCode == row)
+ .map((item) => item.id);
+ if (result.length) {
+ depthospgetsondel(result).then((res) => {
+ if (res.code) {
+ }
+ });
+ }
+ },
// 棰勮---------------
preview() {
console.log(this.ruleForm);
@@ -2000,8 +2286,12 @@
.confirm("鍗冲皢鍓嶅線妯℃澘娴嬭瘯椤甸潰锛岃纭妯℃澘鏁版嵁宸蹭繚瀛樸��")
.then((res) => {
this.$router.push({
- path: "/knowledge/tpuconfigurat/measurement",
- query: { id: this.id, name: this.ruleForm.templateName },
+ path: "/knowledge/templateku/configurat/measurement",
+ query: {
+ id: this.id,
+ name: this.ruleForm.templateName,
+ timeout: this.ruleForm.silencetime,
+ },
});
})
.catch(() => {});
--
Gitblit v1.9.3