Преглед изворни кода

记录规则功能修改完成

lucw пре 8 месеци
родитељ
комит
a7a2c5d043
1 измењених фајлова са 65 додато и 20 уклоњено
  1. 65 20
      src/views/rulesManagement/releaseRules/components/permitAdd.vue

+ 65 - 20
src/views/rulesManagement/releaseRules/components/permitAdd.vue

@@ -16,6 +16,7 @@
       :rules="formRules"
       ref="formRef"
       v-loading="loading"
+      :disabled="type == 'detail'"
     >
       <el-row style="margin-bottom: 10px">
         <el-col :span="8">
@@ -114,7 +115,15 @@
               @click.native="openProduceTaskDialog"
               readonly
               placeholder="关联工序"
+              clearable
             >
+              <i
+                v-if="formData.produceTaskConfigBatchSavePo.produceTaskName"
+                slot="suffix"
+                class="el-input__icon el-icon-close"
+                size="24"
+                @click.stop="clearProductTask"
+              ></i>
             </el-input>
           </el-form-item>
         </el-col>
@@ -201,6 +210,16 @@
             :needPage="false"
             row-key="id"
           >
+            <template v-slot:action="{ row }">
+              <el-link
+                type="danger"
+                :underline="false"
+                icon="el-icon-delete"
+                @click="productColumnsDeleteRow(row)"
+              >
+                删除
+              </el-link>
+            </template>
           </ele-pro-table>
         </div>
       </template>
@@ -627,6 +646,15 @@
           {
             prop: 'packingUnit',
             label: '包装单位'
+          },
+          {
+            columnKey: 'action',
+            label: '操作',
+            width: 110,
+            align: 'center',
+            resizable: false,
+            slot: 'action',
+            fixed: 'right'
           }
         ];
       }
@@ -778,8 +806,8 @@
           data.produceTaskConfigBatchSavePo = {
             addPOs: [],
             deletedIds: null,
-            produceTaskId: data.produceTaskConfigs.produceTaskId,
-            produceTaskName: data.produceTaskConfigs.produceTaskName,
+            produceTaskId: data.produceTaskConfigs[0]?.produceTaskId,
+            produceTaskName: data.produceTaskConfigs[0]?.produceTaskName,
             updatePOs: []
           };
 
@@ -1018,8 +1046,9 @@
           'yyyy-MM-dd HH:mm:ss'
         );
 
-        if (body.produceTaskConfigBatchSavePo.produceTaskId) {
-          if (this.type == 'edit') {
+        if (this.type == 'edit' && body.produceTaskConfigs[0]?.id) {
+          if (body.produceTaskConfigBatchSavePo.produceTaskId) {
+            // 修改工序
             body.produceTaskConfigBatchSavePo.updatePOs.push({
               id: body.produceTaskConfigs[0]?.id,
               executeMethod: 2,
@@ -1029,22 +1058,17 @@
                 body.produceTaskConfigBatchSavePo.produceTaskName,
               reportWorkType: this.formData.reportWorkType
             });
-            body.produceTaskConfigBatchSavePo.addPOs = [];
-            // 如果更换了工序,则把原来的工序删除
-            if (
-              this.formData.produceTaskConfigs &&
-              this.formData.produceTaskConfigs[0]
-            ) {
-              if (
-                this.formData.produceTaskConfigs[0].produceTaskId !=
-                body.produceTaskConfigBatchSavePo.produceTaskId
-              ) {
-                body.produceTaskConfigBatchSavePo.deletedIds = [
-                  this.formData.produceTaskConfigs[0].id
-                ];
-              }
-            }
           } else {
+            // 删除工序
+            body.produceTaskConfigBatchSavePo.deletedIds = [
+              this.formData.produceTaskConfigs[0].id
+            ];
+          }
+
+          body.produceTaskConfigBatchSavePo.addPOs = [];
+        } else {
+          // 新增工序
+          if (body.produceTaskConfigBatchSavePo.produceTaskId) {
             body.produceTaskConfigBatchSavePo.addPOs.push({
               executeMethod: 2,
               itemType: 2,
@@ -1053,8 +1077,9 @@
                 body.produceTaskConfigBatchSavePo.produceTaskName,
               reportWorkType: this.formData.reportWorkType
             });
-            body.produceTaskConfigBatchSavePo.updatePOs = [];
           }
+
+          body.produceTaskConfigBatchSavePo.updatePOs = [];
         }
 
         return body;
@@ -1130,6 +1155,12 @@
           this.formData.details.splice(index, 1);
         }
       },
+      // 删除关联产品
+      productColumnsDeleteRow(row) {
+        this.formData.categories = this.formData.categories.filter((i) => {
+          return i.id !== row.id;
+        });
+      },
       handleAdd(row) {
         this.currentRow = row;
         this.$refs.toolModalRef.open(row.toolCodes);
@@ -1269,6 +1300,20 @@
             };
           });
         }
+      },
+      clearProductTask() {
+        // 如果有执行中的记录 则不能清空
+        if (
+          this.formData.produceTaskConfigs &&
+          this.formData.produceTaskConfigs[0] &&
+          this.formData.produceTaskConfigs[0].isUsing
+        ) {
+          return this.$message.warning(
+            '当前规则关联的工序有执行中的记录,不能更改!'
+          );
+        }
+        this.formData.produceTaskConfigBatchSavePo.produceTaskId = '';
+        this.formData.produceTaskConfigBatchSavePo.produceTaskName = '';
       }
     }
   };