From 41b1f5280255ac539e40d4cd794532ae1829ce17 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期四, 01 八月 2024 18:25:36 +0800
Subject: [PATCH] 测试完成

---
 src/views/repositoryai/templateku/index.vue |  281 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 214 insertions(+), 67 deletions(-)

diff --git a/src/views/repositoryai/templateku/index.vue b/src/views/repositoryai/templateku/index.vue
index 0cca167..75e0cd4 100644
--- a/src/views/repositoryai/templateku/index.vue
+++ b/src/views/repositoryai/templateku/index.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="Questionnairemanagement">
     <!-- 宸︿晶鏍� -->
-    <div class="sidecolumn" v-show="topactiveName == 'Local'">
+    <div class="sidecolumn">
       <div class="sidecolumn-top">
         <div class="top-wj">妯$増绫诲瀷</div>
         <div class="top-tj" @click="dialogFormVisible = true">+娣诲姞</div>
@@ -29,7 +29,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"
@@ -39,12 +39,23 @@
               >
               </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>
     <!-- 鍙充晶鏁版嵁 -->
-    <div :class="topactiveName == 'Local' ? 'leftvlue' : 'leftvlues'">
+    <div class="leftvlue">
       <div class="leftvlue-bg">
         <el-row :gutter="20">
           <!--鐢ㄦ埛鏁版嵁-->
@@ -57,50 +68,35 @@
               v-show="showSearch"
               label-width="98px"
             >
-              <el-form-item label="妯$増鏍囬" prop="userName">
+              <el-form-item label="妯$増鏍囬" prop="templateName">
                 <el-input
-                  v-model="queryParams.userName"
+                  v-model="queryParams.templateName"
                   placeholder="璇疯緭鍏�"
                   clearable
                   style="width: 200px"
                   @keyup.enter.native="handleQuery"
                 />
               </el-form-item>
-              <el-form-item label="閫傜敤绉戝" prop="status">
-                <el-select v-model="queryParams.status" placeholder="璇烽�夋嫨">
+              <el-form-item label="閫傜敤闄㈠尯" prop="region">
+                <el-select
+                  v-model="queryParams.campus"
+                  size="medium"
+                  multiple
+                  filterable
+                  placeholder="璇烽�夋嫨鍒嗙被"
+                >
                   <el-option
-                    v-for="item in languagelist"
-                    :key="item.value"
+                    class="ruleFormaa"
+                    v-for="item in courtyardlist"
+                    :key="item.label"
                     :label="item.label"
-                    :value="item.value"
+                    :value="item.label"
                   >
                   </el-option>
                 </el-select>
               </el-form-item>
-              <el-form-item label="鍙敤鐘舵��" prop="status">
-                <el-select v-model="queryParams.status" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in qyoptions"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item label="閫傜敤鏂瑰紡" prop="status">
-                <el-select v-model="queryParams.status" placeholder="璇烽�夋嫨">
-                  <el-option
-                    v-for="item in languagelist"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value"
-                  >
-                  </el-option>
-                </el-select>
-              </el-form-item>
-              <el-form-item label="鍐呭褰㈠紡" prop="status">
-                <el-select v-model="queryParams.status" placeholder="璇烽�夋嫨">
+              <el-form-item label="鍙敤鐘舵��" prop="usestate">
+                <el-select v-model="queryParams.usestate" placeholder="璇烽�夋嫨">
                   <el-option
                     v-for="item in qyoptions"
                     :key="item.value"
@@ -157,16 +153,22 @@
             </el-row>
             <!-- 鏍囧噯妯$増 -->
             <el-table
-              v-if="topactiveName == 'Local'"
               v-loading="loading"
               :data="userList"
               :border="true"
               @selection-change="handleSelectionChange"
             >
               <el-table-column type="selection" width="50" align="center" />
-              <el-table-column label="搴忓彿" align="center" key="id" prop="id" />
+              <el-table-column
+                label="搴忓彿"
+                fixed
+                align="center"
+                key="id"
+                prop="id"
+              />
               <el-table-column
                 label="妯$増鍚嶇О"
+                fixed
                 align="center"
                 key="templateName"
                 prop="templateName"
@@ -202,22 +204,6 @@
               </el-table-column>
 
               <el-table-column
-                label="閫傜敤绉戝"
-                align="center"
-                key="deptNames"
-                prop="deptNames"
-                width="120"
-              >
-                <template slot-scope="scope">
-                  <div v-if="scope.row.deptNames">
-                    <span v-for="item in scope.row.deptNames.split(",")"
-                      >{{ item }}
-                    </span>
-                  </div>
-                  <div v-else>''</div>
-                </template>
-              </el-table-column>
-              <el-table-column
                 label="鏍囩"
                 align="center"
                 key="labelInfo"
@@ -225,15 +211,15 @@
                 width="160"
                 :show-overflow-tooltip="true"
               >
-                <template slot-scope="scope" >
+                <template slot-scope="scope">
                   <div v-if="scope.row.labelInfo">
