From 6e54a6688661a05de7c418612cea8b38bbc2dee3 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期一, 14 四月 2025 11:28:26 +0800
Subject: [PATCH] 测试完成

---
 src/views/repositoryai/intention/index.vue |  697 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 463 insertions(+), 234 deletions(-)

diff --git a/src/views/repositoryai/intention/index.vue b/src/views/repositoryai/intention/index.vue
index 1d48246..8e7a41d 100644
--- a/src/views/repositoryai/intention/index.vue
+++ b/src/views/repositoryai/intention/index.vue
@@ -3,7 +3,7 @@
     <!-- 宸︿晶鏍� -->
     <div class="sidecolumn">
       <div class="sidecolumn-top">
-        <div class="top-wj">鎸囨爣绫诲瀷</div>
+        <div class="top-wj">鎸囨爣鍒嗙被</div>
         <div class="top-tj" @click="dialogFormVisible = true">+娣诲姞</div>
       </div>
       <div class="center-ss">
@@ -30,7 +30,7 @@
         >
           <span class="custom-tree-node" slot-scope="{ node, data }">
             <span>{{ node.label }}</span>
-            <span>
+            <span v-if="data.id > 0">
               <el-button
                 type="text"
                 icon="el-icon-delete"
@@ -38,6 +38,17 @@
                 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>
@@ -60,26 +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-select v-model="queryParams.tag" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in dynamicTags"
-                    :key="item.tagid"
-                    :label="item.tagname"
-                    :value="item.tagid"
-                  >
-                  </el-option>
-                </el-select>
+              <el-form-item label="鏍囩鍚嶇О" prop="userName">
+                <el-input
+                  v-model="queryParams.tagName"
+                  placeholder="璇疯緭鍏�"
+                  clearable
+                  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"
@@ -91,11 +100,11 @@
               </el-form-item>
               <el-form-item label="鎸囨爣绫诲瀷" prop="classify">
                 <el-select
-                  v-model="queryParams.classifyvalue"
+                  v-model="queryParams.scriptType"
                   placeholder="璇烽�夋嫨"
                 >
                   <el-option
-                    v-for="(item, index) in qyoptions"
+                    v-for="(item, index) in askvaluetype"
                     :key="item.value"
                     :label="item.label"
                     :value="item.value"
@@ -103,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"
@@ -143,7 +152,7 @@
                   icon="el-icon-plus"
                   size="medium"
                   @click="handleAdd"
-                  v-hasPermi="['system:user:add']"
+
                   >鏂板</el-button
                 >
               </el-col>
@@ -156,7 +165,7 @@
                   size="medium"
                   :disabled="multiple"
                   @click="handleDelete"
-                  v-hasPermi="['system:user:remove']"
+
                   >鍒犻櫎</el-button
                 >
               </el-col>
@@ -170,35 +179,47 @@
               @selection-change="handleSelectionChange"
             >
               <el-table-column type="selection" width="50" align="center" />
-              <el-table-column
+              <!-- <el-table-column
                 label="搴忓彿"
                 fixed
                 align="center"
                 key="id"
                 prop="id"
-              />
-              <el-table-column
-                label="鍊肩被鍨�"
-                fixed
-                align="center"
-                key="isenable"
-                prop="isenable"
-                :show-overflow-tooltip="true"
-              >
-                <template slot-scope="scope">
-                  <dict-tag :options="valuetype" :value="scope.row.isenable" />
-                </template>
-              </el-table-column>
+              /> -->
               <el-table-column
                 label="鎸囨爣鍚嶇О"
+                fixed
                 align="center"
                 key="targetname"
                 prop="targetname"
                 :show-overflow-tooltip="true"
               >
               </el-table-column>
-
               <el-table-column
