From 49fcdb7178dffc69769e2fb8cb6a03e204cb1e68 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 31 五月 2024 18:26:42 +0800
Subject: [PATCH] 测试完成

---
 src/views/knowledge/questionbank/index.vue |  145 ++++++++++++++++++++++++++++++++++++------------
 1 files changed, 109 insertions(+), 36 deletions(-)

diff --git a/src/views/knowledge/questionbank/index.vue b/src/views/knowledge/questionbank/index.vue
index a2f1567..75826f5 100644
--- a/src/views/knowledge/questionbank/index.vue
+++ b/src/views/knowledge/questionbank/index.vue
@@ -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"
@@ -37,6 +37,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>
@@ -88,8 +99,11 @@
                   </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="isavailable">
+                <el-select
+                  v-model="queryParams.isavailable"
+                  placeholder="璇烽�夋嫨"
+                >
                   <el-option
                     v-for="item in qyoptions"
                     :key="item.value"
@@ -149,15 +163,22 @@
               :border="true"
               @selection-change="handleSelectionChange"
             >
-              <el-table-column type="selection" width="50" align="center" />
+              <el-table-column
+                type="selection"
+                fixed
+                width="50"
+                align="center"
+              />
               <el-table-column
                 label="搴忓彿"
+                fixed
                 align="center"
                 key="topicid"
                 prop="topicid"
               />
               <el-table-column
                 label="棰樼洰鏍囬"
+                fixed
                 align="center"
                 key="topic"
                 prop="topic"
@@ -165,23 +186,27 @@
                 :show-overflow-tooltip="true"
               />
               <el-table-column
-                label="棰樼洰鍐呭(缂�)"
+                label="棰樼洰鍐呭"
                 align="center"
-                key="nickName"
-                prop="nickName"
+                key="topicContent"
+                prop="topicContent"
                 width="200"
                 :show-overflow-tooltip="true"
               />
 
               /><el-table-column
-                label="閫傜敤鏂瑰紡(缂�)"
+                label="閫傜敤鏂瑰紡"
                 align="center"
-                key="application"
-                prop="application"
+                key="suitway"
+                prop="suitway"
                 width="120"
-              />
+              >
+                <template slot-scope="scope">
+                  <dict-tag :options="mode" :value="scope.row.suitway" />
+                </template>
+              </el-table-column>
               /><el-table-column
-                label="閫傜敤鐤剧梾(缂�)"
+                label="閫傜敤鐤剧梾"
                 align="center"
                 key="Applicable"
                 prop="Applicable"
@@ -200,7 +225,7 @@
                 </template>
               </el-table-column>
               <el-table-column
-                label="鏍囩(缂�)"
+                label="鏍囩"
                 align="center"
                 key="tagList"
                 prop="tagList"
@@ -208,17 +233,26 @@
                 :show-overflow-tooltip="true"
               >
                 <template slot-scope="scope">
-                  <span v-for="item in scope.row.tagList">{{ item }} </span>
+                  <span v-for="item in scope.row.tag.split(',')"
+                    >{{ item }}銆�
+                  </span>
                 </template>
               </el-table-column>
 
               <el-table-column
-                label="鍙敤(缂�)"
+                label="鍙敤"
                 align="center"
-                key="usable"
-                prop="usable"
+                key="isavailable"
+                prop="isavailable"
                 width="120"
-              />
+              >
+                <template slot-scope="scope">
+                  <dict-tag
+                    :options="qyoptions"
+                    :value="scope.row.isavailable"
+                  />
+                </template>
+              </el-table-column>
               <el-table-column
                 label="鏈�杩戜慨鏀�"
                 align="center"
@@ -229,6 +263,7 @@
 
               <el-table-column
                 label="鎿嶄綔"
+                fixed="right"
                 align="center"
                 width="250"
                 class-name="small-padding fixed-width"
@@ -291,21 +326,18 @@
             <el-option
               v-for="item in deptOptions"
               :key="item.id"
-              :label="item.indexAssortName"
+              :label="item.name"
               :value="item.id"
             >
             </el-option>
           </el-select>
         </el-form-item>
         <el-form-item label="璇疯緭鍏ョ被鍒悕绉�">
