Karsa hace 5 meses
padre
commit
0ce903cc2c
Se han modificado 1 ficheros con 36 adiciones y 1 borrados
  1. 36 1
      src/views/knowledge_manage/components/classifyDia.vue

+ 36 - 1
src/views/knowledge_manage/components/classifyDia.vue

@@ -104,7 +104,22 @@
           :rules="formRules"
       >
           <el-form-item label="上级分类" prop="parentClassifyId" v-if="classifyForm.parentClassifyId">
-              <span>{{classifyForm.parentName}}</span>
+              <!-- <span>{{classifyForm.parentName}}</span> -->
+
+              <el-cascader
+                  v-model="classifyForm.parentClassifyId"
+                  :options="parentClassifyOpts"
+                  :props="{
+                    value: 'ClassifyId',
+                    label: 'ClassifyName',
+                    children: 'Child',
+                    emitPath:false,
+                  }"
+                  :show-all-levels="false"
+                  clearable
+                  placeholder="请选择分类"
+                  style="width:80%;"
+              />
           </el-form-item>
           
           <el-form-item label="分类名称" prop="classifyName">
@@ -142,6 +157,13 @@ export default {
       nval && this.getClassify()
     }
   },
+  computed: {
+    parentClassifyOpts() {
+      let arr = _.cloneDeep(this.classifyOptions)
+      this.filterLevelTree(arr,this.classifyForm.parentLevel)
+      return arr
+    }
+  },
   data() {
     return {
       classifyOptions: [],
@@ -153,6 +175,7 @@ export default {
         classifyName: '',
         classifyId: 0,
         parentClassifyId: 0,
+        parentLevel: 0,
       }
     }
   },
@@ -160,6 +183,16 @@ export default {
 
   },
   methods:{
+    filterLevelTree(arr,level) {
+      arr.forEach(_ => {
+        if(_.Level === level) {
+          _.Child = null
+        }else {
+          _.Child ? this.filterLevelTree(_.Child,level) : (_.disabled=true)
+        }
+      })
+    },
+
     async getClassify() {
       const res = await eventInterface.getClassify({
         ResourceType: this.ResourceType
@@ -176,6 +209,7 @@ export default {
         classifyName: '',
         classifyId: 0,
         parentClassifyId: data?data.ClassifyId:0,
+        parentLevel: data?data.Level:0,
         parentName: data?data.ClassifyName:''
       }
       this.isClassifyEditDia = true
@@ -187,6 +221,7 @@ export default {
         classifyName: data.ClassifyName,
         classifyId: data.ClassifyId,
         parentClassifyId: data.ParentId,
+        parentLevel: node.parent.data.Level,
         parentName: node.parent.data.ClassifyName
       }
       this.isClassifyEditDia = true