+                label="鎸囨爣鎻忚堪"
+                align="center"
+                key="targetdesc"
+                prop="targetdesc"
+                :show-overflow-tooltip="true"
+                width="200"
+              />
+              <el-table-column
+                label="鎸囨爣绫诲瀷"
+                align="center"
+                key="valueType"
+                prop="valueType"
+                :show-overflow-tooltip="true"
+              >
+                <template slot-scope="scope">
+                  <dict-tag
+                    :options="valuetypelb"
+                    :value="scope.row.valueType"
+                  />
+                </template>
+              </el-table-column>
+
+
+              <!-- <el-table-column
                 label="姝e父鍊艰寖鍥�"
                 align="center"
                 key="warndown"
@@ -208,22 +229,16 @@
                 <template slot-scope="scope">
                   <span>{{ scope.row.warnup }}~{{ scope.row.warndown }}</span>
                 </template>
-              </el-table-column>
-              <el-table-column
-                label="鎸囨爣鎻忚堪"
+              </el-table-column> -->
+             <el-table-column
+                label="閫傜敤鍦烘櫙"
                 align="center"
-                key="targetdesc"
-                prop="targetdesc"
-                width="200"
-              /><el-table-column
-                label="閫傜敤鏂瑰紡"
-                align="center"
-                key="suitWay"
-                prop="suitWay"
+                key="suitWayList"
+                prop="suitWayList"
                 width="120"
               >
                 <template slot-scope="scope">
-                  <dict-tag :options="mode" :value="scope.row.suitWay" />
+                  <dict-tag :options="mode" :value="scope.row.suitWayList" />
                 </template>
               </el-table-column>
               <el-table-column
@@ -238,7 +253,7 @@
                     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
@@ -259,10 +274,7 @@
                 prop="isAvailable"
               >
                 <template slot-scope="scope">
-                  <dict-tag
-                    :options="qyoptions"
-                    :value="scope.row.isAvailable"
-                  />
+                  <dict-tag :options="usable" :value="scope.row.isAvailable" />
                 </template>
               </el-table-column>
 
@@ -278,12 +290,12 @@
                     size="medium"
                     type="text"
                     @click="handleUpdate(scope.row)"
-                    v-hasPermi="['system:user:edit']"
+
                     ><span class="button-textxg"
                       ><i class="el-icon-edit"></i>淇敼</span
                     ></el-button
                   >
-                  <el-button
+                  <!-- <el-button
                     size="medium"
                     type="text"
                     @click="handlemeasurement(scope.row)"
@@ -291,12 +303,12 @@
                     ><span class="button-textcs"
                       ><i class="el-icon-help"></i>娴嬭瘯</span
                     ></el-button
-                  >
+                  > -->
                   <el-button
                     size="medium"
                     type="text"
                     @click="handleDelete(scope.row)"
-                    v-hasPermi="['system:user:remove']"
+
                     ><span class="button-textsc"
                       ><i class="el-icon-delete"></i>鍒犻櫎</span
                     ></el-button
@@ -319,6 +331,7 @@
         <el-dialog
           :title="title"
           :visible.sync="indexopen"
+          :close-on-click-modal="false"
           width="900px"
           append-to-body
         >
@@ -328,31 +341,24 @@
             :rules="rules"
             label-width="100px"
           >
+            <div class="headline">
+              <div class="basics">鍩虹淇℃伅</div>
+            </div>
+            <el-divider></el-divider>
             <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.targetname"
-                    placeholder="璇疯緭鍏ユ寚鏍囩绫�"
+                    placeholder="璇疯緭鍏ユ寚鏍囧悕绉�"
                     maxlength="40"
                   />
                 </el-form-item>
               </el-col>
               <el-col :span="12">
-                <el-form-item label="鐗堟湰鍙�" prop="deptId">
-                  <el-input
-                    v-model="indexform.version"
-                    placeholder="璇疯緭鍏ユ寚鏍囩绫�"
-                    maxlength="40"
-                  />
-                </el-form-item>
-              </el-col>
-            </el-row>
-            <!-- deptOptions -->
-            <el-row v-if="!measurement">
-              <el-col :span="8">
-                <el-form-item label="鎸囨爣鍒嗙被">
+                <el-form-item label="鎸囨爣鍒嗙被" prop="assortid">
                   <el-select
