From d3c7820992ccfb3296ec031a7c019a4300347b83 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期二, 28 十月 2025 15:30:25 +0800
Subject: [PATCH] 完善erp对接2.0
---
src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java | 74 +++++++++++++++++++++---------------
1 files changed, 43 insertions(+), 31 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
index 4b978d1..0d57944 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
@@ -36,6 +36,8 @@
private DocTypeService docTypeService;
@Autowired
private WrkDetlService wrkDetlService;
+ @Autowired
+ private Order1ServiceImpl order1Service;
@Override
public Order selectByNo(String orderNo) {
@@ -58,11 +60,39 @@
@Override
public void checkComplete(String orderNo) {
- Order order = this.selectByNo(orderNo);
- if (order.getSettle() >= 4L) {
+ String orderNo1= orderNo.split("-")[0];
+ //涓昏〃
+ Order order1 = this.selectByNo(orderNo1);
+
+ //瀛愯〃鏇存柊鐘舵��
+ DocType docType = docTypeService.selectById(order1.getDocType());
+ if (!Cools.isEmpty(docType)&&docType.getPakout()==1) {
+ Order1 order11 = order1Service.selectByNo(orderNo);
+ if (Cools.isEmpty(order11)||order11.getSettle()>4) {
+ return;
+ }
+
+ List<OrderDetl> orderDetls1 = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order1.getId()));
+ boolean complete1 = true;
+ for (OrderDetl orderDetl : orderDetls1) {
+ if (orderDetl.getAnfme() > orderDetl.getQty()) {
+ complete1 = false;
+ break;
+ }
+ }
+ if (complete1) {
+
+ if (!order1Service.updateSettle(order11.getId(), 4L, null)) {
+ throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order1.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");
+ }
+ }
+ }
+
+ //涓昏〃鏇存柊鐘舵��
+ if (Cools.isEmpty(order1) || order1.getSettle() >= 4L) {
return;
}
- List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()));
+ List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order1.getId()));
boolean complete = true;
for (OrderDetl orderDetl : orderDetls) {
if (orderDetl.getAnfme() > orderDetl.getQty()) {
@@ -71,34 +101,12 @@
}
}
if (complete) {
- // 鍑哄簱璁㈠崟閲嶆柊鏁寸悊鏄庣粏
- DocType docType = docTypeService.selectById(order.getDocType());
- if (null != docType && docType.getPakout() == 1) {
- if (!orderDetlService.delete(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()))) {
- throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
- }
- List<WrkDetl> wrkDetls = wrkDetlService.selectAndLogByOrderNo(orderNo);
- for (WrkDetl wrkDetl : wrkDetls) {
- OrderDetl orderDetl = new OrderDetl();
- orderDetl.sync(wrkDetl);
- orderDetl.setQty(orderDetl.getAnfme());
- orderDetl.setOrderId(order.getId());
- orderDetl.setOrderNo(orderNo);
- orderDetl.setStatus(1);
- orderDetl.setCreateTime(order.getCreateTime());
- orderDetl.setCreateBy(order.getCreateBy());
- orderDetl.setUpdateTime(order.getUpdateTime());
- orderDetl.setUpdateBy(order.getUpdateBy());
- if (!orderDetlService.insert(orderDetl)) {
- throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
- }
- }
- }
- if (!this.updateSettle(order.getId(), 4L, null)) {
- throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");
+ if (!this.updateSettle(order1.getId(), 4L, null)) {
+ throw new CoolException("淇敼璁㈠崟銆恛rderNo = " + order1.getOrderNo() + "銆戠姸鎬佷负宸插畬鎴愬け璐�");
}
}
+
}
@@ -140,9 +148,13 @@
if (!orderDetlService.increase(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) {
throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
}
+ // 淇敼璁㈠崟浣滀笟鏁伴噺
+ if (!orderDetlService.increaseWorkQty(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) {
+ throw new CoolException("淇敼鍗曟嵁浣滀笟鏁伴噺澶辫触");
+ }
}
} catch (Exception e) {
- log.error("", e);
+ log.error("saveHandlerOrder===>>", e);
return false;
}
return true;
@@ -162,8 +174,8 @@
}
@Override
- public void addToLogTable(Order order) {
- this.baseMapper.addToLogTable(order);
+ public boolean addToLogTable(Order order) {
+ return this.baseMapper.addToLogTable(order) > 0;
}
}
--
Gitblit v1.9.1