From 649f2e387786c86e248a8e031979c3fb67a5e39d Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期二, 20 八月 2024 14:43:56 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   88 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 81 insertions(+), 7 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 9b6900c..02db0a4 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -60,7 +60,7 @@
     private static final int[][] execute = new int[][]{{1,4},{2,4},{3,4},{4,4},{5,6},{6,6},{7,4},{8,4},{9,3},{10,4},{11,4}};
 
     private static final Integer jarMaxLoc = 7;
-    private static final Float jarTemperature = 80F;
+    private static final Float jarTemperature = 50F;
     @Autowired
     private CommonService commonService;
     @Autowired
@@ -4835,8 +4835,28 @@
                             if (basJarMastService.selectJarMastOperation(jarSlave.getId(),2)!=0){
                                 break;
                             }
-                            if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),3)!=0){
+                            BasJar basJar = basJarMapper.selectById(jarSlave.getId());
+                            int count = basJarMastService.selectCount(new EntityWrapper<BasJarMast>().eq("jar_regin", basJar.getRegion()).lt("status", 17).gt("status", 11));
+                            if (count>0){
                                 break;
+                            }
+                            if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),3)!=0){
+                                if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),3)==7){
+                                    JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId());
+                                    JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol();
+                                    if (jarOtherProtocol == null) {
+                                        break;
+                                    }
+                                    if (jarOtherProtocol.getJarTemperature()>jarTemperature){
+                                        log.info("{}鍙风~鍖栫綈鏌ヨ璁惧娓╁害杩囬珮锛岀瓑寰呴檷娓�....鍏堟墽琛屽叆缃愪换鍔★紒锛侊紒",jarOtherProtocol.getJarNo());
+                                    } else {
+                                        if (basJarMastService.getJarMastByJarIdCount(jarSlave.getId())>0){
+                                            log.info("{}鍙风~鍖栫綈鏌ヨ璁惧娓╁害杩囬珮锛屽厛鎵ц浜嗗叆缃愪换鍔★紝鎵ц瀹屾瘯鍐嶈繘琛屽喎鍗达紒锛侊紒",jarOtherProtocol.getJarNo());
+                                        } else {
+                                            break;
+                                        }
+                                    }
+                                }
                             }
                             if (basJarMastService.getJarMastByJarIdCount(jarSlave.getId())>=jarMaxLoc*2){
                                 break;
@@ -5310,6 +5330,11 @@
                             return false;
                         }
 
+                        int count = basJarMastService.selectCount(new EntityWrapper<BasJarMast>().eq("jar_regin", basJar.getRegion()).lt("status", 17).gt("status", 11));
+                        if (count>0){
+                            return false;
+                        }
+
                         //闂ㄤ綔涓�  鏃�
                         //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂��   Other宸﹂棬鍏抽棴
                         if (jarProtocol.isAutoing() && jarProtocol.jarErr==0
@@ -5441,9 +5466,11 @@
             if (basJarMastList.size() != jarMaxLoc){
                 return false;
             }
-            if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=0&&(basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=7)){
-                return false;
-            }
+//            if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=0
+//                    && basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=7
+//                    && basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=14){
+//                return false;
+//            }
 
             BasJarMast basJarMastSign = basJarMastList.get(0);
             if (Cools.isEmpty(basJarMastSign)){
@@ -5528,7 +5555,7 @@
             if (basJarMastList10.size()==jarMaxLoc){
                 return false;
             }
-            if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0){
+            if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0 && basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=7){
                 return false;
             }
 
@@ -5572,6 +5599,22 @@
                 if (Cools.isEmpty(basJar)){
                     log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo());
                     return false;
+                }
+
+                //涓存椂
+                if (basJar.getJarCode()==1){
+                    JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId());
+                    JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol();
+                    if (jarOtherProtocol == null) {
+                        return false;
+                    }
+
+                    if (!jarOtherProtocol.isAutoing() || jarOtherProtocol.jarErr!=0
+                            || !jarOtherProtocol.isLeftDoor() || !jarOtherProtocol.isRightDoor()
+                            || jarOtherProtocol.leftDoorOpen==1  || jarOtherProtocol.leftDoorClose==1 || jarOtherProtocol.rightDoorOpen==1  || jarOtherProtocol.rightDoorClose==1){
+                        log.error("{}鍙风~鍖栫綈鏌ヨ璁惧涓嶆弧瓒冲墠寰�鍐峰嵈姹犳潯浠讹紝浠e彿2纭寲缃愰棬娌″紑锛侊紒锛�",jarOtherProtocol.getJarNo());
+                        return false;
+                    }
                 }
 
                 //闂ㄤ綔涓�  鏃�
@@ -8144,7 +8187,38 @@
                     if(basJarMastList.isEmpty()){
                         if (wrkMastExecuteService.selectNoStartCharge(steSlave.getId())==0){
                             if (wrkMastExecuteService.selectMoveStart(steSlave.getId())==0){
-                                continue;
+                                boolean sign = true;
+                                for (SteSlave.InStn inStn : steSlave.getSteInStn()){
+                                    //妫�娴嬬珯鐐圭姸鎬�
+                                    DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, inStn.getDevpPlcId());
+                                    StaProtocol staProtocol = devpThread.getStation().get(inStn.getStaNo());
+                                    if (staProtocol == null) {
+                                        continue;
+                                    } else {
+                                        staProtocol = staProtocol.clone();
+                                    }
+                                    if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo() > 0) {
+                                        // 鑾峰彇纭寲缃愪俊鎭�
+                                        JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, inStn.getJarNo());
+                                        JarProtocol jarProtocol = jarThread.getJarProtocol();
+                                        if (jarProtocol == null) {
+                                            continue;
+                                        }
+                                        if (jarProtocol.modeType != JarModeType.AUTO){
+                                            continue;
+                                        }
+                                        if (jarProtocol.statusType .equals(JarStatusType.SOS)){
+                                            continue;
+                                        }
+                                        if (jarProtocol.getJarTemperature()>jarTemperature){
+                                            continue;
+                                        }
+                                        sign = false;
+                                    }
+                                }
+                                if(sign){
+                                    continue;
+                                }
                             }
                         }
                     }

--
Gitblit v1.9.1