From 4d285dd1ffcefbb51908a452e73477cc47300d91 Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期一, 07 四月 2025 17:15:53 +0800
Subject: [PATCH] 还没有写完
---
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 84 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 84 insertions(+), 0 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 88b7277..4bed00e 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -85,6 +85,9 @@
@Autowired
private CrnController crnController;
+ @Autowired
+ private TransferTaskService transferTaskService;
+
public void generateStoreWrkFile1() throws IOException, InterruptedException {
try {
@@ -827,6 +830,9 @@
try {
// 鏍规嵁杈撻�佺嚎plc閬嶅巻
for (DevpSlave devp : slaveProperties.getDevp()) {
+ if (devp.getId() == 2) {
+ continue;
+ }
SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
for (DevpSlave.Sta inSta : devp.getInSta()) {
WrkMast pakout = wrkMastMapper.selectWorkingPakout(inSta.getBackSta());
@@ -985,4 +991,82 @@
}
}
+
+ /**
+ * 杞Щ浠诲姟涓嬪彂
+ */
+ public void transferTaskStart() {
+
+ for (DevpSlave.Sta sta : slaveProperties.getDevp().get(1).getInSta()) {
+ try {
+ // 鑾峰彇鍏ュ簱绔欎俊鎭�
+ DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2);
+ StaProtocol staProtocol = devpThread.getStation().get(sta.getStaNo());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0)) {
+ // 鏌ヨ宸ヤ綔妗�
+ TransferTask transferTask = transferTaskService.selectByStartPoint(sta.getStaNo());
+ if (transferTask == null) {
+ continue;
+ }
+ log.info("涓嬪彂杈撻�佺嚎杞Щ浠诲姟锛歵askWrk:" + JSON.toJSONString(transferTask));
+ staProtocol.setWorkNo(transferTask.getWrkNo().shortValue());
+ staProtocol.setStaNo(transferTask.getTargetPoint().shortValue());
+ 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(transferTask));
+ transferTask.setStatus(2);
+ transferTaskService.updateById(transferTask);
+ } else {
+ log.error("涓嬪彂杈撻�佺嚎浠诲姟澶辫触锛歵askWrk:" + JSON.toJSONString(transferTask));
+ }
+ }
+ } catch (Exception e) {
+ log.error("杞Щ浠诲姟寮傚父:寮傚父淇℃伅锛�" + e);
+ }
+ }
+
+ }
+
+ /**
+ * 杞Щ浠诲姟瀹屾垚
+ */
+ public void transferTaskEnd() {
+ for (DevpSlave.Sta sta : slaveProperties.getDevp().get(1).getInSta()) {
+ try {
+ // 鑾峰彇缁堢偣绔�
+ DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, 2);
+ StaProtocol staProtocol = devpThread.getStation().get(sta.getOverSta());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ if (staProtocol.isAutoing() && staProtocol.isLoading() && (staProtocol.getWorkNo() == 0 || staProtocol.getStaNo() == 0)) {
+ // 鏌ヨ宸ヤ綔妗�
+ TransferTask transferTask = transferTaskService.selectByEndPoint(sta.getStaNo());
+ if (transferTask == null) {
+ continue;
+ }
+ log.info("杞Щ浠诲姟瀹屾垚锛歵ransferTask:" + JSON.toJSONString(transferTask));
+ transferTask.setStatus(5);
+ transferTaskService.updateById(transferTask);
+ }
+ } catch (Exception e) {
+ log.error("杞Щ浠诲姟寮傚父:寮傚父淇℃伅锛�" + e);
+ }
+ }
+
+ }
+
}
--
Gitblit v1.9.1