From fe7f65e63714807890ab103fbc84cf5f634ae8d8 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 09 八月 2024 11:33:25 +0800
Subject: [PATCH] 测试完成

---
 src/views/repositoryai/intention/index.vue | 1333 ++++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 846 insertions(+), 487 deletions(-)

diff --git a/src/views/repositoryai/intention/index.vue b/src/views/repositoryai/intention/index.vue
index 7f90ce3..42db8bd 100644
--- a/src/views/repositoryai/intention/index.vue
+++ b/src/views/repositoryai/intention/index.vue
@@ -13,56 +13,46 @@
           class="input-with-select"
           size="medium "
         >
-          <el-button
-            @click="sidecolumnss"
-            slot="append"
-            icon="el-icon-search"
-          ></el-button>
         </el-input>
       </div>
-      <div class="bottom-fl">
-        <el-menu
-          default-active="3"
-          class="el-menu-vertical-demo"
-          @open="handleOpen"
-          @close="handleClose"
-          @select="handleSelect"
-        >
-          <el-submenu index="1">
-            <template slot="title">
-              <i class="el-icon-location"></i>
-              <span>鍒嗙被涓�</span>
-            </template>
 
-            <el-menu-item index="1-1">閫夐」1</el-menu-item>
-            <el-menu-item index="1-2">閫夐」2</el-menu-item>
-            <el-menu-item index="1-3">閫夐」3</el-menu-item>
-            <el-menu-item index="1-4">閫夐」3</el-menu-item>
-          </el-submenu>
-          <el-submenu index="2">
-            <template slot="title">
-              <i class="el-icon-menu"></i>
-              <span>鍒嗙被浜�</span>
-            </template>
-            <el-menu-item index="2-1">閫夐」1</el-menu-item>
-            <el-menu-item index="2-2">閫夐」2</el-menu-item>
-            <el-menu-item index="2-3">閫夐」3</el-menu-item>
-          </el-submenu>
-          <el-submenu index="3">
-            <template slot="title">
-              <i class="el-icon-document"></i>
-              <span>鍒嗙被涓�</span>
-            </template>
-            <el-menu-item index="2-1">閫夐」1</el-menu-item>
-          </el-submenu>
-          <el-submenu index="4">
-            <template slot="title">
-              <i class="el-icon-setting"></i>
-              <span>鍒嗙被鍥�</span>
-            </template>
-            <el-menu-item index="2-1">閫夐」1</el-menu-item>
-          </el-submenu>
-        </el-menu>
+      <div class="head-container" style="margin-top: 20px">
+        <el-tree
+          :data="deptOptions"
+          :props="defaultProps"
+          :expand-on-click-node="false"
+          :filter-node-method="filterNode"
+          ref="tree"
+          node-key="id"
+          default-expand-all
+          highlight-current
+          @node-click="handleNodeClick"
+        >
+          <span class="custom-tree-node" slot-scope="{ node, data }">
+            <span>{{ node.label }}</span>
+            <span v-if="data.id > 0">
+              <el-button
+                type="text"
+                icon="el-icon-delete"
+                circle
+                size="mini"
+                @click="() => remove(node, data)"
+              >
+              </el-button>
+            </span>
+            <span v-if="data.id > 0">
+              <el-button
+                type="text"
+                circle
+                size="mini"
+                @click="() => altertag(node, data)"
+                ><span class="button-textxg"
+                  ><i class="el-icon-edit-outline"></i
+                ></span>
+              </el-button>
+            </span>
+          </span>
+        </el-tree>
       </div>
     </div>
     <!-- 鍙充晶鏁版嵁 -->
@@ -81,23 +71,24 @@
             >
               <el-form-item label="鎸囨爣鍚嶇О" prop="userName">
                 <el-input
-                  v-model="queryParams.userName"
+                  v-model="queryParams.targetname"
                   placeholder="璇疯緭鍏�"
                   clearable
                   style="width: 200px"
                   @keyup.enter.native="handleQuery"
                 />
               </el-form-item>
-              <el-form-item label="鏍囩" prop="sickness">
-                <el-cascader
-                  v-model="queryParams.sickness"
-                  :options="dynamicTags"
-                  :props="propss"
+              <el-form-item label="鏍囩鍚嶇О" prop="userName">
+                <el-input
+                  v-model="queryParams.tagName"
+                  placeholder="璇疯緭鍏�"
                   clearable
-                ></el-cascader>
+                  style="width: 200px"
+                  @keyup.enter.native="handleQuery"
+                />
               </el-form-item>
-              <el-form-item label="閫傜敤鏂瑰紡" prop="shape">
-                <el-select v-model="queryParams.value" placeholder="璇烽�夋嫨">
+              <el-form-item label="閫傜敤鍦烘櫙" prop="shape">
+                <el-select v-model="queryParams.suitWay" placeholder="璇烽�夋嫨">
                   <el-option
                     v-for="item in mode"
                     :key="item.value"
@@ -109,7 +100,7 @@
               </el-form-item>
               <el-form-item label="鎸囨爣绫诲瀷" prop="classify">
                 <el-select
-                  v-model="queryParams.classifyvalue"
+                  v-model="queryParams.scriptType"
                   placeholder="璇烽�夋嫨"
                 >
                   <el-option
@@ -121,13 +112,13 @@
                   </el-option>
                 </el-select>
               </el-form-item>
-              <el-form-item label="鍙敤鐘舵��" prop="classify">
+              <el-form-item label="鏄惁鍙敤" prop="classify">
                 <el-select
-                  v-model="queryParams.classifyvalue"
+                  v-model="queryParams.isAvailable"
                   placeholder="璇烽�夋嫨"
                 >
                   <el-option
-                    v-for="(item, index) in qyoptions"
+                    v-for="(item, index) in usable"
                     :key="item.value"
                     :label="item.label"
                     :value="item.value"
@@ -181,31 +172,35 @@
 
               <!-- <el-col :span="1.5"> </el-col> -->
             </el-row>
-            <!-- <right-toolbar
-          :showSearch.sync="showSearch"
-          @queryTable="getList"
-          :columns="columns"
-        ></right-toolbar> -->
+
             <el-table
               v-loading="loading"
-              :data="userList"
-              :border="true"
+              :data="targetList"
               @selection-change="handleSelectionChange"
             >
               <el-table-column type="selection" width="50" align="center" />
-              <el-table-column
+              <!-- <el-table-column
                 label="搴忓彿"
+                fixed
                 align="center"
-                key="guid"
-                prop="guid"
-              />
+                key="id"
+                prop="id"
+              /> -->
               <el-table-column
-                label="鍊肩被鍨�"
+                label="鎸囨爣绫诲瀷"
+                fixed
                 align="center"
-                key="userName"
-                prop="userName"
+                key="scriptType"
+                prop="scriptType"
                 :show-overflow-tooltip="true"
-              />
+              >
+                <template slot-scope="scope">
+                  <dict-tag
+                    :options="valuetypelb"
+                    :value="scope.row.scriptType"
+                  />
+                </template>
+              </el-table-column>
               <el-table-column
                 label="鎸囨爣鍚嶇О"
                 align="center"
@@ -213,58 +208,76 @@
                 prop="targetname"
                 :show-overflow-tooltip="true"
               >
-                <template slot-scope="scope">
-                  <span>{{ scope.row.warndown }}~{{ scope.row.warnup }}</span>
-                </template>
               </el-table-column>
 
