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 | 1764 +++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 1,372 insertions(+), 392 deletions(-)
diff --git a/src/views/repositoryai/templateku/configurat/index.vue b/src/views/repositoryai/templateku/configurat/index.vue
index f565af4..3ecd00e 100644
--- a/src/views/repositoryai/templateku/configurat/index.vue
+++ b/src/views/repositoryai/templateku/configurat/index.vue
@@ -14,13 +14,13 @@
<el-step>
<template slot="title">
<span style="cursor: pointer" @click="Editprogress = 2"
- >闅忚妯$増棰樼洰</span
+ >闅忚妯℃澘棰樼洰</span
>
</template>
</el-step>
- <el-step description="鏌ョ湅闅忚妯$増棰勮锛屽彲瀵煎嚭PDF">
+ <el-step description="鏌ョ湅闅忚妯℃澘棰勮锛屽彲瀵煎嚭PDF">
<template slot="title">
- <span style="cursor: pointer" @click="preview">闅忚妯$増棰勮</span>
+ <span style="cursor: pointer" @click="preview">闅忚妯℃澘棰勮</span>
</template>
</el-step>
</el-steps>
@@ -41,7 +41,7 @@
>
<el-row>
<el-col :span="12">
- <el-form-item label="妯$増鍚嶇О" prop="region">
+ <el-form-item label="妯℃澘鍚嶇О" prop="region">
<div>
<el-input
v-model="ruleForm.templateName"
@@ -51,7 +51,7 @@
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="闅忚妯$増鍒嗙被" prop="region">
+ <el-form-item label="闅忚妯℃澘鍒嗙被" prop="region">
<el-select
v-model="ruleForm.assortid"
size="medium"
@@ -75,16 +75,20 @@
</el-form-item>
</el-col>
</el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="妯℃澘绠�浠�" prop="note">
+ <div>
+ <el-input
+ type="textarea"
+ placeholder="璇疯緭鍏ョ畝浠�"
+ v-model="ruleForm.note"
+ ></el-input>
+ </div>
+ </el-form-item>
+ </el-col>
+ </el-row>
- <el-form-item label="妯$増绠�浠�" prop="note">
- <div style="width: 50%">
- <el-input
- type="textarea"
- placeholder="璇疯緭鍏ョ畝浠�"
- v-model="ruleForm.note"
- ></el-input>
- </div>
- </el-form-item>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="鐗堟湰鍙�" prop="version">
@@ -97,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="璇烽�夋嫨"
>
@@ -212,11 +216,42 @@
>
</div>
</el-form-item>
-
- <el-form-item label="閫傜敤鐤剧梾" prop="region">
+ <div class="xinz-infs">
+ <el-form-item label="閫傜敤鐤剧梾" prop="region">
+ <el-tag
+ v-for="tag in displayedTags"
+ :key="tag.icdid"
+ type="warning"
+ :disable-transitions="false"
+ >
+ {{ tag.icdname }}
+ </el-tag>
+ <el-tag v-if="hasMore" type="info">+{{ remaining }} more</el-tag>
+ </el-form-item>
+ </div>
+ <div style="margin-left: 120px; margin-bottom: 10px">
<el-button type="warning" @click="$refs.child.handleAddpatient()"
- >娣诲姞鐤剧梾</el-button
+ >鐤剧梾璇︽儏</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
@@ -237,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">
@@ -319,14 +369,14 @@
<el-button
type="success"
@click="Departmenttreatment('ruleForm')"
- >{{ task ? "淇濆瓨鍒颁换鍔℃ā鐗�" : "淇濆瓨闅忚妯$増鍩虹淇℃伅" }}</el-button
+ >{{ task ? "淇濆瓨鍒颁换鍔℃ā鏉�" : "淇濆瓨闅忚妯℃澘鍩虹淇℃伅" }}</el-button
>
</el-form-item>
</el-form>
</div>
- <!-- 闅忚妯$増璁剧疆 -->
+ <!-- 闅忚妯℃澘璁剧疆 -->
<div v-if="Editprogress == 2">
- <div class="leftvlue-jbxx">闅忚妯$増棰樼洰璁剧疆</div>
+ <div class="leftvlue-jbxx">闅忚妯℃澘棰樼洰璁剧疆</div>
<el-divider></el-divider>
<div class="addtopic">
<el-button
@@ -336,9 +386,16 @@
@click="getaddtopiclist"
>娣诲姞棰樼洰</el-button
>
+ <el-button
+ type="success"
+ icon="el-icon-edit-outline"
+ round
+ @click="Operateit = !Operateit"
+ >{{ !Operateit ? "缂栬緫棰樼洰" : "瀹屾暣淇℃伅灞曠ず" }}</el-button
+ >
</div>
<div class="presentation">
- <div class="presentation-left">
+ <div :class="Operateit ? 'presentation-left' : 'spresentation-left'">
<el-card class="box-card" style="min-height: 688px">
<el-table
v-loading="loading"
@@ -347,8 +404,8 @@
<el-table-column
label="缂栧彿"
align="center"
- key="targetid"
- prop="targetid"
+ key="sort"
+ prop="sort"
/>
<el-table-column
label="鏍囬"
@@ -358,15 +415,40 @@
:show-overflow-tooltip="true"
/>
<el-table-column
+ v-if="!Operateit"
label="闂璇濇湳"
align="center"
key="scriptContent"
prop="scriptContent"
:show-overflow-tooltip="true"
/>
+ <el-table-column
+ v-if="!Operateit"
+ label="闂璇濇湳"
+ align="center"
+ key="scriptContent"
+ prop="scriptContent"
+ :show-overflow-tooltip="true"
+ />
+ <el-table-column
+ label="涓嬮璺宠浆"
+ align="center"
+ key="nextScriptno"
+ prop="nextScriptno"
+ :show-overflow-tooltip="true"
+ >
+ <template slot-scope="scope">
+ <span>{{
+ scope.row.nextScriptno == 0
+ ? "宸叉槸鏈�鍚庝竴棰�"
+ : scope.row.nextScriptno
+ }}</span>
+ </template>
+ </el-table-column>
<el-table-column
label="鎿嶄綔"
+ v-if="Operateit"
align="center"
width="250"
class-name="small-padding fixed-width"
@@ -401,34 +483,52 @@
</el-table>
</el-card>
</div>
- <div class="presentation-right">
+ <div class="presentation-right" v-if="Operateit">
<el-card class="box-card">
<el-form
- :inline="true"
:model="topicobj"
+ :inline="true"
class="demo-form-inline"
>
- <div class="headline">
- 棰樼洰璁剧疆璇︽儏
- <span style="margin-left: 30px"
- ><el-button type="primary" @click="Submittopicobj"
- >淇濆瓨</el-button
- ></span
- >
- </div>
- <el-form-item label="棰樼洰鏍囬">
- <el-input
- v-model="topicobj.scriptTopic"
- placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
- ></el-input>
- </el-form-item>
- <el-form-item label="闂鑺傜偣">
- <el-input
- v-model="topicobj.targetid"
- placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
- :disabled="true"
- ></el-input>
- </el-form-item>
+ <div class="headline">棰樼洰璁剧疆璇︽儏</div>
+ <el-row>
+ <el-col :span="24"
+ ><el-form-item label="棰樼洰鏍囬">
+ <el-input
+ v-model="topicobj.scriptTopic"
+ placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
+ ></el-input> </el-form-item
+ ></el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24"
+ ><el-form-item label="闂璇濇湳">
+ <el-input
+ type="textarea"
+ style="width: 600px"
+ v-model="topicobj.scriptContent"
+ placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
+ ></el-input> </el-form-item
+ ></el-col>
+ </el-row>
+ <el-row :gutter="10">
+ <el-col :span="12"
+ ><el-form-item label="闂鑺傜偣">
+ <el-input
+ 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>
+
<el-row :gutter="10">
<el-col :span="12"
><el-form-item label="鏄惁蹇呭~">
@@ -446,14 +546,14 @@
</el-select> </el-form-item
></el-col>
<el-col :span="12"
- ><el-form-item label="鍙栧�肩被鍨�">
+ ><el-form-item label="棰樼洰绫诲瀷">
<el-select
- v-model="topicobj.valueType"
+ v-model="topicobj.scriptType"
placeholder="璇烽�夋嫨"
:disabled="true"
>
<el-option
- v-for="item in valuetype"
+ v-for="item in askvaluetype"
:key="item.value"
:label="item.label"
:value="item.value"
@@ -462,10 +562,78 @@
</el-select> </el-form-item
></el-col>
</el-row>
- <div
- class="topicxq"
- v-if="topicobj.valueType == 2 || topicobj.valueType == 3"
+ <el-form-item
+ label="鏄惁鐢遍�夐」閰嶇疆璺宠浆"
+ 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-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-upload
+ class="upload-demo"
+ :action="uploadImgUrl"
+ :headers="headers"
+ :show-file-list="false"
+ :on-success="
+ (response, file) => handleChanges(response, file, 1)
+ "
+ 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: 18px; margin-top: 10px"
+ v-if="topicobj.ivrVoice"
+ >{{
+ topicobj.ivrVoice.substring(
+ topicobj.ivrVoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ topicobj.ivrVoice
+ ? topicobj.ivrVoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
+ </el-row>
+ <div class="topicxq" v-if="topicobj.scriptType == 4">
<el-row>
<el-col :span="20">
<el-form-item label="鏀堕泦鍐呭">
@@ -495,7 +663,10 @@
<Regular
:TargetoptionList="topicobj.ivrLibaScriptTargetoptionList"
@deloption="deloption"
+ @branchFlagfn="branchFlagfn"
+ :branchFlag="topicobj.branchFlag ? true : false"
:controlsc="false"
+ :scriptType="topicobj.scriptType"
/>
<!-- 鏃犲尮閰嶇被鍨� -->
<div class="topicxq">
@@ -512,38 +683,47 @@
</el-input> </el-form-item
></el-col>
</el-row>
- <!-- <el-row :gutter="10">
- <el-col :span="12"
- ><el-form-item label="澶勭悊">
- <el-input
- type="text"
- placeholder="(榛樿)鏃犲0"
- v-model="topicobj.text"
- maxlength="10"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- </el-row> -->
-
- <el-row :gutter="10">
- <el-col :span="16">
- <el-form-item label="璇煶鏂囦欢">
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鏃犲尮閰嶈闊�" prop="verbaltrickyy">
<el-upload
class="upload-demo"
- style="display: flex"
- action="https://jsonplaceholder.typicode.com/posts/"
- :on-change="handleChange"
- :file-list="fileList"
+ :action="uploadImgUrl"
+ :show-file-list="false"
+ :headers="headers"
+ :on-success="
+ (response, file) =>
+ handleChanges(response, file, 2)
+ "
+ accept=".wav,.mp3"
:limit="1"
- :on-exceed="handleExceed"
>
<el-button size="small" type="primary"
>鐐瑰嚮涓婁紶</el-button
>
</el-upload>
- </el-form-item></el-col
- >
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <span
+ style="font-size: 12px"
+ v-if="topicobj.nomatchvoice"
+ >{{
+ topicobj.nomatchvoice.substring(
+ topicobj.nomatchvoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ topicobj.nomatchvoice
+ ? topicobj.nomatchvoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
</el-row>
</div>
<div class="topicxq">
@@ -560,38 +740,48 @@
</el-input> </el-form-item
></el-col>
</el-row>
- <!-- <el-row :gutter="10">
- <el-col :span="12"
- ><el-form-item label="澶勭悊">
- <el-input
- type="text"
- placeholder="(榛樿)鏃犲0"
- v-model="topicobj.text"
- maxlength="10"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- </el-row> -->
- <el-row :gutter="10">
- <el-col :span="16">
- <el-form-item label="璇煶鏂囦欢">
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鍚笉娓呰闊�" prop="verbaltrickyy">
<el-upload
class="upload-demo"
- style="display: flex"
- action="https://jsonplaceholder.typicode.com/posts/"
- :on-change="handleChange"
- :file-list="fileList"
+ :action="uploadImgUrl"
+ :show-file-list="false"
+ :headers="headers"
+ :on-success="
+ (response, file) =>
+ handleChanges(response, file, 4)
+ "
+ accept=".wav,.mp3"
:limit="1"
- :on-exceed="handleExceed"
>
<el-button size="small" type="primary"
>鐐瑰嚮涓婁紶</el-button
>
</el-upload>
- </el-form-item></el-col
- >
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <span
+ style="font-size: 12px"
+ v-if="topicobj.noclearlyvoice"
+ >{{
+ topicobj.noclearlyvoice.substring(
+ topicobj.noclearlyvoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ topicobj.noclearlyvoice
+ ? topicobj.noclearlyvoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
</el-row>
</div>
<div class="topicxq">
@@ -608,38 +798,48 @@
</el-input> </el-form-item
></el-col>
</el-row>
- <!-- <el-row :gutter="10">
- <el-col :span="12"
- ><el-form-item label="澶勭悊">
- <el-input
- type="text"
- placeholder="(榛樿)鏃犲0"
- v-model="topicobj.text"
- maxlength="10"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- </el-row> -->
- <el-row :gutter="10">
- <el-col :span="16">
- <el-form-item label="璇煶鏂囦欢">
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="闈欓粯璇煶" prop="verbaltrickyy">
<el-upload
class="upload-demo"
- style="display: flex"
- action="https://jsonplaceholder.typicode.com/posts/"
- :on-change="handleChange"
- :file-list="fileList"
+ :action="uploadImgUrl"
+ :show-file-list="false"
+ :headers="headers"
+ :on-success="
+ (response, file) =>
+ handleChanges(response, file, 3)
+ "
+ accept=".wav,.mp3"
:limit="1"
- :on-exceed="handleExceed"
>
<el-button size="small" type="primary"
>鐐瑰嚮涓婁紶</el-button
>
</el-upload>
- </el-form-item></el-col
- >
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <span
+ style="font-size: 12px"
+ v-if="topicobj.sliencevoice"
+ >{{
+ topicobj.sliencevoice.substring(
+ topicobj.sliencevoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ topicobj.sliencevoice
+ ? topicobj.sliencevoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
</el-row>
</div>
</div>
@@ -649,7 +849,7 @@
</div>
<el-button type="success" @click="Departmenttreatment('ruleForm')">{{
- task ? "淇濆瓨鍒颁换鍔℃ā鐗�" : "淇濆瓨棰樼洰鏁版嵁"
+ task ? "淇濆瓨鍒颁换鍔℃ā鏉�" : "淇濆瓨棰樼洰鏁版嵁"
}}</el-button>
<el-button type="primary" plain @click="laststep()">涓婁竴姝�</el-button>
<el-button type="success" plain @click="preview('ruleForm')"
@@ -657,68 +857,67 @@
>
<el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
</div>
- <!-- 闅忚妯$増棰勮 -->
+ <!-- 闅忚妯℃澘棰勮 -->
<div v-if="Editprogress == 3">
- <div class="leftvlue-jbxx">闅忚妯$増闂棰勮</div>
+ <div class="leftvlue-jbxx">闅忚妯℃澘闂棰勮</div>
<el-divider></el-divider>
<div class="preview-left">
- <!-- 鍗曢�� -->
- <div
- class="scriptTopic-dev"
- v-for="item in valssu"
- :key="item.targetid"
- v-if="item.valueType == 1"
- >
- <div class="dev-text">
- {{ item.targetid }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+ <div v-for="item in valssu">
+ <!-- 鍗曢�� -->
+ <div
+ class="scriptTopic-dev"
+ :key="item.sort"
+ v-if="item.valueType == 1"
+ >
+ <div class="dev-text">
+ {{ item.sort }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+ </div>
+ <div class="dev-xx">
+ <el-radio-group v-model="item.remark">
+ <el-radio
+ v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
+ :key="index"
+ :label="index"
+ >{{ items.targetvalue }}</el-radio
+ >
+ </el-radio-group>
+ </div>
</div>
- <div class="dev-xx">
- <el-radio-group v-model="item.remark">
- <el-radio
- v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
- :key="index"
- :label="index"
- >{{ items.targetvalue }}</el-radio
- >
- </el-radio-group>
+ <!-- 澶氶�� -->
+ <div
+ class="scriptTopic-dev"
+ :key="item.sort"
+ v-if="item.valueType == 2"
+ >
+ <div class="dev-text">
+ {{ item.sort }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
+ </div>
+ <div class="dev-xx">
+ <el-checkbox-group v-model="item.remark">
+ <el-checkbox
+ v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
+ :key="index"
+ :label="index"
+ >
+ {{ items.targetvalue }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </div>
</div>
- </div>
- <!-- 澶氶�� -->
- <div
- class="scriptTopic-dev"
- v-for="item in valssu"
- :key="item.targetid"
- v-if="item.valueType == 2"
- >
- <div class="dev-text">
- {{ item.targetid }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
- </div>
- <div class="dev-xx">
- <el-checkbox-group v-model="item.remark">
- <el-checkbox
- v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
- :key="index"
- :label="index"
- >
- {{ items.targetvalue }}
- </el-checkbox>
- </el-checkbox-group>
- </div>
- </div>
- <!-- 濉┖ -->
- <div
- class="scriptTopic-dev"
- v-for="item in valssu"
- :key="item.targetid"
- v-if="item.valueType == 3"
- >
- <div class="dev-text">
- {{ item.targetid }}銆乕濉┖]<span>{{ item.scriptContent }}</span>
- </div>
- <div class="dev-xx">
- <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable>
- </el-input>
+ <!-- 濉┖ -->
+ <div
+ class="scriptTopic-dev"
+ :key="item.sort"
+ v-if="item.valueType == 3"
+ >
+ <div class="dev-text">
+ {{ item.sort }}銆乕濉┖]<span>{{ item.scriptContent }}</span>
+ </div>
+ <div class="dev-xx">
+ <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable>
+ </el-input>
+ </div>
</div>
</div>
</div>
@@ -730,86 +929,507 @@
<!-- 娣诲姞棰樼洰寮圭獥 -->
<el-drawer
title="娣诲姞棰樼洰"
+ @close="$forceUpdate()"
+ @closed="$forceUpdate()"
:visible.sync="drawer"
custom-class="demo-drawer"
size="50%"
>
- <div class="preview-left">
- <el-form
- :model="queryParams"
- ref="queryForm"
- size="small"
- :inline="true"
- label-width="98px"
- >
- <el-form-item label="鏍囬" prop="userName">
- <el-input
- v-model="queryParams.scriptTopic"
- placeholder="璇疯緭鍏�"
- clearable
- style="width: 200px"
- @keyup.enter.native="getaddtopiclist"
- />
- </el-form-item>
-
- <el-form-item>
- <el-button
- type="primary"
- icon="el-icon-search"
- size="medium"
- @click="getaddtopiclist"
- >鎼滅储</el-button
- >
- <el-button icon="el-icon-refresh" size="medium" @click="resetQuery"
- >閲嶇疆</el-button
- >
- </el-form-item>
- </el-form>
- <el-table v-loading="loading" :data="userList">
- <el-table-column
- label="鏍囬"
- align="center"
- key="scriptTopic"
- prop="scriptTopic"
- width="100"
- />
- <el-table-column
- label="闂璇濇湳"
- align="center"
- key="scriptContent"
- prop="scriptContent"
- width="200"
- :show-overflow-tooltip="true"
- />
- <el-table-column
- label="閫夐」鍐呭"
- align="center"
- key="targetoptions"
- prop="targetoptions"
- width="200"
- :show-overflow-tooltip="true"
- />
-
- <el-table-column
- label="鎿嶄綔"
- align="center"
- class-name="small-padding fixed-width"
- >
- <template slot-scope="scope">
- <el-button size="medium" type="text" @click="addtopic(scope.row)"
- ><span class="button-textxg"
- ><i class="el-icon-circle-plus-outline"></i>娣诲姞</span
- ></el-button
+ <div style="margin: 0 25px">
+ <el-tabs v-model="activeName">
+ <el-tab-pane label="棰樺簱閫夊彇" name="first">
+ <div class="preview-left">
+ <el-form
+ :model="queryParams"
+ ref="queryForm"
+ size="small"
+ :inline="true"
+ label-width="98px"
>
- </template>
- </el-table-column>
- </el-table>
- <pagination
- :total="total"
- :page.sync="queryParams.pageNum"
- :limit.sync="queryParams.pageSize"
- @pagination="getaddtopiclist"
- />
+ <el-form-item label="鏍囬" prop="userName">
+ <el-input
+ v-model="queryParams.scriptTopic"
+ placeholder="璇疯緭鍏�"
+ clearable
+ style="width: 200px"
+ @keyup.enter.native="getaddtopiclist"
+ />
+ </el-form-item>
+
+ <el-form-item>
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ size="medium"
+ @click="getaddtopiclist"
+ >鎼滅储</el-button
+ >
+ <el-button
+ icon="el-icon-refresh"
+ size="medium"
+ @click="resetQuery"
+ >閲嶇疆</el-button
+ >
+ </el-form-item>
+ </el-form>
+ <el-table v-loading="loading" :data="userList">
+ <el-table-column
+ label="鏍囬"
+ align="center"
+ key="scriptTopic"
+ prop="scriptTopic"
+ width="100"
+ />
+ <el-table-column
+ label="闂璇濇湳"
+ align="center"
+ key="scriptContent"
+ prop="scriptContent"
+ 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"
+ key="targetoptions"
+ prop="targetoptions"
+ width="200"
+ :show-overflow-tooltip="true"
+ />
+
+ <el-table-column
+ label="鎿嶄綔"
+ align="center"
+ class-name="small-padding fixed-width"
+ >
+ <template slot-scope="scope">
+ <el-button
+ size="medium"
+ type="text"
+ @click="addtopic(scope.row)"
+ ><span class="button-textxg"
+ ><i class="el-icon-circle-plus-outline"></i>娣诲姞</span
+ ></el-button
+ >
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getaddtopiclist"
+ />
+ </div>
+ </el-tab-pane>
+ <el-tab-pane label="鎵嬪姩閰嶇疆" name="second">
+ <div class="preview-left">
+ <el-form
+ :inline="true"
+ :model="indexform"
+ class="demo-form-inline"
+ >
+ <div class="headline">
+ 棰樼洰璁剧疆璇︽儏
+ <span style="margin-left: 30px"
+ ><el-button type="primary" @click="Submittopicobj"
+ >淇濆瓨鏂板</el-button
+ ></span
+ >
+ </div>
+ <el-divider></el-divider>
+ <div>
+ <el-row :gutter="10">
+ <el-col :span="12">
+ <el-form-item label="棰樼洰鏍囬">
+ <el-input
+ v-model="indexform.scriptTopic"
+ placeholder="璇疯緭鍏ラ鐩爣棰�"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="闂鑺傜偣">
+ <el-input
+ v-model="indexform.sort"
+ placeholder="璇疯緭鍏ラ棶棰樿妭鐐�"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="10">
+ <el-col :span="18"
+ ><el-form-item label="闂璇濇湳">
+ <el-input
+ style="width: 600px"
+ type="textarea"
+ v-model="indexform.scriptContent"
+ placeholder="璇蜂粠宸︿晶鍒楄〃閫夋嫨"
+ ></el-input> </el-form-item
+ ></el-col>
+ </el-row>
+ <el-row :gutter="10">
+ <el-col :span="12"
+ ><el-form-item label="鏄惁蹇呭~">
+ <el-select
+ v-model="indexform.isMust"
+ placeholder="榛樿蹇呭~"
+ >
+ <el-option
+ v-for="item in required"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select> </el-form-item
+ ></el-col>
+ <!-- <el-col :span="12"
+ ><el-form-item label="鍙栧�肩被鍨�">
+ <el-select
+ v-model="indexform.valueType"
+ placeholder="璇烽�夋嫨"
+ :disabled="true"
+ >
+ <el-option
+ v-for="item in valuetype"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </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-upload
+ class="upload-demo"
+ :action="uploadImgUrl"
+ :headers="headers"
+ :show-file-list="false"
+ :on-success="
+ (response, file) => handleChange(response, file, 1)
+ "
+ 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: 18px; margin-top: 10px"
+ v-if="indexform.ivrVoice"
+ >{{
+ indexform.ivrVoice.substring(
+ indexform.ivrVoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ indexform.ivrVoice
+ ? indexform.ivrVoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
+ </el-row>
+ </div>
+ <div>
+ <el-form-item label="鎸囨爣鍚嶇О" prop="deptId">
+ <el-input
+ v-model="indexform.targetname"
+ placeholder="璇疯緭鍏ユ寚鏍囧悕绉�"
+ maxlength="20"
+ />
+ </el-form-item>
+ <el-form-item label="鎸囨爣鎻忚堪" prop="deptId">
+ <el-input
+ v-model="indexform.targetdesc"
+ placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
+ maxlength="60"
+ />
+ </el-form-item>
+
+ <el-row>
+ <el-col :span="20">
+ <el-form-item label="鍊肩被鍨�">
+ <el-radio-group v-model="indexform.valueType">
+ <el-radio :label="1">閫夐」</el-radio>
+ <el-radio :label="2">鏂囨湰</el-radio>
+ <el-radio :label="3">鏁板��</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="20">
+ <el-form-item label="棰樼洰绫诲瀷">
+ <el-radio-group
+ @input="typeselection"
+ v-model="indexform.scriptType"
+ >
+ <el-radio :label="1">鍗曢��</el-radio>
+ <!-- <el-radio :label="2">澶氶��</el-radio> -->
+ <el-radio :label="4">闂瓟</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <div class="topicxq" v-show="indexform.scriptType == 4">
+ <el-row>
+ <el-col :span="20">
+ <el-form-item label="鏀堕泦鍐呭">
+ <el-input
+ style="width: 400px"
+ type="textarea"
+ v-model="indexform.value"
+ placeholder="闂鏀堕泦鍐呭"
+ ></el-input>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+
+ <div v-show="indexform.scriptType == 1">
+ <div class="headline">
+ <div class="basics">閫夐」璁剧疆</div>
+ </div>
+ <el-divider></el-divider>
+ <Regular
+ :TargetoptionList="indexform.ivrLibaScriptTargetoptionList"
+ @deloption="deloption"
+ @addoption="addoptionson"
+ :controlsc="false"
+ :addoption="true"
+ />
+ <!-- 鏃犲尮閰嶇被鍨� -->
+ <div class="topicxq">
+ <el-row :gutter="10">
+ <el-col :span="20"
+ ><el-form-item label="鏃犲尮閰嶈瘽鏈�">
+ <el-input
+ type="textarea"
+ style="width: 400px"
+ placeholder="璇疯緭鍏�"
+ v-model="indexform.noMatchText"
+ 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, 2)
+ "
+ 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.nomatchvoice"
+ >{{
+ indexform.nomatchvoice.substring(
+ indexform.nomatchvoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ indexform.nomatchvoice
+ ? indexform.nomatchvoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </el-col>
+ </el-row>
+ </div>
+
+ <div class="topicxq">
+ <el-row :gutter="10">
+ <el-col :span="20"
+ ><el-form-item label="闈欓粯璇濇湳">
+ <el-input
+ type="textarea"
+ style="width: 400px"
+ placeholder="璇疯緭鍏�"
+ v-model="indexform.slienceText"
+ 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, 3)
+ "
+ 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.sliencevoice"
+ >{{
+ indexform.sliencevoice.substring(
+ indexform.sliencevoice.lastIndexOf("/") + 1
+ )
+ }}</span
+ >
+ </el-col>
+ <el-col :span="6">
+ <mini-audio
+ :audio-source="
+ indexform.sliencevoice
+ ? indexform.sliencevoice
+ : 'https://example.com/example.mp3'
+ "
+ ></mini-audio>
+ </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>
+ </el-tab-pane>
+ </el-tabs>
</div>
</el-drawer>
<!-- 娣诲姞閫傜敤鐤剧梾绐楀彛 -->
@@ -842,17 +1462,26 @@
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: "SpeechTemplates",
+ name: "tpuconfigurat",
components: { Regular, OptionalForm },
data() {
return {
+ headers: {
+ Authorization: "Bearer " + getToken(),
+ },
+ uploadImgUrl: process.env.VUE_APP_BASE_API + "/common/uploadSort",
Editprogress: 1, //缂栬緫杩涘害
loading: false, // 閬僵灞�
drawer: false, //鎺у埗灞曞紑
@@ -860,6 +1489,10 @@
radioas: "", //濉┖棰樼瓟妗�
task: null, //鏄惁鏉ヨ嚜浠诲姟
taskform: null, //浠诲姟淇℃伅
+ Operateit: true,
+ indexform: {
+ ivrLibaScriptTargetoptionList: [],
+ },
labelInfovalue: [], //鏍囩涓存椂瀛樺偍
deptNamesvalue: [], //绉戝涓存椂瀛樺偍
dialogVisiblepatient: false, //閫傜敤鐤剧梾绐楀彛
@@ -868,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: [],
@@ -884,6 +1521,10 @@
optionstag: [],
prefollowuplist: [],
postfollowuplist: [],
+ tempDetpRelevanceslist: [], //绉戝鏁版嵁
+ tempDetpRelevanceslistform: [], //绉戝鏁版嵁
+ tempbelongWards: [], //鐥呭尯鏁版嵁
+ tempbelongWardsform: [], //鐥呭尯鏁版嵁
generallist: [
{ value: "1", label: "闅忚閫氱敤搴撲竴" },
{ value: "2", label: "闅忚浜屽簱" },
@@ -907,6 +1548,8 @@
usable: [],
required: [],
valuetype: [],
+ valuetypes: [],
+ askvaluetype: [],
mode: [],
inputVisible: false,
inputVisibleillness: false,
@@ -922,12 +1565,15 @@
tempDetpRelevanceslist: [],
delScriptVOList: [],
optionIndex: "",
+ activeName: "first",
variablelist: [
{ variatename: "濮撳悕", variate: "${name}", default: 1 },
{ variatename: "鐢佃瘽", variate: "${phone}", default: 1 },
{ variatename: "鐥呮儏", variate: "${illness}", default: 1 },
],
- deptList: [],
+ deptlist: [],
+ hosplist: [],
+ flatArray: [],
props: { multiple: true, value: "deptId", label: "deptName" },
variablelist: [
@@ -936,12 +1582,18 @@
value: "琛ㄧず鎮h�呯殑鏍囪瘑",
},
],
+ queryParamsdept: {
+ tempid: "",
+ type: 2,
+ },
valssu: [],
radio: "",
addvalue: "娣诲姞棰樼洰",
// 棰樼洰琛ㄦ牸鏁版嵁
userList: [],
+ belongWards: [],
+ belongDepts: [],
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -954,21 +1606,54 @@
},
};
},
+ activated() {
+ if (this.id != this.$route.query.id) {
+ console.log(1);
+
+ this.RoutingDataProcessing();
+ this.gettabList();
+ this.getvFollowup();
+ this.auxiliary();
+ } else {
+ this.tempDetpRelevanceslistform = [];
+ this.tempbelongWardsform = [];
+ }
+ },
created() {
this.RoutingDataProcessing();
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: {
+ displayedTags() {
+ // 杩斿洖鍓�10涓猼ag
+ return this.illnesslist.slice(0, 10);
+ },
+ hasMore() {
+ // 鍒ゆ柇鏄惁鏈夋洿澶氱殑tag
+ return this.illnesslist.length > 10;
+ },
+ remaining() {
+ // 璁$畻鍓╀綑鐨則ag鏁伴噺
+ return this.illnesslist.length - 10;
+ },
+ },
methods: {
//鍏叡鏂规硶--------------------
@@ -982,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() {
@@ -995,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) => {
@@ -1020,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,
@@ -1054,17 +1789,30 @@
});
// 鐤剧梾鍒�
},
- //
+ // 閫夐」閰嶇疆璺宠浆瑙﹀彂
+ branchFlagfn(row) {
+ if (this.topicobj.branchFlag == 1 && this.topicobj.nextScriptno != 0) {
+ this.topicobj.nextScriptno =
+ this.topicobj.ivrLibaScriptTargetoptionList[0].nextQuestion;
+ }
+ },
+ //淇濆瓨
submitForm(formName) {
if (this.ruleForm.id) {
this.ruleForm.isoperation = 2;
} else {
this.ruleForm.isoperation = 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(",");
+ if (!this.ruleForm.assortid) {
+ this.ruleForm.assortid = -1;
+ }
+ // 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) => {
@@ -1080,11 +1828,55 @@
return item;
});
});
- compileFollowup(this.ruleForm).then((res) => {
- this.$modal.msgSuccess("缂栬緫鎴愬姛");
- this.confirmillness(res.data);
- this.$router.go(-1);
+ 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) => {
@@ -1106,38 +1898,61 @@
},
// 绉戝澶勭悊
Departmenttreatment() {
- 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.$modal.loading("姝e湪淇淇濆瓨鏁版嵁锛岃绋嶅��...");
+ 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() {
@@ -1157,7 +1972,8 @@
type: "warning",
})
.then(() => {
- this.$router.go(-1);
+ const obj = { path: "/knowledge/templateku/" };
+ this.$tab.closeOpenPage(obj);
})
.catch(() => {
this.$message({
@@ -1166,10 +1982,35 @@
});
});
},
-
- // 鎺у埗鏂囦欢
- handleChange(file, fileList) {
- this.fileList = fileList.slice(-3);
+ //鎺у埗璇煶鏂囦欢(鏂�)
+ handleChange(response, file, additionalParam) {
+ console.log(response);
+ console.log(additionalParam);
+ if (additionalParam == 1) {
+ this.indexform.ivrVoice = response.url;
+ } else if (additionalParam == 2) {
+ this.indexform.nomatchvoice = response.url;
+ } else if (additionalParam == 3) {
+ this.indexform.sliencevoice = response.url;
+ } else if (additionalParam == 4) {
+ this.indexform.noclearlyvoice = response.url;
+ }
+ this.$forceUpdate();
+ },
+ //鎺у埗璇煶鏂囦欢
+ handleChanges(response, file, additionalParam) {
+ console.log(response);
+ console.log(additionalParam);
+ if (additionalParam == 1) {
+ this.topicobj.ivrVoice = response.url;
+ } else if (additionalParam == 2) {
+ this.topicobj.nomatchvoice = response.url;
+ } else if (additionalParam == 3) {
+ this.topicobj.sliencevoice = response.url;
+ } else if (additionalParam == 4) {
+ this.topicobj.noclearlyvoice = response.url;
+ }
+ this.$forceUpdate();
},
// 鏂囦欢瓒呭嚭涓暟闄愬埗鏃剁殑閽╁瓙
handleExceed(files, fileList) {
@@ -1187,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;
@@ -1216,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);
@@ -1256,7 +2101,6 @@
});
},
addtopic(row) {
- console.log(row);
if (
this.ruleForm.ivrLibaTemplateScriptVOList.some(
(obj) => obj.scriptTopic == row.scriptTopic
@@ -1279,15 +2123,18 @@
},
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);
- this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯$増鐢熸晥");
+ if (row.id) {
+ this.delScriptVOList.push(row);
+ }
+ this.sortFn();
+ this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯℃澘鐢熸晥");
})
.catch(() => {});
},
@@ -1336,33 +2183,97 @@
},
// 闂鎺掑簭
sortFn() {
- this.ruleForm.ivrLibaTemplateScriptVOList =
- this.ruleForm.ivrLibaTemplateScriptVOList.map((item, index) => {
- return Object.assign({}, item, { targetid: (index + 1).toString() });
- });
- this.ruleForm.ivrLibaTemplateScriptVOList.forEach((question, index) => {
- question.ivrLibaScriptTargetoptionList =
- question.ivrLibaScriptTargetoptionList.map((option) => {
- option.nextQuestion = Number(question.targetid) + 1;
- return option;
+ console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
+
+ this.ruleForm.ivrLibaTemplateScriptVOList.forEach((item, index) => {
+ item.sort = Number(index) + 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&&!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.ruleForm.ivrLibaTemplateScriptVOList[this.optionIndex] =
- this.topicobj;
- this.$modal.msgSuccess("鏆傚瓨閫夐」鎴愬姛");
+ this.$modal
+ .confirm(
+ '鏄惁纭鏂板鍚嶇О涓�"' + this.indexform.scriptTopic + '"鐨勯棶棰樻暟鎹紵'
+ )
+ .then(() => {
+ this.indexform.isoperation = 1;
+ this.indexform.pid = this.ruleForm.id;
+ this.indexform.ivrLibaScriptTargetoptionList.forEach((item) => {
+ item.isoperation = 1;
+ });
+ this.ruleForm.ivrLibaTemplateScriptVOList.push(this.indexform);
+ this.indexform = {
+ ivrLibaScriptTargetoptionList: [],
+ };
+ this.drawer = false;
+
+ this.sortFn();
+ this.$modal.msgSuccess("棰樼洰鏂板鎴愬姛锛屼繚瀛樻ā鏉跨敓鏁�");
+ });
},
// ---------------------
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);
@@ -1372,14 +2283,49 @@
// 鍓嶅線娴嬭瘯
measurement() {
this.$modal
- .confirm("鍗冲皢鍓嶅線妯$増娴嬭瘯椤甸潰锛岃纭妯$増鏁版嵁宸蹭繚瀛樸��")
+ .confirm("鍗冲皢鍓嶅線妯℃澘娴嬭瘯椤甸潰锛岃纭妯℃澘鏁版嵁宸蹭繚瀛樸��")
.then((res) => {
this.$router.push({
path: "/knowledge/templateku/configurat/measurement",
- query: { id: this.id, name: this.ruleForm.templateName },
+ query: {
+ id: this.id,
+ name: this.ruleForm.templateName,
+ timeout: this.ruleForm.silencetime,
+ },
});
})
.catch(() => {});
+ },
+ // 鏂板缓妯℃澘涓复鏃堕鐩�
+ // 棰樼洰绫诲瀷鏇存崲
+ typeselection(row) {
+ if (row == 1 && !this.indexform.ivrLibaScriptTargetoptionList.length) {
+ this.indexform.ivrLibaScriptTargetoptionList.push({
+ guid: 1,
+ isoperation: 1,
+ targetvalue: "",
+ targetregex: "",
+ targetregex2: "",
+ dynamiccruxs: [],
+ nodynamiccruxs: [],
+ dynamiccruxsJson: "",
+ nodynamiccruxsJson: "",
+ });
+ }
+ this.$forceUpdate();
+ },
+ addoptionson() {
+ this.indexform.ivrLibaScriptTargetoptionList.push({
+ guid: 1,
+ isoperation: 1,
+ targetvalue: "",
+ targetregex: "",
+ targetregex2: "",
+ dynamiccruxs: [],
+ nodynamiccruxs: [],
+ dynamiccruxsJson: "",
+ nodynamiccruxsJson: "",
+ });
},
},
};
@@ -1442,6 +2388,21 @@
margin-bottom: 10px;
}
}
+ .headline {
+ display: flex;
+ justify-content: space-between;
+ font-size: 20px;
+ border-left: 3px solid #41a1be;
+ padding-left: 5px;
+ margin: 15px 0;
+ }
+ .topicxq {
+ background-color: #e2f5fc;
+ border-radius: 4px;
+ margin-top: 10px;
+ padding-left: 10px;
+ padding-top: 15px;
+ }
}
.xinz-inf {
font-size: 18px;
@@ -1467,6 +2428,15 @@
vertical-align: bottom;
}
}
+
+.xinz-infs {
+ font-size: 18px;
+ line-height: 48px;
+
+ .el-tag + .el-tag {
+ margin-left: 10px;
+ }
+}
.addtopic {
margin-top: 30px;
}
@@ -1483,6 +2453,16 @@
color: #f52727;
}
}
+ .spresentation-left {
+ width: 100%;
+ // height: 500px;
+ .button-textxg {
+ color: #024df0;
+ }
+ .button-textsc {
+ color: #f52727;
+ }
+ }
.presentation-right {
width: 55%;
max-height: 688px;
--
Gitblit v1.9.3