ソースを参照

手持-拣货-条码2扫描不兼容bug修复

zhaohuanhuan 11 ヶ月 前
コミット
08ac20d974
1 ファイル変更16 行追加8 行削除
  1. 16 8
      src/views/outbound/picking/list/index.vue

+ 16 - 8
src/views/outbound/picking/list/index.vue

@@ -392,7 +392,7 @@ const _handlerScan=(code)=> {
         //将匹配到的条码放到第一个
         let count=0
         modelLocative.list=modelLocative.list.reduce((list, item) => {
-          if (barcodeToUpperCase(item.barcode) === barcodeToUpperCase(code) && item.operationTime===null) {
+          if ((barcodeToUpperCase(item.barcode) === barcodeToUpperCase(code) || barcodeToUpperCase(item.barcodeAs) === barcodeToUpperCase(code)) && item.operationTime===null) {
             count++
             if (count==1) {
               list.unshift(item)
@@ -404,13 +404,21 @@ const _handlerScan=(code)=> {
           }
           return list;
         }, [])
-      const listMap = modelLocative.list.reduce((acc, item) => {
-        const key = `${barcodeToUpperCase(item.barcode)}-${item.operationTime}`
-        acc[key] = item
-        return acc
-      }, {})
-      const upperCode = barcodeToUpperCase(code);
-      let activeBarcode = listMap[`${upperCode}-null`] || modelLocative.list.find(item => `${barcodeToUpperCase(item.barcode)}` === upperCode)
+        const listMap = modelLocative.list.reduce((acc, item) => {
+          const key = `${barcodeToUpperCase(item.barcode)},${barcodeToUpperCase(item.barcodeAs)}-${item.operationTime}`
+          acc[key] = item
+          return acc
+        }, {})
+        const upperCode = barcodeToUpperCase(code);
+        let barcode = Object.keys(listMap).find(key => {
+          return key.includes(`${upperCode}、`) || key.includes(`${upperCode}-null`);
+        });
+        let activeBarcode=listMap[barcode]
+        if (!activeBarcode) {
+          activeBarcode = modelLocative.list.find(item => {
+            return barcodeToUpperCase(item.barcode) === upperCode || barcodeToUpperCase(item.barcodeAs) === upperCode;
+          });
+        }
         if(activeBarcode.operationTime){
           showConfirmDialog({
             title: '温馨提示',