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