From 220508203309f181f14cb551f9195134b89211ac Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期四, 06 六月 2024 13:25:28 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/service/impl/MainServiceImpl.java | 86 +++++++++++++++++++++++++++++--------------
1 files changed, 58 insertions(+), 28 deletions(-)
diff --git a/src/main/java/com/zy/service/impl/MainServiceImpl.java b/src/main/java/com/zy/service/impl/MainServiceImpl.java
index 786003a..feb3c7f 100644
--- a/src/main/java/com/zy/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/service/impl/MainServiceImpl.java
@@ -127,7 +127,13 @@
// 灏哄妫�娴嬪紓甯�
boolean back = false;
String errMsg = "";
- if (staProtocol.isFrontErr()) {
+ if ((staProtocol.getSiteId() == 101 && devpThread.ioModeOf101 == IoModeType.PAKOUT_MODE)
+ ||(staProtocol.getSiteId() == 103 && devpThread.ioModeOf103 == IoModeType.PAKOUT_MODE)
+ ||(staProtocol.getSiteId() == 305 && devpThread.ioModeOf305 == IoModeType.PAKOUT_MODE)) {
+ errMsg = "褰撳墠涓哄嚭搴撴ā寮�";
+ back = true;
+ }
+ if (!back && staProtocol.isFrontErr()) {
errMsg = "鍓嶈秴闄�";
back = true;
}
@@ -289,7 +295,7 @@
}
// // 鍏ュ嚭搴撴ā寮忓垽鏂�
- if (inSta.getStaNo() == 203 && devpThread.ioModeOf2F != IoModeType.PAKIN_MODE) {
+ if (inSta.getStaNo() == 203 && devpThread.ioModeOf101 != IoModeType.PAKIN_MODE) {
continue;
}
@@ -859,7 +865,7 @@
continue;
}
// 鑾峰彇宸ヤ綔鐘舵�佷负2锛堣澶囦笂璧帮級鐨勫叆搴撳伐浣滄。
- WrkMast wrkMast = wrkMastMapper.selectPakInStep2(slave.getId(), staProtocol.getWorkNo().intValue(), crnStn.getStaNo());
+ WrkMast wrkMast = wrkMastMapper.selectPakInStep2(slave.getId(), staProtocol.getWorkNo(), crnStn.getStaNo());
if (null == wrkMast) {
News.infoNoLog(""+mark+" - 1"+" - 4"+" - 鏌ヨ鏃犲緟鍏ュ簱鏁版嵁--wrk_sts=2, 宸ヤ綔鍙�={}", staProtocol.getWorkNo());
// log.error("鏌ヨ鏃犲緟鍏ュ簱鏁版嵁--wrk_sts=2, 宸ヤ綔鍙�={}", staProtocol.getWorkNo());
@@ -1017,6 +1023,12 @@
// News.infoNoLog(""+mark+" - 2"+" - 4"+" - 鍏ュ嚭搴撴ā寮忥紙姝ゅ鍑哄簱鏂规硶锛屽嚭搴撴ā寮忕户缁�=="+devpThread.ioModeOf2F);
// continue;
// }
+ // 鍏ュ嚭搴撴ā寮忓垽鏂�
+ if ((staProtocol.getSiteId() == 101 && devpThread.ioModeOf101 != IoModeType.PAKOUT_MODE)
+ || (staProtocol.getSiteId() == 103 && devpThread.ioModeOf103 != IoModeType.PAKOUT_MODE)
+ || (staProtocol.getSiteId() == 305 && devpThread.ioModeOf305 != IoModeType.PAKOUT_MODE)) {
+ continue;
+ }
// 鏌ヨ绔欑偣璇︾粏淇℃伅
BasDevp staDetl = basDevpService.selectById(crnStn.getStaNo());
@@ -2119,47 +2131,61 @@
// 鏍规嵁杈撻�佺嚎plc閬嶅巻
for (DevpSlave devp : slaveProperties.getDevp()) {
SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
-
- for (DevpSlave.Sta inSta : devp.getInSta()) {
- if (inSta.getStaNo() == 2) {
- continue;
- }
- WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getStaNo());
- switch (inSta.getStaNo()) {
- case 203://1F
+ Integer[] staNos;
+ if (devp.getId() == 1) {
+ staNos = new Integer[]{101, 103};
+ }else {
+ staNos = new Integer[]{305};
+ }
+ for (Integer staNo : staNos) {
+ WrkMast pakout = wrkMastMapper.selectWorkingPakout(staNo);
+ switch (staNo) {
+ case 101://1F
if (pakout != null) {
- if (devpThread.ioModeOf2F != IoModeType.PAKOUT_MODE) {
+ if (devpThread.ioModeOf101 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
- devpThread.ioModeOf2F = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
- if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
- && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
- && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
+ devpThread.ioModeOf101 = IoModeType.PAKOUT_BOOTING;
+ WrkMast pakin = wrkMastMapper.selectWorkingPakin(staNo);
+ if (pakin == null) {
// 鍑哄簱妯″紡
- devpThread.ioModeOf2F = IoModeType.PAKOUT_MODE;
+ devpThread.ioModeOf101 = IoModeType.PAKOUT_MODE;
}
}
} else {
// 鍏ュ簱妯″紡
- devpThread.ioModeOf2F = IoModeType.PAKIN_MODE;
+ devpThread.ioModeOf101 = IoModeType.PAKIN_MODE;
}
break;
- case 401://1F
+ case 103://1F
if (pakout != null) {
- if (devpThread.ioModeOf4F != IoModeType.PAKOUT_MODE) {
+ if (devpThread.ioModeOf103 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
- devpThread.ioModeOf4F = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
- if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
- && !devpThread.getStation().get(inSta.getStaNo() + 1).isLoading()
- && devpThread.getStation().get(inSta.getStaNo() + 1).getWorkNo() == 0) {
+ devpThread.ioModeOf103 = IoModeType.PAKOUT_BOOTING;
+ WrkMast pakin = wrkMastMapper.selectWorkingPakin(staNo);
+ if (pakin == null) {
// 鍑哄簱妯″紡
- devpThread.ioModeOf4F = IoModeType.PAKOUT_MODE;
+ devpThread.ioModeOf103 = IoModeType.PAKOUT_MODE;
}
}
} else {
// 鍏ュ簱妯″紡
- devpThread.ioModeOf4F = IoModeType.PAKIN_MODE;
+ devpThread.ioModeOf103 = IoModeType.PAKIN_MODE;
+ }
+ break;
+ case 305://1F
+ if (pakout != null) {
+ if (devpThread.ioModeOf305 != IoModeType.PAKOUT_MODE) {
+ // 鍑哄簱鍒囨崲涓�
+ devpThread.ioModeOf305 = IoModeType.PAKOUT_BOOTING;
+ WrkMast pakin = wrkMastMapper.selectWorkingPakin(staNo);
+ if (pakin == null) {
+ // 鍑哄簱妯″紡
+ devpThread.ioModeOf305 = IoModeType.PAKOUT_MODE;
+ }
+ }
+ } else {
+ // 鍏ュ簱妯″紡
+ devpThread.ioModeOf305 = IoModeType.PAKIN_MODE;
}
break;
}
@@ -2174,6 +2200,10 @@
}
+ /**
+ * 骞舵澘锛屾嫞鏂欙紝鐩樼偣鍑哄簱锛岀姸鎬佷负14.宸插嚭搴撴湭纭锛屾洿鏂癱tnNo涓篩
+ * @param mark 鏍囪瘑
+ */
public synchronized void outOfDevp(Integer mark) {
List<WrkMast> wrkMasts = wrkMastMapper.selectPick();
--
Gitblit v1.9.1