+                  style="width: 300px;"
                     v-model="indexform.assortid"
                     size="medium"
                     filterable
@@ -373,9 +379,34 @@
                     </el-option-group>
                   </el-select>
                 </el-form-item>
+
+              </el-col>
+            </el-row>
+            <el-row v-if="!measurement">
+              <el-col :span="24">
+                <el-form-item label="鎸囨爣鎻忚堪" prop="targetdesc">
+                  <el-input
+                    v-model="indexform.targetdesc"
+                    placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
+                    id="targetdesc"
+                    @focus="currentInputId = 'targetdesc'"
+                    maxlength="40"
+                  />
+                </el-form-item> </el-col
+            ></el-row>
+            <!-- deptOptions -->
+            <el-row v-if="!measurement">
+              <el-col :span="8">
+                <el-form-item label="鐗堟湰鍙�" prop="deptId">
+                  <el-input
+                    v-model="indexform.version"
+                    placeholder="榛樿1.0"
+                    maxlength="40"
+                  />
+                </el-form-item>
               </el-col>
               <el-col :span="8">
-                <el-form-item label="璇█" prop="deptId">
+                <el-form-item label="璇█" prop="language">
                   <el-select
                     v-model="indexform.language"
                     placeholder="璇烽�夋嫨璇█"
@@ -391,31 +422,23 @@
               </el-col>
               <el-col :span="8">
                 <el-form-item label="鏄惁鍙敤" prop="isAvailable">
-                  <el-select
-                    v-model="indexform.isAvailable"
-                    placeholder="璇烽�夋嫨"
-                  >
-                    <el-option
-                      v-for="index in qyoptions"
-                      :key="index.value"
-                      :label="index.label"
-                      :value="index.value"
-                    ></el-option>
-                  </el-select>
+                  <el-radio-group v-model="indexform.isAvailable">
+                    <el-radio
+                      v-for="(item, index) in usable"
+                      :label="item.value"
+                      >{{ item.label }}</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="targetdesc">
-                  <el-input
-                    v-model="indexform.targetdesc"
-                    placeholder="璇疯緭鍏ユ寚鏍囨弿杩�"
-                    maxlength="40"
-                  />
-                </el-form-item> </el-col
-            ></el-row>
-            <el-form-item label="鏍囩" prop="desc" v-if="!measurement">
+
+            <!-- <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="dynamicTags" v-if="!measurement">
               <div class="xinz-inf">
                 <el-tag
                   :key="tag.tagname"
@@ -455,8 +478,20 @@
             </el-form-item>
             <el-row v-if="!measurement">
               <el-col :span="24">
-                <el-form-item label="鍊肩被鍨�">
-                  <el-radio-group v-model="indexform.isenable">
+                <el-form-item prop="valueType">
+                  <template #label>
+                    缁撴灉绫诲瀷
+                    <el-tooltip
+                      class="item"
+                      effect="light"
+                      content="鏈被鍨嬩负缁撴灉鏀堕泦绫诲瀷锛涢�夐」鐢ㄤ簬鎸囧悜鎬ч鐩鏄惁绛夛紱鏂囨湰閫傜敤澶嶆潅鎯呭喌锛涙暟鍊肩敤浜庢敹闆嗘暟鍊煎瀷鏁版嵁"
+                      placement="top-start"
+                    >
+                      <i class="el-icon-warning-outline"></i>
+                    </el-tooltip>
+                    <!-- 鍦ㄦ爣绛惧悗鎻掑叆绾㈣壊鏄熷彿 -->
+                  </template>
+                  <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>
@@ -464,126 +499,94 @@
                 </el-form-item>
               </el-col></el-row
             >
-            <!-- <el-row v-if="!measurement">
+            <el-row v-if="!measurement">
               <el-col :span="24">
