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/asrs/service/impl/MainServiceImpl.java | 33 ++++++++++++++++++++++++++++++++- 1 files changed, 32 insertions(+), 1 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 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)); + } + } } /** -- Gitblit v1.9.1