From 6fe4619fd97c6aa90a0bfeffbfa62603691a1ab4 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 29 五月 2025 09:15:03 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |   26 ++++++++++++++++++++++++--
 1 files changed, 24 insertions(+), 2 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 aab9699..f48ee21 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -49,13 +49,24 @@
     private TagService tagService;
     @Autowired
     private TagMapper tagMapper;
+    @Autowired
+    private OrderDetlPakoutServiceImpl orderDetlPakoutService;
+    @Autowired
+    private OrderPakoutServiceImpl orderPakoutService;
+    @Autowired
+    private OrderPakinServiceImpl orderPakinService;
 
     @Override
     @Transactional
     public void pakinOrderCreate(OpenOrderPakinParam param) {
+        OrderPakin orderPakin = orderPakinService.selectByNo(param.getOrderNo());
         Order order = orderService.selectByNo(param.getOrderNo());
-        if (!Cools.isEmpty(order)) {
-            throw new CoolException(param.getOrderNo() + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
+        if (!Cools.isEmpty(orderPakin)) {
+            if (orderPakin.getSettle() > 1L) {
+                throw new CoolException(param.getOrderNo() + "鍗曟嵁宸插瓨鍦紝璇峰嬁閲嶅鎻愪氦");
+            }
+            orderPakinService.remove(orderPakin.getId());
+            orderService.remove(order.getId());
         }
         DocType docType = docTypeService.selectOrAdd(param.getOrderType(), Boolean.TRUE);
         Date now = new Date();
@@ -97,6 +108,7 @@
                 null,   // 澶囨敞
                 1
         );
+
         if (!orderService.insert(order)) {
             throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
         }
@@ -105,6 +117,7 @@
         List<DetlDto> orderDetails = param.getOrderDetails();
         for (DetlDto detail : orderDetails) {
             DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getBrand(), detail.getStandby1(), detail.getStandby2(), detail.getStandby3(), detail.getLineNumber(), detail.getBoxType1(), detail.getBoxType2(), detail.getBoxType3(), detail.getAnfme());
+            dto.setRemark(detail.getRemark());
             if (DetlDto.hasLineNumber(list, dto)) {
                 DetlDto detlDto = DetlDto.findLineNumber(list, dto.getMatnr(), dto.getBatch(), dto.getBrand(), dto.getStandby1(), dto.getStandby2(), dto.getStandby3(), dto.getLineNumber(), dto.getBoxType1(), dto.getBoxType2(), dto.getBoxType3());
                 assert detlDto != null;
@@ -127,6 +140,9 @@
             orderDetl.setStandby1(detlDto.getStandby1());
             orderDetl.setStandby2(detlDto.getStandby2());
             orderDetl.setStandby3(detlDto.getStandby3());
+            orderDetl.setBoxType1(detlDto.getBoxType1());
+            orderDetl.setBoxType2(detlDto.getBoxType2());
+            orderDetl.setBoxType3(detlDto.getBoxType3());
             orderDetl.setOrderId(order.getId());
             orderDetl.setOrderNo(order.getOrderNo());
             orderDetl.setCreateBy(9527L);
@@ -136,6 +152,7 @@
             orderDetl.setStatus(1);
             orderDetl.setQty(0.0D);
             orderDetl.setPakinPakoutStatus(1);
+            orderDetl.setRemark(detlDto.getRemark());
             if (!orderDetlService.insert(orderDetl)) {
                 throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
             }
@@ -216,6 +233,8 @@
                 throw new CoolException(param.getOrderNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
             }
             orderService.remove(order.getId());
+            OrderPakout orderPakout = orderPakoutService.selectByNo(param.getOrderNo());
+            orderPakoutService.remove(orderPakout.getId());
         }
         DocType docType = docTypeService.selectOrAdd(param.getOrderType(), Boolean.FALSE);
         Date now = new Date();
@@ -290,6 +309,9 @@
             orderDetl.setStandby1(detlDto.getStandby1());
             orderDetl.setStandby2(detlDto.getStandby2());
             orderDetl.setStandby3(detlDto.getStandby3());
+            orderDetl.setBoxType1(detlDto.getBoxType1());
+            orderDetl.setBoxType2(detlDto.getBoxType2());
+            orderDetl.setBoxType3(detlDto.getBoxType3());
             orderDetl.setOrderId(order.getId());
             orderDetl.setOrderNo(order.getOrderNo());
             orderDetl.setCreateBy(9527L);

--
Gitblit v1.9.1