From e99caac6b8d8af3a2deb98ab131e9c5305fe4eff Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 10 十月 2022 10:16:06 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 41 +++++++++++++++++++++++++++++++++++++----
1 files changed, 37 insertions(+), 4 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 4f320b2..595c3d6 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -314,9 +314,9 @@
try {
// 淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。
- if (wrkMastMapper.saveWrkDetlLog(wrkMast.getWrkNo()) == 0) {
- throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
- }
+// if (wrkMastMapper.saveWrkDetlLog(wrkMast.getWrkNo()) == 0) {
+// throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏妗e巻鍙叉。澶辫触");
+// }
// 淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗�
if (wrkMastMapper.saveWrkMastLog(wrkMast.getWrkNo()) == 0) {
throw new CoolException("淇濆瓨宸ヤ綔涓绘。鍘嗗彶妗eけ璐�");
@@ -527,6 +527,12 @@
continue;
}
+ // 杩囨护
+ if (null != wrkMastMapper.selectPakout(slave.getId(), null)) {
+ log.error("{}鍏ュ簱浠诲姟鏃犳硶浣滀笟锛屽洜瀛樺湪鍑哄簱涓换鍔�!", wrkMast.getWrkNo());
+ continue;
+ }
+
// 缃《浠诲姟
wrkMast.setIoPri((double) 9999);
wrkMastMapper.updateById(wrkMast);
@@ -534,11 +540,14 @@
// 鐩爣搴撲綅 ===>> 鏈�澶栧眰搴撲綅
if (locMastService.isOutMost(wrkMast.getLocNo())) {
// 鍒ゆ柇灏忚溅鏄惁鍦ㄦ渶澶栧眰搴撲綅锛屽鏋滄槸鍒欐惉璧帮紝濡傛灉涓嶆槸锛屽垯鐩存帴鍫嗗灈鏈哄叆搴�
- Integer steNo = this.hasCarOfIdle(wrkMast.getLocNo());
+ Integer steNo = this.hasCar(wrkMast.getLocNo());
// 鏈夊皬杞�
if (steNo != null) {
// 灏忚溅琛岃蛋鍒板爢鍨涙満寰呮惉绉荤偣
if (wrkMast.getWrkSts() == 2L && wrkMast.getSteNo() == null) {
+// if (null != wrkMastMapper.selectPakin(slave.getId(), steNo)) {
+// continue;
+// }
this.letCarBeReady(wrkMast, steNo, wrkMast.getLocNo());
}
// 灏忚溅鎼蛋
@@ -699,6 +708,12 @@
// 鍫嗗灈鏈烘帶鍒惰繃婊�
if (!crnProtocol.getStatusType().equals(CrnStatusType.IDLE) || crnProtocol.getTaskNo() != 0) {
+ continue;
+ }
+
+ // 杩囨护
+ if (null != wrkMastMapper.selectPakin(slave.getId(), null)) {
+ log.error("{}鍑哄簱浠诲姟鏃犳硶浣滀笟锛屽洜瀛樺湪鍏ュ簱涓换鍔�!", wrkMast.getWrkNo());
continue;
}
@@ -881,6 +896,8 @@
if (locMastService.isOutMost(wrkMast.getSourceLocNo())) {
// 鐩爣搴撲綅 ===>> 鏈�澶栧眰搴撲綅
if (locMastService.isOutMost(wrkMast.getLocNo())) {
+ // todo:luxiaotao 鍒ゆ柇鐩爣搴撲綅鏄惁瀛樺湪灏忚溅锛屽鏋滃瓨鍦紝鍒欐惉璧板皬杞�
+
// 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
CrnCommand crnCommand = new CrnCommand();
crnCommand.setCrnNo(slave.getId()); // 鍫嗗灈鏈虹紪鍙�
@@ -1125,6 +1142,22 @@
/**
* 褰撳墠搴撲綅缁勬槸鍚﹀瓨鍦ㄧ┖闂插皬杞�
*/
+ public Integer hasCar(String locNo) {
+ for (SteSlave ste : slaveProperties.getSte()) {
+ // 鑾峰彇鍫嗗灈鏈轰俊鎭�
+ SteThread steThread = (SteThread) SlaveConnection.get(SlaveType.Ste, ste.getId());
+ SteProtocol steProtocol = steThread.getSteProtocol();
+ if (steProtocol == null) { continue; }
+ if (Utils.getGroupRow(locNo).equals(Utils.getGroupRow(steProtocol.getRow().intValue())) && steProtocol.getBay() == Utils.getBay(locNo) && steProtocol.getLev() == Utils.getLev(locNo)) {
+ return steProtocol.getSteNo().intValue();
+ }
+ }
+ return null;
+ }
+
+ /**
+ * 褰撳墠搴撲綅缁勬槸鍚﹀瓨鍦ㄧ┖闂插皬杞�
+ */
public Integer hasCarOfIdle(String locNo) {
for (SteSlave ste : slaveProperties.getSte()) {
// 鑾峰彇鍫嗗灈鏈轰俊鎭�
--
Gitblit v1.9.1