|
@@ -5,10 +5,11 @@ import WorkOrderInfo from '../../viewmodel/wms/WorkOrderInfo'
|
|
|
import WmsRequest from '../../common/util/request/WmsRequest'
|
|
|
import RequestParamModel from '../../viewmodel/wms/RequestParamModel'
|
|
|
import {RemindDialog} from "../../component/OrderMaterialsStorageView"
|
|
|
+import WorkOrderMaterialInfo from "../../viewmodel/wms/WorkOrderMaterialInfo"
|
|
|
const TAG = 'OrderInbound';
|
|
|
@Component
|
|
|
export struct OrderMaterialStorageThirdStep {
|
|
|
- @State messages:string[] = []
|
|
|
+ @Prop materialData:WorkOrderMaterialInfo[]=[]
|
|
|
//物料数量
|
|
|
@State materialNum:number= 0
|
|
|
//当前步骤
|
|
@@ -46,10 +47,10 @@ export struct OrderMaterialStorageThirdStep {
|
|
|
label: `BM${itemCode};18*18*1-6;SL50;20240111` //"#gys022#sc022#100#20220929#31"
|
|
|
} as RequestParamModel)
|
|
|
|
|
|
+ // 验证1:检查是否已在扫描列表中
|
|
|
const isDuplicate = this.ScanMaterialList.some(
|
|
|
item => item.materialCode === res.materialCode
|
|
|
);
|
|
|
-
|
|
|
if (isDuplicate) {
|
|
|
console.warn(`物料 ${res.materialCode} 已存在,无法重复添加`);
|
|
|
this.reminds="物料已存在!"
|
|
@@ -59,6 +60,19 @@ export struct OrderMaterialStorageThirdStep {
|
|
|
}, 2000);
|
|
|
return
|
|
|
}
|
|
|
+ // 验证2:检查是否在允许的物料数据中
|
|
|
+ const isValidMaterial = this.materialData.some(
|
|
|
+ item => item.itemCode === res.materialCode
|
|
|
+ );
|
|
|
+ if (!isValidMaterial) {
|
|
|
+ console.warn(`物料 ${res.materialCode} 不在工单物料清单中`);
|
|
|
+ this.reminds = "物料不在清单中!";
|
|
|
+ this.remindController.open();
|
|
|
+ setTimeout(() => {
|
|
|
+ this.remindController.close();
|
|
|
+ }, 2000);
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
// 无重复时,添加到列表
|
|
|
this.ScanMaterialList = [...this.ScanMaterialList, res];
|