From 495129d546e7ef569e3dba02a85342477e424974 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期四, 25 七月 2024 18:59:09 +0800
Subject: [PATCH] pda组托修改

---
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java |   97 ++++++++++++++++++++++++++++++------------------
 1 files changed, 60 insertions(+), 37 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index ef7999f..6f04055 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -83,23 +83,23 @@
     @Override
     @Transactional
     public void comb(CombParam param, Long userId) {
-        if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
+        String barcode = param.getBarcode();
+        if (Cools.isEmpty(barcode, param.getCombMats())) {
             throw new CoolException(BaseRes.PARAM);
         }
-        if(param.getCombMats().stream().anyMatch(obj -> obj.getAnfme() == null || obj.getAnfme() == 0)){
-            throw new CoolException("璇锋鏌ュ叆搴撶墿鏂欐暟閲�");
-        }
+//        if(param.getCombMats().stream().anyMatch(obj -> obj.getAnfme() == null || obj.getAnfme() == 0)){
+//            throw new CoolException("璇锋鏌ュ叆搴撶墿鏂欐暟閲�");
+//        }
         // 鍒ゆ柇鏄惁鏈夌浉鍚屾潯鐮佺殑鏁版嵁
-        if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
-                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
-            throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱");
-        }
-
-        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode()));
-        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode()));
-        int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet",param.getBarcode()));
+//        if (waitPakinService.selectCount(new EntityWrapper<WaitPakin>().
+//                eq("zpallet", param.getBarcode()).eq("io_status", "N")) > 0) {
+//            throw new CoolException(param.getBarcode() + "鏁版嵁姝e湪杩涜鍏ュ簱");
+//        }
+        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",barcode));
+        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", barcode));
+        int countwait = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("zpallet", barcode));
         if (countLoc > 0 || countWrk > 0 || countwait > 0) {
-            throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + param.getBarcode());
+            throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + barcode);
         }
 
         //璁剧疆闈瀗ull鎵瑰彿锛�
@@ -115,33 +115,35 @@
         if (Cools.isEmpty(param.getOrderNo())) {
 
             // 鐢熸垚鍏ュ簱閫氱煡妗�
-            List<DetlDto> detlDtos = new ArrayList<>();
-            param.getCombMats().forEach(elem -> {
-                DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme());
-                detlDto.setModel(elem.getModel());
-                detlDto.setSpecs(elem.getSpecs());
-                detlDto.setManuDate(elem.getManuDate());
-                if (DetlDto.has(detlDtos, detlDto)) {
-                    DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch());
-                    assert one != null;
-                    one.setAnfme(one.getAnfme() + detlDto.getAnfme());
-                } else {
-                    detlDtos.add(detlDto);
-                }
-            });
+//            List<DetlDto> detlDtos = new ArrayList<>();
+//            param.getCombMats().forEach(elem -> {
+//                DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme());
+//                detlDto.setModel(elem.getModel());
+//                detlDto.setSpecs(elem.getSpecs());
+//                detlDto.setManuDate(elem.getManuDate());
+//                if (DetlDto.has(detlDtos, detlDto)) {
+//                    DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch());
+//                    assert one != null;
+//                    one.setAnfme(one.getAnfme() + detlDto.getAnfme());
+//                } else {
+//                    detlDtos.add(detlDto);
+//                }
+//            });
 
-
-            for (DetlDto detlDto : detlDtos) {
-                Mat mat = matService.selectByMatnr(detlDto.getMatnr());
-                if (Cools.isEmpty(mat)) {
-                    throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
+            for (CombParam.CombMat combMat: param.getCombMats()) {
+                String batch = combMat.getBatch();
+                int countL = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("batch", batch));
+                int countW = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("batch", batch));
+                int countP = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("batch", batch));
+                if (countL > 0 || countW > 0 || countP > 0) {
+                    throw new CoolException("璇ユ壒鍙峰凡缁忓瓨鍦�===>>" + batch);
                 }
                 WaitPakin waitPakin = new WaitPakin();
-                waitPakin.sync(mat);
-                waitPakin.setBatch(detlDto.getBatch());
-                waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
+                waitPakin.sync(combMat);
+                waitPakin.setBarcode(barcode);   // 鎵樼洏鐮侊紝鐢ㄨ繖涓�
+                waitPakin.setZpallet(barcode); // 鎵樼洏鐮�
                 waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
-                waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
+                waitPakin.setAnfme(1.0);  // 鏁伴噺
                 waitPakin.setStatus("Y");    // 鐘舵��
                 waitPakin.setAppeUser(userId);
                 waitPakin.setAppeTime(now);
@@ -151,6 +153,27 @@
                     throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
                 }
             }
+//
+//            for (DetlDto detlDto : detlDtos) {
+//                Mat mat = matService.selectByMatnr(detlDto.getMatnr());
+//                if (Cools.isEmpty(mat)) {
+//                    throw new CoolException(detlDto.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
+//                }
+//                WaitPakin waitPakin = new WaitPakin();
+//                waitPakin.sync(mat);
+//                waitPakin.setBatch(detlDto.getBatch());
+//                waitPakin.setZpallet(barcode);   // 鎵樼洏鐮�
+//                waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
+//                waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
+//                waitPakin.setStatus("Y");    // 鐘舵��
+//                waitPakin.setAppeUser(userId);
+//                waitPakin.setAppeTime(now);
+//                waitPakin.setModiUser(userId);
+//                waitPakin.setModiTime(now);
+//                if (!waitPakinService.insert(waitPakin)) {
+//                    throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
+//                }
+//            }
         // 鍏宠仈缁勬墭
         } else {
             Order order = orderService.selectByNo(param.getOrderNo());
@@ -189,7 +212,7 @@
                 waitPakin.sync(mat);
                 waitPakin.setOrderNo(order.getOrderNo());   // 鍗曟嵁缂栧彿
                 waitPakin.setBatch(detlDto.getBatch());     // 搴忓垪鐮�
-                waitPakin.setZpallet(param.getBarcode());   // 鎵樼洏鐮�
+                waitPakin.setZpallet(barcode);   // 鎵樼洏鐮�
                 waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
                 waitPakin.setAnfme(detlDto.getAnfme());  // 鏁伴噺
                 waitPakin.setStatus("Y");    // 鐘舵��

--
Gitblit v1.9.1