From 0c29adcf7692ad992c70ff1207d7d098a635535c Mon Sep 17 00:00:00 2001
From: lizijie <lzjiiie@163.com>
Date: Thu, 10 Feb 2022 13:25:15 +0800
Subject: [PATCH] 服务范围列表条件查询接口

---
 screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
index b289309..3a68890 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -18,8 +18,10 @@
 
 import java.util.ArrayList;
 
+import java.util.Arrays;
 import java.util.HashMap;
 
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -50,6 +52,20 @@
 
     @Override
     public Map<String, Object> getSensorsByMac(Map<String, Object> params) {
+        List<String> sensorCodes = Arrays.asList(Constants.SENSOR_CODE_PM25
+                , Constants.SENSOR_CODE_PM10
+                , Constants.SENSOR_CODE_SO2
+                , Constants.SENSOR_CODE_NO2
+                , Constants.SENSOR_CODE_CO
+                , Constants.SENSOR_CODE_O3
+                , Constants.SENSOR_CODE_TEMP
+                , "a01002"
+                , Constants.SENSOR_CODE_WIND_SPEED
+                , Constants.SENSOR_CODE_WIND_DIR
+                , "a01006"
+                , "a00e12"
+        );
+
         //������mac
         List<String> macs = (List<String>) params.remove("macs");
         List<Map<String, Object>> elementLists = new ArrayList<>();
@@ -67,13 +83,21 @@
             elementLists.add(map);
         }
 
-        Map<String, Object> map = elementLists.parallelStream()
+        Map<String, Object> map = elementLists.stream()
                 .filter(elementList -> elementList.size() != 0)
                 .reduce((a, b) -> {
                     a.keySet().retainAll(b.keySet());
                     return a;
                 }).orElse(new HashMap<>());
-        return map;
+        Map<String, Object> result = new LinkedHashMap<>();
+        sensorCodes.forEach(sensorCode -> {
+            Object o = map.remove(sensorCode);
+            if (o != null) {
+                result.put(sensorCode, o);
+            }
+        });
+        result.putAll(map);
+        return result;
     }
 
     @Override
@@ -185,7 +209,7 @@
     }
 
     @Override
-    public List getMacsByOrgIdAndRegionCode(Integer organizationId,Integer regionCode) {
+    public List getMacsByOrgIdAndRegionCode(Integer organizationId, Integer regionCode) {
         QueryWrapper<Device> queryWrapper = new QueryWrapper<>();
         queryWrapper.select("mac")
                 .eq("organization_id", organizationId)

--
Gitblit v1.8.0