-                <el-form-item label="閫傜敤鐤剧梾" prop="userName">
-                  <el-select
-                    v-model="indexform.suitDisease"
-                    placeholder="璇烽�夋嫨"
+                <el-form-item label="閫傜敤棰樺瀷" prop="scriptType">
+                  <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-select v-model="indexform.suitWay" placeholder="璇烽�夋嫨">
-                    <el-option
-                      v-for="index in mode"
-                      :key="index.value"
-                      :label="index.label"
-                      :value="index.value"
-                    ></el-option>
-                  </el-select>
+                <el-form-item label="閫傜敤鍦烘櫙" prop="suitWayList">
+                  <el-checkbox-group v-model="indexform.suitWayList">
+                    <el-checkbox v-for="item in mode" :label="item.value">{{
+                      item.label
+                    }}</el-checkbox>
+                  </el-checkbox-group>
                 </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="guid"
-                  prop="guid"
-                  width="50"
-                />
-                <el-table-column
-                  label="鎸囨爣閫夐」"
-                  align="center"
-                  key="targetvalue"
-                  prop="targetvalue"
-                  :show-overflow-tooltip="true"
-                >
-                  <template slot-scope="scope">
-                    <el-input
-                      v-model="scope.row.targetvalue"
-                      placeholder="璇疯緭鍏ュ唴瀹�"
-                    ></el-input>
-                  </template>
-                </el-table-column>
-                <el-table-column
-                  label="瑙f瀽瑙勫垯"
-                  align="center"
-                  key="targetregex"
-                  prop="targetregex"
-                  width="460"
-                  :show-overflow-tooltip="true"
-                >
-                  <template slot-scope="scope">
-                    <el-input
-                      v-model="scope.row.targetregex"
-                      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>
+            <div v-if="indexform.scriptType == 1 || indexform.scriptType == 2">
+              <div class="headline">
+                <div class="basics">閫夐」璁剧疆</div>
+              </div>
+              <el-divider></el-divider>
+            </div>
+            <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>
-            <el-card class="box-card" style="margin-bottom: 20px">
-              <Regular :TargetoptionList="testuserList" />
-            </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> -->
+            <div class="headline">
+              <div class="basics">鎸囨爣娴嬭瘯</div>
+            </div>
+            <el-divider></el-divider>
             <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>
@@ -652,7 +655,7 @@
       </span>
     </el-dialog>
     <!-- 娣诲姞绫诲埆寮规 -->
-    <el-dialog title="鏂板绫诲埆" width="30%" :visible.sync="dialogFormVisible">
+    <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>
@@ -681,7 +684,7 @@
         </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>
@@ -693,6 +696,7 @@
   gettargetInfo,
   particulartarget,
   gettargetInfoedit,
+  testtagerlist,
   addtarget,
   deletetarget,
   getillnesslist,
@@ -702,6 +706,7 @@
   addtargetillness,
   selectIvrLibaTargetAssortList,
   addtreeselectIvrLibaTargetAssort,
+  edittreeselectIvrLibaTargetAssort,
   delselectIvrLibaTargetAssort,
 } from "@/api/AiCentre/index";
 import { getToken } from "@/utils/auth";
@@ -730,6 +735,7 @@
       showSearch: true,
       measurement: false,
       languagelist: [],
+      usable: [],
       indexid: null,
       // 鎬绘潯鏁�
       total: 0,
@@ -741,6 +747,8 @@
       radio: "涓诲垎绫�",
       testvalue: "",
       testgovalue: "",
+      creatype: "", //鎸囨爣涓存椂绫诲瀷
+      hasValue: true,
       classifyform: {
         categoryname: "",
       }, //绫诲埆琛ㄥ崟
@@ -777,20 +785,46 @@
       dynamicTags: [],
       illnesslist: [],
       illnesslistapi: [],
-     optionsillness: [],
-      qyoptions: [],
+      optionsillness: [],
       mode: [],
       optionstag: [],
       targetoptionList: [],
+      Temporarytype: "",
 
       // 鏌ヨ鍙傛暟
       queryParams: {
         pageNum: 1,
         pageSize: 10,
       },
+      askvaluetype: [],
 
       // 琛ㄥ崟鏍¢獙
