From c25ccc2181c8d47936cf86443359e783eedeb018 Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期二, 19 十一月 2024 15:19:57 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 219 +++++++++++++++++++++++++++++++++---------------------
1 files changed, 134 insertions(+), 85 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 e3743a4..da5e0d0 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -3112,7 +3112,11 @@
continue;
}
- if (wrkMast.getStaNo()>300){
+ if (wrkMast.getStaNo()>309){
+ int wrkCount = wrkMastMapper.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).gt("sta_no", 309).lt("sta_no", 314).gt("wrk_sts",11L));
+ if (wrkCount>=12){
+ continue;
+ }
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 1);
StaProtocol staProtocolEnt = devpThread.getStation().get(212);
if (staProtocolEnt.isLoading() || staProtocolEnt.getWorkNo()!=0){
@@ -5116,16 +5120,17 @@
break;
}
BasJar basJar = basJarMapper.selectById(jarSlave.getId());
+ BasJar basJarOther = basJarMapper.selectById(jarSlave.getJarOtherId());
jarMaxLoc = basJar.getJarCount();
- if (jarMaxLoc == 0) {
+ if (jarMaxLoc == 0 || basJarOther.getJarCount() == 0) {
break;
}
- int count = basJarMastService.selectCount(new EntityWrapper<BasJarMast>().eq("jar_regin", basJar.getRegion()).lt("status", 17).gt("status", 11));
+ int count = basJarMastService.selectCount(new EntityWrapper<BasJarMast>().eq("jar_regin", basJar.getRegion()).lt("status", 17).gt("status", 6));
if (count>0){
break;
}
if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),3)!=0){
- if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 3).equals(jarMaxLoc)){
+ if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 3).equals(basJarOther.getJarCount())){
JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId());
JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol();
if (jarOtherProtocol == null) {
@@ -5329,11 +5334,11 @@
case 3:
case 4:
signExecute = jarWrkMastExecuteGenerateJar(signExecute,sign);//纭寲缃愪换鍔�
-// case 5:
-// signExecute = jarWrkMastExecuteGenerateBurial(signExecute, sign);//鍐峰嵈妲藉彇杈撻�佺嚎
- default:
-// jarWrkMastExecuteGenerateSte(signExecute,sign);//灏忚溅绉诲姩
+ case 5:
signExecute = jarWrkMastExecuteGenerateBurial(signExecute, sign);//鍐峰嵈妲藉彇杈撻�佺嚎
+ default:
+ jarWrkMastExecuteGenerateSte(signExecute,sign);//灏忚溅绉诲姩
+// signExecute = jarWrkMastExecuteGenerateBurial(signExecute, sign);//鍐峰嵈妲藉彇杈撻�佺嚎
}
if (!signExecute[0] && !signExecute[1]){
@@ -5458,13 +5463,13 @@
}
//闂ㄤ綔涓� 鏃�
//鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� Other宸﹂棬鍏抽棴
- if (jarProtocol.isAutoing() && jarProtocol.jarErr==0
- && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0){
+ if (jarProtocol.isAutoing() && jarProtocol.jarErr==0){
if (jarWrkMastExecuteGenerate5(jarSlave,sign)){
signExecute[jarSlave.getId()-5] = true;
return signExecute;
//鍐峰嵈瀹屾垚涓婅緭閫佺嚎
}
+ continue;
}
} catch (Exception e){
log.error("{}鍙风~鍖栫綈JarWrkMastExecute浠诲姟鍒涘缓寮傚父,寮傚父鍘熷洜={}",jarSlave.getId(),e.getMessage());
@@ -5473,65 +5478,65 @@
return signExecute;
}
-// public synchronized boolean[] jarWrkMastExecuteGenerateSte(boolean[] signExecute,Integer sign) {
-// for (JarSlave jarSlave : slaveProperties.getJar()) {
-// if (jarSlave.getId()<5){
-// continue;
-// }
-// try{
-// if (signExecute[jarSlave.getId()-5]){
-// continue;
-// }
-// if (wrkMastExecuteService.getWrkMastExecuteByJarIdCount(jarSlave.getId())!=0){
-// continue;
-// }
-//
-// // 鑾峰彇纭寲缃愪俊鎭�
-// JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getId());
-// JarProtocol jarProtocol = jarThread.getJarProtocol();
-// if (jarProtocol == null) {
-// continue;
-// }
-// if (jarProtocol.modeType != JarModeType.AUTO){
-// continue;
-// }
-// if (jarProtocol.getJarTemperature()>jarTemperature){
-// log.error("{}鍙风~鍖栫綈鏌ヨ璁惧娓╁害杩囬珮锛岀瓑寰呴檷娓�....锛侊紒锛�",jarProtocol.getJarNo());
-// continue;
-// }
-//
-// JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId());
-// JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol();
-// if (jarOtherProtocol == null) {
-// continue;
-// }
-//// if (jarOtherProtocol.modeType != JarModeType.AUTO){
-//// continue;
-//// }
-//
-// BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo());
-// if (Cools.isEmpty(basJar)){
-// log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo());
-// continue;
-// }
-// //闂ㄤ綔涓� 鏃�
-// //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� Other宸﹂棬鍏抽棴
-// if (jarProtocol.isAutoing() && jarProtocol.jarErr==0
-// && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0){
-// switch (sign){
-// case 5:
-// if (jarWrkMastExecuteGenerate5(jarSlave,sign)){
-// signExecute[jarSlave.getId()-5] = true;
-// break;
-// }
+ public synchronized boolean[] jarWrkMastExecuteGenerateSte(boolean[] signExecute,Integer sign) {
+ for (JarSlave jarSlave : slaveProperties.getJar()) {
+ if (jarSlave.getId()<5){
+ continue;
+ }
+ try{
+ if (signExecute[jarSlave.getId()-5]){
+ continue;
+ }
+ if (wrkMastExecuteService.getWrkMastExecuteByJarIdCount(jarSlave.getId())!=0){
+ continue;
+ }
+
+ // 鑾峰彇纭寲缃愪俊鎭�
+ JarThread jarThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getId());
+ JarProtocol jarProtocol = jarThread.getJarProtocol();
+ if (jarProtocol == null) {
+ continue;
+ }
+ if (jarProtocol.modeType != JarModeType.AUTO){
+ continue;
+ }
+ if (jarProtocol.getJarTemperature()>jarTemperature){
+ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧娓╁害杩囬珮锛岀瓑寰呴檷娓�....锛侊紒锛�",jarProtocol.getJarNo());
+ continue;
+ }
+
+ JarThread jarOtherThread = (JarThread) SlaveConnection.get(SlaveType.Jar, jarSlave.getJarOtherId());
+ JarProtocol jarOtherProtocol = jarOtherThread.getJarProtocol();
+ if (jarOtherProtocol == null) {
+ continue;
+ }
+// if (jarOtherProtocol.modeType != JarModeType.AUTO){
+// continue;
// }
-// }
-// } catch (Exception e){
-// log.error("{}鍙风~鍖栫綈JarWrkMastExecute浠诲姟鍒涘缓寮傚父,寮傚父鍘熷洜={}",jarSlave.getId(),e.getMessage());
-// }
-// }
-// return signExecute;
-// }
+
+ BasJar basJar = basJarMapper.selectById(jarProtocol.getJarNo());
+ if (Cools.isEmpty(basJar)){
+ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo());
+ continue;
+ }
+ //闂ㄤ綔涓� 鏃�
+ //鑷姩銆佺┖闂层�佸彸闂ㄥ叧闂�� Other宸﹂棬鍏抽棴
+ if (jarProtocol.isAutoing() && jarProtocol.jarErr==0
+ && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0){
+ switch (sign){
+ case 5:
+ if (jarWrkMastExecuteGenerate5(jarSlave,sign)){
+ signExecute[jarSlave.getId()-5] = true;
+ break;//鍑虹~鍖栫綈 ===銆� 鍏ュ喎鍗存Ы
+ }
+ }
+ }
+ } catch (Exception e){
+ log.error("{}鍙风~鍖栫綈JarWrkMastExecute浠诲姟鍒涘缓寮傚父,寮傚父鍘熷洜={}",jarSlave.getId(),e.getMessage());
+ }
+ }
+ return signExecute;
+ }
/**
* JarWrkMastExecute浠诲姟鍒涘缓 //瀹屾垚
@@ -5756,11 +5761,6 @@
List<BasJarMast> basJarMastList = basJarMastService.getJarMastByJarIdAndStatusList(jarSlave.getId(), new ArrayList<Integer>() {{
add(6);
}});
-// if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=0
-// && basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=jarMaxLoc
-// && basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),5)!=jarMaxLoc*2){
-// return false;
-// }
if (basJarMastList.isEmpty()){
return false;
}
@@ -5822,6 +5822,15 @@
log.error("JarWrkMastExecute浠诲姟鍒涘缓===>鎵ц寮傚父===銆嬪紓甯告暟鎹細BasJar:"+ JSON.toJSONString(basJar)+";BasJarMast:"+JSON.toJSONString(basJarMastSign));
}
return true;
+ } else if (jarProtocol.isAutoing() && jarProtocol.statusType != JarStatusType.SOS
+ && jarProtocol.statusType != JarStatusType.WAITING2 && jarProtocol.jarErr==0
+ && jarProtocol.isLeftDoor() && jarProtocol.isRightDoor()
+ && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0){
+ Integer integer = basJarMastService.updateStatus(jarProtocol.getJarNo(), 6, 8);
+ if (basJarMastList.size()!=integer){
+ log.error("{}鍙风~鍖栫綈纭寲瀹屾垚鍚庡紑闂ㄥ畬鎴愪慨鏀圭~鍖栨。妗堢姸鎬佺粨鏋滄暟閲忎笉涓�鑷达紒锛侊紒鏌ヨ璧勬枡鏁伴噺={}锛屾洿鏂拌繑鍥炴暟閲�={}",jarProtocol.getJarNo(),basJarMastList.size(),integer);
+ }
+ return true;
}
return false;
} else {
@@ -5908,7 +5917,24 @@
if (basJarMastList10.size()==jarMaxLoc){
return false;
}
- if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0 && !basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 4).equals(jarMaxLoc)){
+
+ BasJar basJarOther = basJarMapper.selectById(jarSlave.getJarOtherId());
+ if (Cools.isEmpty(basJarOther)){
+ log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarSlave.getJarOtherId());
+ return false;
+ }
+
+ if (basJarOther.getJarCount() == 0) {
+ return false;
+ }
+
+ List<BasJarMast> basJarMastListOther = basJarMastService.getJarMastByJarIdAndStatusList(jarSlave.getJarOtherId(), new ArrayList<Integer>() {{
+ add(8);
+ }});
+ if (!basJarMastListOther.isEmpty() && basJarMastListOther.size() < basJarOther.getJarCount()){
+ return false;
+ }
+ if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0 && !basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 4).equals(basJarOther.getJarCount() )){
return false;
}
@@ -7867,26 +7893,18 @@
try{
switch (sign){
case 1:
- case 5:
- case 9:
if (jarWrkMastExecuteGenerateSteComplete(sign)){
break;
}
case 2:
- case 6:
- case 10:
if (jarWrkMastExecuteGenerateJarComplete(sign)){
break;
}
case 3:
- case 7:
- case 11:
if (jarWrkMastExecuteGenerateRgvComplete1(sign)){
break;
}
case 4:
- case 8:
- case 12:
if (jarWrkMastExecuteGenerateRgvComplete2(sign)){
break;
}
@@ -8099,7 +8117,7 @@
&& (jarProtocol.leftDoorClose==2 || jarProtocol.rightDoorClose==2)){
if (jarProtocol.getJarTemperature()>jarTemperature){
log.error("{}鍙风~鍖栫綈鏌ヨ璁惧娓╁害杩囬珮锛岀瓑寰呴檷娓�....锛侊紒锛�",jarProtocol.getJarNo());
- return false;
+ continue;
}
WrkMastExecute wrkMastExecuteSou = new WrkMastExecute();
wrkMastExecuteSou.setWrkSts(3);
@@ -8670,13 +8688,44 @@
}
}
+ try{
+ for (int idi = 1;idi<5;idi++){
+ LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, idi);
+
+ if (ledThread != null) {
+ ErrMsg errMsg1 = new ErrMsg();
+ errMsg1.setErrMsg("娴嬭瘯锛�"+idi);
+ errMsg1.setArea("1");
+ MessageQueue.offer(SlaveType.Led, idi, new Task(5, errMsg1));
+ } try {
+ Thread.sleep(500);
+ } catch (Exception e){
+
+ }
+ }
+ LedThread ledThread3 = (LedThread) SlaveConnection.get(SlaveType.Led, 3);
+
+ if (ledThread3 != null) {
+ ErrMsg errMsg1 = new ErrMsg();
+ errMsg1.setErrMsg("娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯娴嬭瘯锛�"+3);
+ errMsg1.setArea("1");
+ MessageQueue.offer(SlaveType.Led, 3, new Task(5, errMsg1));
+ } try {
+ Thread.sleep(500);
+ } catch (Exception e){
+
+ }
+ } catch (Exception e){
+
+ }
+
}
public synchronized Integer jarGetStartStaNo(Integer staNo) {
try {
int[] jarNos=new int[]{3,1,4,2};//(607鍒嗛厤纭寲缃�)
ArrayList<Integer> staNos = new ArrayList<Integer>() {{
- add(607);add(608);add(609);add(610);add(611);add(612);
+ add(608);add(609);add(610);add(611);add(612);
add(613);add(614);add(615);add(616);add(617);add(618);
add(619);add(620);add(621);add(622);
}};
@@ -8784,7 +8833,7 @@
DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2);
StaProtocol staProtocolEnt = devpThread.getStation().get(staNoEnt);
if (staProtocolEnt == null || (staProtocolEnt.isLoading() && staProtocolEnt.getWorkNo()==0)){
- log.error("绔欑偣寮傚父,璁℃暟鍔犱竴锛岀珯鐐瑰彿锛�"+staNoEnt);
+// log.error("绔欑偣寮傚父,璁℃暟鍔犱竴锛岀珯鐐瑰彿锛�"+staNoEnt);
count++;
} else if (staProtocolEnt != null && staProtocolEnt.getWorkNo()!=0 && !wrkNoList.contains(staProtocolEnt.getWorkNo())){
if (staProtocolEnt.getStaNo().equals(basJar.getEntStaNo$())){
--
Gitblit v1.9.1