-          <el-input
-            v-model="classifyform.indexAssortName"
-            autocomplete="off"
-          ></el-input>
+          <el-input v-model="classifyform.name" 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>
@@ -366,6 +398,7 @@
   getissueclassify,
   delissueclassify,
   addissueclassify,
+  editissueclassify,
   getissuelist,
   issueinfo,
   compileissue,
@@ -411,6 +444,7 @@
       // 琛ㄦ牸鏁版嵁
       userList: [],
       // 寮瑰嚭灞傛爣棰�
+      tag: "",
       title: "",
       // 鏄惁鏄剧ず寮瑰嚭灞�
       open: false,
@@ -440,7 +474,7 @@
       illnesslist: [],
       defaultProps: {
         children: "svyLibTopicCategoryList",
-        label: "indexAssortName",
+        label: "name",
       },
       mode: [],
       languagelist: [],
@@ -449,6 +483,7 @@
       queryParams: {
         pageNum: 1,
         pageSize: 10,
+        isavailable: "",
       },
       // 琛ㄥ崟鏍¢獙
       rules: {},
@@ -457,6 +492,7 @@
   watch: {},
   created() {
     this.getList();
+    this.getDeptTree();
     this.mode = store.getters.mode;
     this.languagelist = store.getters.languagelist;
     this.qyoptions = store.getters.usable;
@@ -564,38 +600,49 @@
     getDeptTree() {
       getissueclassify({}).then((res) => {
         this.deptOptions = res.rows;
-        console.log(res);
+        this.dialogFormVisible = false;
       });
     },
 
     // 娣诲姞绫诲埆鏍�
     submitsidecolumn() {
+      if (this.classifyform.id) {
+        editissueclassify(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.classifyform.name &&
         this.radio == "瀛愬垎绫�"
       ) {
         const index = this.deptOptions.findIndex(
           (obj) => obj.id == this.classifyform.pid
         );
         calssvalue = this.deptOptions[index];
-        calssvalue.ivrLibaTemplateAssortList.push(this.classifyform);
-      } else if (this.radio == "涓诲垎绫�" && this.classifyform.indexAssortName) {
+        calssvalue.svyLibTopicCategoryList.push(this.classifyform);
+      } else if (this.radio == "涓诲垎绫�" && this.classifyform.name) {
         this.classifyform.pid = null;
-        this.classifyform.ivrLibaTemplateAssortList = [];
+        this.classifyform.svyLibTopicCategoryList = [];
       } else {
         return this.$modal.msgError("璇峰~鍐欏畬鏁翠俊鎭�");
       }
       addissueclassify(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 + '"鐨勬暟鎹」锛�')
+          .confirm('鏄惁纭鍒犻櫎鍒嗙被椤逛负"' + b.name + '"鐨勬暟鎹」锛�')
           .then(function () {
             return delissueclassify(b.id);
           })
@@ -607,9 +654,7 @@
       } else {
         this.$modal
           .confirm(
-            '鏄惁纭鍒犻櫎涓�绾у垎绫�"' +
-              b.indexAssortName +
-              '"锛熷垹闄ゅ悗鍏朵笅鍒嗙被灏嗗綊绫烩�樻湭鍒嗙被鈥�'
+            '鏄惁纭鍒犻櫎涓�绾у垎绫�"' + b.name + '"锛熷垹闄ゅ悗鍏朵笅鍒嗙被灏嗗綊绫烩�樻湭鍒嗙被鈥�'
           )
           .then(() => {
             return delissueclassify(b.id);
@@ -621,11 +666,21 @@
           .catch(() => {});
       }
     },
+    altertag(a, b) {
+      this.dialogFormVisible = true;
+      if (!b.pid) {
+        this.radio = "涓诲垎绫�";
+      } else {
+        this.radio = "瀛愬垎绫�";
+      }
+      this.classifyform = b;
+      this.dialogFormVisible = true;
+    },
 
     // 绛涢�夎妭鐐�
     filterNode(value, data) {
       if (!value) return true;
-      return data.indexAssortName.indexOf(value) !== -1;
+      return data.name.indexOf(value) !== -1;
     },
     handleNodeClick(data) {
       this.queryParams.assortid = data.id;
@@ -713,7 +768,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);
@@ -844,6 +899,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