-      rules: {},
+      rules: {
+        targetname: [
+          { required: true, message: "鎸囨爣鍚嶇О涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        assortid: [
+          { required: true, message: "鎸囨爣鍒嗙被涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        language: [
+          { required: true, message: "璇█涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        isAvailable: [
+          { required: true, message: "鍙敤鐘舵�佷笉鑳戒负绌�", trigger: "blur" },
+        ],
+        targetdesc: [
+          { required: true, message: "鎸囨爣鎻忚堪涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        valueType: [
+          { required: true, message: "缁撴灉绫诲瀷涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        scriptType: [
+          { required: true, message: "閫傜敤棰樺瀷涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+        suitWayList: [
+          { required: true, message: "閫傜敤鍦烘櫙涓嶈兘涓虹┖", trigger: "blur" },
+        ],
+      },
     };
   },
   watch: {
@@ -806,9 +840,10 @@
     this.gettabList();
     this.getDeptTree();
     this.mode = store.getters.mode;
-    this.valuetype = store.getters.valuetype;
+    this.askvaluetype = store.getters.askvaluetype;
+    this.valuetypelb = store.getters.valuetypelb;
     this.languagelist = store.getters.languagelist;
-    this.qyoptions = store.getters.usable;
+    this.usable = store.getters.usable;
   },
   methods: {
     /** 鏌ヨ鎸囨爣鍒楄〃 */
@@ -822,7 +857,7 @@
       });
     },
 
-   processElement(element) {
+    processElement(element) {
       // 杩斿洖涓�涓柊鐨勫璞★紝灏唀lement瀵硅薄鐨勫睘鎬soperation璁剧疆涓�1
       return { ...element, isoperation: 1 };
     },
@@ -830,6 +865,10 @@
     getIndexInArray(arr, obj) {
       // 杩斿洖鏁扮粍涓寚瀹氬厓绱犵殑绱㈠紩
       return arr.indexOf(obj);
+    },
+    changeselect(row) {
+      console.log(row);
+      this.hasValue = row.includes("2");
     },
     //鍒犻櫎鍒嗙被
     deletefenlei(row) {
@@ -846,7 +885,65 @@
         this.deletefenl = row.title;
       }
     },
+    // 渚挎嵎鏍囩鎻掑叆濉┖
+    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;
@@ -933,7 +1030,7 @@
       console.log(this.dynamicTags.indexOf(tag));
       const lindex = this.dynamicTags.indexOf(tag);
       this.dynamicTags.splice(this.dynamicTags.indexOf(tag), 1);
-      this.indexform.baseTagList[lindex].isoperation = 3;
+      this.indexform.ivrLibaTargetTagList[lindex].delFlag = 3;
     },
     handleInputConfirm() {
       let tagvalue = {};
@@ -955,9 +1052,9 @@
             };
           }
           console.log(tagvalue);
-          this.indexform.baseTagList.push(tagvalue);
+          this.indexform.ivrLibaTargetTagList.push(tagvalue);
           this.dynamicTags.push(tagvalue);
-          console.log(this.indexform.baseTagList);
+          console.log(this.indexform.ivrLibaTargetTagList);
           console.log(this.dynamicTags);
         });
       }
@@ -973,8 +1070,16 @@
         guid: 1,
         id: this.indexform.id,
         targettype: this.indexform.targettype,
-        targetvalue: "璐",
-        targetregex: "(?!涓�.*|娌�.*|鏈�.*)^.*([璐钩鍑]|璐|璇勫|璇勫),10",
+        isoperation: 1,
+        isabnormal: 0,
+        targetvalue: "",
+        targetregex: "",
+        targetregex2: "",
+        picturePath: "",
+        dynamiccruxs: [],
+        nodynamiccruxs: [],
+        dynamiccruxsJson: "",
+        nodynamiccruxsJson: "",
       };
       this.testuserList.push(objvakue);
       // this.indexform.targetoptionList.push(objvakue);
@@ -986,12 +1091,20 @@
       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鍙橀噺涓�
