From 4d910bae3ebb40e9ab0db6f9addb99636ce8de63 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期六, 21 九月 2024 08:09:41 +0800
Subject: [PATCH] 1
---
src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java | 190 ++++++++++++++++++++++++++++++++--------------
1 files changed, 131 insertions(+), 59 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 2f34254..a788a36 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderServiceImpl.java
@@ -59,7 +59,7 @@
@Override
public void checkComplete(String orderNo) {
Order order = this.selectByNo(orderNo);
- if (order.getSettle() >= 4L) {
+ if (Cools.isEmpty(order) || order.getSettle() >= 4L) {
return;
}
List<OrderDetl> orderDetls = orderDetlMapper.selectList(new EntityWrapper<OrderDetl>().eq("order_id", order.getId()));
@@ -74,23 +74,66 @@
// 鍑哄簱璁㈠崟閲嶆柊鏁寸悊鏄庣粏
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 (orderDetls.size() == wrkDetls.size()) {
+ 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() + "銆戞槑缁嗗け璐�");
+ }
+ }
+ } else {
+ for (OrderDetl orderDetl : orderDetls) {
+ for (WrkDetl wrkDetl : wrkDetls) {
+ if (Cools.isEmpty(orderDetl.getBatch()) || Cools.isEmpty(wrkDetl.getBatch())) {
+ if (orderDetl.getMatnr().equals(wrkDetl.getMatnr())) {
+ OrderDetl newOrderDetl = new OrderDetl();
+ newOrderDetl.sync(wrkDetl);
+ newOrderDetl.setQty(orderDetl.getAnfme());
+ newOrderDetl.setOrderId(order.getId());
+ newOrderDetl.setOrderNo(orderNo);
+ newOrderDetl.setStatus(1);
+ newOrderDetl.setCreateTime(order.getCreateTime());
+ newOrderDetl.setCreateBy(order.getCreateBy());
+ newOrderDetl.setUpdateTime(order.getUpdateTime());
+ newOrderDetl.setUpdateBy(order.getUpdateBy());
+ if (!orderDetlService.insert(newOrderDetl)) {
+ throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
+ }
+ break;
+ }
+ } else {
+ if (orderDetl.getMatnr().equals(wrkDetl.getMatnr()) && orderDetl.getBatch().equals(wrkDetl.getBatch())) {
+ OrderDetl newOrderDetl = new OrderDetl();
+ newOrderDetl.sync(wrkDetl);
+ newOrderDetl.setQty(orderDetl.getAnfme());
+ newOrderDetl.setOrderId(order.getId());
+ newOrderDetl.setOrderNo(orderNo);
+ newOrderDetl.setStatus(1);
+ newOrderDetl.setCreateTime(order.getCreateTime());
+ newOrderDetl.setCreateBy(order.getCreateBy());
+ newOrderDetl.setUpdateTime(order.getUpdateTime());
+ newOrderDetl.setUpdateBy(order.getUpdateBy());
+ if (!orderDetlService.insert(newOrderDetl)) {
+ throw new CoolException("閲嶆暣鍑哄簱璁㈠崟銆恛rderNo = " + order.getOrderNo() + "銆戞槑缁嗗け璐�");
+ }
+ break;
+ }
+ }
+ }
}
}
}
@@ -102,51 +145,55 @@
}
- @Override
- public boolean saveHandlerOrder(Boolean pakin, WrkMast wrkMast, List<WrkDetl> wrkDetls) {
- try {
- List<DetlDto> detlDtos = new ArrayList<>();
- wrkDetls.forEach(wrkDetl -> {
- detlDtos.add(new DetlDto(wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme()));
- });
- String orderNo = "HAND" + snowflakeIdWorker.nextId();
- if (pakin) {
- // 鐢熸垚鍏ュ簱鍗曟嵁
- OpenOrderPakinParam openParam = new OpenOrderPakinParam();
- openParam.setOrderNo(orderNo);
- openParam.setOrderTime(DateUtils.convert(wrkMast.getModiTime()));
- openParam.setOrderType("鎵嬪姩鍏ュ簱鍗�");
- openParam.setOrderDetails(detlDtos);
- openService.pakinOrderCreate(openParam);
- } else {
- // 鐢熸垚鍑哄簱鍗曟嵁
- OpenOrderPakoutParam openParam = new OpenOrderPakoutParam();
- openParam.setOrderNo(orderNo);
- openParam.setOrderTime(DateUtils.convert(wrkMast.getModiTime()));
- openParam.setOrderType("鎵嬪姩鍑哄簱鍗�");
- openParam.setOrderDetails(detlDtos);
- openService.pakoutOrderCreate(openParam);
- }
-
- Order order = this.selectByNo(orderNo);
- if (null == order) {
- throw new CoolException("鐢熸垚鍗曟嵁澶辫触");
- }
- if (!this.updateSettle(order.getId(), 4L, null)) {
- throw new CoolException("淇敼鍗曟嵁鐘舵�佸け璐�");
- }
- for (DetlDto detlDto : detlDtos) {
- // 淇敼璁㈠崟鏄庣粏鏁伴噺
- if (!orderDetlService.increase(order.getId(), detlDto.getMatnr(), detlDto.getBatch(), detlDto.getAnfme())) {
- throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触");
- }
- }
- } catch (Exception e) {
- log.error("", e);
- return false;
- }
- return true;
- }
+// @Override
+// public boolean saveHandlerOrder(Boolean pakin, WrkMast wrkMast, List<WrkDetl> wrkDetls) {
+// try {
+// List<DetlDto> detlDtos = new ArrayList<>();
+// wrkDetls.forEach(wrkDetl -> {
+// detlDtos.add(new DetlDto(wrkDetl.getMatnr(), wrkDetl.getBatch(), wrkDetl.getAnfme()));
+// });
+// String orderNo = "HAND" + snowflakeIdWorker.nextId();
+// if (pakin) {
+// // 鐢熸垚鍏ュ簱鍗曟嵁
+// OpenOrderPakinParam openParam = new OpenOrderPakinParam();
+// openParam.setOrderNo(orderNo);
+// openParam.setOrderTime(DateUtils.convert(wrkMast.getModiTime()));
+// openParam.setOrderType("鎵嬪姩鍏ュ簱鍗�");
+// openParam.setOrderDetails(detlDtos);
+// openService.pakinOrderCreate(openParam);
+// } else {
+// // 鐢熸垚鍑哄簱鍗曟嵁
+// OpenOrderPakoutParam openParam = new OpenOrderPakoutParam();
+// openParam.setOrderNo(orderNo);
+// openParam.setOrderTime(DateUtils.convert(wrkMast.getModiTime()));
+// openParam.setOrderType("鎵嬪姩鍑哄簱鍗�");
+// openParam.setOrderDetails(detlDtos);
+// openService.pakoutOrderCreate(openParam);
+// }
+//
+// Order order = this.selectByNo(orderNo);
+// if (null == order) {
+// throw new CoolException("鐢熸垚鍗曟嵁澶辫触");
+// }
+// if (!this.updateSettle(order.getId(), 4L, null)) {
+// throw new CoolException("淇敼鍗曟嵁鐘舵�佸け璐�");
+// }
+// for (DetlDto detlDto : detlDtos) {
+// // 淇敼璁㈠崟鏄庣粏鏁伴噺
+// 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("saveHandlerOrder===>>", e);
+// return false;
+// }
+// return true;
+// }
@Override
public void remove(Long orderId) {
@@ -161,4 +208,29 @@
return this.baseMapper.selectComplete();
}
+ @Override
+ public List<Order> selectComplete8() {
+ return this.baseMapper.selectComplete8();
+ }
+
+ @Override
+ public boolean addToLogTable(Order order) {
+ return this.baseMapper.addToLogTable(order) > 0;
+ }
+
+ @Override
+ public List<Order> selectorderNoL(String orderNo) {
+ return this.baseMapper.selectorderNoL(orderNo);
+ }
+
+ @Override
+ public Order selectOrderMoveStatus() {
+ return this.baseMapper.selectOrderMoveStatus();
+ }
+
+ @Override
+ public Order selectOrderMoveStatusInitial() {
+ return this.baseMapper.selectOrderMoveStatusInitial();
+ }
+
}
--
Gitblit v1.9.1