From de8e16542594e01210aba8a72d18f2d2874681c2 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 12 八月 2024 13:39:33 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/BasCrnpServiceImpl.java |  206 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 183 insertions(+), 23 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/BasCrnpServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/BasCrnpServiceImpl.java
index 20287f1..f4adf4e 100644
--- a/src/main/java/com/zy/asrs/service/impl/BasCrnpServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/BasCrnpServiceImpl.java
@@ -6,10 +6,10 @@
 import com.zy.asrs.entity.BasCrnp;
 import com.zy.asrs.mapper.BasCrnpMapper;
 import com.zy.asrs.service.BasCrnpService;
+import com.zy.asrs.service.BasDevpService;
 import com.zy.asrs.service.WrkMastService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
 @Slf4j
@@ -18,9 +18,8 @@
 
     @Autowired
     private WrkMastService wrkMastService;
-
-    @Value("${store.bufferCount}")
-    private int bufferCount;
+    @Autowired
+    private BasDevpService basDevpService;
 
     @Override
     public BasCrnp checkSiteStatus(Integer crnId) {
@@ -41,18 +40,73 @@
     public boolean checkSiteError(Integer crnNo, boolean pakin) {
         BasCrnp crnp = this.selectById(crnNo);
         if (Cools.isEmpty(crnp)) {
-            log.error("{}鍙峰爢鍨涙満涓嶅瓨鍦�", crnNo);
+//            log.error("{}鍙峰爢鍨涙満涓嶅瓨鍦�", crnNo);
             return false;
         }
-        if (pakin) {
-            //TODO鎺у埗鍏ュ簱鏆傚瓨鏁帮紝闃叉涓诲共閬撳牭濉烇紝2022-5-24 ADD
-            int storeCount = wrkMastService.getStoreCount(crnNo);
-//            int maxCount = 2;
-
-            if(storeCount >= bufferCount){
-                log.error("{}鍙峰爢鍨涙満鏆傚瓨鏁板凡婊�!", crnNo);
+        if (crnp.getCrnErr() != null && crnp.getCrnSts() != 3){
+            log.error("{}鍙峰爢鍨涙満闈炶嚜鍔ㄨ繛绾跨姸鎬侊紝鏃犳硶浣滀笟!", crnNo);
+            return false;
+        }
+        if (crnp.getCrnErr() != null) {
+            if (crnp.getCrnErr() != 0) {
+                log.error("{}鍙峰爢鍨涙満寮傚父锛屽紓甯哥爜{}", crnNo, crnp.getCrnErr());
                 return false;
             }
+        }
+
+        if (pakin) {
+//            //TODO鎺у埗鍏ュ簱鏆傚瓨鏁帮紝闃叉涓诲共閬撳牭濉烇紝2022-5-24 ADD
+//            int staNo = 0;
+//            switch (crnNo){
+//                case 1:
+//                    staNo = 123;
+//                    break;
+//                case 2:
+//                    staNo = 121;
+//                    break;
+//                case 3:
+//                    staNo = 119;
+//                    break;
+//                case 4:
+//                    staNo = 117;
+//                    break;
+//                case 5:
+//                    staNo = 115;
+//                    break;
+//                case 6:
+//                    staNo = 113;
+//                    break;
+//                case 7:
+//                    staNo = 111;
+//                    break;
+//                case 8:
+//                    staNo = 109;
+//                    break;
+//                case 9:
+//                    staNo = 106;
+//                    break;
+//                case 10:
+//                    staNo = 105;
+//                    break;
+//                case 11:
+//                    staNo = 103;
+//                    break;
+//                case 12:
+//                    staNo = 101;
+//                    break;
+//            }
+//            int maxCount = 2;
+//            BasDevp devp = basDevpService.selectById(staNo);
+//            if(!Cools.isEmpty(devp)){
+//                maxCount = devp.getInQty();
+//            }
+//
+//            int storeCount = wrkMastService.getStoreCount(crnNo);
+//
+//            if(storeCount >= maxCount){
+//                log.error("{}鍙峰爢鍨涙満鏆傚瓨鏁板凡婊�!", crnNo);
+//                return false;
+//            }
 
             if ("N".equals(crnp.getInEnable())) {
                 log.error("{}鍙峰爢鍨涙満涓嶅彲鍏�", crnNo);
@@ -64,18 +118,124 @@
                 return false;
             }
         }
-//        if (crnp.getCrnSts() != null) {
-//            if (crnp.getCrnSts() == 10) {
-//                log.error("{}鍙峰爢鍨涙満鐘舵�佷负10.閿欒", crnNo);
+
+        return true;
+    }
+
+//    //鏉板厠
+//    @Override
+//    public boolean checkSiteError2(Integer crnNo, boolean pakin, Integer sourceStaNo) {
+//        BasCrnp crnp = this.selectById(crnNo);
+//        if (Cools.isEmpty(crnp)) {
+//            log.error("{}鍙峰爢鍨涙満涓嶅瓨鍦�", crnNo);
+//            return false;
+//        }
+//        if (crnp.getCrnErr() != null && crnp.getCrnSts() != 3){
+//            log.error("{}鍙峰爢鍨涙満闈炶嚜鍔ㄨ繛绾跨姸鎬侊紝鏃犳硶浣滀笟!", crnNo);
+//            return false;
+//        }
+//        if (crnp.getCrnErr() != null) {
+//            if (crnp.getCrnErr() != 0) {
+//                log.error("{}鍙峰爢鍨涙満寮傚父锛屽紓甯哥爜{}", crnNo, crnp.getCrnErr());
 //                return false;
 //            }
 //        }
-        if (crnp.getCrnErr() != null) {
-            if (crnp.getCrnErr() != 0) {
-                log.error("{}鍙峰爢鍨涙満寮傚父锛屽紓甯哥爜{}", crnNo, crnp.getCrnErr());
-                return false;
-            }
-        }
-        return true;
-    }
+//
+//        if (pakin) {
+//            //TODO鎺у埗鍏ュ簱鏆傚瓨鏁帮紝闃叉涓诲共閬撳牭濉烇紝2022-5-24 ADD
+//            int staNo = 0;
+//            String crnNos = "";
+//            switch (crnNo){
+//                case 1:
+//                    staNo = 123;
+//                    crnNos = "1,2,3,4";
+//                    break;
+//                case 2:
+//                    staNo = 121;
+//                    crnNos = "1,2,3,4";
+//                    break;
+//                case 3:
+//                    staNo = 119;
+//                    crnNos = "1,2,3,4";
+//                    break;
+//                case 4:
+//                    staNo = 117;
+//                    crnNos = "1,2,3,4";
+//                    break;
+//                case 5:
+//                    staNo = 115;
+//                    crnNos = "5,6,7,8";
+//                    break;
+//                case 6:
+//                    staNo = 113;
+//                    crnNos = "5,6,7,8";
+//                    break;
+//                case 7:
+//                    staNo = 111;
+//                    crnNos = "5,6,7,8";
+//                    break;
+//                case 8:
+//                    staNo = 109;
+//                    crnNos = "5,6,7,8";
+//                    break;
+//                case 9:
+//                    staNo = 106;
+//                    crnNos = "9,10,11,12";
+//                    break;
+//                case 10:
+//                    staNo = 105;
+//                    crnNos = "9,10,11,12";
+//                    break;
+//                case 11:
+//                    staNo = 103;
+//                    crnNos = "9,10,11,12";
+//                    break;
+//                case 12:
+//                    staNo = 101;
+//                    crnNos = "9,10,11,12";
+//                    break;
+//            }
+//            int maxCount = 2;
+//            int storeCount = wrkMastService.getStoreCount(crnNo);
+//
+//            //鍒嗗寳涓崡涓変釜鍖哄垽鏂紝姣�4鍙板爢鍨涙満1涓尯銆傞櫎1鍙锋湁3涓殏瀛樹互澶栵紝鍙鏈夊嚭搴撲换鍔″叆搴撴殏瀛樻暟灏卞彧鑳戒负1涓�
+//            //娌℃湁鍑哄簱浠诲姟鏃讹紝鏆傚瓨鏁板湪devp琛╥n_qty瀛楁閰嶇疆
+////            int pakOutCunt = wrkMastService.getPakOutCount(crnNos);
+////            if(pakOutCunt > 0){
+////                maxCount = crnNo!= 1 ? 1 : 3;//1鍙�3涓叆搴撴殏瀛�
+////            } else {
+//            BasDevp devp = basDevpService.selectById(staNo);
+//            if(!Cools.isEmpty(devp)){
+//                maxCount = devp.getInQty();
+//            }
+////            }
+//
+//            if(storeCount >= maxCount){
+//                log.error("{}鍙峰爢鍨涙満鏆傚瓨鏁板凡婊�![storeCount:{},maxCount:{}]", crnNo, storeCount, maxCount);
+//                return false;
+//            }
+//
+//            if ("N".equals(crnp.getInEnable())) {
+//                log.error("{}鍙峰爢鍨涙満涓嶅彲鍏�", crnNo);
+//                return false;
+//            }
+//
+//            //1--8鍙峰爢鍨涙満锛屼簩妤煎叆搴撴椂鍒ゆ柇鏄惁鏈夊搴斿嚭搴撲换鍔�,濡傛灉鏈夊垯鍫嗗灈鏈轰笉鍙敤
+//            if (sourceStaNo > 299 && crnNo < 9){
+//                WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>()
+//                        .eq("crn_no",crnNo).last(" and source_sta_no > 300 and ( wrk_sts in (11,12) or (wrk_sts=14 and wrk_no in (select wrk_no from asr_bas_devp)))"));
+//                if(!Cools.isEmpty(wrkMast)){
+//                    log.error("{}鍙峰爢鍨涙満瀛樺湪鍑哄簱浠诲姟,浠诲姟鍙穥}", crnNo, wrkMast.getWrkNo());
+//                    return false;
+//                }
+//            }
+//        } else {
+//            if ("N".equals(crnp.getOutEnable())) {
+//                log.error("{}鍙峰爢鍨涙満涓嶅彲鍑�", crnNo);
+//                return false;
+//            }
+//        }
+//
+//        return true;
+//    }
 }

--
Gitblit v1.9.1