From 196465c3777895faffeb176ff2b836c993a450b5 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 01 十一月 2024 18:01:23 +0800
Subject: [PATCH] 测试完成

---
 src/views/repositoryai/templateku/configurat/index.vue | 1259 ++++++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 896 insertions(+), 363 deletions(-)

diff --git a/src/views/repositoryai/templateku/configurat/index.vue b/src/views/repositoryai/templateku/configurat/index.vue
index 5109013..5c3a376 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">
@@ -230,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"
@@ -249,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">
@@ -331,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
@@ -348,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"
@@ -359,8 +404,8 @@
                 <el-table-column
                   label="缂栧彿"
                   align="center"
-                  key="targetid"
-                  prop="targetid"
+                  key="sort"
+                  prop="sort"
                 />
                 <el-table-column
                   label="鏍囬"
@@ -370,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"
@@ -413,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="鏄惁蹇呭~">
@@ -458,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"
@@ -474,14 +562,78 @@
                       </el-select> </el-form-item
                   ></el-col>
                 </el-row>
-                <el-form-item label="闂璇煶" v-if="topicobj.scriptVoice">
-                  <mini-audio :audio-source="topicobj.scriptVoice"></mini-audio>
-                </el-form-item>
-
-                <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="鏀堕泦鍐呭">
@@ -511,7 +663,10 @@
                   <Regular
                     :TargetoptionList="topicobj.ivrLibaScriptTargetoptionList"
                     @deloption="deloption"
+                    @branchFlagfn="branchFlagfn"
+                    :branchFlag="topicobj.branchFlag ? true : false"
                     :controlsc="false"
+                    :scriptType="topicobj.scriptType"
                   />
                   <!-- 鏃犲尮閰嶇被鍨� -->
                   <div class="topicxq">
@@ -528,16 +683,47 @@
                           </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"
+                            :action="uploadImgUrl"
+                            :show-file-list="false"
+                            :headers="headers"
+                            :on-success="
+                              (response, file) =>
+                                handleChanges(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="topicobj.nomatchvoice"
+                          >{{
+                            topicobj.nomatchvoice.substring(
+                              topicobj.nomatchvoice.lastIndexOf("/") + 1
+                            )
+                          }}</span
                         >
-                          <mini-audio
-                            :audio-source="topicobj.nomatchvoice"
-                          ></mini-audio> </el-form-item
-                      ></el-col>
+                      </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">
@@ -555,20 +741,47 @@
                       ></el-col>
                     </el-row>
 
-                    <el-row :gutter="10">
-                      <el-col :span="16">
-                        <el-form-item
-                          label="璇煶鏂囦欢"
-                          v-if="topicobj.noclearlyvoice"
-                        >
-                          <mini-audio
-                            :audio-source="
-                              topicobj.noclearlyvoice
-                                ? topicobj.noclearlyvoice
-                                : 'https://example.com/example.mp3'
+                    <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) =>
+                                handleChanges(response, file, 4)
                             "
-                          ></mini-audio> </el-form-item
-                      ></el-col>
+                            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="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">
@@ -586,20 +799,47 @@
                       ></el-col>
                     </el-row>
 
-                    <el-row :gutter="10">
-                      <el-col :span="16">
-                        <el-form-item
-                          label="璇煶鏂囦欢"
-                          v-if="topicobj.sliencevoice"
-                        >
-                          <mini-audio
-                            :audio-source="
-                              topicobj.sliencevoice
-                                ? topicobj.sliencevoice
-                                : 'https://example.com/example.mp3'
+                    <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) =>
+                                handleChanges(response, file, 3)
                             "
-                          ></mini-audio> </el-form-item
-                      ></el-col>
+                            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="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>
@@ -609,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')"
@@ -617,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>
@@ -690,6 +929,8 @@
     <!-- 娣诲姞棰樼洰寮圭獥 -->
     <el-drawer
       title="娣诲姞棰樼洰"
+      @close="$forceUpdate()"
+      @closed="$forceUpdate()"
       :visible.sync="drawer"
       custom-class="demo-drawer"
       size="50%"
@@ -797,92 +1038,132 @@
                   >
                 </div>
                 <el-divider></el-divider>
-                <el-form-item label="棰樼洰鏍囬">
-                  <el-input
-                    v-model="indexform.scriptTopic"
-                    placeholder="璇疯緭鍏ラ鐩爣棰�"
-                  ></el-input>
-                </el-form-item>
-                <el-form-item label="闂鑺傜偣">
-                  <el-input
-                    v-model="indexform.targetid"
-                    placeholder="璇疯緭鍏ラ棶棰樿妭鐐�"
-                  ></el-input>
-                </el-form-item>
-                <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"
+                <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>
-                      </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
+                            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>
-                      </el-select> </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)
+                          <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'
                         "
