From f0837ee21f7650d4413830d4ee90da02bcdd6d36 Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Tue, 10 Oct 2023 10:59:29 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wb' into qa

---
 screen-manage/src/main/java/com/moral/api/mapper/SysDictTypeMapper.java                 |    2 
 screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java |   39 ++++---
 screen-api/src/main/java/com/moral/api/exception/consumer/SecondDataConsumer.java       |    2 
 screen-api/src/main/java/com/moral/api/config/mybatis/MybatisPlusConfig.java            |   18 +++
 screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java           |    2 
 screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java            |   11 -
 screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml                     |    4 
 screen-api/src/main/java/com/moral/api/exception/consumer/CruiserDataConsumer.java      |    2 
 screen-api/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java       |   53 ++++++----
 screen-api/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java              |   32 +++---
 screen-api/src/main/java/com/moral/api/mapper/HistoryFiveMinutelyMapper.java            |    5 +
 screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java              |   36 +++----
 screen-api/src/main/resources/application-dev.yml                                       |    2 
 screen-api/src/main/resources/mapper/HistoryFiveMinutelyMapper.xml                      |   11 ++
 screen-api/src/main/java/com/moral/api/mapper/HistoryHourlyMapper.java                  |    4 
 screen-manage/src/main/java/com/moral/api/entity/SysDictType.java                       |    1 
 screen-manage/src/main/resources/mapper/SysDictTypeMapper.xml                           |   14 ++
 screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java      |    5 
 screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml                            |   36 +++++++
 screen-api/src/main/resources/mapper/DeviceMapper.xml                                   |    4 
 20 files changed, 188 insertions(+), 95 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/config/mybatis/MybatisPlusConfig.java b/screen-api/src/main/java/com/moral/api/config/mybatis/MybatisPlusConfig.java
index 804a61f..9b40ff2 100644
--- a/screen-api/src/main/java/com/moral/api/config/mybatis/MybatisPlusConfig.java
+++ b/screen-api/src/main/java/com/moral/api/config/mybatis/MybatisPlusConfig.java
@@ -1,12 +1,16 @@
 package com.moral.api.config.mybatis;
 
 import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
+import com.baomidou.mybatisplus.core.MybatisConfiguration;
 import com.baomidou.mybatisplus.extension.parsers.DynamicTableNameParser;
 import com.baomidou.mybatisplus.extension.parsers.ITableNameHandler;
 import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.handler.TableNameHandler;
 import com.baomidou.mybatisplus.extension.plugins.inner.DynamicTableNameInnerInterceptor;
 import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
 import com.moral.api.entity.HistoryFiveMinutely;
 import com.moral.api.mapper.HistoryFiveMinutelyMapper;
 import com.moral.api.service.HistorySecondUavService;
@@ -14,10 +18,13 @@
 import com.moral.api.service.impl.OrganizationServiceImpl;
 import org.apache.ibatis.reflection.MetaObject;
 import org.apache.ibatis.session.SqlSessionFactory;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Primary;
 
+import javax.sql.DataSource;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -25,7 +32,7 @@
 /*@Configuration*/
 public class MybatisPlusConfig {
 
-    public static ThreadLocal<String> tableName = new ThreadLocal<>();
+
 
     @Bean
     public MybatisPlusInterceptor mybatisPlusInterceptor() {
@@ -42,8 +49,15 @@
 
         dynamicTableNameInnerInterceptor.setTableNameHandlerMap(map);
         interceptor.addInnerInterceptor(dynamicTableNameInnerInterceptor);
-
+        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
         return interceptor;
     }
+    @Bean
+    public ConfigurationCustomizer configurationCustomizer() {
+        return configuration -> configuration.setUseDeprecatedExecutor(false);
+    }
+
+
+    public static ThreadLocal<String> tableName = new ThreadLocal<>();
 
 }
diff --git a/screen-api/src/main/java/com/moral/api/exception/consumer/CruiserDataConsumer.java b/screen-api/src/main/java/com/moral/api/exception/consumer/CruiserDataConsumer.java
index e1b1a3e..84ee302 100644
--- a/screen-api/src/main/java/com/moral/api/exception/consumer/CruiserDataConsumer.java
+++ b/screen-api/src/main/java/com/moral/api/exception/consumer/CruiserDataConsumer.java
@@ -34,7 +34,7 @@
 
 
 
