فهرست منبع

fix(仓库管理): 修复货位编号重复校验逻辑

liujt 1 ماه پیش
والد
کامیت
da805a1a0b
1فایلهای تغییر یافته به همراه19 افزوده شده و 6 حذف شده
  1. 19 6
      src/views/warehouseManagement/warehouseDefinition/add.vue

+ 19 - 6
src/views/warehouseManagement/warehouseDefinition/add.vue

@@ -856,6 +856,11 @@
           }
         },
         areaLocationRules: {
+          goodsAllocationCode: {
+            required: true,
+            message: '请输入货位编号',
+            trigger: 'blur'
+          },
           code: {
             required: true,
             message: '请输入货位编号',
@@ -1637,13 +1642,21 @@
         // }
         
         let codeS=this.areaForm.allocationReqList?.map(item=>{
-          return item.reservoirAreaCode+'_'+item.goodsShelvesCode+'_'+item.goodsAllocationCode
+          return item.reservoirAreaCode+'_'+item.warehouseAreaGoodsCode+'_'+item.goodsAllocationCode
         })
-        if(codeS){
-          codeS=Array.from(new Set(codeS)) 
-        }
-        if(codeS?.length!=this.areaForm.allocationReqList?.length){
-          return this.$message.error('货位编号不能重复!');
+        // 找出重复的货位编号
+        const duplicateCodes = [];
+        const codeCount = {};
+        codeS?.forEach(code => {
+          codeCount[code] = (codeCount[code] || 0) + 1;
+          if (codeCount[code] === 2) {
+            duplicateCodes.push(code);
+          }
+        });
+
+        console.log('duplicateCodes', this.areaForm.allocationReqList, codeS, duplicateCodes);
+        if(duplicateCodes.length > 0){
+          return this.$message.error(`货位编号重复:${duplicateCodes.join('、')}!`);
         }