From 6d4ae730f093c9bcbb28fd97d8e3ce8867b9d693 Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期三, 01 一月 2025 17:42:02 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 112 +++++++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 99 insertions(+), 13 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 e13029d..dd57260 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -5367,8 +5367,8 @@
case 3:
case 4:
signExecute = jarWrkMastExecuteGenerateJar(signExecute,sign);//纭寲缃愪换鍔�
- case 5:
- signExecute = jarWrkMastExecuteGenerateBurial(signExecute, sign);//鍐峰嵈妲藉彇杈撻�佺嚎
+// case 5:
+// signExecute = jarWrkMastExecuteGenerateBurial(signExecute, sign);//鍐峰嵈妲藉幓杈撻�佺嚎
default:
jarWrkMastExecuteGenerateSte(signExecute,sign);//灏忚溅绉诲姩
// signExecute = jarWrkMastExecuteGenerateBurial(signExecute, sign);//鍐峰嵈妲藉彇杈撻�佺嚎
@@ -5967,9 +5967,9 @@
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;
- }
+// if (basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(),4)!=0 && !basJarMastService.selectJarMastOperation(jarSlave.getJarOtherId(), 4).equals(basJarOther.getJarCount() )){
+// return false;
+// }
// //涓存椂
// if (basJar.getJarCode()==1){
@@ -6462,12 +6462,12 @@
if (jarWrkMastExecuteActionExecute5Three(wrkMastExecute,sign)){
break;
}
- return;
+ continue;
case 6:
if (jarWrkMastExecuteActionExecute6Three(wrkMastExecute,sign)){
break;
}
- return;
+ continue;
}
}
} catch (Exception e){
@@ -7202,7 +7202,7 @@
return false;
}
//璋冭溅 == > 鍙栬揣
- if (!jarSteTake(wrkMastExecute,SteLocaType.POINT23.id,SteLocaType.POINT25.id,SteTaskModeType.STE_WFFH_13,false,SteAndJarUtil.getBJarNo(wrkMastExecute.getJarId()))){
+ if (!jarSteTake(wrkMastExecute,SteLocaType.POINT23.id,SteLocaType.POINT26.id,SteTaskModeType.STE_WFFH_13,false,SteAndJarUtil.getBJarNo(wrkMastExecute.getJarId()))){
log.error("绌挎鏉縎te鍛戒护涓嬪彂澶辫触锛宻te鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}",
wrkMastExecute.getJarId(), JSON.toJSONString(wrkMastExecute), JSON.toJSONString(jarProtocol),sign);
}
@@ -7927,26 +7927,88 @@
switch (sign){
case 1:
if (jarWrkMastExecuteGenerateSteComplete(sign)){
- break;
+ return;
}
case 2:
if (jarWrkMastExecuteGenerateJarComplete(sign)){
- break;
+ return;
}
case 3:
if (jarWrkMastExecuteGenerateRgvComplete1(sign)){
- break;
+ return;
}
case 4:
if (jarWrkMastExecuteGenerateRgvComplete2(sign)){
- break;
+ return;
}
default:
- return;
+ break;
}
+ jarWrkMastExecuteGenerateDevComplete(sign);
}catch (Exception e){
log.error("JarWrkMastExecute浠诲姟瀹屾垚鎶ラ敊锛�"+e);
}
+ }
+
+ /**
+ * JarWrkMastExecute浠诲姟瀹屾垚 ===>Devp //瀹屾垚
+ */
+ public synchronized boolean jarWrkMastExecuteGenerateDevComplete(Integer sign) {
+ try{
+ // 鏍规嵁杈撻�佺嚎plc閬嶅巻
+ for (DevpSlave devp : slaveProperties.getDevp()) {
+ // 閬嶅巻鍏ュ簱鍙�
+ for (DevpSlave.Sta inSta : devp.getOutJarInSta()) {
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+ StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ // 鍒ゆ柇鏄惁婊¤冻鏉′欢
+ if (staProtocol.isAutoing()
+ && staProtocol.isLoading()
+ && staProtocol.isInEnable()
+ && staProtocol.getWorkNo() == 0
+ && staProtocol.isPakMk()) {
+ for (DevpSlave.Jar jar : inSta.getJarList()) {
+ // 鍒ゆ柇閲嶅宸ヤ綔妗�
+ List<BasJarMast> basJarMastList = basJarMastService.getJarMastByJarIdAndStatusListB(jar.getBurial(), new ArrayList<Integer>() {{
+ add(9);
+ add(11);
+ }});
+ if (basJarMastList.isEmpty()){
+ continue;
+ }
+ BasJarMast jarMastByWrkNo = basJarMastList.get(0);
+ jarMastByWrkNo.setStatus(jarMastByWrkNo.getStatusComplete(6));
+
+
+ StaProtocol staProtocolNew = new StaProtocol();
+ staProtocolNew.setSiteId(staProtocol.getSiteId());
+ staProtocolNew.setWorkNo(basJarMastList.get(0).getWrkNo().intValue());
+ staProtocolNew.setStaNo(jar.getEndStaNo());
+ devpThread.setPakMk(staProtocolNew.getSiteId(), false,7989);
+ boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocolNew));
+ if (!result) {
+ LedErrorThreadUtil.ledErrorThread("鏇存柊plc绔欑偣淇℃伅澶辫触!绔欑偣鍙凤細"+inSta.getStaNo(),inSta.getLed(), LedErrorAreaType.ONE_OTHER.getDesc());
+ throw new CoolException("鏇存柊plc绔欑偣淇℃伅澶辫触");
+ }
+ if (!basJarMastService.updateById(jarMastByWrkNo)){
+ log.error("纭寲鍖哄煙鍒嗘浠诲姟瀹屾垚寮傚父,BasJarMast={},寮傚父淇℃伅={}",JSON.toJSONString(jarMastByWrkNo),"鏇存柊basJarMast澶辫触");
+ throw new CoolException("鏇存柊basJarMast澶辫触");
+ }
+ break;
+ }
+ }
+ }
+ }
+ return true;
+ }catch (Exception e){
+ log.error("JarWrkMastExecute浠诲姟瀹屾垚 ===>Ste鎶ラ敊锛�"+e);
+ }
+ return false;
}
/**
@@ -8090,6 +8152,30 @@
log.error("{}鍙风~鍖栫綈鏌ヨ璁惧妗f鏃犱俊鎭紒锛侊紒",jarProtocol.getJarNo());
continue;
}
+ if (jarProtocol.getJarErr()==0 && (jarProtocol.getStatusType().equals(JarStatusType.WAITING1) || jarProtocol.getStatusType().equals(JarStatusType.MOVING))
+ && jarProtocol.isRightDoor() && jarProtocol.isLeftDoor()
+ && jarProtocol.leftDoorOpen==0 && jarProtocol.leftDoorClose==0 && jarProtocol.rightDoorOpen==0 && jarProtocol.rightDoorClose==0
+ ){
+ List<BasJarMast> basJarMastList = basJarMastService.getJarMastByJarIdAndStatusList(jarSlave.getId(), new ArrayList<Integer>() {{
+ add(6);//纭寲瀹屾垚
+ }});
+ if (!basJarMastList.isEmpty()){
+ WrkMastExecute wrkMastExecuteSou = new WrkMastExecute();
+ wrkMastExecuteSou.setWrkSts(3);
+ List<WrkMastExecute> wrkMastExecuteList = wrkMastExecuteService.selectWrkMastExecuteByWrk(wrkMastExecuteSou);
+ for (WrkMastExecute wrkMastExecute : wrkMastExecuteList){
+ if (wrkMastExecute.getIoType() == 3){
+ wrkMastExecute.setWrkSts(4);
+ if (!wrkMastExecuteService.updateById(wrkMastExecute)){
+ log.error("纭寲缃怞ar鍛戒护淇敼澶辫触===>鏇存柊wrkMastExecute澶辫触锛宩ar鍙�={},浠诲姟鏁版嵁={},纭寲缃愭暟鎹�={},sign={}",
+ wrkMastExecute.getSteId(), JSON.toJSON(wrkMastExecute), JSON.toJSON(jarProtocol),sign);
+ return false;
+ }
+ return true;
+ }
+ }
+ }
+ }
//WAITING2(4, "纭寲瀹屾垚"),
if (jarProtocol.getJarErr()==0 && jarProtocol.getStatusType().equals(JarStatusType.WAITING2)
&& !jarProtocol.isRightDoor() && !jarProtocol.isLeftDoor()
--
Gitblit v1.9.1