-//@Component
+@Component
 @Slf4j
 public class CruiserDataConsumer  implements ConsumerSeekAware {
 
diff --git a/screen-api/src/main/java/com/moral/api/exception/consumer/SecondDataConsumer.java b/screen-api/src/main/java/com/moral/api/exception/consumer/SecondDataConsumer.java
index 9a9db52..6c3272c 100644
--- a/screen-api/src/main/java/com/moral/api/exception/consumer/SecondDataConsumer.java
+++ b/screen-api/src/main/java/com/moral/api/exception/consumer/SecondDataConsumer.java
@@ -38,7 +38,7 @@
 
 
 
-//@Component
+@Component
 @Slf4j
 public class SecondDataConsumer implements ConsumerSeekAware {
 
diff --git a/screen-api/src/main/java/com/moral/api/mapper/HistoryFiveMinutelyMapper.java b/screen-api/src/main/java/com/moral/api/mapper/HistoryFiveMinutelyMapper.java
index 2ec37a9..93fdaad 100644
--- a/screen-api/src/main/java/com/moral/api/mapper/HistoryFiveMinutelyMapper.java
+++ b/screen-api/src/main/java/com/moral/api/mapper/HistoryFiveMinutelyMapper.java
@@ -5,6 +5,7 @@
 
 import com.moral.api.entity.HistoryFiveMinutely;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.moral.api.entity.HistoryHourly;
 import com.moral.api.pojo.dto.Wind.WindData;
 
 /**
@@ -19,4 +20,8 @@
 
     List<WindData> getAreaWindData(Map<String, Object> params);
 
+    List<HistoryFiveMinutely> listResult(Map<String, Object> params);
+
+    List<HistoryFiveMinutely> listResultOne(Map<String, Object> params);
+
 }
diff --git a/screen-api/src/main/java/com/moral/api/mapper/HistoryHourlyMapper.java b/screen-api/src/main/java/com/moral/api/mapper/HistoryHourlyMapper.java
index 6384a47..19ce895 100644
--- a/screen-api/src/main/java/com/moral/api/mapper/HistoryHourlyMapper.java
+++ b/screen-api/src/main/java/com/moral/api/mapper/HistoryHourlyMapper.java
@@ -42,4 +42,8 @@
     void insertHistoryHourly(Map<String, Object> params);
 
     void updateHistoryHourly(Map<String, Object> params);
+
+    List<HistoryHourly> listResult(Map<String, Object> params);
+
+    List<HistoryHourly> listLikeResult(Map<String, Object> params);
 }
diff --git a/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java b/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
index b22bf87..a725f09 100644
--- a/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
+++ b/screen-api/src/main/java/com/moral/api/mapper/HistorySecondCruiserMapper.java
@@ -26,7 +26,7 @@
 
     String  getDaily(Map<String,Object> params);
 
-    List<Double> getDust(String start,String end,String mac);
+    List<String> getDust(String start,String end,String mac);
 
     List<Map<String,Object>> getDusts(Map<String,Object> params);
 
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 bd62813..ea2d2a4 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
@@ -229,10 +229,11 @@
             Date endDate = DateUtils.getDate(endTime,DateUtils.yyyy_MM_dd_HH_EN);
             List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(startDate, endDate, SeparateTableType.MONTH);
             for (String mac:macs) {
-                QueryWrapper<HistoryHourly> wrapper = new QueryWrapper<>();
-                wrapper.eq("mac", mac);
-                wrapper.between("time", startDate, endDate);
-                List<HistoryHourly> historyHourlies = multiTableQuery(wrapper, tableNames);
+                Map<String, Object> mapParams = new HashMap<>();
+                mapParams.put("startDate",startDate);
+                mapParams.put("endDate",endDate);
+                mapParams.put("mac",mac);
+                List<HistoryHourly> historyHourlies = multiTableQuery(mapParams, tableNames);
                 historyHourlies = historyHourlies.stream().distinct().collect(Collectors.toList());
                 List<HistoryHourly> distinctHistoryHourlies = new ArrayList<>();
                 Map<String, Object> disMap = new HashMap<>();
@@ -340,10 +341,11 @@
             Date endDate = DateUtils.getDate(endTime,DateUtils.yyyy_MM_dd_HH_mm_ss_EN);
             List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(startDate, endDate, SeparateTableType.MONTH);
             for (String mac:macs) {
-                QueryWrapper<HistoryFiveMinutely> wrapper = new QueryWrapper<>();
-                wrapper.eq("mac", mac);
-                wrapper.between("time", startDate, endDate);
-                List<HistoryFiveMinutely> HistoryFiveMinutelys = FiveMinuteTableQuery(wrapper, tableNames);
+                Map<String, Object> mapParams = new HashMap<>();
+                mapParams.put("startDate",startDate);
+                mapParams.put("endDate",endDate);
+                mapParams.put("mac",mac);
+                List<HistoryFiveMinutely> HistoryFiveMinutelys = FiveMinuteTableQuery(mapParams, tableNames);
                 HistoryFiveMinutelys = HistoryFiveMinutelys.stream().distinct().collect(Collectors.toList());
                 List<HistoryFiveMinutely> distinctHistoryHourlies = new ArrayList<>();
                 Map<String, Object> disMap = new HashMap<>();
@@ -539,25 +541,23 @@
      * @Author: ���������
      * @Date: 2021/9/23
      */
-    private List<HistoryHourly> multiTableQuery(QueryWrapper<HistoryHourly> wrapper, List<String> tableNames) {
+    private List<HistoryHourly> multiTableQuery(Map<String, Object> params, List<String> tableNames) {
         List<HistoryHourly> result = new ArrayList<>();
         for (String tableName : tableNames) {
-            MybatisPlusConfig.tableName.set(tableName);
-            List<HistoryHourly> datas = historyHourlyMapper.selectList(wrapper);
+            params.put("table",tableName);
+            List<HistoryHourly> datas = historyHourlyMapper.listResult(params);
             result.addAll(datas);
         }
-        MybatisPlusConfig.tableName.remove();
         return result;
     }
 
-    private List<HistoryFiveMinutely> FiveMinuteTableQuery(QueryWrapper<HistoryFiveMinutely> wrapper, List<String> tableNames) {
+    private List<HistoryFiveMinutely> FiveMinuteTableQuery(Map<String, Object> params, List<String> tableNames) {
         List<HistoryFiveMinutely> result = new ArrayList<>();
         for (String tableName : tableNames) {
-            MybatisPlusConfig.tableName.set(tableName);
-            List<HistoryFiveMinutely> datas = historyFiveMinutelyMapper.selectList(wrapper);
+            params.put("table",tableName);
+            List<HistoryFiveMinutely> datas = historyFiveMinutelyMapper.listResult(params);
             result.addAll(datas);
         }
-        MybatisPlusConfig.tableName.remove();
         return result;
     }
 
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
index dd304f4..aeefda9 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
@@ -90,29 +90,25 @@
             for (TimeForm timeForm : tables) {
                 String start = timeForm.getStart();
                 String end = timeForm.getEnd();
-                List<Double> dust = historySecondCruiserMapper.getDust(start, end, mac);
+                List<String> dust = historySecondCruiserMapper.getDust(start, end, mac);
                 ArrayList<Double> rsDouble = new ArrayList<>();
-                for (Double aDouble : dust) {
-                    double v =0.0;
+                for (String s : dust) {
+                    double aDouble = Double.parseDouble(s);
+
                     if (aDouble>=0 && aDouble<40 ){
-                        v = aDouble + 170;
+                        aDouble = aDouble + 170;
+                    }else if (aDouble>=40 && aDouble<60){
+                        aDouble = aDouble + 130;
+                    }else if (aDouble>=60 && aDouble<100 ){
+                        aDouble = aDouble + 110;
+                    }else if (aDouble>=100 && aDouble<150){
+                        aDouble = aDouble + 70;
+                    }else if (aDouble>=150 && aDouble<180){
+                        aDouble = aDouble + 30;
+                    }else {
+                        aDouble= aDouble+0;
                     }
-                    if (aDouble>=40 && aDouble<60 ){
-                        v = aDouble + 130;
-                    }
-                    if (aDouble>=60 && aDouble<100 ){
-                        v = aDouble + 110;
-                    }
-                    if (aDouble>=100 && aDouble<150 ){
-                        v = aDouble + 70;
-                    }
-                    if (aDouble>=150 && aDouble<180 ){
-                        v = aDouble + 30;
-                    }
-                    if (aDouble>=180){
-                        v= aDouble;
-                    }
-                    rsDouble.add(v);
+                    rsDouble.add(aDouble);
                 }
                 list.addAll(rsDouble);
             }
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java
index 0a3d387..cd1b80c 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/HistoryFiveMinutelyServiceImpl.java
@@ -141,14 +141,12 @@
         //������������������������������������
         if (sensorValues != null)
             return sensorValues;
-        QueryWrapper<HistoryFiveMinutely> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("mac", mac);
-        queryWrapper.orderByDesc("time");
-        queryWrapper.last("limit 0,1");
+        Map<String, Object> mapParams = new HashMap<>();
+        mapParams.put("mac",mac);
         //���������������������
         Date date = new Date();
         List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(date, date, SeparateTableType.MONTH);
-        List<HistoryFiveMinutely> datas = multiTableQuery(queryWrapper, tableNames);
+        List<HistoryFiveMinutely> datas = multiTableQuery(mapParams, tableNames);
         if (ObjectUtils.isEmpty(datas))
             return null;
         HistoryFiveMinutely historyFiveMinutely = datas.get(0);
@@ -386,9 +384,9 @@
 
         int nx = (int) Math.floor((lo2 - lo1) / dx);
         int ny = (int) Math.floor((la1 - la2) / dy);
-
-        List<Double> uList = new ArrayList<>();
-        List<Double> vList = new ArrayList<>();
+        int nums = Objects.nonNull(nx*ny)?nx*ny+100:100;
+        List<Double> uList = new ArrayList<>(nums);
+        List<Double> vList = new ArrayList<>(nums);
         int x;
         int y;
 
@@ -480,11 +478,12 @@
      * @Date: 2021/9/23
      */
     public List<HistoryFiveMinutely> getValueByMacAndTime(String mac, Date startDate, Date endDate) {
-        QueryWrapper<HistoryFiveMinutely> wrapper = new QueryWrapper<>();
-        wrapper.eq("mac", mac);
-        wrapper.between("time", startDate, endDate);
+        Map<String, Object> mapParams = new HashMap<>();
+        mapParams.put("startDate",startDate);
+        mapParams.put("endDate",endDate);
+        mapParams.put("mac",mac);
         List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(startDate, endDate, SeparateTableType.MONTH);
-        List<HistoryFiveMinutely> datas = multiTableQuery(wrapper, tableNames);
+        List<HistoryFiveMinutely> datas = multiTableQueryResult(mapParams, tableNames);
         return datas;
     }
 
@@ -496,14 +495,22 @@
      * @Author: ���������
      * @Date: 2021/9/23
      */
-    private List<HistoryFiveMinutely> multiTableQuery(QueryWrapper<HistoryFiveMinutely> wrapper, List<String> tableNames) {
+    private List<HistoryFiveMinutely> multiTableQuery(Map<String, Object> params, List<String> tableNames) {
         List<HistoryFiveMinutely> result = new ArrayList<>();
         for (String tableName : tableNames) {
-            MybatisPlusConfig.tableName.set(tableName);
-            List<HistoryFiveMinutely> datas = historyFiveMinutelyMapper.selectList(wrapper);
+            params.put("table",tableName);
+            List<HistoryFiveMinutely> datas = historyFiveMinutelyMapper.listResultOne(params);
             result.addAll(datas);
         }
-        MybatisPlusConfig.tableName.remove();
+        return result;
+    }
+    private List<HistoryFiveMinutely> multiTableQueryResult(Map<String, Object> params, List<String> tableNames) {
+        List<HistoryFiveMinutely> result = new ArrayList<>();
+        for (String tableName : tableNames) {
+            params.put("table",tableName);
+            List<HistoryFiveMinutely> datas = historyFiveMinutelyMapper.listResult(params);
+            result.addAll(datas);
+        }
         return result;
     }
 }
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
index 837adeb..745c803 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/HistoryHourlyServiceImpl.java
@@ -746,43 +746,44 @@
      */
     @Override
     public List<HistoryHourly> getValueByMacAndTime(String mac, Date startDate, Date endDate) {
-        QueryWrapper<HistoryHourly> wrapper = new QueryWrapper<>();
-        wrapper.eq("mac", mac);
-        wrapper.between("time", startDate, endDate);
+        Map<String, Object> mapParams = new HashMap<>();
+        mapParams.put("startDate",startDate);
+        mapParams.put("endDate",endDate);
+        mapParams.put("mac",mac);
         List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(startDate, endDate, SeparateTableType.MONTH);
-        List<HistoryHourly> datas = multiTableQuery(wrapper, tableNames);
+        List<HistoryHourly> datas = multiTableQuery(mapParams, tableNames);
         return datas;
     }
     @Override
     public List<HistoryHourly> getValueByMacAndTime(List<String> mac, Date startDate, Date endDate) {
-        QueryWrapper<HistoryHourly> wrapper = new QueryWrapper<>();
-        wrapper.in("mac", mac);
-        wrapper.between("time", startDate, endDate);
+
+        Map<String, Object> mapParams = new HashMap<>();
+        mapParams.put("startDate",startDate);
+        mapParams.put("endDate",endDate);
+        mapParams.put("macs",mac);
         List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(startDate, endDate, SeparateTableType.MONTH);
-        List<HistoryHourly> datas = multiTableQuery(wrapper, tableNames);
+        List<HistoryHourly> datas = multiTableQuery(mapParams, tableNames);
         return datas;
     }
 
     @Override
     public List<HistoryHourly> getValueByMacs(List<String> macs, String time) {
-        QueryWrapper<HistoryHourly> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("time", "value")
-                .likeRight("time", time)
-                .in("mac", macs);
+        Map<String, Object> mapParams = new HashMap<>();
+        mapParams.put("time",time);
+        mapParams.put("macs",macs);
         Date date = DateUtils.getDate(time, DateUtils.yyyy_MM_dd_EN);
         List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(date, date, SeparateTableType.MONTH);
-        return multiTableQuery(queryWrapper, tableNames);
+        return multiTableQueryLike(mapParams, tableNames);
     }
 
     @Override
     public List<HistoryHourly> getHourlyDataByMacs(List<String> macs, String time) {
-        QueryWrapper<HistoryHourly> queryWrapper = new QueryWrapper<>();
-        queryWrapper.select("mac","time", "value")
-                .likeRight("time", time)
-                .in("mac", macs);
+        Map<String, Object> mapParams = new HashMap<>();
+        mapParams.put("time",time);
+        mapParams.put("macs",macs);
         Date date = DateUtils.getDate(time, DateUtils.yyyy_MM_dd_EN);
         List<String> tableNames = MybatisPLUSUtils.getTableNamesByWrapper(date, date, SeparateTableType.MONTH);
-        return multiTableQuery(queryWrapper, tableNames);
+        return multiTableQueryLike(mapParams, tableNames);
     }
 
     @Override
@@ -848,14 +849,22 @@
      * @Author: ���������
      * @Date: 2021/9/23
      */
-    private List<HistoryHourly> multiTableQuery(QueryWrapper<HistoryHourly> wrapper, List<String> tableNames) {
+    private List<HistoryHourly> multiTableQuery(Map<String, Object> params, List<String> tableNames) {
         List<HistoryHourly> result = new ArrayList<>();
         for (String tableName : tableNames) {
-            MybatisPlusConfig.tableName.set(tableName);
-            List<HistoryHourly> datas = historyHourlyMapper.selectList(wrapper);
+            params.put("table",tableName);
+            List<HistoryHourly> datas = historyHourlyMapper.listResult(params);
             result.addAll(datas);
         }
-        MybatisPlusConfig.tableName.remove();
+        return result;
+    }
+    private List<HistoryHourly> multiTableQueryLike(Map<String, Object> params, List<String> tableNames) {
+        List<HistoryHourly> result = new ArrayList<>();
+        for (String tableName : tableNames) {
+            params.put("table",tableName);
+            List<HistoryHourly> datas = historyHourlyMapper.listLikeResult(params);
+            result.addAll(datas);
+        }
         return result;
     }
 
diff --git a/screen-api/src/main/resources/application-dev.yml b/screen-api/src/main/resources/application-dev.yml
index 71d7a11..78c754e 100644
--- a/screen-api/src/main/resources/application-dev.yml
+++ b/screen-api/src/main/resources/application-dev.yml
@@ -1,5 +1,7 @@
 server:
   port: 8081
+  servlet:
+    context-path: /api
 spring:
   profiles:
     active: dev
diff --git a/screen-api/src/main/resources/mapper/DeviceMapper.xml b/screen-api/src/main/resources/mapper/DeviceMapper.xml
index b2de3cc..abda196 100644
--- a/screen-api/src/main/resources/mapper/DeviceMapper.xml
+++ b/screen-api/src/main/resources/mapper/DeviceMapper.xml
@@ -39,8 +39,8 @@
             <foreach collection="macs" item="mac" index="index" open="(" close=")" separator=",">
                 #{mac}
             </foreach>
-        AND `time` <![CDATA[>=]]> #{start}
-        AND `time` <![CDATA[<]]> #{end}
+        AND DATE_FORMAT(`time`,'%Y-%m-%d %H') <![CDATA[>=]]> #{start}
+        AND DATE_FORMAT(`time`,'%Y-%m-%d %H') <![CDATA[<]]> #{end}
         ORDER BY `time`
     </select>
     <select id="deviceList" resultType="java.util.Map">
diff --git a/screen-api/src/main/resources/mapper/HistoryFiveMinutelyMapper.xml b/screen-api/src/main/resources/mapper/HistoryFiveMinutelyMapper.xml
index 0de8ee6..360ff73 100644
--- a/screen-api/src/main/resources/mapper/HistoryFiveMinutelyMapper.xml
+++ b/screen-api/src/main/resources/mapper/HistoryFiveMinutelyMapper.xml
@@ -21,4 +21,15 @@
         AND h.time = (SELECT max(time) FROM history_five_minutely_${timeUnits})
     </select>
 
+    <select id="listResult" resultType="com.moral.api.entity.HistoryFiveMinutely">
+        SELECT mac,time,value FROM history_five_minutely${table}
+        WHERE (mac = #{mac} AND time BETWEEN #{startDate} AND #{endDate})
+        order by time desc
+    </select>
+    <select id="listResultOne" resultType="com.moral.api.entity.HistoryFiveMinutely">
+        SELECT mac,time,value FROM history_five_minutely${table}
+        WHERE (mac = #{mac})
+        order by time desc
+        limit 1
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml b/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml
index b707ec4..61ab41c 100644
--- a/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml
+++ b/screen-api/src/main/resources/mapper/HistoryHourlyMapper.xml
@@ -86,4 +86,40 @@
         UPDATE history_hourly_${timeUnits} SET `value` = #{value}
         where mac =  #{mac} and time = #{time} and version = #{version}
     </insert>
+
+    <select id="listResult" resultType="com.moral.api.entity.HistoryHourly">
+        SELECT mac,time,value,version FROM history_hourly${table}
+         WHERE 1 =1
+         <if test="macs != null and macs.size!=0">
+             and mac in
+             <foreach collection="macs" item="id" index="index" open="(" close=")" separator=",">
+                 #{id}
+             </foreach>
+         </if>
+         <if test="mac != null and mac != ''">
+            and mac = #{mac}
+         </if>
+
+         and time BETWEEN #{startDate} and #{endDate}
+
+        order by time desc
+    </select>
+
+    <select id="listLikeResult" resultType="com.moral.api.entity.HistoryHourly">
+        SELECT mac,time,value,version FROM history_hourly${table}
+        WHERE 1 =1
+        <if test="macs != null and macs.size!=0">
+            and mac in
+            <foreach collection="macs" item="id" index="index" open="(" close=")" separator=",">
+                #{id}
+            </foreach>
+        </if>
+        <if test="mac != null and mac != ''">
+            and mac = #{mac}
+        </if>
+
+        and time like concat(#{time},'%')
+
+        order by time desc
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml b/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
index f69bdb2..1b61bbb 100644
--- a/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
+++ b/screen-api/src/main/resources/mapper/HistorySecondCruiserMapper.xml
@@ -50,8 +50,8 @@
           AND `time` <![CDATA[<=]]> #{time2}
     </select>
 
-    <select id="getDust" resultType="java.lang.Double">
-        select JSON_EXTRACT(value,'$.dustld')
+    <select id="getDust" resultType="java.lang.String">
+        select value ->>'$.dustld'
         from `history_second_cruiser`
         WHERE mac = #{mac}
           AND `time` <![CDATA[>=]]> #{start}
diff --git a/screen-manage/src/main/java/com/moral/api/entity/SysDictType.java b/screen-manage/src/main/java/com/moral/api/entity/SysDictType.java
index 7044853..7ddf74a 100644
--- a/screen-manage/src/main/java/com/moral/api/entity/SysDictType.java
+++ b/screen-manage/src/main/java/com/moral/api/entity/SysDictType.java
@@ -46,6 +46,7 @@
     /*
     * 1������������������������������ 0���������������
     * */
+    @TableField("`system`")
     private Integer system;
 
     /**
diff --git a/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java b/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java
index 9f80360..e9de5ec 100644
--- a/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java
+++ b/screen-manage/src/main/java/com/moral/api/kafka/consumer/DeviceConsumer.java
@@ -1,8 +1,10 @@
 /*
 package com.moral.api.kafka.consumer;
 
-import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.JSON;
 import com.moral.api.service.*;
+import com.moral.constant.KafkaConstants;
+import com.moral.constant.RedisConstants;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.kafka.clients.consumer.ConsumerRecord;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -12,16 +14,9 @@
 import org.springframework.stereotype.Component;
 import org.springframework.util.ObjectUtils;
 
-import java.text.DecimalFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
-
-import com.alibaba.fastjson.JSON;
-import com.moral.constant.KafkaConstants;
-import com.moral.constant.RedisConstants;
 
 
 
diff --git a/screen-manage/src/main/java/com/moral/api/mapper/SysDictTypeMapper.java b/screen-manage/src/main/java/com/moral/api/mapper/SysDictTypeMapper.java
index 6aba1c5..9d7fb7a 100644
--- a/screen-manage/src/main/java/com/moral/api/mapper/SysDictTypeMapper.java
+++ b/screen-manage/src/main/java/com/moral/api/mapper/SysDictTypeMapper.java
@@ -2,6 +2,7 @@
 
 import com.moral.api.entity.SysDictType;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -13,4 +14,5 @@
  */
 public interface SysDictTypeMapper extends BaseMapper<SysDictType> {
 
+    SysDictType listOne(@Param("name") String name);
 }
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
index ac59a90..fcdce43 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
@@ -124,10 +124,7 @@
         //������������������������
         SysDictType sysDictType = form.formConvertEntity();
         //������name������������������
-        QueryWrapper<SysDictType> existNameWrapper = new QueryWrapper<>();
-        existNameWrapper.eq("name",sysDictType.getName());
-        existNameWrapper.eq("is_delete",Constants.NOT_DELETE);
-        SysDictType existType = sysDictTypeMapper.selectOne(existNameWrapper);
+        SysDictType existType = sysDictTypeMapper.listOne(sysDictType.getName());
         if(!ObjectUtils.isEmpty(existType)){
             dto.setCode(ResponseCodeEnum.DICTTYPE_EXIST.getCode());
             dto.setMsg(ResponseCodeEnum.DICTTYPE_EXIST.getMsg());
diff --git a/screen-manage/src/main/resources/mapper/SysDictTypeMapper.xml b/screen-manage/src/main/resources/mapper/SysDictTypeMapper.xml
index 6eaedd4..a177096 100644
--- a/screen-manage/src/main/resources/mapper/SysDictTypeMapper.xml
+++ b/screen-manage/src/main/resources/mapper/SysDictTypeMapper.xml
@@ -12,4 +12,18 @@
                     <result column="is_delete" property="isDelete" />
         </resultMap>
 
+    <select id="listOne" resultType="com.moral.api.entity.SysDictType">
+        SELECT
+            t.id,
+            t.name,
+            t.desc,
+            t.system,
+            t.create_time,
+            t.update_time,
+            t.is_delete
+        FROM
+            sys_dict_type t
+        WHERE
+            t.name =#{name}  AND is_delete = '0'
+    </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0