From e4fd378a3a3710a81d40adf85137268c97b17950 Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期五, 14 六月 2024 08:19:31 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/OrderController.java |   84 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 83 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index fefdf51..4ff89c0 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -271,7 +271,17 @@
             throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触");
         }
         List<DetlDto> list = new ArrayList<>();
+        Boolean flag = false;
         for (OrderDetl orderDetl : param.getOrderDetlList()) {
+            if (Cools.isEmpty(orderDetl.getProcessSts())) {
+                orderDetl.setProcessSts(3);
+            }
+            if (orderDetl.getProcessSts() == 1) {
+                flag = true;
+            }
+            if (param.getDocType() != 32) {
+                orderDetl.setProcessSts(3);
+            }
             DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
             if (DetlDto.has(list, dto)) {
                 OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
@@ -360,9 +370,79 @@
                     }
                 }
             }
+
         }
+        // 宸ュ簭涓�1锛氬緟鍔犲伐 鐢熸垚鍔犲伐鍗�
+        if (flag) {
+            if (param.getDocType().intValue() == 32) {
+                order = new Order(
+                        String.valueOf(snowflakeIdWorker.nextId()),    // 缂栧彿[闈炵┖]
+                        "JG" + param.getOrderNo(),    // 璁㈠崟缂栧彿
+                        DateUtils.convert(now),    // 鍗曟嵁鏃ユ湡
+                        35L,    // 鍗曟嵁绫诲瀷
+                        null,    // 椤圭洰缂栧彿
+                        null,    //
+                        null,    // 璋冩嫧椤圭洰缂栧彿
+                        null,    // 鍒濆绁ㄦ嵁鍙�
+                        null,    // 绁ㄦ嵁鍙�
+                        null,    // 瀹㈡埛缂栧彿
+                        null,    // 瀹㈡埛
+                        null,    // 鑱旂郴鏂瑰紡
+                        null,    // 鎿嶄綔浜哄憳
+                        null,    // 鍚堣閲戦
+                        null,    // 浼樻儬鐜�
+                        null,    // 浼樻儬閲戦
+                        null,    // 閿�鍞垨閲囪喘璐圭敤鍚堣
+                        null,    // 瀹炰粯閲戦
+                        null,    // 浠樻绫诲瀷
+                        null,    // 涓氬姟鍛�
+                        null,    // 缁撶畻澶╂暟
+                        null,    // 閭垂鏀粯绫诲瀷
+                        null,    // 閭垂
+                        null,    // 浠樻鏃堕棿
+                        null,    // 鍙戣揣鏃堕棿
+                        null,    // 鐗╂祦鍚嶇О
+                        null,    // 鐗╂祦鍗曞彿
+                        1L,    // 璁㈠崟鐘舵��
+                        1,    // 鐘舵��
+                        getUserId(),    // 娣诲姞浜哄憳
+                        now,    // 娣诲姞鏃堕棿
+                        getUserId(),    // 淇敼浜哄憳
+                        now,    // 淇敼鏃堕棿
+                        null    // 澶囨敞
+                );
+                if (!orderService.insert(order)) {
+                    throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟澶辫触");
+                }
+                List<DetlDto> dbList = new ArrayList<>();
+                for (OrderDetl orderDetl : param.getOrderDetlList()) {
+                    if (orderDetl.getProcessSts() != 1) continue;
+                    DetlDto dto = new DetlDto(orderDetl.getMatnr(), orderDetl.getBatch());
+                    if (DetlDto.has(dbList, dto)) {
+                        OrderDetl item = orderDetlService.selectItem(order.getId(), orderDetl.getMatnr(), orderDetl.getBatch(),orderDetl.getThreeCode(),orderDetl.getDeadTime());
+                        item.setAnfme(item.getAnfme() + orderDetl.getAnfme());
+                        if (!orderDetlService.updateById(item)) {
+                            throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟鏄庣粏妗eけ璐�");
+                        }
+                    } else {
+                        dbList.add(dto);
+                        orderDetl.setOrderId(order.getId());
+                        orderDetl.setOrderNo(order.getOrderNo());
+                        orderDetl.setSource(35);
+                        orderDetl.setCreateBy(getUserId());
+                        orderDetl.setCreateTime(now);
+                        orderDetl.setUpdateBy(getUserId());
+                        orderDetl.setUpdateTime(now);
+                        orderDetl.setStatus(1);
+                        orderDetl.setQty(0.0D);
+                        if (!orderDetlService.insert(orderDetl)) {
+                            throw new CoolException("鐢熸垚鍗婃垚鍝佽皟鎷ㄥ崟鏄庣粏妗eけ璐�");
+                        }
+                    }
+                }
 
-
+            }
+        }
         return R.ok("璁㈠崟娣诲姞鎴愬姛");
     }
 
@@ -669,6 +749,8 @@
                         proSts = 3;
                     }
                 }
+            } else {
+                proSts = 3;
             }
 
 

--
Gitblit v1.9.1