From 70a98b2b11b25c7a3b32c07cdc5043b60383220d Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Thu, 23 Sep 2021 16:59:12 +0800
Subject: [PATCH] 根据组织查设备,站点加入子组织

---
 screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java |   23 +++++++++++++++++++----
 1 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
index 8d26374..64eee36 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -12,6 +12,7 @@
 import com.moral.api.service.DeviceService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import com.moral.api.service.OrganizationService;
 import com.moral.api.service.SysDictDataService;
 import com.moral.api.util.CacheUtils;
 import com.moral.api.util.AdjustDataUtils;
@@ -39,6 +40,7 @@
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 import javax.servlet.http.HttpServletRequest;
 
@@ -92,6 +94,9 @@
 
     @Autowired
     private AdjustDataUtils adjustDataUtils;
+
+    @Autowired
+    private OrganizationService organizationService;
 
     /*
      * ���redis������������������
@@ -242,8 +247,14 @@
 
     @Override
     public List<Map<String, Object>> selectMonitorsByOrgId(Integer orgId) {
+        //���������������������
+        List<Organization> organizations = organizationService.getAllChildrenOrganization(orgId);
+        List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList());
+        orgIds.add(orgId);
         QueryWrapper<MonitorPoint> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("id", "name").eq("organization_id", orgId).eq("is_delete", Constants.NOT_DELETE);
+        queryWrapper.select("id", "name")
+                .eq("is_delete", Constants.NOT_DELETE)
+                .in("organization_id", orgIds);
         return monitorPointMapper.selectMaps(queryWrapper);
     }
 
@@ -269,9 +280,13 @@
         Object orgId = parameters.get("organizationId");
         Object mpId = parameters.get("monitorPointId");
 
-        //������������������������������
+        //������������������������������,���������������
         if (orgId != null) {
-            queryWrapper.eq("organization_id", orgId);
+            //���������������������
+            List<Organization> organizations = organizationService.getAllChildrenOrganization(Integer.parseInt(orgId.toString()));
+            List<Integer> orgIds = organizations.stream().map(Organization::getId).collect(Collectors.toList());
+            orgIds.add(Integer.parseInt(orgId.toString()));
+            queryWrapper.in("organization_id", orgIds);
         }
 
         //������������������������������
@@ -445,7 +460,7 @@
             Map<String, Object> govMpInfo = (Map<String, Object>) deviceInfo.get("govMonitorPoint");
             Map<String, Object> aqiMap = null;
             if (govMpInfo.get("guid") != null) {
-               aqiMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, govMpInfo.get("guid").toString());
+                aqiMap = (Map<String, Object>) redisTemplate.opsForHash().get(RedisConstants.AQI_DATA, govMpInfo.get("guid").toString());
             }
             return adjustDataUtils.adjust(deviceData, adjustFormula, ObjectUtils.isEmpty(aqiMap) ? null : aqiMap);
         }

--
Gitblit v1.8.0