From d60e84cbedb554555578f071de95c4a8049183db Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期五, 13 六月 2025 15:16:43 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java |   85 +++++++++++++++++++++++++++++++++++++++---
 1 files changed, 79 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java
index 164c4c6..bfc361e 100644
--- a/src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java
+++ b/src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java
@@ -15,6 +15,7 @@
 import org.springframework.stereotype.Component;
 
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -25,6 +26,7 @@
 public class WrkMastCrnScheduler {
 
     private static final Logger log = LoggerFactory.getLogger(WorkMastScheduler.class);
+//    private static  Integer signSmallTurn = 0;
 
     @Autowired
     private WrkMastCrnHandler wrkMastCrnHandler;
@@ -49,6 +51,9 @@
 
     public static final List<Integer> CRN_WORK_CU = new ArrayList<Integer>() {{
         add(100);add(148);
+    }};
+    public static final List<Integer> CRN_WORK_CU_SMA = new ArrayList<Integer>() {{
+        add(126);add(131);
     }};
 
 
@@ -97,27 +102,89 @@
     @Scheduled(cron = "0/3 * * * * ? ")
     private void execute2(){
         for(Integer staNo : CRN_WORK_CU) {
+//            try{
+//                for(Integer staNo1 : CRN_WORK_CU_SMA) {
+//                    RgvOneSign trunSma = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","TrunSma"+staNo1));
+//                    trunSma.setRgvOneSign(0);
+//                    rgvOneSignService.updateById(trunSma);
+//                }
+//            } catch (Exception e){
+//
+//            }
+
+            BasDevp basDevp = basDevpService.selectById(staNo);
+            if (basDevp.getLoading().equals("Y")
+                    || !basDevp.getAutoing().equals("Y")
+                    || (!Cools.isEmpty(basDevp.getWrkNo()) && basDevp.getWrkNo()!=0) ){
+                continue;
+            }
+
+            BasDevp basDevp1 = basDevpService.selectById(staNo==100? 101:149);
+            if (basDevp1.getLoading().equals("Y")
+                    || !basDevp1.getAutoing().equals("Y")
+                    || (!Cools.isEmpty(basDevp1.getWrkNo()) && basDevp1.getWrkNo()!=0) ){
+                continue;
+            }
             List<WrkMastCrn> wrkMastCrnList = wrkMastCrnService.selectList(new EntityWrapper<WrkMastCrn>().eq("source_sta_no",staNo));
             if (Cools.isEmpty(wrkMastCrnList)){
                 List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
                         .eq("source_sta_no", staNo).eq("wrk_sts", 11L)
                         .orderBy("io_pri",false));
                 for (WrkMast wrkMast:wrkMasts){
-                    if (wrkMast.getIoType()==101){
-                        BasDevp basDevp = basDevpService.selectById(115);
-                        if (basDevp.getLoading().equals("Y")
-                                || !basDevp.getAutoing().equals("Y")
-                                || (!Cools.isEmpty(basDevp.getWrkNo()) && basDevp.getWrkNo()!=0) ){
+//                    if (wrkMast.getStaNoSign().equals(signSmallTurn)){
+//                        continue;
+//                    }
+//                    if (wrkMast.booleanStaNoSignOther()){
+//                        continue;
+//                    }
+                    boolean sign = true;
+                    if ((wrkMast.getIoType()==101 || wrkMast.getIoType() == 110) && wrkMast.booleanStaNoSign() && wrkMast.getIoPri()<99D){
+                        Date now = new Date();
+                        long differenceInSeconds = now.getTime() - wrkMast.getModiTime().getTime();
+                        if (differenceInSeconds<=2000){
                             continue;
                         }
+//                        RgvOneSign rgvOneSign = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","LineUp"+wrkMast.getStaNo()));
+//                        if (Cools.isEmpty(rgvOneSign)){
+//                            continue;
+//                        }
+//                        RgvOneSign trunSma = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","TrunSma"+wrkMast.getStaNo()));
+//                        if (Cools.isEmpty(trunSma)){
+//                            continue;
+//                        }
+//                        int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).eq("wrk_sts",12L));
+//                        int wrkCountCrn = wrkMastCrnService.selectCount(new EntityWrapper<WrkMastCrn>().eq("sta_no", wrkMast.getStaNo()));
+//                        if (wrkCountCrn*2+wrkCount+rgvOneSign.getRgvOneSign()+trunSma.getRgvOneSign()>1){
+//                            continue;
+//                        }
+//                        int wrkCountGt = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("sta_no", wrkMast.getStaNo()).gt("wrk_sts",11L));
+//                        if (wrkCountGt > 1){
+//                            continue;
+//                        }
+//                        sign = false;
+//                        int loadIngCount = basDevpService.selectCount(new EntityWrapper<BasDevp>().ge("dev_no", 103).le("dev_no", 121).eq("loading", "Y"));
+//                        if (loadIngCount>8){
+//                            continue;
+//                        }
+//                        RgvOneSign smallTurn = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","smallTurn"));
+//                        if (Cools.isEmpty(smallTurn)){
+//                            continue;
+//                        }
+//                        if (smallTurn.getRgvOneSign()>15){
+//                            continue;
+//                        }
                     }
                     try{
                         int row = Utils.getRow(wrkMast.getSourceLocNo());
                         if (row == wrkMast.getCrnNo()*4 || row == wrkMast.getCrnNo()*4-3){
                             WrkMastCrn wrkMastCrn = wrkMastCrnService.selectOne(new EntityWrapper<WrkMastCrn>().eq("wrk_no", wrkMast.getWrkNo()));
                             if (Cools.isEmpty(wrkMastCrn)){
-                                ReturnT<String> result = wrkMastCrnHandler.start(wrkMast);
+                                ReturnT<String> result = wrkMastCrnHandler.start(wrkMast,sign);
                                 if (result.isSuccess()) {
+//                                    signSmallTurn++;
+//                                    if (signSmallTurn > 2){
+//                                        signSmallTurn = 0;
+//                                    }
                                     break;
                                 }
                             }
@@ -126,6 +193,12 @@
                         log.error("宸﹀彸鍙屽伐浣嶅爢鍨涙満鎵ц浠诲姟鐢熸垚====銆嬪嚭搴撲换鍔$敓鎴愬紓甯革細"+e.getMessage());
                     }
                 }
+//                if (!wrkMasts.isEmpty()){
+//                    signSmallTurn++;
+//                    if (signSmallTurn > 2){
+//                        signSmallTurn = 0;
+//                    }
+//                }
             }
         }
     }

--
Gitblit v1.9.1