-                    <span v-for="item in JSON.parse(scope.row.labelInfo)"
-                      >{{ item.tagname }}</span>
+                    <span v-for="item in JSON.parse(scope.row.labelInfo)">{{
+                      item.tagname
+                    }}</span>
                   </div>
                   <div v-else>
                     <span>鏃�</span>
                   </div>
-                  </span>
                 </template>
               </el-table-column>
               <el-table-column
@@ -244,9 +230,11 @@
                 width="160"
                 :show-overflow-tooltip="true"
               >
-                <template slot-scope="scope"  >
+                <template slot-scope="scope">
                   <div v-if="scope.row.campus">
-                    <span v-for="item in JSON.parse(scope.row.campus)">{{ item.label }} </span>
+                    <span v-for="item in scope.row.campus.split(',')"
+                      >{{ item }}銆�
+                    </span>
                   </div>
                   <div v-else>
                     <span>鏃�</span>
@@ -290,6 +278,7 @@
 
               <el-table-column
                 label="鎿嶄綔"
+                fixed="right"
                 align="center"
                 width="200"
                 class-name="small-padding fixed-width"
@@ -339,11 +328,16 @@
       </div>
     </div>
     <!-- 娣诲姞绫诲埆寮规 -->
-    <el-dialog title="鏂板绫诲埆" width="30%" :visible.sync="dialogFormVisible">
+    <el-dialog
+      :title="title"
+      width="30%"
+      :close-on-click-modal="false"
+      :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-button label="涓诲垎绫�" v-show="zifon"></el-radio-button>
+          <el-radio-button label="瀛愬垎绫�" v-show="zufon"></el-radio-button>
         </el-radio-group>
       </div>
       <el-divider></el-divider>
@@ -367,7 +361,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>
@@ -419,6 +413,69 @@
         <el-button type="primary" @click="confirmillness">纭� 瀹�</el-button>
       </span>
     </el-dialog>
+    <!-- 闅忚棰樼洰棰勮 -->
+    <el-dialog title="闅忚棰樼洰棰勮" :visible.sync="topicVisible" width="50%">
+      <div class="preview-left">
+        <!-- 鍗曢�� -->
+        <div
+          class="scriptTopic-dev"
+          v-for="item in topicform.ivrLibaTemplateScriptVOList"
+          :key="item.targetid"
+          v-if="item.valueType == 1"
+        >
+          <div class="dev-text">
+            {{ item.targetid }}銆乕鍗曢�塢<span>{{ item.scriptContent }}</span>
+          </div>
+          <div class="dev-xx">
+            <el-radio-group v-model="item.remark">
+              <el-radio
+                v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
+                :key="index"
+                :label="index"
+                >{{ items.targetvalue }}</el-radio
+              >
+            </el-radio-group>
+          </div>
+        </div>
+        <!-- 澶氶�� -->
+        <div
+          class="scriptTopic-dev"
+          v-for="item in topicform.ivrLibaTemplateScriptVOList"
+          :key="item.targetid"
+          v-if="item.valueType == 2"
+        >
+          <div class="dev-text">
+            {{ item.targetid }}銆乕澶氶�塢<span>{{ item.scriptContent }}</span>
+          </div>
+          <div class="dev-xx">
+            <el-checkbox-group v-model="item.remark">
+              <el-checkbox
+                v-for="(items, index) in item.ivrLibaScriptTargetoptionList"
+                :key="index"
+                :label="index"
+              >
+                {{ items.targetvalue }}
+              </el-checkbox>
+            </el-checkbox-group>
+          </div>
+        </div>
+        <!-- 濉┖ -->
+        <div
+          class="scriptTopic-dev"
+          v-for="item in topicform.ivrLibaTemplateScriptVOList"
+          :key="item.targetid"
+          v-if="item.valueType == 3"
+        >
+          <div class="dev-text">
+            {{ item.targetid }}銆乕濉┖]<span>{{ item.scriptContent }}</span>
+          </div>
+          <div class="dev-xx">
+            <el-input placeholder="璇疯緭鍏ョ瓟妗�" v-model="radioas" clearable>
+            </el-input>
+          </div>
+        </div>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -429,16 +486,19 @@
   getFollowupclassify,
   delFollowupclassify,
   addFollowupclassify,
+  editFollowupclassify,
   addtargetillness,
   getvFollowup,
   compileFollowup,
   delFollowupinfo,
+  getverbaltricklist,
   Followupinfo,
   getFollowuplist,
   getillnesslist,
   illnesslistget,
   getillness,
 } from "@/api/AiCentre/index";
