From 5ac4d85e8e6a80ada870b5c92eb45897c7815b51 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期四, 13 七月 2023 10:41:08 +0800
Subject: [PATCH] rgv
---
src/main/java/com/zy/common/utils/RgvUtils.java | 11 +++++++++++
src/main/java/com/zy/asrs/entity/RgvNode.java | 15 +++++++++++++++
src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java | 33 ++++++++++++++++++++++++++++++++-
3 files changed, 58 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/asrs/entity/RgvNode.java b/src/main/java/com/zy/asrs/entity/RgvNode.java
new file mode 100644
index 0000000..b5e5efc
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/RgvNode.java
@@ -0,0 +1,15 @@
+package com.zy.asrs.entity;
+
+import lombok.Data;
+
+@Data
+public class RgvNode {
+
+ private Integer path;//璺緞鍊�
+
+ private Boolean lock = false;//璺緞閿佸畾
+
+ public RgvNode(Integer path) {
+ this.path = path;
+ }
+}
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 5727e33..08378c0 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -21,6 +21,8 @@
import com.zy.common.service.CommonService;
import com.zy.common.utils.CollectionUtils;
import com.zy.common.utils.HttpHandler;
+import com.zy.common.utils.RedisUtil;
+import com.zy.common.utils.RgvUtils;
import com.zy.core.CrnThread;
import com.zy.core.DevpThread;
import com.zy.core.cache.MessageQueue;
@@ -89,6 +91,8 @@
private BasRgvErrLogService basRgvErrLogService;
@Autowired
private BasRgvPathService basRgvPathService;
+ @Autowired
+ private RedisUtil redisUtil;
@Value("${wms.url}")
private String wmsUrl;
@@ -626,6 +630,19 @@
if (rgvProtocol.getTaskNo1() != 0 || rgvProtocol.getLoaded1() != 0) {//RGV鏄惁鏃犱换鍔°�丷GV鏄惁鏃犺揣
continue;
}
+
+ //鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+ Integer staNo = wrkMast.getStaNo();
+ BasDevp basDevp = basDevpService.selectById(staNo);
+ if (basDevp == null) {
+ continue;//鐩爣绔欎笉瀛樺湪
+ }
+ //璧峰璺緞
+ int startPath = rgvProtocol.getRgvPos().intValue();
+ //鐩爣璺緞鍊�
+ int endPath = basDevp.getLocType3().intValue();
+ boolean pathUsed = RgvUtils.isPathUsed(startPath, endPath);
+
// 鍛戒护涓嬪彂鍖� --------------------------------------------------------------------------
RgvCommand rgvCommand = new RgvCommand();
@@ -2841,7 +2858,21 @@
* 鍒濆鍖朢GV鍦板浘
*/
public synchronized void initRgvMap() {
-
+ Object data = redisUtil.get("rgv_map");
+ if (data == null) {
+ //閲嶆柊鑾峰彇鍏ㄨ矾寰勫湴鍥�
+ BasRgvPath basRgvPath = basRgvPathService.selectByRgvNo(0);//鑾峰彇榛樿璺緞
+ if (basRgvPath != null) {
+ ArrayList<RgvNode> rgvNodes = new ArrayList<>();
+ List<Integer> rgvPath = JSON.parseArray(basRgvPath.getPath(), Integer.class);
+ for (Integer integer : rgvPath) {
+ RgvNode rgvNode = new RgvNode(integer);
+ rgvNodes.add(rgvNode);
+ }
+ //灏嗘暟鎹簱鍦板浘鏁版嵁瀛樺叆redis
+ redisUtil.set("rgv_map", JSON.toJSONString(rgvNodes));
+ }
+ }
}
/**
diff --git a/src/main/java/com/zy/common/utils/RgvUtils.java b/src/main/java/com/zy/common/utils/RgvUtils.java
new file mode 100644
index 0000000..8ec45be
--- /dev/null
+++ b/src/main/java/com/zy/common/utils/RgvUtils.java
@@ -0,0 +1,11 @@
+package com.zy.common.utils;
+
+public class RgvUtils {
+
+ //鍒ゆ柇琛岃蛋璺緞鏄惁琚崰鐢�
+ public static boolean isPathUsed(Integer startPath,Integer endPath) {
+
+ return false;
+ }
+
+}
--
Gitblit v1.9.1