From 841b389629f13bc96652772a25aed7bc1a5eafb9 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 29 七月 2024 15:17:30 +0800
Subject: [PATCH] 测试完成
---
src/views/repositoryai/templateku/configurat/index.vue | 1059 ++++++++++++++++++++++++++++++++++++++--------------------
1 files changed, 694 insertions(+), 365 deletions(-)
diff --git a/src/views/repositoryai/templateku/configurat/index.vue b/src/views/repositoryai/templateku/configurat/index.vue
index b818ccc..52f5ed0 100644
--- a/src/views/repositoryai/templateku/configurat/index.vue
+++ b/src/views/repositoryai/templateku/configurat/index.vue
@@ -2,14 +2,27 @@
<div class="Questionnairemanagement">
<!-- 宸︿晶鏍� -->
<div class="sidecolumn">
- <div style="height: 400px">
- <el-steps direction="vertical" :active="Editprogress">
- <el-step title="鍩虹淇℃伅"></el-step>
- <el-step title="闅忚妯$増棰樼洰"></el-step>
- <el-step
- title="闅忚妯$増棰勮"
- description="鏌ョ湅闅忚妯$増棰勮锛屽彲瀵煎嚭PDF"
- ></el-step>
+ <div>
+ <el-steps finish-status="success" :active="Editprogress" simple>
+ <el-step>
+ <template slot="title">
+ <span style="cursor: pointer" @click="Editprogress = 1"
+ >鍩虹淇℃伅</span
+ >
+ </template>
+ </el-step>
+ <el-step>
+ <template slot="title">
+ <span style="cursor: pointer" @click="Editprogress = 2"
+ >闅忚妯$増棰樼洰</span
+ >
+ </template>
+ </el-step>
+ <el-step description="鏌ョ湅闅忚妯$増棰勮锛屽彲瀵煎嚭PDF">
+ <template slot="title">
+ <span style="cursor: pointer" @click="preview">闅忚妯$増棰勮</span>
+ </template>
+ </el-step>
</el-steps>
</div>
</div>
@@ -45,14 +58,19 @@
filterable
placeholder="璇烽�夋嫨鍒嗙被"
>
- <el-option
- class="ruleFormaa"
- v-for="item in indexAssortlist"
- :key="item.id"
- :label="item.indexAssortName"
- :value="item.id"
+ <el-option-group
+ v-for="group in indexAssortlist"
+ :key="group.id"
+ :label="group.indexAssortName"
>
- </el-option>
+ <el-option
+ v-for="item in group.ivrLibaTemplateAssortList"
+ :key="item.id"
+ :label="item.indexAssortName"
+ :value="item.id"
+ >
+ </el-option>
+ </el-option-group>
</el-select>
</el-form-item>
</el-col>
@@ -68,9 +86,10 @@
</div>
</el-form-item>
<el-row :gutter="20">
- <el-col :span="10">
+ <el-col :span="12">
<el-form-item label="鐗堟湰鍙�" prop="version">
<el-input
+ style="width: 220px"
v-model="ruleForm.version"
placeholder="榛樿1.0.1"
></el-input> </el-form-item
@@ -95,7 +114,7 @@
</el-row>
<el-row :gutter="20">
- <el-col :span="10">
+ <el-col :span="12">
<el-form-item label="璇█" prop="name">
<el-select
v-model="ruleForm.language"
@@ -115,20 +134,27 @@
></el-col>
<el-col :span="12">
<el-form-item label="鎾姤浼樺厛" prop="playType">
- <el-radio-group v-model="ruleForm.playType">
- <el-radio
+ <el-select
+ v-model="ruleForm.playType"
+ size="medium"
+ filterable
+ placeholder="璇烽�夋嫨璇█"
+ >
+ <el-option
+ class="ruleFormaa"
v-for="item in precedencetype"
- :label="item.value"
- >{{ item.label }}</el-radio
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
>
- </el-radio-group>
- </el-form-item></el-col
- >
+ </el-option>
+ </el-select> </el-form-item
+ ></el-col>
</el-row>
<el-form-item label="闅忚鏂瑰紡" prop="region">
<el-select
style="width: 500px"
- v-model="ruleForm.way"
+ v-model="ruleForm.suitway"
size="medium"
multiple
filterable
@@ -162,6 +188,7 @@
@change="handleInputConfirm"
filterable
remote
+ allow-create
reserve-keyword
default-first-option
:remote-method="remoteMethodtag"
@@ -229,7 +256,8 @@
</el-form-item>
<el-form-item label="閫傜敤闄㈠尯" prop="region">
<el-select
- v-model="campusvalue"
+ style="width: 500px"
+ v-model="ruleForm.campus"
size="medium"
multiple
filterable
@@ -246,28 +274,24 @@
</el-select>
</el-form-item>
<el-form-item label="閫傜敤绉戝" prop="region">
- <el-select
+ <el-cascader
style="width: 500px"
- v-model="deptNamesvalue"
- size="medium"
- multiple
- filterable
- placeholder="璇烽�夋嫨鍒嗙被锛堝閫夛級"
+ v-model="tempDetpRelevanceslist"
+ :options="deptList"
+ :props="props"
+ :show-all-levels="false"
+ clearable
>
- <el-option
- class="ruleFormaa"
- v-for="item in administrativelist"
- :key="item.label"
- :label="item.label"
- :value="item.label"
- >
- </el-option>
- </el-select>
+ <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.waya"
+ v-model="ruleForm.submoduleID"
size="medium"
multiple
filterable
@@ -276,73 +300,62 @@
<el-option
class="ruleFormaa"
v-for="item in generallist"
- :key="item.value"
- :label="item.label"
- :value="item.value"
+ :key="item.id"
+ :label="item.extName"
+ :value="item.id"
>
</el-option>
</el-select>
</el-form-item>
<el-row :gutter="20">
- <el-col :span="8">
+ <el-col :span="12">
<el-form-item label="闅忚鍓嶅鐞�" prop="name">
- <el-select
- v-model="ruleForm.prefollowup"
- size="medium"
- filterable
- placeholder="璇烽�夋嫨"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in prefollowuplist"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select> </el-form-item
+ <el-input
+ type="textarea"
+ show-word-limit
+ v-model="ruleForm.revisitBefore"
+ ></el-input></el-form-item
></el-col>
- <el-col :span="9">
+ <el-col :span="12">
<el-form-item label="闅忚鍚庡鐞�" prop="region">
- <el-select
- v-model="ruleForm.postfollowup"
- size="medium"
- filterable
- placeholder="璇烽�夋嫨鍒嗙被"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in postfollowuplist"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select> </el-form-item
+ <el-input
+ type="textarea"
+ show-word-limit
+ v-model="ruleForm.revisitAfter"
+ ></el-input> </el-form-item
></el-col>
</el-row>
<el-row :gutter="20">
- <el-col :span="10">
+ <el-col :span="8">
<el-form-item label="闈欓粯鏃堕棿(绉�)" prop="name">
<div style="width: 40%">
<el-input
- v-model="ruleForm.name"
+ v-model="ruleForm.silencetime"
></el-input></div></el-form-item
></el-col>
- <el-col :span="10">
+ <el-col :span="8">
+ <el-form-item label="闈欓粯娆℃暟" prop="name">
+ <div style="width: 40%">
+ <el-input
+ v-model="ruleForm.noVoiceNum"
+ ></el-input></div></el-form-item
+ ></el-col>
+ <el-col :span="8">
<el-form-item label="鏃犲尮閰嶉噸澶�(娆�)" prop="region">
<div style="width: 40%">
- <el-input v-model="ruleForm.name"></el-input>
+ <el-input v-model="ruleForm.mateNum"></el-input>
</div> </el-form-item
></el-col>
</el-row>
<el-form-item>
- <el-button type="success" @click="nextstep('ruleForm')"
+ <el-button type="success" plain @click="nextstep('ruleForm')"
>涓嬩竴姝�</el-button
>
<el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
- <el-button @click="submitForm('ruleForm')"
- >淇濆瓨闅忚妯$増鍩虹淇℃伅</el-button
+ <el-button
+ type="success"
+ @click="Departmenttreatment('ruleForm')"
+ >{{ task ? "淇濆瓨鍒颁换鍔℃ā鐗�" : "淇濆瓨闅忚妯$増鍩虹淇℃伅" }}</el-button
>
</el-form-item>
</el-form>
@@ -356,32 +369,35 @@
type="primary"
icon="el-icon-plus"
round
- @click="drawer = true"
+ @click="getaddtopiclist"
>娣诲姞棰樼洰</el-button
>
</div>
<div class="presentation">
<div class="presentation-left">
<el-card class="box-card" style="min-height: 688px">
- <el-table v-loading="loading" :data="userList">
+ <el-table
+ v-loading="loading"
+ :data="ruleForm.ivrLibaTemplateScriptVOList"
+ >
<el-table-column
label="缂栧彿"
align="center"
- key="userid"
- prop="userid"
+ key="targetid"
+ prop="targetid"
/>
<el-table-column
label="鏍囬"
align="center"
- key="userName"
- prop="userName"
+ key="scriptTopic"
+ prop="scriptTopic"
:show-overflow-tooltip="true"
/>
<el-table-column
label="闂璇濇湳"
align="center"
- key="verbaltrick"
- prop="verbaltrick"
+ key="scriptContent"
+ prop="scriptContent"
:show-overflow-tooltip="true"
/>
@@ -402,7 +418,7 @@
type="danger"
icon="el-icon-delete"
circle
- @click="deloption(scope.row)"
+ @click="handleDelete(scope.row)"
></el-button>
<el-button
@click="syioption(scope.row)"
@@ -420,14 +436,6 @@
</el-table-column>
</el-table>
</el-card>
-
- <pagination
- v-show="total > 0"
- :total="total"
- :page.sync="queryParams.pageNum"
- :limit.sync="queryParams.pageSize"
- @pagination="getList"
- />
</div>
<div class="presentation-right">
<el-card class="box-card">
@@ -446,173 +454,303 @@
</div>
<el-form-item label="棰樼洰鏍囬">
<el-input
- v-model="topicobj.title"
- placeholder="璇疯緭鍏ユ爣棰�"
+ 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>
<el-row :gutter="10">
<el-col :span="12"
- ><el-form-item label="鏄惁蹇呯瓟">
- <el-radio-group v-model="topicobj.resource">
- <el-radio label="鏄�"></el-radio>
- <el-radio label="鍚�"></el-radio>
- </el-radio-group> </el-form-item
+ ><el-form-item label="鏄惁蹇呭~">
+ <el-select
+ v-model="topicobj.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-radio-group v-model="topicobj.resourcea">
- <el-radio label="鏄�"></el-radio>
- <el-radio label="鍚�"></el-radio>
- </el-radio-group> </el-form-item
+ ><el-form-item label="鍙栧�肩被鍨�">
+ <el-select
+ v-model="topicobj.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>
- <div class="headline">
- <div class="basics">閫夐」璁剧疆</div>
- <div class="headbottom">
- <el-button
- type="primary"
- icon="el-icon-circle-plus-outline"
- @click="addzbiao"
- >娣诲姞鎸囨爣</el-button
- >
- </div>
- </div>
- <div class="topicxq" v-for="item in 2">
- <el-row :gutter="10">
- <el-col :span="12"
- ><el-form-item label="閫夐」鍚�">
+ <div
+ class="topicxq"
+ v-if="topicobj.valueType == 2 || topicobj.valueType == 3"
+ >
+ <el-row>
+ <el-col :span="20">
+ <el-form-item label="鏀堕泦鍐呭">
<el-input
- type="text"
- placeholder="璇疯緭鍏�"
- v-model="queryParams.text"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- <el-col :span="12"
- ><el-form-item label="鑺傜偣ID">
- <el-input
- type="text"
- placeholder="璇疯緭鍏ヨ妭鐐�"
- v-model="queryParams.text"
- show-word-limit
- >
- </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="queryParams.text"
- maxlength="10"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- <el-col :span="12"
- ><el-form-item label="閫変腑璺宠浆">
- <el-input
- type="text"
- placeholder="璇疯緭鍏ラ鐩妭鐐�"
- v-model="queryParams.text"
- show-word-limit
- >
- </el-input> </el-form-item
- ></el-col>
- </el-row>
- <el-form-item label="鍖归厤姝e垯">
- <el-input
- style="width: 24vw"
- type="textarea"
- placeholder="璇疯緭鍏ラ鍙�"
- v-model="queryParams.text"
- show-word-limit
- >
- </el-input>
- </el-form-item>
-
- <el-row :gutter="10">
- <el-col :span="16">
- <el-form-item label="璇煶鏂囦欢">
- <el-upload
- class="upload-demo"
- style="display: flex"
- action="https://jsonplaceholder.typicode.com/posts/"
- :on-change="handleChange"
- :file-list="fileList"
- :limit="1"
- :on-exceed="handleExceed"
- >
- <el-button size="small" type="primary"
- >鐐瑰嚮涓婁紶</el-button
- >
- </el-upload>
- </el-form-item></el-col
- >
- <el-col :span="8">
- <div style="text-align: right; padding-right: 10px">
- <el-button type="danger" round>鍒犻櫎</el-button>
- </div>
+ style="width: 400px"
+ type="textarea"
+ v-model="topicobj.value"
+ placeholder="闂鏀堕泦鍐呭"
+ ></el-input>
+ </el-form-item>
</el-col>
</el-row>
+ </div>
+ <div v-else>
+ <div class="headline">
+ <div class="basics">閫夐」璁剧疆</div>
+ <!-- <div class="headbottom">
+ <el-button
+ type="primary"
+ icon="el-icon-circle-plus-outline"
+ @click="addzbiao"
+ >娣诲姞鎸囨爣</el-button
+ >
+ </div> -->
+ </div>
+
+ <Regular
+ :TargetoptionList="topicobj.ivrLibaScriptTargetoptionList"
+ @deloption="deloption"
+ :controlsc="false"
+ />
+ <!-- 鏃犲尮閰嶇被鍨� -->
+ <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="topicobj.noMatchText"
+ show-word-limit
+ >
+ </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-upload
+ class="upload-demo"
+ style="display: flex"
+ action="https://jsonplaceholder.typicode.com/posts/"
+ :on-change="handleChange"
+ :file-list="fileList"
+ :limit="1"
+ :on-exceed="handleExceed"
+ >
+ <el-button size="small" type="primary"
+ >鐐瑰嚮涓婁紶</el-button
+ >
+ </el-upload>
+ </el-form-item></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="topicobj.noClearlyText"
+ show-word-limit
+ >
+ </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-upload
+ class="upload-demo"
+ style="display: flex"
+ action="https://jsonplaceholder.typicode.com/posts/"
+ :on-change="handleChange"
+ :file-list="fileList"
+ :limit="1"
+ :on-exceed="handleExceed"
+ >
+ <el-button size="small" type="primary"
+ >鐐瑰嚮涓婁紶</el-button
+ >
+ </el-upload>
+ </el-form-item></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="topicobj.slienceText"
+ show-word-limit
+ >
+ </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-upload
+ class="upload-demo"
+ style="display: flex"
+ action="https://jsonplaceholder.typicode.com/posts/"
+ :on-change="handleChange"
+ :file-list="fileList"
+ :limit="1"
+ :on-exceed="handleExceed"
+ >
+ <el-button size="small" type="primary"
+ >鐐瑰嚮涓婁紶</el-button
+ >
+ </el-upload>
+ </el-form-item></el-col
+ >
+ </el-row>
+ </div>
</div>
</el-form>
</el-card>
</div>
</div>
- <el-button type="success" @click="nextstep('ruleForm')"
- >涓嬩竴姝�</el-button
+ <el-button type="success" @click="Departmenttreatment('ruleForm')">{{
+ task ? "淇濆瓨鍒颁换鍔℃ā鐗�" : "淇濆瓨棰樼洰鏁版嵁"
+ }}</el-button>
+ <el-button type="primary" plain @click="laststep()">涓婁竴姝�</el-button>
+ <el-button type="success" plain @click="preview('ruleForm')"
+ >鏌ョ湅棰勮</el-button
>
- <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
<el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
- <el-button @click="Saveproblem('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="topic-dev" v-for="item in valssu" :key="item.aaa">
+ <div
+ class="scriptTopic-dev"
+ v-for="item in valssu"
+ :key="item.targetid"
+ v-if="item.valueType == 1"
+ >
<div class="dev-text">
- {{ item.idd }}銆乕鍗曢�塢<span>{{ item.wssd }}</span>
+ {{ item.targetid }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
- <el-radio-group v-model="radio">
+ <el-radio-group v-model="item.remark">
<el-radio
- v-for="(items, index) in item.sdadd"
+ v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
:key="index"
:label="index"
- >{{ items }}</el-radio
+ >{{ items.targetvalue }}</el-radio
>
</el-radio-group>
</div>
</div>
<!-- 澶氶�� -->
- <div class="topic-dev" v-for="item in valssu" :key="item.aaa">
+ <div
+ class="scriptTopic-dev"
+ v-for="item in valssu"
+ :key="item.targetid"
+ v-if="item.valueType == 2"
+ >
<div class="dev-text">
- {{ item.idd }}銆乕澶氶�塢<span>{{ item.wssd }}</span>
+ {{ item.targetid }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
- <el-checkbox-group v-model="radios">
+ <el-checkbox-group v-model="item.remark">
<el-checkbox
- v-for="(items, index) in item.sdadd"
+ v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
:key="index"
:label="index"
>
- {{ items }}
+ {{ items.targetvalue }}
</el-checkbox>
</el-checkbox-group>
</div>
</div>
<!-- 濉┖ -->
- <div class="topic-dev" v-for="item in valssu" :key="item.aaa">
+ <div
+ class="scriptTopic-dev"
+ v-for="item in valssu"
+ :key="item.targetid"
+ v-if="item.valueType == 3"
+ >
<div class="dev-text">
- {{ item.idd }}銆乕濉┖]<span>{{ item.wssd }}</span>
+ {{ item.targetid }}銆乕濉┖]<span>{{ item.scriptContent }}</span>
</div>
<div class="dev-xx">
<el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable>
@@ -620,9 +758,9 @@
</div>
</div>
</div>
+ <el-button type="primary" plain @click="laststep()">涓婁竴姝�</el-button>
+ <el-button type="warning" @click="measurement()">鍓嶅線娴嬭瘯</el-button>
<el-button type="info" @click="closeFm('ruleForm')">鍏抽棴</el-button>
- <el-button>瀵煎嚭涓簆df</el-button>
- <el-button type="primary" @click="laststep()">涓婁竴姝�</el-button>
</div>
</div>
<!-- 娣诲姞棰樼洰寮圭獥 -->
@@ -630,7 +768,7 @@
title="娣诲姞棰樼洰"
:visible.sync="drawer"
custom-class="demo-drawer"
- width="50%"
+ size="50%"
>
<div class="preview-left">
<el-form
@@ -642,35 +780,20 @@
>
<el-form-item label="鏍囬" prop="userName">
<el-input
- v-model="queryParams.userName"
+ v-model="queryParams.scriptTopic"
placeholder="璇疯緭鍏�"
clearable
style="width: 200px"
- @keyup.enter.native="handleQuery"
+ @keyup.enter.native="getaddtopiclist"
/>
</el-form-item>
- <el-form-item label="涓婚" prop="sickness">
- <el-select
- v-model="ruleForm.classify"
- size="medium"
- placeholder="璇烽�夋嫨鍒嗙被"
- >
- <el-option
- class="ruleFormaa"
- v-for="item in themelist"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
+
<el-form-item>
<el-button
type="primary"
icon="el-icon-search"
size="medium"
- @click="handleQuery"
+ @click="getaddtopiclist"
>鎼滅储</el-button
>
<el-button icon="el-icon-refresh" size="medium" @click="resetQuery"
@@ -682,15 +805,23 @@
<el-table-column
label="鏍囬"
align="center"
- key="userName"
- prop="userName"
+ key="scriptTopic"
+ prop="scriptTopic"
width="100"
/>
<el-table-column
label="闂璇濇湳"
align="center"
- key="verbaltrick"
- prop="verbaltrick"
+ 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"
/>
@@ -701,10 +832,7 @@
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
- <el-button
- size="medium"
- type="text"
- @click="handleUpdate(scope.row)"
+ <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
@@ -712,6 +840,12 @@
</template>
</el-table-column>
</el-table>
+ <pagination
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getaddtopiclist"
+ />
</div>
</el-drawer>
</div>
@@ -720,7 +854,8 @@
<script>
import { listtag } from "@/api/system/label";
import store from "@/store";
-
+import { listDept } from "@/api/system/dept";
+import Regular from "@/components/Regular"; //姝e垯缁勪欢
import {
getFollowupclassify,
delFollowupclassify,
@@ -728,15 +863,21 @@
addtargetillness,
getvFollowup,
compileFollowup,
+ getverbaltricklist,
+ getverbaltrick,
delFollowupinfo,
Followupinfo,
getFollowuplist,
+ deltargetillness,
getillnesslist,
illnesslistget,
getillness,
+ getgenerallist,
} from "@/api/AiCentre/index";
export default {
+ name: "SpeechTemplates",
+ components: { Regular },
data() {
return {
Editprogress: 1, //缂栬緫杩涘害
@@ -744,22 +885,35 @@
drawer: false, //鎺у埗灞曞紑
radios: [], //澶氶�夐閫変腑
radioas: "", //濉┖棰樼瓟妗�
- campusvalue: [], //闄㈠尯涓存椂瀛樺偍
+ task: null, //鏄惁鏉ヨ嚜浠诲姟
+ taskform: null, //浠诲姟淇℃伅
labelInfovalue: [], //鏍囩涓存椂瀛樺偍
deptNamesvalue: [], //绉戝涓存椂瀛樺偍
dynamicTags: [],
indexAssortlist: [],
inputValue: "",
inputValueillness: "",
- topicobj: {},
+ topicobj: {
+ noMatchText: "",
+ noClearlyText: "",
+ slienceText: "",
+ },
total: 1,
id: "",
- ruleForm: {},
+ ruleForm: {
+ templateName: "",
+ ivrLibaTemplateTagList: [],
+ ivrLibaTemplateScriptVOList: [],
+ tempDetpRelevances: [],
+ },
rules: {},
optionstag: [],
prefollowuplist: [],
postfollowuplist: [],
- generallist: [{ value: "1", label: "闅忚閫氱敤搴撲竴" }],
+ generallist: [
+ { value: "1", label: "闅忚閫氱敤搴撲竴" },
+ { value: "2", label: "闅忚浜屽簱" },
+ ],
fileList: [
{
@@ -771,11 +925,14 @@
{ value: "1", label: "蹇冨绉�" },
{ value: "2", label: "蹇冨唴绉�" },
],
+ standbylist: [],
themelist: [],
languagelist: [],
courtyardlist: [],
precedencetype: [],
usable: [],
+ required: [],
+ valuetype: [],
mode: [],
inputVisible: false,
inputVisibleillness: false,
@@ -788,6 +945,16 @@
children: "ivrLibaTemplateAssortList",
label: "indexAssortName",
},
+ tempDetpRelevanceslist: [],
+ delScriptVOList: [],
+ optionIndex: "",
+ variablelist: [
+ { variatename: "濮撳悕", variate: "${name}", default: 1 },
+ { variatename: "鐢佃瘽", variate: "${phone}", default: 1 },
+ { variatename: "鐥呮儏", variate: "${illness}", default: 1 },
+ ],
+ deptList: [],
+ props: { multiple: true, value: "deptId", label: "deptName" },
variablelist: [
{
@@ -796,37 +963,11 @@
},
],
- valssu: [
- {
- idd: 1,
- wssd: "浣犳渶杩戞�庝箞鏍�",
- sdadd: ["sss", "ssccss", "ssaas", "ss"],
- },
- ],
+ valssu: [],
+ radio: "",
addvalue: "娣诲姞棰樼洰",
// 棰樼洰琛ㄦ牸鏁版嵁
- userList: [
- {
- userid: "1",
- userName: "涓�鍙烽殢璁挎ā鐗�",
- verbaltrick: "涓�鍙烽殢璁挎ā鐗�",
- },
- {
- userid: "2",
- userName: "浜屽彿闅忚妯$増",
- verbaltrick: "涓�鍙烽殢璁挎ā鐗�",
- },
- {
- userid: "3",
- userName: "涓夊彿闅忚妯$増",
- verbaltrick: "涓�鍙烽殢璁挎ā鐗�",
- },
- {
- userid: "4",
- userName: "鍥涘彿闅忚妯$増",
- verbaltrick: "涓�鍙烽殢璁挎ā鐗�",
- },
- ],
+ userList: [],
// 鏌ヨ鍙傛暟
queryParams: {
pageNum: 1,
@@ -841,35 +982,78 @@
},
created() {
+ this.RoutingDataProcessing();
this.gettabList();
this.getvFollowup();
this.auxiliary();
this.mode = store.getters.mode;
this.usable = store.getters.usable;
+ this.required = store.getters.required;
+ this.valuetype = store.getters.valuetype;
this.languagelist = store.getters.languagelist;
this.courtyardlist = store.getters.courtyardlist;
this.precedencetype = store.getters.precedencetype;
},
+ mounted() {},
methods: {
+ //鍏叡鏂规硶--------------------
getIndexInArray(arr, obj) {
return arr.indexOf(obj);
},
+ processElement(element) {
+ return { ...element, isoperation: 0 };
+ },
+ // 璺敱鏁版嵁澶勭悊
+ RoutingDataProcessing() {
+ this.id = this.$route.query.id;
+ this.task = this.$route.query.task;
+
+ // console.log(this.task, "task");
+ // if (this.task) {
+ // this.id = this.$route.query.id;
+ // }
+ },
// 鑾峰彇琛ㄥ崟鏁版嵁
getvFollowup() {
- this.id = this.$route.query.id;
+ if (this.id) {
+ getvFollowup({ id: this.id }).then((res) => {
+ if (res.code == 200) {
+ console.log(2211);
+ this.ruleForm = res.data;
+ this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
+ this.ruleForm.suitway = this.ruleForm.suitway.split(",");
+ 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;
- getvFollowup({ id: this.id }).then((res) => {
- this.ruleForm = res.data;
- });
+ this.dynamicTags = this.ruleForm.ivrLibaTemplateTagList.map(
+ this.processElement
+ );
+ console.log(this.ruleForm.suitway);
+ }
+ });
+ }
getillnesslist({
pageNum: 1,
pageSize: 100,
}).then((response) => {
this.optionsillness = response.rows;
});
- getillness({ outid: this.id, type: 3 }).then((res) => {
- this.illnesslist = res.rows;
+ if (this.id) {
+ getillness({ outid: this.id, type: 3 }).then((res) => {
+ this.illnesslist = res.rows;
+ });
+ }
+ listDept(this.queryParams).then((response) => {
+ this.deptList = this.handleTree(response.data, "deptId");
});
},
// 闄勫睘鏁版嵁琛�
@@ -877,29 +1061,110 @@
// 鍒嗙被
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");
+ });
+ // 鐤剧梾
+ getillnesslist({
+ pageNum: 1,
+ pageSize: 100,
+ }).then((response) => {
+ this.optionsillness = response.rows;
+ });
+ getgenerallist({
+ pageNum: 1,
+ pageSize: 100,
+ }).then((res) => {
+ this.generallist = res.rows;
});
// 鐤剧梾鍒�
},
+ //
submitForm(formName) {
if (this.ruleForm.id) {
this.ruleForm.isoperation = 2;
} else {
- this.ruleForm.isoperation = 2;
+ this.ruleForm.isoperation = 1;
}
- this.ruleForm.campus = JSON.stringify(this.illnesslist);
- this.ruleForm.deptNames = this.deptNamesvalue.join(",");
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.$refs[formName].validate((valid) => {
- if (valid) {
- compileFollowup(this.ruleForm).then((res) => {
- this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.ruleForm.ivrLibaTemplateScriptVOList.forEach((res) => {
+ if (!res.isoperation) {
+ res.isoperation = 2;
+ }
+ res.ivrLibaScriptTargetoptionList =
+ res.ivrLibaScriptTargetoptionList.map((item) => {
+ if (!item.isoperation) {
+ item.isoperation = 2;
+ item.templateID = this.ruleForm.id;
+ }
+ return item;
});
- } else {
- console.log("error submit!!");
- return false;
+ });
+ compileFollowup(this.ruleForm).then((res) => {
+ this.$modal.msgSuccess("缂栬緫鎴愬姛");
+ this.confirmillness(res.data);
+ this.$router.go(-1);
+ });
+ },
+ confirmillness(guid) {
+ this.illnesslist.forEach((item, index) => {
+ if (guid) {
+ item.outid = guid;
+ }
+ if (!item.id) {
+ addtargetillness(item).then((res) => {});
}
});
+ if (this.illnesslistapi.length) {
+ deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
+ }
+ this.illnessVisible = false;
+ this.$modal.msgSuccess("缂栬緫鎴愬姛");
+ },
+ // 绉戝澶勭悊
+ 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]);
+ });
+ }
+ });
+ 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;
+ }
+ });
+ console.log(this.ruleForm.tempDetpRelevances);
+ setTimeout(() => {
+ this.submitForm();
+ }, 1000);
+ // this.submitForm();
},
// 涓嬩竴姝�
nextstep() {
@@ -928,24 +1193,6 @@
});
});
},
- // 淇濆瓨棰樼洰淇℃伅
- Saveproblem() {},
- /** 鏌ヨ棰樼洰鍒楄〃 */
- getList() {
- // this.loading = true;
- listUser().then((response) => {
- console.log(response);
- // this.userList = response.data;
- // this.total = response.total;
- // this.loading = false;
- console.log(this.userList);
- });
- // const { rows } = await listUser();
- // console.log(rows);
- // this.list = rows;
- },
- // 淇敼棰樼洰淇℃伅
- Submittopicobj() {},
// 鎺у埗鏂囦欢
handleChange(file, fileList) {
@@ -976,7 +1223,7 @@
console.log(this.dynamicTags.indexOf(tag));
const lindex = this.dynamicTags.indexOf(tag);
this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
- this.ruleForm.ivrLibaTemplateTargetList[lindex].isoperation = 3;
+ this.ruleForm.ivrLibaTemplateTagList[lindex].isoperation = 3;
},
handleInputConfirm() {
let tagvalue = {};
@@ -997,7 +1244,7 @@
isoperation: 1,
};
}
- this.ruleForm.ivrLibaTemplateTargetList.push(tagvalue);
+ this.ruleForm.ivrLibaTemplateTagList.push(tagvalue);
this.dynamicTags.push(tagvalue);
});
}
@@ -1020,44 +1267,125 @@
showInput() {
this.inputVisible = true;
},
- //娴嬭瘯琛ㄥ崟 ---------------------------------
+ //璇濇湳棰樼洰----------------
addzbiao() {},
- handleUpdate() {},
- deloption(item) {
- const index = this.userList.indexOf(item);
- if (index !== -1) {
- this.userList.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
+ resetQuery() {
+ this.queryParams = { pageNum: 1, pageSize: 10 };
+ this.getaddtopiclist();
+ },
+ getaddtopiclist() {
+ this.drawer = true;
+ getverbaltricklist(this.queryParams).then((res) => {
+ this.loading = false;
+ this.userList = res.rows;
+ this.total = res.total;
+ console.log(this.userList);
+ });
+ },
+ addtopic(row) {
+ console.log(row);
+ if (
+ this.ruleForm.ivrLibaTemplateScriptVOList.some(
+ (obj) => obj.scriptTopic == row.scriptTopic
+ )
+ ) {
+ this.$modal.msgError("璇ラ鐩凡瀛樺湪");
+ return;
+ }
+ getverbaltrick({ id: row.id }).then((res) => {
+ console.log(res, "璇︽儏");
+ res.data.isoperation = 1;
+ res.data.pid = this.ruleForm.id;
+ res.data.ivrLibaScriptTargetoptionList.forEach((item) => {
+ item.isoperation = 1;
+ });
+ this.ruleForm.ivrLibaTemplateScriptVOList.push(res.data);
this.sortFn();
+ this.$modal.msgSuccess("娣诲姞鎴愬姛");
+ });
+ },
+ handleDelete(row) {
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎闂锛�"' + row.scriptTopic + '"锛�')
+ .then(() => {
+ this.ruleForm.ivrLibaTemplateScriptVOList.splice(
+ this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row),
+ 1
+ );
+ row.isoperation = 3;
+ this.delScriptVOList.push(row);
+ this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯$増鐢熸晥");
+ })
+ .catch(() => {});
+ },
+ handleUpdate(row) {
+ console.log(row);
+ this.optionIndex = this.ruleForm.ivrLibaTemplateScriptVOList.indexOf(row);
+ if (row.ivrLibaScriptTargetoptionList.length) {
+ console.log(11);
+ this.topicobj = row;
+ this.topicobj.valueType = row.valueType;
} else {
- console.log("鏈壘鍒拌瀵硅薄");
+ getverbaltrick({ id: row.id }).then((res) => {
+ if (res.data) {
+ this.topicobj = res.data;
+ console.log(res.data, "topicobj");
+ } else {
+ this.topicobj = row;
+ console.log("娌℃壘鍒伴�夐」锛岃鏌ョ湅闂搴撴槸鍚︽纭厤缃�");
+ }
+ });
}
},
syioption(row) {
- const index = this.getIndexInArray(this.userList, row);
- const item = this.userList.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
- this.userList.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ const index = this.getIndexInArray(
+ this.ruleForm.ivrLibaTemplateScriptVOList,
+ row
+ );
+ const item = this.ruleForm.ivrLibaTemplateScriptVOList.splice(
+ index,
+ 1
+ )[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.ruleForm.ivrLibaTemplateScriptVOList.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
this.sortFn();
},
xiayioption(row) {
- const index = this.getIndexInArray(this.userList, row);
- const item = this.userList.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
- this.userList.splice(index + 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
+ const index = this.getIndexInArray(
+ this.ruleForm.ivrLibaTemplateScriptVOList,
+ row
+ );
+ const item = this.ruleForm.ivrLibaTemplateScriptVOList.splice(
+ index,
+ 1
+ )[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
+ this.ruleForm.ivrLibaTemplateScriptVOList.splice(index + 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣�
this.sortFn();
},
+ // 闂鎺掑簭
sortFn() {
- this.userList = this.userList.map((item, index) => {
- return {
- userid: index + 1,
- userName: item.userName,
- verbaltrick: item.verbaltrick,
- };
+ 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.userList);
+ console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
},
+ // -----------------------璇濇湳閫夐」
+ deloption() {},
+ // 淇敼棰樼洰淇℃伅
+ Submittopicobj() {
+ this.ruleForm.ivrLibaTemplateScriptVOList[this.optionIndex] =
+ this.topicobj;
+ this.$modal.msgSuccess("鏆傚瓨閫夐」鎴愬姛");
+ },
+
// ---------------------
- // 鏌ヨ棰樺簱
- handleQuery() {},
- resetQuery() {},
resetForm(formName) {
this.$refs[formName].resetFields();
},
@@ -1103,18 +1431,23 @@
this.inputVisibleillness = false;
this.inputValueillness = "";
},
- // 淇濆瓨
- confirmillness() {
- this.illnesslist.forEach((item, index) => {
- if (!item.id) {
- addtargetillness(item).then((res) => {});
- }
- });
- if (this.illnesslistapi.length) {
- deltargetillness(this.illnesslistapi.join(",")).then((res) => {});
- }
- this.illnessVisible = false;
- this.$modal.msgSuccess("缂栬緫鎴愬姛");
+ // 棰勮---------------
+ preview() {
+ console.log(this.ruleForm);
+ this.valssu = this.ruleForm.ivrLibaTemplateScriptVOList;
+ this.Editprogress = 3;
+ },
+ // 鍓嶅線娴嬭瘯
+ measurement() {
+ this.$modal
+ .confirm("鍗冲皢鍓嶅線妯$増娴嬭瘯椤甸潰锛岃纭妯$増鏁版嵁宸蹭繚瀛樸��")
+ .then((res) => {
+ this.$router.push({
+ path: "/knowledge/templateku/configurat/measurement",
+ query: { id: this.id, name: this.ruleForm.templateName },
+ });
+ })
+ .catch(() => {});
},
},
};
@@ -1122,14 +1455,9 @@
<style lang="scss" scoped>
.Questionnairemanagement {
- display: flex;
+ // display: flex;
}
.sidecolumn {
- width: 250px;
- min-height: 100vh;
- text-align: center;
- // display: flex;
- // margin-top: 20px;
margin: 20px;
margin-bottom: 0;
padding: 30px;
@@ -1141,9 +1469,8 @@
.leftvlue {
// display: flex;
// flex: 1;
- width: 80%;
- margin-top: 20px;
- // margin: 20px;
+ // width: 80%;
+ margin: 20px;
padding: 30px;
background: #ffff;
border: 1px solid #dcdfe6;
@@ -1176,7 +1503,7 @@
border: 1px solid #dcdfe6;
-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12),
0 0 6px 0 rgba(0, 0, 0, 0.04);
- .topic-dev {
+ .scriptTopic-dev {
margin-bottom: 25px;
font-size: 20px !important;
.dev-text {
@@ -1227,8 +1554,10 @@
.presentation-right {
width: 55%;
max-height: 688px;
- padding: 0 20px;
+ margin: 0 20px;
font-size: 18px;
+ -webkit-box-shadow: 0 2px 4px 0 rgba(32, 32, 32, 0.12),
+ 0 0 6px 0 rgba(58, 57, 57, 0.04);
overflow: auto;
.headline {
display: flex;
--
Gitblit v1.9.3