From 605a99cf4bc3da9cf7fa4077969dd6b09829df2e Mon Sep 17 00:00:00 2001
From: whycq <10027870+whycq@user.noreply.gitee.com>
Date: 星期三, 12 六月 2024 13:03:11 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java |   27 +++++++++++++++++++++------
 1 files changed, 21 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
index c12b79e..0660704 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java
@@ -9,6 +9,7 @@
 import com.zy.asrs.entity.*;
 import com.zy.asrs.entity.param.*;
 import com.zy.asrs.service.*;
+import com.zy.asrs.utils.CodeDetectionUtil;
 import com.zy.common.model.DetlDto;
 import com.zy.common.service.AgvCommonService;
 import lombok.Synchronized;
@@ -68,6 +69,9 @@
         if (Cools.isEmpty(param.getBarcode(), param.getCombMats())) {
             throw new CoolException(BaseRes.PARAM);
         }
+        if (!CodeDetectionUtil.barcodeDetection(param.getBarcode())){
+            throw new CoolException(param.getBarcode() + "璐ф灦鐮佹湁璇紝璇锋纭壂鐮侊紒锛侊紒");
+        }
         param.setContainerType(Short.valueOf(param.getBarcode().substring(0,2)));
 
 //        //妫�鏌ユ槸鍚﹀凡瀛樺湪鐩稿悓鐨勮揣鏋舵潯鐮侊紝瀛樺湪鍒欐姏鍑哄紓甯�
@@ -116,10 +120,16 @@
         Date now = new Date();
         List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(new EntityWrapper<AgvLocDetl>().eq("loc_no", pickParams.getLocNo()));
 
+        AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
+
+        if (Cools.isEmpty(agvWrkMast)){
+            return "澶辫触锛屾湭鏌ュ埌宸ヤ綔涓绘。锛屽伐浣滃彿锛�"+pickParams.getWrkNo();
+        }
         for (PickParam.Pick pick : pickParams.getPicks()) {
             if (pick.getCount().equals(0D)) continue;
             Double count = 0.0D;
             AgvWrkDetl agvWrkDetl = agvWrkDetlService.selectOne(new EntityWrapper<AgvWrkDetl>().eq("matnr", pick.getMatnr()).eq("three_code", pick.getThreeCode()).eq("supp_code",pick.getSuppCode()));
+
             if (Cools.isEmpty(agvWrkDetl)) {
                 AgvWrkDetl wrkDetl = new AgvWrkDetl();
                 Mat mat = matService.selectByMatnr(pick.getMatnr());
@@ -129,7 +139,7 @@
                 wrkDetl.sync(mat);
                 wrkDetl.setWrkNo(pickParams.getWrkNo());
                 wrkDetl.setOrderNo(pick.getOrderNo());
-                wrkDetl.setIoTime(now);
+                wrkDetl.setIoTime(agvWrkMast.getIoTime());
                 wrkDetl.setAnfme(pick.getCount()); // 鏁伴噺
                 wrkDetl.setSuppCode(pick.getSuppCode()); // 璐ф灦鏉$爜
                 wrkDetl.setAppeUser(userId);
@@ -167,7 +177,6 @@
             }
         }
         if (agvLocDetls.size() == sameNumber) {
-            AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
             agvWrkMast.setIoType(101);
             agvWrkMastService.update(agvWrkMast,new EntityWrapper<AgvWrkMast>().eq("wrk_no", pickParams.getWrkNo()));
         }
@@ -394,15 +403,15 @@
             }
         } else {
             if (agvLocMast.getFloor() != floor) {
-                if (floor==1 && agvLocMast.getFloor()!=1){
-                    ioType = 121;
-                }else {
+//                if (floor==1 && agvLocMast.getFloor()!=1){
+//                    ioType = 121;
+//                }else {
                     if (agvLocMast.getFloor() == 1) {
                         throw new CoolException("褰撳墠搴撲綅璇烽�夋嫨璋冩嫧鍗曡皟鎷紒");
                     } else {
                         ioType = 12;
                     }
-                }
+//                }
             } else {
                 ioType = 11;
             }
@@ -631,6 +640,12 @@
     @Override
     @Transactional
     public String doBack(AgvMobileStartPakin param, Long userId) {
+        if (Cools.isEmpty(param.getBarcode()) || !CodeDetectionUtil.barcodeDetection(param.getBarcode())){
+            throw new CoolException(param.getBarcode() + "璐ф灦鐮佹湁璇紝璇锋纭壂鐮侊紒锛侊紒");
+        }
+        if (Cools.isEmpty(param.getDevNo()) || !CodeDetectionUtil.carCodeDetection(param.getDevNo())){
+            throw new CoolException(param.getDevNo() + "灏忚溅鍦扮爜鏈夎锛岃姝g‘鎵爜锛侊紒锛�");
+        }
         Date now = new Date();
         AgvWrkMast agvWrkMast = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("loc_no", param.getDevNo()));
         AgvWrkMast agvWrkMastSource = agvWrkMastService.selectOne(new EntityWrapper<AgvWrkMast>().eq("source_loc_no", param.getDevNo()));

--
Gitblit v1.9.1