From 9c7e5bc10f242b71f3d94e2c700cb7de79feda17 Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期二, 25 二月 2025 08:45:14 +0800
Subject: [PATCH] *

---
 src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java |  154 +++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 118 insertions(+), 36 deletions(-)

diff --git a/src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java b/src/main/java/com/zy/asrs/task/WrkMastCrnScheduler.java
index eb6832b..9be2e05 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;
@@ -50,36 +52,42 @@
     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);
+    }};
 
 
     @Scheduled(cron = "0/3 * * * * ? ")
     private void execute(){
         try{
             for(Integer staNo : CRN_WORK_RU){
-                BasDevp basDevp = basDevpService.selectById(staNo);
-                if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y") && basDevp.getInEnable().equals("Y")){
-                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
-                    if(Cools.isEmpty(wrkMast)){
-                        continue;
-                    }
-                    if (wrkMast.getWrkSts()!=2){
-                        continue;
-                    }
-                    WrkMastCrn wrkMastCrn = wrkMastCrnService.selectOne(new EntityWrapper<WrkMastCrn>().eq("wrk_no", wrkMast.getWrkNo()));
-                    if (Cools.isEmpty(wrkMastCrn)){
-                        BasDevp basDevpOther = basDevpService.selectById(staNoOther(staNo));
-                        if (basDevpOther.getWrkNo()!=0 && basDevpOther.getLoading().equals("Y") && basDevpOther.getAutoing().equals("Y") && basDevpOther.getInEnable().equals("Y")){
-                            WrkMast wrkMastOther = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevpOther.getWrkNo()));
-                            if(Cools.isEmpty(wrkMastOther)){
-                                continue;
-                            }
-                            if (wrkMastOther.getWrkSts()!=2){
-                                continue;
-                            }
-                            if (!Cools.isEmpty(wrkMast)){
-                                ReturnT<String> result = wrkMastCrnHandler.start(wrkMast,wrkMastOther);
-                                if (result.getCode()!=200){
-                                    System.out.println(staNo+"澶辫触锛�");
+                List<WrkMastCrn> wrkMastCrnList = wrkMastCrnService.selectList(new EntityWrapper<WrkMastCrn>().eq("sta_no", staNo));
+                if (Cools.isEmpty(wrkMastCrnList)){
+                    BasDevp basDevp = basDevpService.selectById(staNo);
+                    if (basDevp.getWrkNo()!=0 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y") && basDevp.getInEnable().equals("Y")){
+                        WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()));
+                        if(Cools.isEmpty(wrkMast)){
+                            continue;
+                        }
+                        if (wrkMast.getWrkSts()!=2){
+                            continue;
+                        }
+                        WrkMastCrn wrkMastCrn = wrkMastCrnService.selectOne(new EntityWrapper<WrkMastCrn>().eq("wrk_no", wrkMast.getWrkNo()));
+                        if (Cools.isEmpty(wrkMastCrn)){
+                            BasDevp basDevpOther = basDevpService.selectById(staNoOther(staNo));
+                            if (basDevpOther.getWrkNo()!=0 && basDevpOther.getLoading().equals("Y") && basDevpOther.getAutoing().equals("Y") && basDevpOther.getInEnable().equals("Y")){
+                                WrkMast wrkMastOther = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevpOther.getWrkNo()));
+                                if(Cools.isEmpty(wrkMastOther)){
+                                    continue;
+                                }
+                                if (wrkMastOther.getWrkSts()!=2){
+                                    continue;
+                                }
+                                if (!Cools.isEmpty(wrkMast)){
+                                    ReturnT<String> result = wrkMastCrnHandler.start(wrkMast,wrkMastOther);
+                                    if (result.getCode()!=200){
+                                        System.out.println(staNo+"澶辫触锛�");
+                                    }
                                 }
                             }
                         }
@@ -94,21 +102,95 @@
     @Scheduled(cron = "0/3 * * * * ? ")
     private void execute2(){
         for(Integer staNo : CRN_WORK_CU) {
-            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){
-                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);
+//            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){
+//
+//            }
+            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.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;
+//                        BasDevp basDevp = basDevpService.selectById(wrkMast.getStaNoBying());
+//                        if (basDevp.getLoading().equals("Y")
+//                                || !basDevp.getAutoing().equals("Y")
+//                                || (!Cools.isEmpty(basDevp.getWrkNo()) && basDevp.getWrkNo()!=0) ){
+//                            continue;
+//                        }
+//                        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;
+//                        }
                     }
-                }catch (Exception e){
-                    log.error("宸﹀彸鍙屽伐浣嶅爢鍨涙満鎵ц浠诲姟鐢熸垚====銆嬪嚭搴撲换鍔$敓鎴愬紓甯革細"+e.getMessage());
+                    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,sign);
+                                if (result.isSuccess()) {
+//                                    signSmallTurn++;
+//                                    if (signSmallTurn > 2){
+//                                        signSmallTurn = 0;
+//                                    }
+                                    break;
+                                }
+                            }
+                        }
+                    }catch (Exception e){
+                        log.error("宸﹀彸鍙屽伐浣嶅爢鍨涙満鎵ц浠诲姟鐢熸垚====銆嬪嚭搴撲换鍔$敓鎴愬紓甯革細"+e.getMessage());
+                    }
                 }
+//                if (!wrkMasts.isEmpty()){
+//                    signSmallTurn++;
+//                    if (signSmallTurn > 2){
+//                        signSmallTurn = 0;
+//                    }
+//                }
             }
         }
     }

--
Gitblit v1.9.1