From 1104f7c6dbf4a1c6c9d47abf75f9b39ce1f3a5f7 Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期一, 06 四月 2026 17:00:39 +0800
Subject: [PATCH] erp-创建出库单失败不保存处理
---
src/main/java/com/zy/asrs/controller/OpenController.java | 39 ++++++++++++++++++---------------------
1 files changed, 18 insertions(+), 21 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index cd094a2..d48f641 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -555,40 +555,37 @@
// }
// }
- List<OutTaskParam> errorOutOrders = Lists.newArrayList();
- List<OutTaskParam> validOutOrders = Lists.newArrayList();
+ List<OutTaskParam> missingStock = Lists.newArrayList();
+ List<OutTaskParam> missingLoc = Lists.newArrayList();
for (OutTaskParam outTaskParam : params) {
- // TODO:寰呮脯瑭︼紝鏍¢搴瓨淇℃伅锛屼笉瀛樺湪鍓囪繑鍥�
int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", outTaskParam.getPalletId()));
- if (countLoc == 0){
- errorOutOrders.add(outTaskParam);
+ if (countLoc == 0) {
+ missingStock.add(outTaskParam);
continue;
}
- validOutOrders.add(outTaskParam);
- }
- for (OutTaskParam outTaskParam : validOutOrders) {
LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", "F").eq("barcode", outTaskParam.getPalletId()));
if (locMast == null) {
- throw new CoolException("娌℃湁鎵惧埌鎵樼洏鐮�=" + outTaskParam.getPalletId() + "瀵瑰簲鐨勫簱浣�");
+ missingLoc.add(outTaskParam);
}
}
-
- for (OutTaskParam outTaskParam : validOutOrders) {
- R r = openService.outOrder(outTaskParam,validOutOrders.size());
- if (!r.get("code").equals(200)){
- return r;
- }
- }
- if (errorOutOrders.size() > 0) {
- List<String> missingPalletIds = new ArrayList<>(errorOutOrders.size());
- for (OutTaskParam p : errorOutOrders) {
+ if (!missingStock.isEmpty()) {
+ List<String> missingPalletIds = new ArrayList<>(missingStock.size());
+ for (OutTaskParam p : missingStock) {
String pid = p.getPalletId();
missingPalletIds.add(Cools.isEmpty(pid) ? "锛堢┖锛�" : pid);
}
- return R.error("搴撳瓨涓笉瀛樺湪璇ユ墭鐩橈細" + String.join("锛�", missingPalletIds)).add(errorOutOrders);
+ return R.error("搴撳瓨涓笉瀛樺湪璇ユ墭鐩橈細" + String.join("锛�", missingPalletIds)).add(missingStock);
+ }
+ if (!missingLoc.isEmpty()) {
+ List<String> badPalletIds = new ArrayList<>(missingLoc.size());
+ for (OutTaskParam p : missingLoc) {
+ String pid = p.getPalletId();
+ badPalletIds.add(Cools.isEmpty(pid) ? "锛堢┖锛�" : pid);
+ }
+ return R.error("娌℃湁鎵惧埌鎵樼洏鐮佸搴斿簱浣嶏細" + String.join("锛�", badPalletIds)).add(missingLoc);
}
- return R.ok();
+ return openService.outOrderBatch(params);
}
/**
--
Gitblit v1.9.1