-              <el-table-column
+              <!-- <el-table-column
                 label="姝e父鍊艰寖鍥�"
                 align="center"
-                key="scope"
-                prop="scope"
-                width="400"
-              />
+                key="warndown"
+                prop="warndown"
+                width="200"
+              >
+                <template slot-scope="scope">
+                  <span>{{ scope.row.warnup }}~{{ scope.row.warndown }}</span>
+                </template>
+              </el-table-column> -->
               <el-table-column
                 label="鎸囨爣鎻忚堪"
                 align="center"
-                key="aphonenumber"
-                prop="aphonenumber"
-                width="400"
+                key="targetdesc"
+                prop="targetdesc"
+                width="200"
               /><el-table-column
-                label="閫傜敤鏂瑰紡"
+                label="閫傜敤鍦烘櫙"
                 align="center"
-                key="bphonenumbers"
-                prop="bphonenumbers"
+                key="suitWayList"
+                prop="suitWayList"
                 width="120"
-              />
+              >
+                <template slot-scope="scope">
+                  <dict-tag :options="mode" :value="scope.row.suitWayList" />
+                </template>
+              </el-table-column>
               <el-table-column
                 label="閫傜敤鐤剧梾"
                 align="center"
-                key="bphonenumber"
-                prop="bphonenumber"
+                key="suitDisease"
+                prop="suitDisease"
                 width="120"
-              />
+              >
+                <template slot-scope="scope">
+                  <el-button
+                    size="medium"
+                    type="text"
+                    @click="illnessUpdate(scope.row)"
+                    v-hasPermi="['system:user:edit']"
+                    ><span class="button-textxg"
+                      ><i class="el-icon-date"></i>璇︽儏</span
+                    ></el-button
+                  >
+                </template>
+              </el-table-column>
               <el-table-column
                 label="璇█"
                 align="center"
-                key="cphonenumber"
-                prop="cphonenumber"
+                key="language"
+                prop="language"
                 width="120"
               />
-              <el-table-column label="鏄惁鍚敤" align="center" key="status">
+              <el-table-column
+                label="鏄惁鍙敤"
+                align="center"
+                key="isAvailable"
+                prop="isAvailable"
+              >
                 <template slot-scope="scope">
-                  <el-switch
-                    v-model="scope.row.status"
-                    active-value="0"
-                    inactive-value="1"
-                    @change="handleStatusChange(scope.row)"
-                  ></el-switch>
+                  <dict-tag :options="usable" :value="scope.row.isAvailable" />
                 </template>
               </el-table-column>
 
               <el-table-column
                 label="鎿嶄綔"
+                fixed="right"
                 align="center"
                 width="200"
                 class-name="small-padding fixed-width"
@@ -279,7 +292,7 @@
                       ><i class="el-icon-edit"></i>淇敼</span
                     ></el-button
                   >
-                  <el-button
+                  <!-- <el-button
                     size="medium"
                     type="text"
                     @click="handlemeasurement(scope.row)"
@@ -287,7 +300,7 @@
                     ><span class="button-textcs"
                       ><i class="el-icon-help"></i>娴嬭瘯</span
                     ></el-button
-                  >
+                  > -->
                   <el-button
                     size="medium"
                     type="text"
@@ -315,21 +328,22 @@
         <el-dialog
           :title="title"
           :visible.sync="indexopen"
+          :close-on-click-modal="false"
           width="900px"
           append-to-body
         >
           <el-form
-            ref="form"
+            ref="indexform"
             :model="indexform"
             :rules="rules"
             label-width="100px"
           >
             <el-row v-if="!measurement">
               <el-col :span="12">
-                <el-form-item label="鎸囨爣鍚嶇О" prop="deptId">
+                <el-form-item label="鎸囨爣鍚嶇О" prop="targetname">
                   <el-input
-                    v-model="indexform.name"
-                    placeholder="璇疯緭鍏ユ寚鏍囩绫�"
+                    v-model="indexform.targetname"
+                    placeholder="璇疯緭鍏ユ寚鏍囧悕绉�"
                     maxlength="40"
                   />
                 </el-form-item>
@@ -337,16 +351,41 @@
               <el-col :span="12">
                 <el-form-item label="鐗堟湰鍙�" prop="deptId">
                   <el-input
-                    v-model="indexform.versions"
-                    placeholder="璇疯緭鍏ユ寚鏍囩绫�"
+                    v-model="indexform.version"
+                    placeholder="榛樿1.0"
                     maxlength="40"
                   />
                 </el-form-item>
               </el-col>
             </el-row>
+            <!-- deptOptions -->
             <el-row v-if="!measurement">
-              <el-col :span="12">
-                <el-form-item label="璇█" prop="deptId">
+              <el-col :span="8">
+                <el-form-item label="鎸囨爣鍒嗙被" prop="assortid">
+                  <el-select
+                    v-model="indexform.assortid"
+                    size="medium"
+                    filterable
+                    placeholder="璇烽�夋嫨鍒嗙被"
+                  >
+                    <el-option-group
+                      v-for="group in deptOptions"
+                      :key="group.id"
+                      :label="group.indexAssortName"
+                    >
+                      <el-option
+                        v-for="item in group.ivrLibaTargetAssortList"
+                        :key="item.id"
+                        :label="item.indexAssortName"
+                        :value="item.id"
+                      >
+                      </el-option>
+                    </el-option-group>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+              <el-col :span="8">
+                <el-form-item label="璇█" prop="language">
                   <el-select
                     v-model="indexform.language"
                     placeholder="璇烽�夋嫨璇█"
@@ -360,10 +399,10 @@
                   </el-select>
                 </el-form-item>
               </el-col>
-              <el-col :span="12">
-                <el-form-item label="鏄惁鍙敤" prop="deptId">
+              <el-col :span="8">
+                <el-form-item label="鏄惁鍙敤" prop="isAvailable">
                   <el-select
-                    v-model="indexform.useofstate"
+                    v-model="indexform.isAvailable"
                     placeholder="璇烽�夋嫨"
                   >
                     <el-option
@@ -378,25 +417,32 @@
             </el-row>
             <el-row v-if="!measurement">
               <el-col :span="24">
-                <el-form-item label="鎸囨爣鎻忚堪" prop="nickName">
+                <el-form-item label="鎸囨爣鎻忚堪" prop="targetdesc">
                   <el-input
-                    v-model="indexform.nickName"
+                    v-model="indexform.targetdesc"
                     placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
+                    id="targetdesc"
+                    @focus="currentInputId = 'targetdesc'"
                     maxlength="40"
                   />
                 </el-form-item> </el-col
             ></el-row>
+            <el-form-item label="鎻掑叆濉┖" prop="scriptContent">
+              <div style="display: flex; margin-bottom: 10px">
+                <div class="tsgname" @click="tsgnameto">鎻掑叆濉┖</div>
+              </div>
+            </el-form-item>
             <el-form-item label="鏍囩" prop="desc" v-if="!measurement">
               <div class="xinz-inf">
                 <el-tag
-                  :key="tag"
+                  :key="tag.tagname"
                   type="success"
                   v-for="tag in dynamicTags"
                   closable
                   :disable-transitions="false"
-                  @close="handleClose(tag)"
+                  @close="handleClosetag(tag)"
                 >
-                  {{ tag }}
+                  {{ tag.tagname }}
                 </el-tag>
                 <el-select
                   v-model="inputValue"
