From a73254a4bd802934c50d9acc0ad7aa92ccdcd31b Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期三, 25 三月 2026 17:04:00 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java | 83 ++++++++++++++++++++++++++---------------
1 files changed, 52 insertions(+), 31 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index c03e695..aaf9c42 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -772,18 +772,50 @@
List<ErpOrderDetl> detls = dto.getOrderItems();
- // ===== 鍙傛暟鏍¢獙 =====
if (Cools.isEmpty(order.getOrderNo()) || order.getOrderType() == null
|| Cools.isEmpty(order.getWkType()) || order.getBusinessTime() == null
|| order.getCreateTime() == null || Cools.isEmpty(order.getWarehouseId())) {
- throw new CoolException("璁㈠崟鍙傛暟涓嶅畬鏁�");
+ throw new CoolException("璁㈠崟鍙傛暟涓嶅畬鏁达細" +
+ "orderNo=" + order.getOrderNo() +
+ "锛宱rderType=" + order.getOrderType() +
+ "锛寃kType=" + order.getWkType() +
+ "锛寃arehouseId=" + order.getWarehouseId());
}
if (Cools.isEmpty(detls)) {
- throw new CoolException("璁㈠崟鏄庣粏涓虹┖");
+ throw new CoolException("璁㈠崟鏄庣粏涓虹┖锛�" + order.getOrderNo());
}
- // ===== 璋冨閮ㄦ帴鍙� =====
+ for (ErpOrderDetl d : detls) {
+ if (d == null || Cools.isEmpty(d.getLineId())
+ || Cools.isEmpty(d.getMatNr())
+ || d.getAnfme() == null) {
+ String lineId = d != null ? d.getLineId() : null;
+ String matnr = d != null ? d.getMatNr() : null;
+ throw new CoolException("鏄庣粏鍙傛暟涓嶅畬鏁达細" +
+ "orderNo=" + order.getOrderNo() +
+ "锛宭ineId=" + lineId +
+ "锛宮atnr=" + matnr);
+ }
+ }
+
+ if (!erpOrderService.insert(order)) {
+ throw new CoolException("璁㈠崟鎻掑叆澶辫触锛�" + order.getOrderNo());
+ }
+
+ if (order.getId() == null) {
+ throw new CoolException("璁㈠崟鎻掑叆澶辫触锛屾湭杩斿洖orderId锛�" + order.getOrderNo());
+ }
+
+ for (ErpOrderDetl detl : detls) {
+ detl.setOrderId(order.getId());
+ if (!erpOrderDetlService.insert(detl)) {
+ throw new CoolException("璁㈠崟鏄庣粏鎻掑叆澶辫触锛�" +
+ "orderNo=" + order.getOrderNo() +
+ "锛宭ineId=" + detl.getLineId());
+ }
+ }
+
String syncError = null;
String whId = order.getWarehouseId();
Integer orderType = order.getOrderType();
@@ -796,36 +828,17 @@
} else if ("WH3".equals(whId)) {
syncError = syncOrderToWarehouse3(order, detls, orderType);
} else {
- throw new CoolException("鏈壘鍒板搴斾粨搴撶紪鍙�");
+ throw new CoolException("鏈壘鍒板搴斾粨搴撶紪鍙凤細" +
+ "orderNo=" + order.getOrderNo() +
+ "锛寃arehouseId=" + whId);
}
}
if (syncError != null) {
- throw new CoolException(syncError);
- }
-
- // ===== 鎻掑叆涓昏〃 =====
- if (!erpOrderService.insert(order)) {
- throw new CoolException("璁㈠崟鎻掑叆澶辫触");
- }
-
- if (order.getId() == null) {
- throw new CoolException("璁㈠崟鎻掑叆澶辫触锛屾湭杩斿洖orderId");
- }
-
- // ===== 鎻掑叆鏄庣粏锛堣繖閲屽紓甯镐細瑙﹀彂鍥炴粴锛�=====
- for (ErpOrderDetl detl : detls) {
- if (detl == null || Cools.isEmpty(detl.getLineId())
- || Cools.isEmpty(detl.getMatNr())
- || detl.getAnfme() == null) {
- throw new CoolException("鏄庣粏鍙傛暟涓嶅畬鏁�");
- }
-
- detl.setOrderId(order.getId());
-
- if (!erpOrderDetlService.insert(detl)) {
- throw new CoolException("璁㈠崟鏄庣粏鎻掑叆澶辫触");
- }
+ throw new CoolException("澶栭儴鎺ュ彛鍚屾澶辫触锛�" +
+ "orderNo=" + order.getOrderNo() +
+ "锛寃arehouseId=" + whId +
+ "锛屽師鍥�=" + syncError);
}
}
@Override
@@ -847,13 +860,21 @@
for (OrderDto dto : orders) {
String orderNo = dto != null ? dto.getOrderNo() : null;
try {
- // 猸� 璋冪敤鐙珛浜嬪姟鏂规硶
processOneOrder(dto);
successOrders.add(orderNo);
} catch (Exception e) {
Map<String, Object> fail = new HashMap<>();
+ String whId = dto != null ? dto.getWareHouseId() : null;
+ Integer orderType = dto != null ? dto.getOrderType() : null;
fail.put("orderNo", orderNo);
+ fail.put("warehouseId", whId);
+ fail.put("orderType", orderType);
fail.put("msg", e.getMessage());
+ fail.put("exception", e.getClass().getSimpleName());
+ Throwable cause = e.getCause();
+ if (cause != null && cause != e) {
+ fail.put("cause", cause.getClass().getSimpleName() + ":" + cause.getMessage());
+ }
failOrders.add(fail);
}
}
--
Gitblit v1.9.1