From 663eb6fc29d8de34b6c6a503e2c0013bb93c331d Mon Sep 17 00:00:00 2001
From: Administrator <pjb>
Date: 星期六, 07 六月 2025 19:17:26 +0800
Subject: [PATCH] 123
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 160 +++++++++++++++++++++++++++++-----------------------
1 files changed, 89 insertions(+), 71 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 fa23700..aa03812 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -164,7 +164,7 @@
}
String BoxNo = barcodeThread.getBarcode();
if (Cools.isEmpty(BoxNo)) {
- log.error("{}鍙锋潯鐮佹壂鎻忓け璐ワ紝鍊硷細{}",inSta.getBarcode(),BoxNo);
+ log.error("{}鍙锋潯鐮佹壂鎻忓け璐ワ紝鍊硷細{}", inSta.getBarcode(), BoxNo);
continue;
}
TaskWrk taskWrk1 = taskWrkService.selectOne(new EntityWrapper<TaskWrk>().eq("barcode", BoxNo));
@@ -177,23 +177,29 @@
storageEscalationParam.setWCSErrorMessage(storageEscalationParam.getWCSErrorMessage() + errMsg);
}
storageEscalationParam.setBarcode(BoxNo);
+ storageEscalationParam.setMatIdList(staProtocol.getMatIdList());
log.info("缁勬墭鍏ュ簱={}", storageEscalationParam);
TaskWrk taskWrk = toWmsService.getLocNoFromWms(storageEscalationParam);
if (taskWrk == null) {
- log.error("鍏ュ簱璇锋眰wms鍒涘缓浠诲姟宸ヤ綔妗d负绌猴細{}",storageEscalationParam);
+ log.error("鍏ュ簱璇锋眰wms鍒涘缓浠诲姟宸ヤ綔妗d负绌猴細{}", storageEscalationParam);
continue;
}
if (back) {
- log.info("鎵樼洏閫�鍥�==>{}锛寋}", BoxNo, errMsg);
staProtocol.setStaNo(inSta.getBackSta().shortValue());
devpThread.setPakMk(staProtocol.getSiteId(), false);
MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+ log.info("缁勬墭鍏ュ簱鎵樼洏閫�鍥炲懡浠ゆ帹閫佽緭閫佺嚎闃熷垪鎴愬姛==>{}锛寋}", BoxNo, errMsg);
} else {
StaDesc staDesc = staDescService.selectOne(new EntityWrapper<StaDesc>()
.eq("crn_no", taskWrk.getCrnNo()).eq("type_no", 1).eq("stn_no", staProtocol.getSiteId()));
+ if (staDesc == null) {
+ log.error("缁勬墭鍏ュ簱璺緞涓嶅瓨鍦紝wrkNo={},crn={},stn_no={}", taskWrk.getWrkNo(), taskWrk.getCrnNo(), staProtocol.getSiteId());
+ continue;
+ }
staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue());
staProtocol.setStaNo(staDesc.getCrnStn().shortValue());
MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
+ log.info("缁勬墭鍏ュ簱鍛戒护鎺ㄩ�佽緭閫佺嚎闃熷垪鎴愬姛:{}", staProtocol);
}
}
@@ -213,46 +219,49 @@
for (CrnSlave crnSlave : slaveProperties.getCrn()) {
// 閬嶅巻鍫嗗灈鏈哄嚭搴撶珯
for (CrnSlave.CrnStn crnStn : crnSlave.getCrnOutStn()) {
- try {
- // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
- DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
- StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
- if (staProtocol == null) {
- continue;
- } else {
- staProtocol = staProtocol.clone();
- }
- if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0)) {
- // 鏌ヨ宸ヤ綔妗�
- TaskWrk taskWrk = taskWrkMapper.selectCrnStaWorking(crnSlave.getId(), String.valueOf(crnStn.getStaNo()-1));
- if (taskWrk == null) {
- continue;
- }
- log.info("涓嬪彂杈撻�佺嚎浠诲姟锛歵askWrk:" + JSON.toJSONString(taskWrk));
- staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue());
- staProtocol.setStaNo(Short.valueOf(taskWrk.getTargetPoint()));
- boolean offer = false;
- try {
- offer = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
- } catch (Exception e) {
- log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛氬紓甯�:" + e);
- log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛氬紓甯�:offer:" + offer);
- }
- if (offer) {
- log.info("涓嬪彂杈撻�佺嚎浠诲姟鎴愬姛锛歵askWrk:" + JSON.toJSONString(taskWrk));
- taskWrk.setStatus(5);
- taskWrk.setWrkSts(14);
- taskWrk.setCompleteTime(new Date());
- taskWrkService.updateById(taskWrk);
-
- } else {
- log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛歵askWrk:" + JSON.toJSONString(taskWrk));
- }
-// }
- }
- } catch (Exception e) {
- log.error("鍑哄簱鍒板嚭搴撶珯寮傚父:寮傚父淇℃伅锛�" + e);
+ try {
+ // 鑾峰彇鍫嗗灈鏈哄嚭搴撶珯淇℃伅
+ DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, crnStn.getDevpPlcId());
+ StaProtocol staProtocol = devpThread.getStation().get(crnStn.getStaNo());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
}
+ if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0)) {
+ // 鏌ヨ宸ヤ綔妗�
+ TaskWrk taskWrk = taskWrkMapper.selectCrnStaWorking(crnSlave.getId(), String.valueOf(crnStn.getStaNo() - 1));
+ if (taskWrk == null) {
+ continue;
+ }
+ log.info("涓嬪彂杈撻�佺嚎浠诲姟锛歵askWrk:" + JSON.toJSONString(taskWrk));
+ staProtocol.setWorkNo(taskWrk.getWrkNo().shortValue());
+ staProtocol.setStaNo(Short.valueOf(taskWrk.getTargetPoint()));
+ if (!Cools.isEmpty(taskWrk.getType())) {
+ staProtocol.setHeight(taskWrk.getType());
+ }
+ boolean offer = false;
+ try {
+ offer = MessageQueue.offer(SlaveType.Devp, 1, new Task(2, staProtocol));
+ } catch (Exception e) {
+ log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛氬紓甯�:" + e);
+ log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛氬紓甯�:offer:" + offer);
+ }
+ if (offer) {
+ log.info("涓嬪彂杈撻�佺嚎浠诲姟鎴愬姛锛歵askWrk:" + JSON.toJSONString(taskWrk));
+ taskWrk.setStatus(5);
+ taskWrk.setWrkSts(14);
+ taskWrk.setCompleteTime(new Date());
+ taskWrkService.updateById(taskWrk);
+
+ } else {
+ log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛歵askWrk:" + JSON.toJSONString(taskWrk));
+ }
+// }
+ }
+ } catch (Exception e) {
+ log.error("鍑哄簱鍒板嚭搴撶珯寮傚父:寮傚父淇℃伅锛�" + e);
+ }
// }
}
@@ -342,6 +351,15 @@
continue;
}
+ LocMast locMast = locMastService.selectByLocNo(taskWrk.getTargetPoint());
+ if (!locMast.getLocSts().equals("O") && taskWrk.getWrkSts() == 2) {
+ log.error("鍏ュ簱WMS鍒嗛厤搴撲綅{}鏈夎锛屽簱浣嶇姸鎬佷负{}", locMast.getLocNo(), locMast.getLocSts());
+ taskWrk.setWrkSts(5);
+ taskWrk.setMemo("WMS鍒嗛厤搴撲綅鏈夎");
+ taskWrkService.updateById(taskWrk);
+ continue;
+ }
+
// 鍫嗗灈鏈烘帶鍒惰繃婊�
if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) {
continue;
@@ -419,24 +437,24 @@
LocMast locMast = locMastService.selectByLocNo(taskWrk.getStartPoint());
//鍒ゆ柇鍏跺簱浣嶆槸鍚︿负娣卞簱浣嶏紝濡傛灉涓烘繁搴撲綅鎵惧叾娴呭簱浣嶆槸閮芥湁璐�
- boolean flag = false;
+ int flag = 0;
if (locMast.getRow1() == 1 || locMast.getRow1() == 5 || locMast.getRow1() == 9) {
- flag = true;
+ flag = 1;
} else if (locMast.getRow1() == 4 || locMast.getRow1() == 8 || locMast.getRow1() == 12) {
- flag = true;
+ flag = 2;
}
- if (flag) {
+ if (flag == 1) {
LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>()
- .eq("row1", (locMast.getRow1() - 1))
+ .eq("row1", (locMast.getRow1() + 1))
.eq("bay1", locMast.getBay1())
.eq("lev1", locMast.getLev1()).eq("loc_sts", "F"));
if (!Cools.isEmpty(locMast1)) {
log.info(locMast.getLocNo() + "鍑烘繁搴撲綅锛屾祬搴撲綅鏈夎揣");
continue;
}
- } else {
+ } else if (flag == 2) {
LocMast locMast1 = locMastService.selectOne(new EntityWrapper<LocMast>()
- .eq("row1", (locMast.getRow1() + 1))
+ .eq("row1", (locMast.getRow1() - 1))
.eq("bay1", locMast.getBay1())
.eq("lev1", locMast.getLev1()).eq("loc_sts", "F"));
if (!Cools.isEmpty(locMast1)) {
@@ -856,14 +874,14 @@
}
SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
for (DevpSlave.Sta inSta : devp.getInSta()) {
- WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getBackSta());
+ TaskWrk taskWrk = taskWrkService.selectByTargetPoint(inSta.getBackSta() + "");
switch (inSta.getBackSta()) {
- case 116:
- if (pakout != null) {
+ case 101:
+ if (taskWrk != null) {
if (devpThread.ioModeOf1F1 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf1F1 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -876,12 +894,12 @@
devpThread.ioModeOf1F1 = IoModeType.PAKIN_MODE;
}
break;
- case 117:
- if (pakout != null) {
+ case 104:
+ if (taskWrk != null) {
if (devpThread.ioModeOf1F2 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf1F2 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -894,12 +912,12 @@
devpThread.ioModeOf1F2 = IoModeType.PAKIN_MODE;
}
break;
- case 118:
- if (pakout != null) {
+ case 107:
+ if (taskWrk != null) {
if (devpThread.ioModeOf1F3 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf1F3 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -912,12 +930,12 @@
devpThread.ioModeOf1F3 = IoModeType.PAKIN_MODE;
}
break;
- case 119:
- if (pakout != null) {
+ case 110:
+ if (taskWrk != null) {
if (devpThread.ioModeOf1F4 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf1F4 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -930,12 +948,12 @@
devpThread.ioModeOf1F4 = IoModeType.PAKIN_MODE;
}
break;
- case 120:
- if (pakout != null) {
+ case 113:
+ if (taskWrk != null) {
if (devpThread.ioModeOf1F5 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf1F5 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -949,11 +967,11 @@
}
break;
case 203:
- if (pakout != null) {
+ if (taskWrk != null) {
if (devpThread.ioModeOf2F1 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf2F1 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -968,11 +986,11 @@
break;
case 207:
- if (pakout != null) {
+ if (taskWrk != null) {
if (devpThread.ioModeOf2F2 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf2F2 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
@@ -987,11 +1005,11 @@
break;
case 212:
- if (pakout != null) {
+ if (taskWrk != null) {
if (devpThread.ioModeOf2F3 != IoModeType.PAKOUT_MODE) {
// 鍑哄簱鍒囨崲涓�
devpThread.ioModeOf2F3 = IoModeType.PAKOUT_BOOTING;
- WrkMast pakin = wrkMastMapper.selectWorkingPakin(inSta.getStaNo());
+ TaskWrk pakin = taskWrkService.selectByStartPoint(inSta.getStaNo() + "");
if (pakin == null && !devpThread.getStation().get(inSta.getStaNo()).isLoading()
&& !devpThread.getStation().get(inSta.getBackSta()).isLoading()
&& devpThread.getStation().get(inSta.getBackSta()).getWorkNo() == 0) {
--
Gitblit v1.9.1