From 00274e95817ea11de061b65c22b745c2d6279800 Mon Sep 17 00:00:00 2001
From: lsh <1>
Date: 星期三, 24 一月 2024 18:37:45 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 77 +++++++++++++++++++++++++-------------
1 files changed, 51 insertions(+), 26 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 7aeadc4..0c3d176 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -98,6 +98,8 @@
private WrkMastStaMapper wrkMastStaMapper;
@Autowired
private BasRgvMapMapper basRgvMapMapper;
+ @Autowired
+ private RgvOneSignMapper rgvOneSignMapper;
@Value("${wms.url}")
private String wmsUrl;
@@ -602,6 +604,11 @@
case 5://鏀�//鎷嗙洏
stnToCrnStnPick4();
return;
+ default:
+ return;
+ }
+ } else if (staProtocol.isAutoing() && staProtocol.isLoading()){
+ switch (sign){
case 3://婊℃斁
case 6://婊℃斁
stnToCrnStnPick5();
@@ -618,8 +625,7 @@
* 2妤�212鍛煎彨绌烘澘
*/
public synchronized void stnToCrnStnPick3() {
- int workNo = 20211;
- WrkMast wrkMast = wrkMastMapper.selectPakInStep3(workNo);
+ WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne212();
if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=61){//61銆佺瓑寰呯┖鏉�
return;
}
@@ -640,7 +646,7 @@
|| (staProtocol.getWorkNo()>9899 && staProtocol.getWorkNo()<10000)) ){
boolean result1 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol));
- staProtocol.setWorkNo(workNo-1);
+ staProtocol.setWorkNo(wrkMast.getWrkNo()-1);
staProtocol.setStaNo(driveSta.getStaNo()==215? 217:221);
boolean result2 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
if (!result2) {
@@ -660,8 +666,7 @@
* 2妤�212鍛煎彨绌烘澘
*/
public synchronized void stnToCrnStnPick4() {
- int workNo = 20211;
- WrkMast wrkMast = wrkMastMapper.selectPakInStep3(workNo);
+ WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne212();
if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=62){//62銆佺瓑寰呭皬杞︽惉杩�
return;
}
@@ -686,10 +691,10 @@
}
if (staProtocol212.isAutoing() && !staProtocol212.isLoading() && staProtocol212.getWorkNo()==0){
if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo()==0
- || (staProtocol.getWorkNo()>9899 && staProtocol.getWorkNo()<10000) || staProtocol.getWorkNo()==20210) ){
- boolean result1 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol));
+ || (staProtocol.getWorkNo()>9899 && staProtocol.getWorkNo()<10000) || staProtocol.getWorkNo()==wrkMast.getWrkNo()-1) ){
+// boolean result1 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(3, staProtocol));
- staProtocol.setWorkNo(workNo-1);
+ staProtocol.setWorkNo(wrkMast.getWrkNo());
staProtocol.setStaNo(212);
boolean result2 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
if (!result2) {
@@ -698,7 +703,7 @@
wrkMast.setWrkSts(63L);
wrkMastMapper.updateById(wrkMast);
- boolean result3 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(4, staProtocol));
+// boolean result3 = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(4, staProtocol));
return;
}
}
@@ -710,8 +715,7 @@
* 2妤�212鍛煎彨绌烘澘
*/
public synchronized void stnToCrnStnPick5() {
- int workNo = 20211;
- WrkMast wrkMast = wrkMastMapper.selectPakInStep3(workNo);
+ WrkMast wrkMast = wrkMastMapper.selectWrkMastUnstackingOne212();
if (Cools.isEmpty(wrkMast) || wrkMast.getWrkSts()!=63){//63銆佺瓑寰呭畬鎴�
return;
}
@@ -724,13 +728,13 @@
} else {
staProtocol = staProtocol.clone();
}
- if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.getWorkNo()==workNo ){
- boolean result1 = MessageQueue.offer(SlaveType.Devp, 2, new Task(3, staProtocol));
+ if (staProtocol.isAutoing() && staProtocol.isLoading()){
+// boolean result1 = MessageQueue.offer(SlaveType.Devp, 2, new Task(3, staProtocol));
wrkMast.setWrkSts(64L);
wrkMastMapper.updateById(wrkMast);
- boolean result3 = MessageQueue.offer(SlaveType.Devp, 2, new Task(4, staProtocol));
+// boolean result3 = MessageQueue.offer(SlaveType.Devp, 2, new Task(4, staProtocol));
return;
}
}
@@ -1441,6 +1445,13 @@
if (wrkMast.getIoType() < 100 || wrkMast.getSourceStaNo() == null) {
log.error("鏌ヨ宸ヤ綔妗f暟鎹笉绗﹀悎鏉′欢--鍏ュ嚭绫诲瀷/绔欑偣, 宸ヤ綔鍙�={}锛屾簮搴撲綅={}锛屽叆鍑虹被鍨�={}", wrkMast.getWrkNo(), wrkMast.getSourceLocNo(), wrkMast.getIoType());
continue;
+ }
+ //閫�搴撴ā寮忚烦杩�118銆�119鍑哄簱浠诲姟
+ if (wrkMast.getStaNo()==118 || wrkMast.getStaNo()==119){
+ RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign();
+ if (Cools.isEmpty(rgvOneSign) || rgvOneSign.getRgvOneSign()==1){
+ continue;
+ }
}
// 鑾峰彇婧愬簱浣嶄俊鎭�
LocMast sourceSta = locMastService.selectById(wrkMast.getSourceLocNo());
@@ -2167,6 +2178,10 @@
*/
public synchronized void storeEmptyPlt3() {
try{
+ RgvOneSign rgvOneSign = rgvOneSignMapper.selectOneSign();
+ if (Cools.isEmpty(rgvOneSign) || rgvOneSign.getRgvOneSign()==1){
+ return;
+ }
for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgvSlave.getId());
RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
@@ -2286,6 +2301,10 @@
ledCommand.setTitle("鐩樼偣鍑哄簱");
break;
case 110:
+ ledCommand.setTitle("绌烘澘鍑哄簱");
+ ledCommand.setEmptyMk(true);
+ break;
+ case 212:
ledCommand.setTitle("绌烘澘鍑哄簱");
ledCommand.setEmptyMk(true);
break;
@@ -3043,7 +3062,7 @@
// 鏃犳嫞鏂欐暟鎹�
continue;
}
- if (!wrkMast.getSheetNo().equals("2") || wrkMast.getIoType()<100 || wrkMast.getWrkSts()!=14){
+ if (Cools.isEmpty(wrkMast.getSheetNo()) || !wrkMast.getSheetNo().equals("2") || wrkMast.getIoType()<100 || wrkMast.getWrkSts()!=14){
continue;
}
if (wrkMast.getIoType()==101){
@@ -3235,9 +3254,9 @@
&& staProtocol.isLoading()
&& basDevp.getReportSign()==0
) {//&& staProtocol.isPakMk() && !Cools.isEmpty(barcode)) {
- if (true){
- return;
- }
+// if (true){
+// return;
+// }
//浠诲姟瀹屾垚
boolean result1 = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(3, staProtocol135));
@@ -3246,7 +3265,8 @@
}catch (Exception e){ }
basDevp135.setReportSign(2);
basDevpService.updateById(basDevp135);
- staProtocol135.setWorkNo(32222);
+ int workNo = commonService.getWorkNo(7);
+ staProtocol135.setWorkNo(workNo);
staProtocol135.setStaNo(144);
devpThread.setPakMk(staProtocol135.getSiteId(), false);
boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol135));
@@ -3416,7 +3436,8 @@
/**
* 鍏ュ嚭搴� ===>> 灏忚溅浣滀笟涓嬪彂
*/
- public synchronized void rgvIoExecute(Integer sign) {
+ public synchronized boolean rgvIoExecute(Integer sign) {
+ boolean rgvIoExecuteSign = false;
try{
for (RgvSlave rgvSlave:slaveProperties.getRgv()) {
// 鑾峰彇灏忚溅淇℃伅
@@ -3465,7 +3486,7 @@
break;
}
}
- for (int signCount = 1;!signWork && signCount<8;signCount++){
+ for (int signCount = 1;!signWork && signCount<7;signCount++){
switch (signCount){
case 1://鎵ц灏忚溅璐х墿鎼繍浠诲姟
signWork = rgvRunWrkMastFullSta();
@@ -3486,18 +3507,22 @@
// signWork = rgvRunWrkMastEmptyStaPut();
break;
default:
- if (sign>6){
- rgvRunWrkMastEmptyStaAvoidance();//閬胯
- signWork = true;
- }
break;
}
}
-
+ if (!rgvIoExecuteSign){
+ rgvIoExecuteSign = signWork;
+ }
+ }
+ if (!rgvIoExecuteSign){
+ if (sign>6){
+ rgvRunWrkMastEmptyStaAvoidance();//閬胯
+ }
}
}catch (Exception e){
log.error("RGV灏忚溅浠诲姟涓嬪彂鎶ラ敊"+e);
}
+ return rgvIoExecuteSign;
}
/**
* 鎵ц灏忚溅鎼繍浠诲姟
--
Gitblit v1.9.1