+import { listDept } from "@/api/system/dept";
 export default {
   name: "templateku",
   data() {
@@ -458,6 +518,8 @@
       total: 0,
       namequestionnaire: "",
       haoquestionnaire: "",
+      topicform: {},
+      topicVisible: false,
       idds: "",
       amendtag: false, //鏄惁淇敼绫诲埆
       dialogFormVisible: false, //淇敼娣诲姞绫诲埆寮规
@@ -469,7 +531,7 @@
       // 琛ㄦ牸鏁版嵁
       userList: [],
       // 寮瑰嚭灞傛爣棰�
-      title: "",
+      title: "鏂板绫诲埆",
       // 鏄惁鏄剧ず寮瑰嚭灞�
       open: false,
       // 鏃ユ湡鑼冨洿
@@ -500,6 +562,8 @@
       indexid: null,
       inputValue: "",
       radio: "涓诲垎绫�",
+      zufon: true,
+      zifon: true,
       inputVisible: false,
       illnessVisible: false, //鎸囨爣鐤剧梾寮规
       deptOptions: [],
@@ -510,9 +574,12 @@
         children: "ivrLibaTemplateAssortList",
         label: "indexAssortName",
       },
+      deptList: [],
+      props: { multiple: true, value: "deptId", label: "deptName" },
       mode: [],
       languagelist: [],
       qyoptions: [],
+      courtyardlist: [],
     };
   },
   watch: {
@@ -524,10 +591,13 @@
   created() {
     this.getList();
     this.getDeptTree();
+    this.zufon = true;
+    this.zifon = true;
     this.mode = store.getters.mode;
     this.languagelist = store.getters.languagelist;
     this.qyoptions = store.getters.usable;
     this.precedencetype = store.getters.precedencetype;
+    this.courtyardlist = store.getters.courtyardlist;
   },
 
   methods: {
@@ -538,6 +608,11 @@
         console.log(this.userList);
         this.userList = res.rows;
         this.total = res.total;
+
+        console.log(this.userList[0].campus.split(","));
+      });
+      listDept({ pageNum: 1, pageSize: 10 }).then((response) => {
+        this.deptList = this.handleTree(response.data, "deptId");
       });
     },
 
@@ -602,7 +677,12 @@
       this.multiple = !selection.length;
     },
     /** 鏂板鎸夐挳鎿嶄綔 */
-    handleAdd() {},
+    handleAdd() {
+      this.$router.push({
+        path: "/knowledge/templateku/configurat/",
+        query: { id: null, assortid: this.queryParams.assortid },
+      });
+    },
 
     /** 鍒犻櫎鎸夐挳鎿嶄綔 */
     handleDelete(row) {
@@ -629,12 +709,21 @@
     getDeptTree() {
       getFollowupclassify({}).then((res) => {
         this.deptOptions = res.rows;
-        console.log(res);
+        this.dialogFormVisible = false;
       });
     },
 
     // 娣诲姞绫诲埆鏍�
     submitsidecolumn() {
+      if (this.classifyform.id) {
+        editFollowupclassify(this.classifyform).then((res) => {
+          this.getDeptTree();
+          this.$modal.msgSuccess("淇敼鎴愬姛");
+          this.classifyform = {};
+          this.dialogFormVisible = false;
+        });
+        return;
+      }
       let calssvalue = {};
       if (
         this.classifyform.pid &&
@@ -655,6 +744,8 @@
       addFollowupclassify(this.classifyform).then((res) => {
         this.getDeptTree();
         this.$modal.msgSuccess("鏂板鎴愬姛");
+        this.classifyform = {};
+        this.dialogFormVisible = false;
       });
     },
     remove(a, b) {
@@ -685,6 +776,28 @@
           })
           .catch(() => {});
       }
+    },
+    altertag(a, b) {
+      this.dialogFormVisible = true;
+      if (!b.pid) {
+        this.radio = "涓诲垎绫�";
+        this.title = "淇敼涓诲垎绫�";
+        this.zufon = false;
+      } else {
+        this.radio = "瀛愬垎绫�";
+        this.title = "淇敼瀛愬垎绫�";
+        this.zifon = false;
+      }
+      this.classifyform = b;
+      this.dialogFormVisible = true;
+    },
+    // 棰勮
+    preview(row) {
+      getvFollowup({ id: row.id }).then((res) => {
+        this.topicform = res.data;
+        console.log(this.topicform);
+        this.topicVisible = true;
+      });
     },
 
     // 绛涢�夎妭鐐�
@@ -783,8 +896,8 @@
   //   display: flex;
   margin-top: 20px;
   margin: 20px;
-  padding: 30px;
-  background: #edf1f7;
+  padding: 20px;
+  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);
@@ -918,6 +1031,22 @@
     font-size: 20px;
   }
 }
+.preview-left {
+  margin: 20px;
+  //   margin: 20px;
+  padding: 30px;
+  background: #ffff;
+  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);
+  .scriptTopic-dev {
+    margin-bottom: 25px;
+    font-size: 20px !important;
+    .dev-text {
+      margin-bottom: 10px;
+    }
+  }
+}
 ::v-deep .el-tree-node__content {
   display: -webkit-box;
   display: -ms-flexbox;
@@ -929,6 +1058,24 @@
   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;

--
Gitblit v1.9.3