@@ -409,7 +455,7 @@
                 >
                   <el-option
                     v-for="item in optionstag"
-                    :key="item.tagname"
+                    :key="item.tagid"
                     :label="item.tagname"
                     :value="item.tagname"
                   >
@@ -427,39 +473,42 @@
             <el-row v-if="!measurement">
               <el-col :span="24">
                 <el-form-item label="鍊肩被鍨�">
-                  <el-radio-group v-model="indexform.resource">
-                    <el-radio label="閫夐」"></el-radio>
-                    <el-radio label="鏂囨湰"></el-radio>
-                    <el-radio label="鏁板��"></el-radio>
+                  <el-radio-group v-model="indexform.valueType">
+                    <el-radio :label="1">閫夐」</el-radio>
+                    <el-radio :label="2">鏂囨湰</el-radio>
+                    <el-radio :label="3">鏁板��</el-radio>
                   </el-radio-group>
-                </el-form-item> </el-col
-            ></el-row>
+                </el-form-item>
+              </el-col></el-row
+            >
             <el-row v-if="!measurement">
               <el-col :span="24">
-                <el-form-item label="閫傜敤鐤剧梾" prop="userName">
-                  <el-select
-                    v-model="indexform.useofstate"
-                    placeholder="璇烽�夋嫨"
+                <el-form-item label="棰樼洰绫诲瀷">
+                  <el-radio-group
+                    @input="Changtype"
+                    v-model="indexform.scriptType"
                   >
-                    <el-option
-                      v-for="index in qyoptions"
-                      :key="index.value"
-                      :label="index.label"
-                      :value="index.value"
-                    ></el-option>
-                  </el-select>
-                </el-form-item> </el-col
-            ></el-row>
+                    <el-radio :label="1">鍗曢��</el-radio>
+                    <el-radio :label="2">澶氶��</el-radio>
+                    <el-radio :label="3">濉┖</el-radio>
+                    <el-radio :label="4">闂瓟</el-radio>
+                  </el-radio-group>
+                </el-form-item>
+              </el-col></el-row
+            >
 
             <el-row v-if="!measurement">
               <el-col :span="24">
-                <el-form-item label="閫傜敤鏂瑰紡" prop="email">
+                <el-form-item label="閫傜敤鍦烘櫙" prop="suitWayList">
                   <el-select
-                    v-model="indexform.useofstate"
+                    class="el-select1"
+                    v-model="indexform.suitWayList"
+                    multiple
+                    @change="changeselect"
                     placeholder="璇烽�夋嫨"
                   >
                     <el-option
-                      v-for="index in qyoptions"
+                      v-for="index in mode"
                       :key="index.value"
                       :label="index.label"
                       :value="index.value"
@@ -468,92 +517,58 @@
                 </el-form-item>
               </el-col>
             </el-row>
-            <el-card class="box-card" style="margin-bottom: 20px">
-              <el-table v-loading="loading" :data="testuserList">
-                <el-table-column
-                  label="搴忓彿"
-                  align="center"
-                  key="userid"
-                  prop="userid"
-                  width="50"
-                />
-                <el-table-column
-                  label="鎸囨爣閫夐」"
-                  align="center"
-                  key="nickName"
-                  prop="nickName"
-                  :show-overflow-tooltip="true"
-                >
-                  <template slot-scope="scope">
-                    <el-input
-                      v-model="scope.row.nickName"
-                      placeholder="璇疯緭鍏ュ唴瀹�"
-                    ></el-input>
-                  </template>
-                </el-table-column>
-                <el-table-column
-                  label="瑙f瀽瑙勫垯"
-                  align="center"
-                  key="aphonenumber"
-                  prop="aphonenumber"
-                  width="460"
-                  :show-overflow-tooltip="true"
-                >
-                  <template slot-scope="scope">
-                    <el-input
-                      v-model="scope.row.aphonenumber"
-                      placeholder="璇疯緭鍏ュ唴瀹�"
-                    ></el-input>
-                  </template>
-                </el-table-column>
 
-                <el-table-column
-                  label="鎿嶄綔"
-                  align="center"
-                  width="200"
-                  class-name="small-padding fixed-width"
-                >
-                  <template slot-scope="scope">
-                    <el-button
-                      @click="addoption(scope.row)"
-                      type="success"
-                      icon="el-icon-circle-plus-outline"
-                      circle
-                    ></el-button>
-                    <el-button
-                      type="danger"
-                      icon="el-icon-delete"
-                      circle
-                      @click="deloption(scope.row)"
-                    ></el-button>
-                    <el-button
-                      @click="syioption(scope.row)"
-                      type="primary"
-                      icon="el-icon-top"
-                      circle
-                    ></el-button>
-                    <el-button
-                      @click="xiayioption(scope.row)"
-                      type="primary"
-                      icon="el-icon-bottom"
-                      circle
-                    ></el-button>
-                  </template>
-                </el-table-column>
-              </el-table>
+            <el-card
+              class="box-card"
+              style="margin-bottom: 20px"
+              v-if="indexform.scriptType == 1 || indexform.scriptType == 2"
+            >
+              <Regular
+                :TargetoptionList="testuserList"
+                :intent="false"
+                :hasValue="hasValue"
+                @addoption="addoption"
+                @deloption="deloption"
+                @syioption="syioption"
+                @xiayioption="xiayioption"
+              />
             </el-card>
+            <div v-if="indexform.scriptType == 3">
+              <el-form-item label="鏀堕泦淇℃伅">
+                <el-card class="box-card">
+                  <div v-for="item in testuserList" style="margin-bottom: 10px">
+                    <el-input
+                      type="text"
+                      placeholder="濉叆鏀堕泦淇℃伅"
+                      v-model="indexform.optiondesc"
+                    >
+                      <el-button
+                        slot="append"
+                        @click="deloption(item)"
+                        type="danger"
+                        icon="el-icon-delete"
+                        circle
+                      ></el-button>
+                      <span slot="prepend">{{ "(" + item.orderno + ")" }}</span>
+                    </el-input>
+                  </div>
+                </el-card>
+              </el-form-item>
+            </div>
             <el-row :gutter="20">
               <el-col :span="12">
                 <el-form-item label="娴嬭瘯杈撳叆" prop="nickName">
                   <el-input
-                    v-model="testvalue"
+                    v-model="indexform.content"
                     placeholder="璇疯緭鍏ユ祴璇曞唴瀹�"
                     maxlength="40"
                   />
                 </el-form-item>
               </el-col>
               <el-col :span="4">
-                <el-button type="success">寮�濮嬫祴璇�</el-button>
+                <el-button type="success" @click="testtagerlist"
+                  >寮�濮嬫祴璇�</el-button
+                >
               </el-col>
             </el-row>
           </el-form>
@@ -567,79 +582,118 @@
             </el-input>
           </div>
           <div slot="footer" class="dialog-footer">
-            <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
-            <el-button @click="cancel">鍙� 娑�</el-button>
+            <el-button type="primary" @click="submitForm">淇� 瀛�</el-button>
+            <el-button @click="cancel">鍏� 闂�</el-button>
           </div>
         </el-dialog>
       </div>
     </div>
