From 00740040ee7185d0a84a408b289400fab1c13428 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期三, 16 十月 2024 17:08:17 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/core/enums/RgvStatusType.java | 22 ++++++-----
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 73 ++++++++++++++++++++++++++++++++++++
src/main/java/com/zy/core/MainProcess.java | 3 +
3 files changed, 87 insertions(+), 11 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 c05f38f..a03ebb5 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -1,9 +1,36 @@
package com.zy.asrs.service.impl;
+import com.alibaba.fastjson.JSON;
+import com.core.common.Cools;
+import com.zy.asrs.entity.BasRgv;
+import com.zy.asrs.entity.BasSte;
+import com.zy.asrs.service.BasDevpService;
+import com.zy.asrs.utils.Utils;
+import com.zy.core.DevpThread;
+import com.zy.core.News;
+import com.zy.core.cache.MessageQueue;
+import com.zy.core.cache.SlaveConnection;
+import com.zy.core.enums.*;
+import com.zy.core.model.DevpSlave;
+import com.zy.core.model.RgvSlave;
+import com.zy.core.model.SteSlave;
+import com.zy.core.model.Task;
+import com.zy.core.model.command.SteCommand;
+import com.zy.core.model.protocol.RgvProtocol;
+import com.zy.core.model.protocol.StaProtocol;
+import com.zy.core.model.protocol.SteProtocol;
+import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.RgvThread;
+import com.zy.core.thread.SiemensDevpThread;
+import com.zy.core.thread.SteThread;
import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.Map;
/**
* 绔嬩綋浠撳簱WCS绯荤粺涓绘祦绋嬩笟鍔�
@@ -14,4 +41,50 @@
@Transactional
public class MainServiceImpl {
+ @Autowired
+ private SlaveProperties slaveProperties;
+ @Autowired
+ private BasDevpService basDevpService;
+ @Autowired
+ private BasRgvServiceImpl basRgvService;
+
+ /**
+ * 绔欑偣浠诲姟妫�娴� 涓嬪彂灏忚溅鍙栨斁浠诲姟
+ */
+ public synchronized void DevpTaskNoRun() {
+ for (DevpSlave devp : slaveProperties.getDevp()) {
+ // 閬嶅巻绌烘澘鍏ュ簱鍙�
+ for (DevpSlave.Sta sta : devp.getInSta()) {
+ // 鑾峰彇绌烘澘鍏ュ簱绔欎俊鎭�
+ SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+ StaProtocol staProtocol = devpThread.getStation().get(sta.getStaNo());
+ if (staProtocol == null) {
+ continue;
+ } else {
+ staProtocol = staProtocol.clone();
+ }
+ }
+ }
+ }
+
+ public synchronized void loopSteCharge() {
+ for (RgvSlave rgv : slaveProperties.getRgv()) {
+ RgvThread rgvThread = (RgvThread) SlaveConnection.get(SlaveType.Rgv, rgv.getId());
+ RgvProtocol rgvProtocol = rgvThread.getRgvProtocol();
+ BasRgv basRgv = basRgvService.selectById(rgv.getId());
+ if (Cools.isEmpty(rgvProtocol, basRgv)) { continue; }
+ try {
+ // 鍦ㄧ嚎 绌洪棽 鏃犱綔涓氭爣璁� 涓嶅湪鍏呯數
+ if (rgvProtocol.getMode() == 0
+ || !rgvProtocol.statusType.equals(RgvStatusType.IDLE)
+ || basRgv.getPakMk().equals("Y")
+// || steProtocol.getChargeStatus() == 1
+ ) {
+ continue;
+ }
+ } catch (Exception e) {
+ News.error("fail", e);
+ }
+ }
+ }
}
diff --git a/src/main/java/com/zy/core/MainProcess.java b/src/main/java/com/zy/core/MainProcess.java
index 2703d47..8e9246c 100644
--- a/src/main/java/com/zy/core/MainProcess.java
+++ b/src/main/java/com/zy/core/MainProcess.java
@@ -55,7 +55,8 @@
continue;
}
-
+ // 绌挎杞� ===>> 灏忚溅鐢甸噺妫�娴嬪厖鐢�
+ mainService.loopSteCharge();
} catch (Exception e) {
diff --git a/src/main/java/com/zy/core/enums/RgvStatusType.java b/src/main/java/com/zy/core/enums/RgvStatusType.java
index 583ee82..b5d86cb 100644
--- a/src/main/java/com/zy/core/enums/RgvStatusType.java
+++ b/src/main/java/com/zy/core/enums/RgvStatusType.java
@@ -3,16 +3,18 @@
public enum RgvStatusType {
NONE(-1, "绂荤嚎","#4A4035"),
- IDLE(0, "绌洪棽","#1F3696"),
- WORKING(1, "浣滀笟涓�","#2196F3"),
- SOS(2, "鎶ヨ","#2196F3"),
- FETCHING(11, "鍙栬揣涓�","#2196F3"),
- PUTTING(12, "鏀捐揣涓�","#2196F3"),
- WAITING(90, "浠诲姟瀹屾垚绛夊緟WCS纭","#E2C027"),
- FETCHWAITING(91, "鍙栬揣浠诲姟瀹屾垚绛夊緟WCS纭","#2196F3"),
- SOS99(99, "鎶ヨ99","#2196F3"),
- SOS100(100, "鍏跺畠100","#2196F3"),
- SOSSUPER(999, "鍏跺畠","#2196F3")
+ IDLE(0, "鏃犱换鍔�","#1F3696"),
+ WORKING(1, "鍙栬揣琛岃蛋","#2196F3"),
+ SOS(2, "杩涚珯杩愯涓�","#2196F3"),
+ FETCHING(3, "杩涚珯瀹屾垚","#2196F3"),
+ PUTTING(4, "鏈夌墿寰呭嚭绔�","#2196F3"),
+ WAITING(5, "鍑虹珯琛岃蛋","#E2C027"),
+ FETCHWAITING(6, "鍑虹珯璇锋眰","#2196F3"),
+ SOS99(7, "鍑虹珯杩愯涓�","#2196F3"),
+ SOS100(8, "鍑虹珯瀹屾垚","#2196F3"),
+ SOS1001(11, "婕父","#2196F3"),
+ SOS1002(100, "浠诲姟鎵ц瀹屾垚","#2196F3"),
+ SOSSUPER(999, "鏈煡","#2196F3")
;
public Integer id;
--
Gitblit v1.9.1