-                        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.scriptVoice"
-                      >{{
-                        indexform.scriptVoice.substring(
-                          indexform.scriptVoice.lastIndexOf("/") + 1
-                        )
-                      }}</span
-                    >
-                  </el-col>
-                  <el-col :span="6">
-                    <mini-audio
-                      :audio-source="
-                        indexform.scriptVoice
-                          ? indexform.scriptVoice
-                          : 'https://example.com/example.mp3'
-                      "
-                    ></mini-audio>
-                  </el-col>
-                </el-row>
+                      ></mini-audio>
+                    </el-col>
+                  </el-row>
+                </div>
                 <div>
                   <el-form-item label="鎸囨爣鍚嶇О" prop="deptId">
                     <el-input
@@ -925,7 +1206,7 @@
                     </el-col>
                   </el-row>
                 </div>
-                <div class="topicxq" v-if="indexform.scriptType == 2">
+                <div class="topicxq" v-show="indexform.scriptType == 4">
                   <el-row>
                     <el-col :span="20">
                       <el-form-item label="鏀堕泦鍐呭">
@@ -940,7 +1221,7 @@
                   </el-row>
                 </div>
 
-                <div v-else>
+                <div v-show="indexform.scriptType == 1">
                   <div class="headline">
                     <div class="basics">閫夐」璁剧疆</div>
                   </div>
@@ -948,7 +1229,9 @@
                   <Regular
                     :TargetoptionList="indexform.ivrLibaScriptTargetoptionList"
                     @deloption="deloption"
+                    @addoption="addoptionson"
                     :controlsc="false"
+                    :addoption="true"
                   />
                   <!-- 鏃犲尮閰嶇被鍨� -->
                   <div class="topicxq">
@@ -1161,15 +1444,18 @@
   getFollowuplist,
   deltargetillness,
   getillnesslist,
+  depthospgetson,
+  depthospgetsonlist,
   illnesslistget,
   getillness,
   getgenerallist,
 } 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 {
@@ -1184,6 +1470,7 @@
       radioas: "", //濉┖棰樼瓟妗�
       task: null, //鏄惁鏉ヨ嚜浠诲姟
       taskform: null, //浠诲姟淇℃伅
+      Operateit: true,
       indexform: {
         ivrLibaScriptTargetoptionList: [],
       },
@@ -1195,14 +1482,16 @@
       inputValue: "",
       inputValueillness: "",
       topicobj: {
-        noMatchText: "",
-        noClearlyText: "",
-        slienceText: "",
+        noMatchText:'鎶辨瓑锛屾垜娌℃湁鍚噦锛屾偍鑳藉啀璇翠竴閬嶅悧?',
+        noClearlyText:'鎶辨瓑锛屾垜娌℃湁鍚竻鎮ㄨ鐨勮瘽锛屾偍鍙互鍐嶈涓�娆″悧?',
+        slienceText:'鎶辨瓑锛屾垜娌℃湁鍚埌鎮ㄨ鐨勮瘽锛屾偍鍙互鍐嶈涓�娆″悧?',
       },
       total: 1,
       id: "",
       ruleForm: {
         templateName: "",
+revisitBefore: "浜茬埍鐨勬偅鑰�/瀹跺睘锛屾偍濂斤紒鎴戜滑鏄禉涓尰澶т簩闄㈢殑鍖绘姢浜哄憳锛屼负浜嗘洿濂藉湴浜嗚В鎮ㄧ殑搴峰鎯呭喌锛岃鎮ㄦ娊涓�鐐瑰疂璐垫椂闂达紝瀹屾垚杩欎唤闅忚闅忚銆�",
+revisitAfter: "璇锋偍娉ㄦ剰浼戞伅鍜岃惀鍏伙紝鐢熸椿涓婅鍔抽�哥粨鍚堬紝閫傚綋閿荤偧锛屾垝鐑熼檺閰掞紝淇濇寔蹇冩儏鑸掔晠锛屽畾鏈熷璇娿�傞偅鏈鍥炶灏卞埌杩欓噷锛岀鎮ㄨ韩浣撳仴搴凤紒",
         ivrLibaTemplateTagList: [],
         ivrLibaTemplateScriptVOList: [],
         tempDetpRelevances: [],
@@ -1211,6 +1500,10 @@
       optionstag: [],
       prefollowuplist: [],
       postfollowuplist: [],
+      tempDetpRelevanceslist: [], //绉戝鏁版嵁
+      tempDetpRelevanceslistform: [], //绉戝鏁版嵁
+      tempbelongWards: [], //鐥呭尯鏁版嵁
+      tempbelongWardsform: [], //鐥呭尯鏁版嵁
       generallist: [
         { value: "1", label: "闅忚閫氱敤搴撲竴" },
         { value: "2", label: "闅忚浜屽簱" },
@@ -1234,6 +1527,7 @@
       usable: [],
       required: [],
       valuetype: [],
+      askvaluetype: [],
       mode: [],
       inputVisible: false,
       inputVisibleillness: false,
@@ -1255,7 +1549,9 @@
         { variatename: "鐢佃瘽", variate: "${phone}", default: 1 },
         { variatename: "鐥呮儏", variate: "${illness}", default: 1 },
       ],
-      deptList: [],
+      deptlist: [],
+      hosplist: [],
+      flatArray: [],
       props: { multiple: true, value: "deptId", label: "deptName" },
 
       variablelist: [
@@ -1264,12 +1560,18 @@
           value: "琛ㄧず鎮h�呯殑鏍囪瘑",
         },
       ],
+      queryParamsdept: {
+        tempid: "",
+        type: 2,
+      },
 
       valssu: [],
       radio: "",
       addvalue: "娣诲姞棰樼洰",
       // 棰樼洰琛ㄦ牸鏁版嵁
       userList: [],
+      belongWards: [],
+      belongDepts: [],
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
@@ -1282,19 +1584,36 @@
       },
     };
   },