-    <!-- 娣诲姞绫诲埆寮规 -->
-    <el-dialog
-      :title="amendtag ? '淇敼绫诲埆' : '鏂板绫诲埆'"
-      width="30%"
-      :visible.sync="dialogFormVisible"
-    >
-      <el-form :model="classifyform">
-        <el-form-item label="璇烽�夋嫨鎸囨爣澶х被">
-          <el-select v-model="classifyform.broadheading" placeholder="璇烽�夋嫨">
+    <!-- 娣诲姞鐤剧梾瀵硅瘽妗� -->
+    <el-dialog title="鎸囨爣鐤剧梾" :visible.sync="illnessVisible" width="50%">
+      <div>
+        <div class="xinz-infs">
+          <el-tag
+            :key="item.icd10name"
+            type="warning"
+            v-for="item in illnesslist"
+            closable
+            :disable-transitions="false"
+            @close="handleCloseillness(item)"
+          >
+            {{ item.icd10name }}
+          </el-tag>
+          <el-select
+            v-model="inputValue"
+            v-if="inputVisible"
+            @change="illnessConfirm"
+            :remote-method="remoteMethod"
+            filterable
+            remote
+            allow-create
+            default-first-option
+            placeholder="璇烽�夋嫨/鏌ヨ"
+            :loading="loading"
+          >
             <el-option
-              v-for="item in editableTabs"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
+              v-for="item in optionsillness"
+              :key="item.icdid"
+              :label="item.icdname"
+              :value="item.icdid"
+            >
+            </el-option>
+          </el-select>
+          <el-button
+            v-else
+            class="button-new-tag"
+            size="small"
+            @click="showInput"
+            >+ 鏂板鐤剧梾</el-button
+          >
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="illnessVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="confirmillness">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+    <!-- 娣诲姞绫诲埆寮规 -->
+    <el-dialog title="鏂板绫诲埆" width="30%" :visible.sync="dialogFormVisible">
+      <div style="text-align: center; margin-bottom: 20px">
+        <el-radio-group v-model="radio">
+          <el-radio-button label="涓诲垎绫�"></el-radio-button>
+          <el-radio-button label="瀛愬垎绫�"></el-radio-button>
+        </el-radio-group>
+      </div>
+      <el-divider></el-divider>
+
+      <el-form :model="classifyform">
+        <el-form-item label="璇烽�夋嫨闂澶х被" v-if="radio == '瀛愬垎绫�'">
+          <el-select v-model="classifyform.pid" placeholder="璇烽�夋嫨">
+            <el-option
+              v-for="item in deptOptions"
+              :key="item.id"
+              :label="item.indexAssortName"
+              :value="item.id"
             >
             </el-option>
           </el-select>
         </el-form-item>
-        <el-form-item
-          :label="amendtag ? '璇疯緭鍏ユ柊鐨勭被鍒悕绉�' : '璇疯緭鍏ョ被鍒悕绉�'"
-        >
+        <el-form-item label="璇疯緭鍏ョ被鍒悕绉�">
           <el-input
-            v-model="classifyform.categoryname"
+            v-model="classifyform.indexAssortName"
             autocomplete="off"
           ></el-input>
         </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
-        <el-button @click="dialogFormVisible = false">鍙� 娑�</el-button>
+        <el-button @click="getDeptTree()">鍙� 娑�</el-button>
         <el-button type="primary" @click="submitsidecolumn">纭� 瀹�</el-button>
       </div>
