From e597bd9ea3fb7b51e6abacd02b2ccbf409503d7b Mon Sep 17 00:00:00 2001 From: lsh <1> Date: 星期六, 13 七月 2024 08:54:27 +0800 Subject: [PATCH] # --- src/main/java/com/zy/common/utils/RgvUtils.java | 24 ++++++++++++++++++++---- 1 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zy/common/utils/RgvUtils.java b/src/main/java/com/zy/common/utils/RgvUtils.java index 37766e6..972607b 100644 --- a/src/main/java/com/zy/common/utils/RgvUtils.java +++ b/src/main/java/com/zy/common/utils/RgvUtils.java @@ -39,13 +39,13 @@ } //閿佸畾/瑙i攣璺緞 - public static void lockPath(Integer startPath, Integer endPath, Integer rgvNo, boolean lock) { + public static void lockPath(Integer startPath, Integer endPath, Integer rgvNo, Integer wrkNo, boolean lock) { List<RgvNode> pathList = getPathList(startPath, endPath);//閫氳繃璧风偣鍜岀洰鏍囩偣鑾峰彇琛岃蛋璺緞 - lockPath(pathList, rgvNo, lock); + lockPath(pathList, rgvNo, wrkNo, lock); } //閿佸畾/瑙i攣璺緞 - public static void lockPath(List<RgvNode> pathList, Integer rgvNo, boolean lock) { + public static void lockPath(List<RgvNode> pathList, Integer rgvNo, Integer wrkNo, boolean lock) { RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class); Object data = redisUtil.get("rgv_map"); List<RgvNode> rgvNodes = JSON.parseArray(data.toString(), RgvNode.class);//瀹炴椂鍦板浘 @@ -59,15 +59,31 @@ //璺緞鐩稿悓 if (lock) { rgvNode.setLock(true);//閿佸畾 - rgvNode.setRgvNo(rgvNo); + rgvNode.setRgvNo(rgvNo);//RGV鍙� + rgvNode.setWrkNo(wrkNo);//宸ヤ綔鍙� } else { rgvNode.setLock(false);//瑙i攣 rgvNode.setRgvNo(0); + rgvNode.setRgvNo(0); } } } } + //瑙i攣璺緞锛岄�氳繃RGV鍙疯繘琛岃В閿併�傛敞鎰忥細璋冪敤姝ゆ柟娉曚細瑙i攣RGV鍙峰搴旇溅杈嗗叏閮ㄨ矾寰� + public static void unLockPath(Integer rgvNo) { + RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class); + Object data = redisUtil.get("rgv_map"); + List<RgvNode> rgvNodes = JSON.parseArray(data.toString(), RgvNode.class);//瀹炴椂鍦板浘 + for (RgvNode rgvNode : rgvNodes) {//閬嶅巻瀹炴椂鍦板浘 + if (rgvNode.getRgvNo().equals(rgvNo)) { + //RGV鍙风浉鍚� + rgvNode.setLock(false);//瑙i攣 + rgvNode.setRgvNo(0); + } + } + } + //閫氳繃璧风偣鍜岀洰鏍囩偣鑾峰彇琛岃蛋璺緞 public static List<RgvNode> getPathList(Integer startPath, Integer endPath) { int result = startPath - endPath; -- Gitblit v1.9.1