diff --git a/src/views/mes/wip/product-storag-request/index.vue b/src/views/mes/wip/product-storag-request/index.vue
index 134bedd..29ec357 100644
--- a/src/views/mes/wip/product-storag-request/index.vue
+++ b/src/views/mes/wip/product-storag-request/index.vue
@@ -169,7 +169,18 @@
-
+
+
+
+ 要求等级: {{ qualityInspectionStatus }}
+
+
+ 未设置等级
+
+
+
@@ -178,6 +189,7 @@
+
@@ -338,6 +350,7 @@ export default {
current: 1,
size: 20
},
+ qualityInspectionStatus: null,
}
},
created() {
@@ -491,8 +504,11 @@ export default {
let dnOrder= "";
// 销售订单行号
let dnOrderSeq = "";
+ let qualityInspectionStatus = null;
let scanListLength = 0;
if (storagRequestList.length > 0) {
+ qualityInspectionStatus = storagRequestList[0].qualityInspectionStatus;
+ scanListLength = storagRequestList.length;
inventoryStatus = storagRequestList[0].storageStatus;
inventorySpecialMarking = storagRequestList[0].inventorySpecialMarking;
dnOrder = storagRequestList[0].dnOrder;
@@ -509,7 +525,8 @@ export default {
"salesOrderControl": this.salesOrderControl,
"dnOrder": dnOrder,
"dnOrderSeq": dnOrderSeq,
- "scanListLength":scanListLength
+ "scanListLength":scanListLength,
+ "qualityInspectionStatus": qualityInspectionStatus, // 传递当前库存等级给后端
};
me.$refs.storagRequestData.clearSelection();
@@ -521,6 +538,25 @@ export default {
}
if (res.data.data) {
let data = res.data.data;
+
+ let currentGrade = null;
+ if (me.storagRequestList.length === 0 && data.length > 0) {
+ // 首次扫描,设置库存等级基准
+ me.qualityInspectionStatus = data[0].qualityInspectionStatus;
+ currentGrade = me.qualityInspectionStatus;
+ } else {
+ currentGrade = me.qualityInspectionStatus;
+ }
+
+ // 验证所有返回条码的库存等级
+ for (let item of data) {
+ if (item.qualityInspectionStatus !== currentGrade) {
+ // 等级不匹配
+ let errorMsg = `库存等级不匹配!当前要求等级: ${currentGrade || '空'},扫描条码等级: ${item.qualityInspectionStatus || '空'}`;
+ return me.$message.error(errorMsg);
+ }
+ }
+
for (let dataObject of data) {
let isDuplicate = false;
// 检查 dataObject.lotNumber 是否已经存在于 storagRequestList 中
@@ -671,8 +707,14 @@ export default {
}
me.$refs.storagRequestData.clearSelection();
setSeq(this.storagRequestList, 'seq');
+
+ // 移除后如果列表为空,重置库存等级
+ if (me.storagRequestList.length === 0) {
+ me.qualityInspectionStatus = null;
+ }
},
+
//删除
doDelete() {
let me = this;
@@ -712,6 +754,10 @@ export default {
me.doSearch('delete');
me.$message.success('删除成功');
me.$refs.storagRequestData.clearSelection();
+ // 删除后检查列表是否为空
+ if (me.storagRequestList.length === 0) {
+ me.qualityInspectionStatus = null;
+ }
}).catch(e => {
console.log(e);
hideLoading();
@@ -764,6 +810,12 @@ export default {
}
}
me.storagRequestList = res.data.data.records;
+ // 设置库存等级(如果列表不为空)
+ if (me.storagRequestList.length > 0) {
+ me.qualityInspectionStatus = me.storagRequestList[0].qualityInspectionStatus;
+ } else {
+ me.qualityInspectionStatus = null;
+ }
me.form.notes = res.data.data.records[0].masterNotes;
me.page.total = res.data.data.total;
me.page.current = res.data.data.current;
@@ -858,6 +910,7 @@ export default {
this.multipleSelection = [];
// 清空列表信息
this.storagRequestList = [];
+ this.qualityInspectionStatus = null; // 重置库存等级
},
handleSizeChange(val) {