+  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;
     this.usable = store.getters.usable;
     this.required = store.getters.required;
     this.valuetype = store.getters.valuetype;
+    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: {
@@ -1324,11 +1643,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() {
@@ -1337,23 +1679,20 @@
           if (res.code == 200) {
             console.log(2211);
             this.ruleForm = res.data;
-            this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
+            if (this.ruleForm.deptNames)this.tempDetpRelevanceslist = JSON.parse(this.ruleForm.deptNames);
             this.ruleForm.suitway = this.ruleForm.suitway.split(",");
-            this.ruleForm.campus = this.ruleForm.campus.split(",");
+            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) => {
@@ -1362,25 +1701,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,
@@ -1396,17 +1762,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;
       }
+      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(",");
+      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) => {
@@ -1422,11 +1801,47 @@
             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) => {
+          this.$modal.msgSuccess("淇敼鎴愬姛");
+          this.confirmillness();
+          this.putbelongDepts(this.id);
+          this.$modal.closeLoading();
+          // this.$router.go(-1);
+          window.location.reload();
+        });
+      } else {
+        this.ruleForm.isoperation = 1;
+        this.ruleForm.version = this.ruleForm.version
+          ? this.ruleForm.version
+          : "1.0";
+        this.ruleForm.tempDetpRelevances = [];
+        compileFollowup(this.ruleForm).then((res) => {
+          this.$modal.msgSuccess("鏂板鎴愬姛");
+          this.confirmillness(res.data);
+          this.putbelongDepts(res.data);
+          this.$modal.closeLoading();
+          this.$router.go(-1);
+        });
+      }
     },
     confirmillness(guid) {
       this.illnesslist.forEach((item, index) => {
@@ -1448,38 +1863,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() {
@@ -1499,7 +1937,8 @@
         type: "warning",
       })
         .then(() => {
-          this.$router.go(-1);
+          const obj = { path: "/knowledge/templateku/" };
+          this.$tab.closeOpenPage(obj);
         })
         .catch(() => {
           this.$message({
@@ -1508,19 +1947,35 @@
           });
         });
     },
-    //鎺у埗璇煶鏂囦欢
+    //鎺у埗璇煶鏂囦欢(鏂�)
     handleChange(response, file, additionalParam) {
       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;
-        console.log(this.indexform.nomatchvoice);
       } 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) {
@@ -1538,13 +1993,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;
@@ -1567,6 +2019,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);
@@ -1607,7 +2066,6 @@
       });
     },
     addtopic(row) {
-      console.log(row);
       if (
         this.ruleForm.ivrLibaTemplateScriptVOList.some(
           (obj) => obj.scriptTopic == row.scriptTopic
@@ -1637,8 +2095,11 @@
             1
           );
           row.isoperation = 3;
-          this.delScriptVOList.push(row);
-          this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯$増鐢熸晥");
+          if (row.id) {
+            this.delScriptVOList.push(row);
+          }
+          this.sortFn();
+          this.$modal.msgSuccess("宸插垹闄わ紝淇濆瓨妯℃澘鐢熸晥");
         })
         .catch(() => {});
     },
@@ -1687,33 +2148,80 @@
     },
     // 闂鎺掑簭
     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;
+      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.ivrLibaScriptTargetoptionList.forEach((items) => {
+            items.nextQuestion = Number(item.sort) + 1;
           });
+        }
       });
+      this.$forceUpdate();
+
       console.log(this.ruleForm.ivrLibaTemplateScriptVOList);
     },
     // -----------------------璇濇湳閫夐」
     deloption() {},
     // 淇敼棰樼洰淇℃伅
     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);
@@ -1723,16 +2231,16 @@
     // 鍓嶅線娴嬭瘯
     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) {
@@ -1748,6 +2256,20 @@
           nodynamiccruxsJson: "",
         });
       }
+      this.$forceUpdate();
+    },
+    addoptionson() {
+      this.indexform.ivrLibaScriptTargetoptionList.push({
+        guid: 1,
+        isoperation: 1,
+        targetvalue: "",
+        targetregex: "",
+        targetregex2: "",
+        dynamiccruxs: [],
+        nodynamiccruxs: [],
+        dynamiccruxsJson: "",
+        nodynamiccruxsJson: "",
+      });
     },
   },
 };
@@ -1850,6 +2372,7 @@
     vertical-align: bottom;
   }
 }
+
 .xinz-infs {
   font-size: 18px;
   line-height: 48px;
@@ -1874,6 +2397,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