From b4cbe90b2f84798a6664bfb57c7dbbe16b3c3c51 Mon Sep 17 00:00:00 2001
From: Xiajijian <1176061145@qq.com>
Date: Tue, 04 Nov 2025 20:15:21 +0800
Subject: [PATCH] 1.文件业务权限管理优化。 2.文件夹业务权限管理优化。 3.航线信息接口业务逻辑优化。 4.解析kmz文件接口,异常处理。 5.增加解析kmz文件接口业务,符合智云3.0整体业务。 6.优化公共方法类。 7.新增文件异常处理优化。 8.解决文件夹查询异常报错。 9.根据前端业务增加业务字段。 10.修改代码注释。 11.抽取公共方法。

---
 ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceServiceImpl.java |   36 ++++++++++++++++--------------------
 1 files changed, 16 insertions(+), 20 deletions(-)

diff --git a/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceServiceImpl.java b/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceServiceImpl.java
index 816c596..9adde4c 100644
--- a/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceServiceImpl.java
+++ b/ard-sample/src/main/java/com/ard/sample/manage/service/impl/DeviceServiceImpl.java
@@ -351,6 +351,7 @@
         // subDevice.setPayloadsList(payloadService.getDevicePayloadEntitiesByDeviceSn(gateway.getChildDeviceSn()));
     }
 
+    //region 单独写一个方法做权限验证,由于有好多定时任务也在实时获取设备列表,原方法不适用再添加权限注解
     @Override
     public List<DeviceDTO> getDockList() {
         List<DeviceDTO> devicesList = this.getDockListByParams(
@@ -368,27 +369,21 @@
 
     @Override
     public void spliceDeviceTopoPer(DeviceDTO gateway) {
-
         gateway.setStatus(RedisOpsUtils.checkExist(RedisConst.DEVICE_ONLINE_PREFIX + gateway.getDeviceSn()));
-
         // sub device
         if (!StringUtils.hasText(gateway.getChildDeviceSn())) {
             return;
         }
-
         DeviceDTO subDevice =
                 getDevicesByParams(DeviceQueryParam.builder().deviceSn(gateway.getChildDeviceSn()).build()).get(0);
         subDevice.setStatus(RedisOpsUtils.checkExist(RedisConst.DEVICE_ONLINE_PREFIX + subDevice.getDeviceSn()));
         gateway.setChildren(subDevice);
-
-        // payloads
-        // subDevice.setPayloadsList(payloadService.getDevicePayloadEntitiesByDeviceSn(gateway.getChildDeviceSn()));
     }
 
-    //@DataScope(deptAlias = "d")
+
     @Override
     public List<DeviceDTO> getDockListByParams(DeviceQueryParam param){
-
+        // 在mapper中添加查询方法做权限验证
         return mapper.selectListPer(
                         new LambdaQueryWrapper<DeviceEntity>()
                                 .eq(StringUtils.hasText(param.getDeviceSn()),
@@ -412,6 +407,7 @@
                 .map(this::deviceEntityConvertToDTO)
                 .collect(Collectors.toList());
     }
+    //endregion
 
     @Override
     public Optional<TopologyDeviceDTO> getDeviceTopoForPilot(String sn) {
@@ -1105,18 +1101,18 @@
                         .build(),
                 2);
 
-        while (true) {
-            reply = (Map<String, Object>) reply.get(value.getKey());
-            if (value.getValue() instanceof JsonNode) {
-                break;
-            }
-            value = (Map.Entry) value.getValue();
-        }
-
-        SetReply setReply = objectMapper.convertValue(reply, SetReply.class);
-        if (SetReplyStatusResultEnum.SUCCESS.getVal() != setReply.getResult()) {
-            throw new RuntimeException("Failed to set " + value.getKey() + "; Error Code: " + setReply.getResult());
-        }
+// 接收返回信息在serviceReply中,订阅thing/product/7CTDLCE00A1UPE/property/set_reply上报的信息,此处不处理
+//        while (true) {
+//            reply = (Map<String, Object>) reply.get(value.getKey());
+//            if (value.getValue() instanceof JsonNode) {
+//                break;
+//            }
+//            value = (Map.Entry) value.getValue();
+//        }
+//        SetReply setReply = objectMapper.convertValue(reply, SetReply.class);
+//        if (SetReplyStatusResultEnum.SUCCESS.getVal() != setReply.getResult()) {
+//            throw new RuntimeException("Failed to set " + value.getKey() + "; Error Code: " + setReply.getResult());
+//        }
 
     }
 

--
Gitblit v1.9.3