-    </el-dialog>
-    <!-- 鍒犻櫎绫诲埆纭妗� -->
-    <el-dialog title="璀﹀憡" :visible.sync="deleteVisible" width="40%">
-      <div style="font-size: 20px; color: rgb(247, 76, 76)">
-        鏄惁纭鍒犻櫎鍒嗙被锛歔<span>{{ deletefenl }}</span
-        >]?
-      </div>
-      <div style="font-size: 20px">
-        姝ゆ搷浣滀細灏嗚绫诲埆涓嬫墍鏈夋ā鍧楄浆绉昏嚦[鏈垎绫籡锛屾槸鍚︾户缁垹闄ゆ鍒嗙被锛�
-      </div>
-      <span slot="footer" class="dialog-footer">
-        <el-button @click="deleteVisible = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="deletefenlei">纭� 瀹�</el-button>
-      </span>
     </el-dialog>
   </div>
 </template>
 
 <script>
 import {
-  listUser,
-  getUser,
-  delUser,
-  addUser,
-  updateUser,
-} from "@/api/system/user";
-import {
-  listtarget,
   gettargetInfo,
   particulartarget,
   gettargetInfoedit,
+  testtagerlist,
   addtarget,
   deletetarget,
+  getillnesslist,
+  illnesslistget,
+  getillness,
+  deltargetillness,
+  addtargetillness,
+  selectIvrLibaTargetAssortList,
+  addtreeselectIvrLibaTargetAssort,
+  edittreeselectIvrLibaTargetAssort,
+  delselectIvrLibaTargetAssort,
 } from "@/api/AiCentre/index";
 import { getToken } from "@/utils/auth";
 import Treeselect from "@riophae/vue-treeselect";
+import Regular from "@/components/Regular"; //姝e垯缁勪欢
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 import { listtag } from "@/api/system/label";
 import store from "@/store";
@@ -647,7 +701,7 @@
 export default {
   name: "questionnaire",
   dicts: ["sys_normal_disable", "sys_user_sex"],
-  components: { Treeselect },
+  components: { Treeselect, Regular },
   data() {
     return {
       topactiveName: "Local", //椤堕儴閫夋嫨
@@ -662,54 +716,27 @@
       // 鏄剧ず鎼滅储鏉′欢
       showSearch: true,
       measurement: false,
+      languagelist: [],
+      usable: [],
+      indexid: null,
       // 鎬绘潯鏁�
       total: 0,
-      namequestionnaire: "",
-      haoquestionnaire: "",
       idds: "",
       amendtag: false, //鏄惁淇敼绫诲埆
       dialogFormVisible: false, //淇敼娣诲姞绫诲埆寮规
       deleteVisible: false, //鍒嗙被鍒犻櫎寮规
       deletefenl: "楂樿鍘�", //鍒犻櫎椤�
+      radio: "涓诲垎绫�",
       testvalue: "",
       testgovalue: "",
+      creatype: "", //鎸囨爣涓存椂绫诲瀷
+      hasValue: true,
       classifyform: {
         categoryname: "",
       }, //绫诲埆琛ㄥ崟
       // 琛ㄦ牸鏁版嵁
-      userList: [
-        {
-          userid: 1,
-          userName: "琛�甯歌銆佸翱甯歌",
-          nickName: "璐",
-          aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
-          bphonenumber: "閫夋嫨",
-          cphonenumber: "鏅�氳瘽",
-        },
-      ],
-      testuserList: [
-        {
-          userid: 1,
-          nickName: "璐",
-          aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
-        },
-        {
-          userid: 2,
-          nickName: "姝e父",
-          aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
-        },
-        {
-          userid: 55,
-          nickName: "闈炴甯�",
-          aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
-        },
-        {
-          userid: 4,
-          nickName: "a姝e父",
-          aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
-          status: "0",
-        },
-      ],
+      targetList: null,
+      testuserList: [],
       // 寮瑰嚭灞傛爣棰�
       title: "",
       // 鏄惁鏄剧ず寮瑰嚭灞�
@@ -724,173 +751,95 @@
       indexform: {},
       numberlb: 22,
       numberlbs: 2,
+      deptOptions: [],
+      defaultProps: {
+        children: "ivrLibaTargetAssortList",
+        label: "indexAssortName",
+      },
       sidecolumnform: {}, //娣诲姞绫诲埆琛ㄥ崟
       dialogFormVisible: false, //娣诲姞绫诲埆寮规
       sidecolumnval: "", //绫诲埆鎼滅储
       indexopen: false, //寮规灞曠ず鍚�
       inputVisible: false,
+      illnessVisible: false, //鎸囨爣鐤剧梾寮规
       inputValue: "",
       propss: { multiple: true },
-      dynamicTags: ["鏍囩涓�", "鏍囩浜�", "鏍囩涓�"],
-      languagelist: [
-        {
-          value: 1,
-          label: "鏅�氳瘽",
-        },
-        {
-          value: 2,
-          label: "绮よ",
-        },
-        {
-          value: 3,
-          label: "鑻辫",
-        },
-      ], //璇█鍒楄〃
-      qyoptions: [
-        {
-          value: 1,
-          label: "鍙敤",
-        },
-        {
-          value: 2,
-          label: "鍋滅敤",
-        },
-      ],
+      dynamicTags: [],
+      illnesslist: [],
+      illnesslistapi: [],
+      optionsillness: [],
+      qyoptions: [],
       mode: [],
       optionstag: [],
-      //绫诲埆鍒楄〃
-      editableTabs: [
-        {
-          title: "鎸囨爣鍒嗙被涓�",
-          number: "1",
-        },
-        {
-          title: "鎸囨爣鍒嗙被浜�",
-          number: "2",
-        },
-        {
-          title: "鎸囨爣鍒嗙被涓�",
-          number: "2",
-        },
-        {
-          title: "鎸囨爣鍒嗙被鍥�",
-          number: "2",
-        },
-        {
-          title: "鎸囨爣鍒嗙被浜�",
-          number: "2",
-        },
-      ],
+      targetoptionList: [],
+      Temporarytype: "",
+
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
         pageSize: 10,
-        userName: undefined,
-        phonenumber: undefined,
-        status: undefined,
-        deptId: undefined,
-        IDnumber: undefined,
       },
-      // 鍒椾俊鎭�
-      columns: [
-        { key: 0, label: `鐢ㄦ埛缂栧彿`, visible: true },
-        { key: 1, label: `鐢ㄦ埛鍚嶇О`, visible: true },
-        { key: 2, label: `鐢ㄦ埛鏄电О`, visible: true },
-        { key: 3, label: `閮ㄩ棬`, visible: true },
-        { key: 4, label: `鎵嬫満鍙风爜`, visible: true },
-        { key: 5, label: `鐘舵�乣, visible: true },
-        { key: 6, label: `鍒涘缓鏃堕棿`, visible: true },
-      ],
+      valuetypelb: [],
+
       // 琛ㄥ崟鏍¢獙
       rules: {
-        userName: [
-          { required: true, message: "鐢ㄦ埛鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
-          {
-            min: 2,
-            max: 20,
-            message: "鐢ㄦ埛鍚嶇О闀垮害蹇呴』浠嬩簬 2 鍜� 20 涔嬮棿",
-            trigger: "blur",
-          },
+        targetname: [
+          { required: true, message: "鎸囨爣鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
         ],
-        nickName: [
-          { required: true, message: "鐢ㄦ埛鏄电О涓嶈兘涓虹┖", trigger: "blur" },
+        assortid: [
+          { required: true, message: "鎸囨爣鍒嗙被涓嶈兘涓虹┖", trigger: "blur" },
         ],
-        password: [
-          { required: true, message: "鐢ㄦ埛瀵嗙爜涓嶈兘涓虹┖", trigger: "blur" },
-          {
-            min: 5,
-            max: 20,
-            message: "鐢ㄦ埛瀵嗙爜闀垮害蹇呴』浠嬩簬 5 鍜� 20 涔嬮棿",
-            trigger: "blur",
-          },
+        language: [
+          { required: true, message: "鎸囨爣璇█涓嶈兘涓虹┖", trigger: "blur" },
         ],
-        email: [
-          {
-            type: "email",
-            message: "璇疯緭鍏ユ纭殑閭鍦板潃",
-            trigger: ["blur", "change"],
-          },
-        ],
-        phonenumber: [
-          {
-            pattern: /^1[3|4|5|6|7|8|9][0-9]\d{8}$/,
-            message: "璇疯緭鍏ユ纭殑鎵嬫満鍙风爜",
-            trigger: "blur",
-          },
-        ],
-        IDnumber: [
-          {
-            pattern:
-              /^\d{6}((((((19|20)\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|(((19|20)\d{2})(0[13578]|1[02])31)|((19|20)\d{2})02(0[1-9]|1\d|2[0-8])|((((19|20)([13579][26]|[2468][048]|0[48]))|(2000))0229))\d{3})|((((\d{2})(0[13-9]|1[012])(0[1-9]|[12]\d|30))|((\d{2})(0[13578]|1[02])31)|((\d{2})02(0[1-9]|1\d|2[0-8]))|(([13579][26]|[2468][048]|0[048])0229))\d{2}))(\d|X|x)$/,
-            message: "璇疯緭鍏ユ纭殑韬唤璇佸彿鐮�",
-            trigger: "blur",
-          },
+        isAvailable: [
+          { required: true, message: "鎸囨爣璇█涓嶈兘涓虹┖", trigger: "blur" },
         ],
       },
     };
   },
-  watch: {},
+  watch: {
+    // 鏍规嵁鍚嶇О绛涢�夐儴闂ㄦ爲
+    sidecolumnval(val) {
+      console.log(val);
+      this.$refs.tree.filter(val);
+    },
+  },
   created() {
+    // 鍒濆鍖栨暟鎹�
     this.getList();
     this.gettabList();
+    this.getDeptTree();
     this.mode = store.getters.mode;
-    console.log(this.mode);
+    this.valuetypelb = store.getters.askvaluetype;
+    this.languagelist = store.getters.languagelist;
+    this.qyoptions = store.getters.askvaluetype;
+    this.usable = store.getters.usable;
   },
-
   methods: {
     /** 鏌ヨ鎸囨爣鍒楄〃 */
     getList() {
-      listtarget(this.queryParams).then((res) => {
-        this.userlist = res.data;
-        console.log(this.userList);
+      this.loading = true;
+      gettargetInfo(this.queryParams).then((res) => {
+        this.targetList = res.rows;
+        this.total = res.total;
+        console.log(this.targetList);
+        this.loading = false;
       });
     },
+
+    processElement(element) {
+      // 杩斿洖涓�涓柊鐨勫璞★紝灏唀lement瀵硅薄鐨勫睘鎬soperation璁剧疆涓�1
+      return { ...element, isoperation: 1 };
+    },
+    // 杩斿洖鏁扮粍涓寚瀹氬厓绱犵殑绱㈠紩
     getIndexInArray(arr, obj) {
+      // 杩斿洖鏁扮粍涓寚瀹氬厓绱犵殑绱㈠紩
       return arr.indexOf(obj);
     },
-    // 娣诲姞銆佷慨鏀圭被鍒�
-    submitsidecolumn() {
-      if (this.amendtag) {
-        this.classifyform.tagcategoryid = this.idds;
-        // toamendtagcategory(this.addDateRange(this.classifyform)).then(
-        //   (response) => {
-        //     console.log(response);
-        //     this.gitclasify();
-        //   }
-        // );
-      } else {
-        // addtagcategory(this.addDateRange(this.classifyform)).then(
-        //   (response) => {
-        //     console.log(response);
-        //     this.gitclasify();
-        //   }
-        // );
-      }
-      this.classifyform = {
-        categoryname: "",
-      };
-      this.idds = "";
-      this.dialogFormVisible = false;
+    changeselect(row) {
+      console.log(row);
+      this.hasValue = row.includes("2");
     },
     //鍒犻櫎鍒嗙被
     deletefenlei(row) {
@@ -907,31 +856,134 @@
         this.deletefenl = row.title;
       }
     },
-    // 棰樼洰鐘舵�佷慨鏀�
-    handleStatusChange(row) {
-      let text = row.status === "0" ? "鍚敤" : "鍋滅敤";
-      this.$modal
-        .confirm('纭瑕�"' + text + '""' + row.userName + '"鐢ㄦ埛鍚楋紵')
-        .then(function () {
-          return changeUserStatus(row.userId, row.status);
-        })
-        .then(() => {
-          this.$modal.msgSuccess(text + "鎴愬姛");
-        })
-        .catch(function () {
-          row.status = row.status === "0" ? "1" : "0";
+    // 渚挎嵎鏍囩鎻掑叆濉┖
+    tsgnameto(row) {
+      let inputValueArr = "";
+      let value = this.testuserList.length + 1;
+
+      let el = document.querySelector("#" + this.currentInputId);
+      //el.selectionStart; 杩欏氨鏄綋鍓嶅厜鏍囨墍鍦ㄧ殑浣嶇疆锛堝瓧绗︿覆涓瓧绗︾殑index锛�
+      if (this.currentInputId == "targetdesc") {
+        inputValueArr = this.indexform.targetdesc.split("");
+      } else {
+        return;
+      }
+      //灏嗚緭鍏ユ鍐呭鍒囨垚鏁扮粍锛屾柟渚垮悗缁搷浣�
+      // inputValueArr = this.inputValue.split("");
+      // 鎷垮埌閫変腑鏂囧瓧鐨勯暱搴︼紙鍚庣画鍙互鐢ㄦ潵鏇挎崲閫変腑鐨勬枃瀛楋級
+      let selectLength = el.selectionEnd - el.selectionStart;
+      // 灏嗚鎻掑叆/鏇挎崲鐨勬枃瀛楁彃鍏�/鏇挎崲锛坴alue.name鏄鎻掑叆/鏇挎崲鐨勫瓧绗︿覆锛�
+      inputValueArr.splice(
+        el.selectionStart,
+        selectLength,
+        "__" + value + "__"
+      );
+      this.testuserList.push({
+        orderno: value,
+        optiondesc: "",
+        isoperation: 1,
+      });
+      // 鎶婃暟缁勯噸鏂拌浆鎹负瀛楃涓插苟璧嬪��
+      inputValueArr = inputValueArr.join("");
+
+      console.log(inputValueArr);
+      if (this.currentInputId == "targetdesc") {
+        this.indexform.targetdesc = inputValueArr;
+      } else {
+        return;
+      }
+    },
+    Changtype(item) {
+      console.log(this.testuserList);
+      console.log(item, "閫夐」鍙樻洿鐨勫鐞�");
+
+      if (item == 3 && this.testuserList[0].targetvalue) {
+        this.$modal
+          .confirm("鏇存敼绫诲瀷涓哄~绌哄悗閫夐」灏嗘竻绌烘槸鍚︾户缁紵")
+          .then(() => {
+            this.testuserList = [];
+            this.Temporarytype = this.indexform.scriptType;
+          })
+          .catch(() => {
+            this.indexform.scriptType = this.Temporarytype;
+          });
+      } else if (item == 3) {
+        this.testuserList = [];
+        this.Temporarytype = this.indexform.scriptType;
+      }
+      {
+        this.Temporarytype = this.indexform.scriptType;
+      }
+    },
+    // 鐤剧梾-----------------------
+    illnessUpdate(row) {
+      this.illnessVisible = true;
+      this.indexid = row.id;
+      this.illnesslistapi = [];
+      const illnessqueryParams = {
+        pageNum: 1,
+        pageSize: 100,
+      };
+      getillnesslist(illnessqueryParams).then((response) => {
+        console.log(response);
+        this.optionsillness = response.rows;
+      });
+      getillness({ outid: row.id, type: 1 }).then((res) => {
+        this.illnesslist = res.rows;
+        console.log(res);
+      });
+    },
+    handleCloseillness(tag) {
+      this.illnesslist.splice(this.illnesslist.indexOf(tag), 1);
+      if (tag.id) {
+        this.illnesslistapi.push(tag.id);
+      }
+    },
+    remoteMethod(value) {
+      const illnessqueryParams = {
+        pageNum: 1,
+        pageSize: 100,
+        icdname: value,
+      };
+      this.loading = true;
+      setTimeout(() => {
+        this.loading = false;
+        getillnesslist(illnessqueryParams).then((response) => {
+          this.optionsillness = response.rows;
         });
+      }, 200);
     },
-    // 渚ц竟--------------
-    handleOpen(key, keyPath) {
-      console.log(key, keyPath);
+    illnessConfirm(item) {
+      let opeavalue = {};
+      let tagname = this.inputValue;
+      illnesslistget(item).then((res) => {
+        opeavalue = res.data;
+        opeavalue.outid = this.indexid;
+        opeavalue.type = "1";
+        opeavalue.icd10id = opeavalue.icdid;
+        opeavalue.icd10name = opeavalue.icdname;
+        opeavalue.icd10code = opeavalue.icdcode;
+        if (tagname) {
+          this.illnesslist.push(opeavalue);
+        }
+      });
+      console.log(this.illnesslist);
+      this.inputVisible = false;
+      this.inputValue = "";
     },
-    handleClose(key, keyPath) {
-      console.log(key, keyPath);
+    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("缂栬緫鎴愬姛");
     },
-    handleSelect(key, keyPath) {
-      console.log(key, keyPath);
-    },
+
     // 鏍囩-----------------
     gettabList() {
       const tagqueryParams = {
@@ -944,13 +996,38 @@
         this.optionstag = response.rows;
       });
     },
-    handleClose(tag) {
+    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.indexform.ivrLibaTargetTagList[lindex].delFlag = 3;
     },
     handleInputConfirm() {
-      let inputValue = this.inputValue;
-      if (inputValue) {
-        this.dynamicTags.push(inputValue);
+      let tagvalue = {};
+      let tagname = this.inputValue;
+      if (tagname) {
+        listtag({
+          pageNum: 1,
+          pageSize: 1000,
+          tagcategoryid: "0",
+          tagname: tagname,
+        }).then((res) => {
+          if (res.rows[0]) {
+            tagvalue = res.rows[0];
+            tagvalue.isoperation = 1;
+          } else {
+            tagvalue = {
+              tagname: tagname,
+              isoperation: 1,
+            };
+          }
+          console.log(tagvalue);
+          this.indexform.ivrLibaTargetTagList.push(tagvalue);
+          this.dynamicTags.push(tagvalue);
+          console.log(this.indexform.ivrLibaTargetTagList);
+          console.log(this.dynamicTags);
+        });
       }
       this.inputVisible = false;
       this.inputValue = "";
@@ -960,22 +1037,45 @@
     },
     //娴嬭瘯琛ㄥ崟 --------------------------
     addoption() {
-      this.testuserList.push({
-        userid: 1,
-        nickName: "璐",
-        aphonenumber: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
-      });
+      const objvakue = {
+        guid: 1,
+        id: this.indexform.id,
+        targettype: this.indexform.targettype,
+        isoperation: 1,
+        isabnormal: 0,
+        targetvalue: "",
+        targetregex: "",
+        targetregex2: "",
+        picturePath: "",
+        dynamiccruxs: [],
+        nodynamiccruxs: [],
+        dynamiccruxsJson: "",
+        nodynamiccruxsJson: "",
+      };
+      this.testuserList.push(objvakue);
+      // this.indexform.targetoptionList.push(objvakue);
+      console.log(this.testuserList);
       this.sortFn();
     },
     deloption(item) {
       const index = this.testuserList.indexOf(item);
       if (index !== -1) {
+        this.testuserList[index].isoperation = 3;
+        this.targetoptionList.push(this.testuserList[index]);
+        console.log(this.targetoptionList, "aaaa.targetoptionList");
         this.testuserList.splice(index, 1); // 浠庣储寮曚綅缃垹闄や竴涓厓绱�
         this.sortFn();
+
+        if (this.indexform.scriptType == 3) {
+          this.$modal.msgWarning(
+            "濉┖椤瑰凡鍒犻櫎璇锋墜鍔ㄥ垹闄ら鐩唴瀹逛腑瀵瑰簲鐨勫~绌洪」"
+          );
+        }
       } else {
         console.log("鏈壘鍒拌瀵硅薄");
       }
     },
+
     syioption(row) {
       const index = this.getIndexInArray(this.testuserList, row);
       const item = this.testuserList.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓�
@@ -991,41 +1091,138 @@
     sortFn() {
       this.testuserList = this.testuserList.map((item, index) => {
         return {
-          userid: index + 1,
-          nickName: item.nickName,
-          aphonenumber: item.aphonenumber,
+          guid: index + 1,
+          targetvalue: item.targetvalue,
+          targetregex2: item.targetregex2,
+          targetregex: item.targetregex,
+          id: this.indexform.id,
+          targettype: this.indexform.targettype,
+          isoperation: item.targetoptionid ? 2 : 1,
+          categoryName: item.categoryName,
+          language: item.language,
+          dynamiccruxs: item.dynamiccruxs,
+          nodynamiccruxs: item.nodynamiccruxs,
+          dynamiccruxsJson: item.dynamiccruxsJson,
+          nodynamiccruxsJson: item.nodynamiccruxsJson,
+          targetoptionid: item.targetoptionid,
+          isabnormal: item.isabnormal,
+          picturePath: item.picturePath,
         };
       });
       console.log(this.testuserList);
     },
     // ---------------------
-    //鎼滅储绫诲埆
-    sidecolumnss() {},
-    // 鍒囨崲鍏变韩/鏈湴
-    tophandleClick() {},
+
+    /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
+    getDeptTree() {
+      selectIvrLibaTargetAssortList({}).then((res) => {
+        this.deptOptions = res.rows;
+        this.dialogFormVisible = false;
+      });
+    },
+    // 绛涢�夎妭鐐�
+    filterNode(value, data) {
+      if (!value) return true;
+      return data.indexAssortName.indexOf(value) !== -1;
+    },
+    // 娣诲姞绫诲埆鏍�
+    submitsidecolumn() {
+      if (this.classifyform.id) {
+        edittreeselectIvrLibaTargetAssort(this.classifyform).then((res) => {
+          this.getDeptTree();
+          this.$modal.msgSuccess("淇敼鎴愬姛");
+          this.classifyform = {};
+          this.dialogFormVisible = false;
+        });
+        return;
+      }
+      let calssvalue = {};
+      if (
+        this.classifyform.pid &&
+        this.classifyform.indexAssortName &&
+        this.radio == "瀛愬垎绫�"
+      ) {
+        const index = this.deptOptions.findIndex(
+          (obj) => obj.id == this.classifyform.pid
+        );
+        calssvalue = this.deptOptions[index];
+        console.log(calssvalue);
+        calssvalue.ivrLibaTargetAssortList.push(this.classifyform);
+      } else if (this.radio == "涓诲垎绫�" && this.classifyform.indexAssortName) {
+        this.classifyform.pid = null;
+        this.classifyform.ivrLibaTargetAssortList = [];
+      } else {
+        return this.$modal.msgError("璇峰~鍐欏畬鏁翠俊鎭�");
+      }
+
+      addtreeselectIvrLibaTargetAssort(this.classifyform).then((res) => {
+        this.getDeptTree();
+        this.$modal.msgSuccess("鏂板鎴愬姛");
+        this.classifyform = {};
+        this.dialogFormVisible = false;
+      });
+    },
+    remove(a, b) {
+      if (b.pid) {
+        this.$modal
+          .confirm('鏄惁纭鍒犻櫎鍒嗙被椤逛负"' + b.indexAssortName + '"鐨勬暟鎹」锛�')
+          .then(function () {
+            return delselectIvrLibaTargetAssort(b.id);
+          })
+          .then(() => {
+            this.getDeptTree();
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          })
+          .catch(() => {});
+      } else {
+        this.$modal
+          .confirm(
+            '鏄惁纭鍒犻櫎涓�绾у垎绫�"' +
+              b.indexAssortName +
+              '"锛熷垹闄ゅ悗鍏朵笅鍒嗙被灏嗗綊绫烩�樻湭鍒嗙被鈥�'
+          )
+          .then(() => {
+            return delselectIvrLibaTargetAssort(b.id);
+          })
+          .then(() => {
+            this.getDeptTree();
+            this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+          })
+          .catch(() => {});
+      }
+    },
+    altertag(a, b) {
+      this.dialogFormVisible = true;
+      if (!b.pid) {
+        this.radio = "涓诲垎绫�";
+      } else {
+        this.radio = "瀛愬垎绫�";
+      }
+      this.classifyform = b;
+      this.dialogFormVisible = true;
+    },
+    handleNodeClick(data) {
+      this.queryParams.assortid = data.id;
+      this.getList();
+    },
+
     // 鍙栨秷鎸夐挳
     cancel() {
+      this.indexform = null;
       this.indexopen = false;
       this.reset();
     },
 
     // 琛ㄥ崟閲嶇疆
     reset() {
-      this.form = {
-        userId: undefined,
-        deptId: undefined,
-        userName: undefined,
-        nickName: undefined,
-        password: undefined,
-        phonenumber: undefined,
-        email: undefined,
-        sex: undefined,
-        status: "0",
-        remark: undefined,
-        postIds: [],
-        roleIds: [],
+      this.indexform = {
+        suitWayList: undefined,
+        id: undefined,
+        targetdesc: undefined,
+        ivrLibaTargetTagList: [],
+        targetoptionList: [],
       };
-      this.resetForm("form");
+      // this.resetForm("indexform");
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
@@ -1036,13 +1233,16 @@
     resetQuery() {
       this.dateRange = [];
       this.resetForm("queryForm");
-      this.queryParams.deptId = undefined;
+      this.queryParams = {
+        pageNum: 1,
+        pageSize: 10,
+      };
       this.$refs.tree.setCurrentKey(null);
       this.handleQuery();
     },
     // 澶氶�夋閫変腑鏁版嵁
     handleSelectionChange(selection) {
-      this.ids = selection.map((item) => item.userId);
+      this.ids = selection.map((item) => item.id);
       this.single = selection.length != 1;
       this.multiple = !selection.length;
     },
@@ -1050,6 +1250,25 @@
     handleAdd() {
       this.reset();
       this.title = "鏂板鎸囨爣";
+      this.indexform = {
+        ivrLibaTargetTagList: [],
+        targetoptionList: [],
+      };
+      this.dynamicTags = [];
+      this.testuserList = [
+        {
+          targettype: "1",
+          targetvalue: "",
+          targetregex: "",
+          targetregex2: "",
+          isoperation: 1,
+          picturePath: "",
+          dynamiccruxs: [],
+          nodynamiccruxs: [],
+          dynamiccruxsJson: "",
+          nodynamiccruxsJson: "",
+        },
+      ];
       this.indexopen = true;
       this.measurement = false;
     },
@@ -1057,6 +1276,30 @@
     handleUpdate(row) {
       this.reset();
       this.title = "鎸囨爣璇︽儏";
+      this.indexform = {};
+      this.indexform = row;
+      this.indexform.scriptType = Number(row.scriptType);
+      this.Temporarytype = this.indexform.scriptType;
+      if (!row.targetoptionList[0]) {
+        row.targetoptionList = [
+          {
+            targettype: "1",
+            targetvalue: "",
+            targetregex: "",
+            targetregex2: "",
+            isoperation: 1,
+            orderno: 1,
+            dynamiccruxs: [],
+            nodynamiccruxs: [],
+            dynamiccruxsJson: "",
+            nodynamiccruxsJson: "",
+          },
+        ];
+      }
+      this.dynamicTags = row.ivrLibaTargetTagList.map(this.processElement);
+      this.testuserList = row.targetoptionList;
+      console.log(this.testuserList, "bbbb");
+      this.testvalue = "";
       this.indexopen = true;
       this.measurement = false;
     },
@@ -1075,16 +1318,42 @@
 
     /** 鏇存柊/淇敼鎻愪氦鎸夐挳 */
     submitForm: function () {
-      this.$refs["form"].validate((valid) => {
+      // this.indexform.targetoptionList = this.indexform.targetoptionList.map(
+      //   (res) => {
+      //     res.isoperation = 2;
+      //     return res;
+      //   }
+      // );
+
+      this.$refs["indexform"].validate((valid) => {
+        this.indexform.targetoptionList = this.testuserList.concat(
+          this.targetoptionList
+        );
+        console.log(this.indexform.targetoptionList, "11");
+        this.indexform.targetoptionList.forEach((item) => {
+          if (item.isoperation != 3 && item.targetoptionid) {
+            console.log(item, "item");
+            item.isoperation = 2;
+          } else {
+          }
+        });
         if (valid) {
-          if (this.form.userId != undefined) {
-            updateUser(this.form).then((response) => {
+          this.indexform.optionDesc = this.testuserList
+            .filter((item) => item.isoperation != 3)
+            .map((item) => item.targetvalue)
+            .join(", ");
+          if (!this.indexform.version) this.indexform.version = "1.0";
+          if (this.indexform.id != undefined) {
+            this.indexform.isoperation = 2;
+            gettargetInfoedit(this.indexform).then((response) => {
               this.$modal.msgSuccess("淇敼鎴愬姛");
               this.indexopen = false;
               this.getList();
             });
           } else {
-            addUser(this.form).then((response) => {
+            this.indexform.targettype = "1";
+            this.indexform.isoperation = 1;
+            gettargetInfoedit(this.indexform).then((response) => {
               this.$modal.msgSuccess("鏂板鎴愬姛");
               this.indexopen = false;
               this.getList();
@@ -1093,13 +1362,28 @@
         }
       });
     },
+    // 娴嬭瘯琛ㄥ崟
+    testtagerlist() {
+      if (this.indexform.content) {
+        let data = this.indexform;
+        data.targetoptionList = this.testuserList.concat(this.targetoptionList);
+        testtagerlist(data).then((res) => {
+          this.$modal.msgSuccess("娴嬭瘯鎴愬姛");
+          this.testgovalue = res.msg;
+          this.getList();
+        });
+      } else {
+        this.$modal.msgError("璇峰~鍐欐祴璇曞唴瀹�");
+        return;
+      }
+    },
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
-      const userIds = row.userId || this.ids;
+      const userIds = row.id || this.ids;
       this.$modal
-        .confirm('鏄惁纭鍒犻櫎鐢ㄦ埛缂栧彿涓�"' + userIds + '"鐨勬暟鎹」锛�')
+        .confirm('鏄惁纭鍒犻櫎鎸囨爣鍚嶇О涓�"' + row.targetname + '"鐨勬暟鎹」锛�')
         .then(function () {
-          return delUser(userIds);
+          return deletetarget(userIds);
         })
         .then(() => {
           this.getList();
@@ -1139,6 +1423,29 @@
     vertical-align: bottom;
   }
 }
+.xinz-infs {
+  font-size: 18px;
+  overflow: hidden;
+  text-overflow: ellipsis;
+
+  line-height: 48px;
+
+  .el-tag + .el-tag {
+    margin-left: 10px;
+  }
+  .button-new-tag {
+    margin-left: 10px;
+    height: 32px;
+    line-height: 30px;
+    padding-top: 0;
+    padding-bottom: 0;
+  }
+  .input-new-tag {
+    width: 90px;
+    margin-left: 10px;
+    vertical-align: bottom;
+  }
+}
 .sidecolumn {
   width: 300px;
   min-height: 100vh;
@@ -1147,7 +1454,7 @@
   margin-top: 20px;
   margin: 20px;
   padding: 30px;
-  background: #edf1f7;
+  background: #fff;
   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);
@@ -1175,6 +1482,21 @@
     display: center !important;
   }
 }
+.tsgname {
+  width: 90px;
+  margin-right: 10px;
+  text-align: center;
+  cursor: pointer;
+  height: 40px;
+  line-height: 40px;
+  background: #66c18c;
+  color: #ffff;
+  font-size: 18px;
+  border-radius: 5px;
+}
+.tsgname:hover {
+  background: #20894d;
+}
 .qrcode-dialo {
   text-align: center;
   //   display: flex;
@@ -1194,6 +1516,9 @@
     width: 300px;
     height: 400px;
   }
+}
+.el-select {
+  width: 40%;
 }
 ::v-deep.el-tabs--left,
 .el-tabs--right {
@@ -1228,6 +1553,40 @@
     font-size: 20px;
   }
 }
+::v-deep .el-tree-node__content {
+  display: -webkit-box;
+  display: -ms-flexbox;
+  display: flex;
+  -webkit-box-align: center;
+  -ms-flex-align: center;
+  align-items: center;
+  height: 46px;
+  font-size: 20px;
+  cursor: pointer;
+}
+::v-deep .el-tree {
+  position: relative;
+  cursor: default;
+  border-radius: 5px;
+  background: #eff8fe;
+  color: #606266;
+  border: 1px solid #bbe1fa;
+  // 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);
+}
+::v-deep
+  .el-tree--highlight-current
+  .el-tree-node.is-current
+  > .el-tree-node__content {
+  background-color: #7799fb;
+  color: #fff;
+}
+::v-deep .el-button--mini.is-circle {
+  padding: 7px;
+  margin: 0;
+  color: red;
+}
 .button-text {
   color: rgb(70, 204, 238);
 }

--
Gitblit v1.9.3