@@ -1009,13 +1122,21 @@
         return {
           guid: index + 1,
           targetvalue: item.targetvalue,
+          targetregex2: item.targetregex2,
           targetregex: item.targetregex,
-          targetoptionid: item.targetoptionid,
           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,
+          optiondesc: item.optiondesc,
         };
       });
       console.log(this.testuserList);
@@ -1026,6 +1147,7 @@
     getDeptTree() {
       selectIvrLibaTargetAssortList({}).then((res) => {
         this.deptOptions = res.rows;
+        this.dialogFormVisible = false;
       });
     },
     // 绛涢�夎妭鐐�
@@ -1035,6 +1157,15 @@
     },
     // 娣诲姞绫诲埆鏍�
     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 &&
@@ -1090,6 +1221,16 @@
           .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();
@@ -1097,6 +1238,7 @@
 
     // 鍙栨秷鎸夐挳
     cancel() {
+      this.indexform = null;
       this.indexopen = false;
       this.reset();
     },
@@ -1104,13 +1246,13 @@
     // 琛ㄥ崟閲嶇疆
     reset() {
       this.indexform = {
-        suitWay: undefined,
+        suitWayList: undefined,
         id: undefined,
         targetdesc: undefined,
-        baseTagList: [],
+        ivrLibaTargetTagList: [],
         targetoptionList: [],
       };
-      this.resetForm("indexform");
+      // this.resetForm("indexform");
     },
     /** 鎼滅储鎸夐挳鎿嶄綔 */
     handleQuery() {
@@ -1121,7 +1263,7 @@
     resetQuery() {
       this.dateRange = [];
       this.resetForm("queryForm");
-      this.queryParams={
+      this.queryParams = {
         pageNum: 1,
         pageSize: 10,
       };
@@ -1139,17 +1281,24 @@
       this.reset();
       this.title = "鏂板鎸囨爣";
       this.indexform = {
-        baseTagList: [],
+        ivrLibaTargetTagList: [],
         targetoptionList: [],
+        suitWayList: [],
       };
       this.dynamicTags = [];
       this.testuserList = [
         {
-          guid: 1,
-          isoperation: 1,
           targettype: "1",
           targetvalue: "",
           targetregex: "",
+          targetregex2: "",
+          isoperation: 1,
+          isabnormal:0,
+          picturePath: "",
+          dynamiccruxs: [],
+          nodynamiccruxs: [],
+          dynamiccruxsJson: "",
+          nodynamiccruxsJson: "",
         },
       ];
       this.indexopen = true;
@@ -1158,11 +1307,31 @@
     /** 淇敼鎸夐挳鎿嶄綔 */
     handleUpdate(row) {
       this.reset();
-      console.log(row);
       this.title = "鎸囨爣璇︽儏";
+      this.indexform = {};
       this.indexform = row;
-      this.dynamicTags = row.baseTagList.map(this.processElement);
+      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;
     },
@@ -1181,12 +1350,31 @@
 
     /** 鏇存柊/淇敼鎻愪氦鎸夐挳 */
     submitForm: function () {
-      // this.indexform.targetoptionList=[]
+      // 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) {
+          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) => {
@@ -1205,6 +1393,21 @@
           }
         }
       });
+    },
+    // 娴嬭瘯琛ㄥ崟
+    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) {
@@ -1311,6 +1514,29 @@
     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;
+}
+.headline {
+  display: flex;
+  justify-content: space-between;
+  font-size: 20px;
+  border-left: 4px solid #41a1be;
+  padding-left: 5px;
+  margin: 15px 0;
+}
 .qrcode-dialo {
   text-align: center;
   //   display: flex;
@@ -1375,20 +1601,23 @@
   font-size: 20px;
   cursor: pointer;
 }
-::v-deep .el-tree{
+::v-deep .el-tree {
   position: relative;
-    cursor: default;
-    border-radius: 5px;
-    background: #EFF8FE;
-    color: #606266;
+  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);
-
+  // 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-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;

--
Gitblit v1.9.3