zhangjie 3 년 전
부모
커밋
09aeecfd56

+ 4 - 0
src/modules/analysis/components/ModifyAnalysisBatchPaper.vue

@@ -9,6 +9,7 @@
       append-to-body
       fullscreen
       @opened="visibleChange"
+      @closed="dialogClosed"
     >
       <div class="part-box part-box-filter part-box-flex">
         <el-form
@@ -148,6 +149,9 @@ export default {
       this.curRow = {};
       this.toPage(1);
     },
+    dialogClosed() {
+      this.$emit("closed");
+    },
     cancel() {
       this.modalIsShow = false;
     },

+ 15 - 2
src/modules/analysis/components/baseConfig/DimensionAbilityList.vue

@@ -91,6 +91,7 @@ export default {
       dataList: [],
       curRow: {},
       loading: false,
+      structSelectedDimension: [],
       // upload
       uploadUrl: "/api/admin/grade/paper/dimension/import",
       uploadData: {},
@@ -98,17 +99,25 @@ export default {
     };
   },
   computed: {
-    ...mapState("baseConfigs", ["dimensionList", "baseInfo"]),
+    ...mapState("baseConfigs", ["dimensionList", "structList", "baseInfo"]),
     dataListLastInd() {
       return this.dataList.length - 1;
     }
   },
   mounted() {
+    this.initStructSelectedDimension();
     this.initData();
   },
   methods: {
     ...mapMutations("baseConfigs", ["setDimensionList"]),
     ...mapActions("baseConfigs", ["fetchDimensionList"]),
+    initStructSelectedDimension() {
+      const dimensions = this.structList.map(item => item.abilityDimension);
+      if (!dimensions.length) return;
+
+      const dimSet = new Set(dimensions.join().split(","));
+      this.structSelectedDimension = Array.from(dimSet);
+    },
     initData() {
       this.dataList = this.dimensionList
         .filter(item => item.dimensionType === "ABILITY")
@@ -175,7 +184,11 @@ export default {
       this.curRow = row;
       this.$refs.ModifyAbilityDim.open();
     },
-    toDelete({ $index }) {
+    toDelete({ row, $index }) {
+      if (this.structSelectedDimension.includes(row.codePrimary)) {
+        this.$message.error("蓝图中已选择当前维度,禁止删除!");
+        return;
+      }
       this.dataList.splice($index, 1);
       this.updateChange();
     },

+ 15 - 2
src/modules/analysis/components/baseConfig/DimensionKnowledgeList.vue

@@ -94,6 +94,7 @@ export default {
       dataList: [],
       curRow: {},
       loading: false,
+      structSelectedDimension: [],
       // upload
       uploadUrl: "/api/admin/grade/paper/dimension/import",
       uploadData: {},
@@ -101,14 +102,22 @@ export default {
     };
   },
   computed: {
-    ...mapState("baseConfigs", ["dimensionList", "baseInfo"])
+    ...mapState("baseConfigs", ["dimensionList", "structList", "baseInfo"])
   },
   mounted() {
+    this.initStructSelectedDimension();
     this.initData();
   },
   methods: {
     ...mapMutations("baseConfigs", ["setDimensionList"]),
     ...mapActions("baseConfigs", ["fetchDimensionList"]),
+    initStructSelectedDimension() {
+      const dimensions = this.structList.map(item => item.knowledgeDimension);
+      if (!dimensions.length) return;
+
+      const dimSet = new Set(dimensions.join().split(","));
+      this.structSelectedDimension = Array.from(dimSet);
+    },
     initData() {
       this.dataList = this.dimensionList
         .filter(item => item.dimensionType === "KNOWLEDGE")
@@ -192,7 +201,11 @@ export default {
       this.curRow = row;
       this.$refs.ModifyKnowledgeDim.open();
     },
-    toDelete({ $index }) {
+    toDelete({ row, $index }) {
+      if (this.structSelectedDimension.includes(row.codeSecond)) {
+        this.$message.error("蓝图中已选择当前维度,禁止删除!");
+        return;
+      }
       this.dataList.splice($index, 1);
       this.sortDataList();
       this.updateChange();

+ 2 - 4
src/modules/analysis/views/AnalysisBatchManage.vue

@@ -77,10 +77,7 @@
               >提交分析数据</el-button
             >
             <el-button
-              v-if="
-                scope.row.status === 'PUSH_GRADE_BATCH' ||
-                  scope.row.status === 'SETTING_GRADE_PAPER_PARAM'
-              "
+              v-if="scope.row.status !== 'SETTING_GRADE_PAPER'"
               class="btn-primary"
               type="text"
               :disabled="loading"
@@ -120,6 +117,7 @@
     <modify-analysis-batch-paper
       ref="ModifyAnalysisBatchPaper"
       :instance="curRow"
+      @closed="getList"
     ></modify-analysis-batch-paper>
     <!-- 数据导入 -->
     <import-file