From 8a830f3e5f9ff3bca3161b5bf800abeb1a64e866 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期六, 22 六月 2024 16:30:35 +0800
Subject: [PATCH] #

---
 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateMapUtils.java |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateMapUtils.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateMapUtils.java
index b6426ad..6c72996 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateMapUtils.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/utils/NavigateMapUtils.java
@@ -107,12 +107,22 @@
         Object o = redisUtil.get(DeviceRedisConstant.LOCK_PATH + lev);
         List<NavigateNode> navigateNodes = new ArrayList<>();
         if (o != null) {
-            navigateNodes = JSON.parseArray(o.toString(), NavigateNode.class);
+            try {
+                navigateNodes = objectMapper.readValue(o.toString(), new TypeReference<List<NavigateNode>>() {});
+            } catch (JsonProcessingException e) {
+                throw new RuntimeException(e);
+            }
         }
 
+        String nodeStr = null;
         if (lock) {
             navigateNodes.addAll(nodes);
-            redisUtil.set(DeviceRedisConstant.LOCK_PATH + lev, JSON.toJSONString(navigateNodes, SerializerFeature.DisableCircularReferenceDetect));
+            try {
+                nodeStr = objectMapper.writeValueAsString(navigateNodes);
+            } catch (JsonProcessingException e) {
+                throw new RuntimeException(e);
+            }
+            redisUtil.set(DeviceRedisConstant.LOCK_PATH + lev, nodeStr);
         }else {
             List<NavigateNode> tmp = new ArrayList<>();
             for (NavigateNode navigateNode : navigateNodes) {
@@ -131,7 +141,12 @@
                 }
             }
 
-            redisUtil.set(DeviceRedisConstant.LOCK_PATH + lev, JSON.toJSONString(tmp, SerializerFeature.DisableCircularReferenceDetect));
+            try {
+                nodeStr = objectMapper.writeValueAsString(tmp);
+            } catch (JsonProcessingException e) {
+                throw new RuntimeException(e);
+            }
+            redisUtil.set(DeviceRedisConstant.LOCK_PATH + lev, nodeStr);
         }
     }
 
@@ -146,7 +161,6 @@
                 throw new RuntimeException(e);
             }
         }
-
         return navigateNodes;
     }
 

--
Gitblit v1.9.1