Parcourir la source

Merge branch 'han' of uskycloud/usky-modules into server-165

hanzhengyi il y a 1 an
Parent
commit
f0a06a0306

+ 13 - 0
service-iot/service-iot-biz/src/main/java/com/usky/iot/controller/web/BaseAlarmController.java

@@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.*;
 import org.springframework.stereotype.Controller;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -110,5 +111,17 @@ public class BaseAlarmController {
     public ApiResult<List<Object>> alarmStatistic(@RequestParam(value = "deptId", required = false) Integer deptId){
         return ApiResult.success(baseAlarmService.alarmStatistic(deptId));
     }
+
+    /**
+     * 实时报警-报警统计
+     * @param startTime 开始时间
+     * @param endTime 开始时间
+     * @return
+     */
+    @GetMapping("/alarmStatisticDay")
+    public ApiResult<List<Map<String,Object>>> alarmStatisticDay(@RequestParam(value = "startTime", required = false) String startTime,
+                                                                 @RequestParam(value = "endTime", required = false) String endTime){
+        return ApiResult.success(baseAlarmService.alarmStatisticDay(startTime,endTime));
+    }
 }
 

+ 4 - 0
service-iot/service-iot-biz/src/main/java/com/usky/iot/mapper/BaseAlarmMapper.java

@@ -7,6 +7,7 @@ import com.usky.iot.domain.DmpDeviceInfo;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -26,4 +27,7 @@ public interface BaseAlarmMapper extends CrudMapper<BaseAlarm> {
     List<BaseAlarm> getUnDeviceAlarmList(@Param("devList") List<String> devList);
 
     List<BaseAlarm> getDeviceAlarmList(@Param("devList") List<String> devList);
+
+    List<Map<String,Object>> getAlarmStatisticDay(@Param("startTime") String startTime,
+                                                  @Param("endTime") String endTime);
 }

+ 7 - 0
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/BaseAlarmService.java

@@ -10,6 +10,7 @@ import com.usky.iot.service.vo.BaseAlarmResponeVO;
 import org.springframework.web.bind.annotation.RequestBody;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -42,4 +43,10 @@ public interface BaseAlarmService extends CrudService<BaseAlarm> {
      * @return
      */
     List<Object> alarmStatistic(Integer deptId);
+
+    /**
+     * 实时报警-报警统计
+     * @return
+     */
+    List<Map<String,Object>> alarmStatisticDay(String startTime, String endTime);
 }

+ 5 - 0
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/impl/BaseAlarmServiceImpl.java

@@ -745,6 +745,11 @@ public class BaseAlarmServiceImpl extends AbstractCrudService<BaseAlarmMapper, B
         list.add(map);
         return list;
     }
+    @Override
+    public List<Map<String,Object>> alarmStatisticDay(String startTime,String endTime) {
+        List<Map<String,Object>> list = baseMapper.getAlarmStatisticDay(startTime,endTime);
+        return list;
+    }
 }
 
 

+ 28 - 0
service-iot/service-iot-biz/src/main/resources/mapper/iot/BaseAlarmMapper.xml

@@ -92,4 +92,32 @@
             </if>
         </where>
     </select>
+    <select id="getAlarmStatisticDay" resultType="java.util.Map">
+        SELECT
+        `date`,
+        MAX( `sum` ) AS `sum`
+        FROM
+            (
+            SELECT
+                @cdate := DATE_ADD( @cdate, INTERVAL - 1 DAY ) `date`,
+                0 AS `sum`
+            FROM
+                ( SELECT @cdate := DATE_ADD( CURDATE( ), INTERVAL + 1 DAY ) FROM base_build ) t1
+            WHERE
+                @cdate > #{startTime} UNION ALL
+            SELECT
+                DATE(alarm_time) AS date,
+                COUNT( * ) AS 'sum'
+            FROM
+                `base_alarm`
+            WHERE
+                base_alarm.alarm_time >= #{startTime}
+            GROUP BY
+                DATE DESC
+            ) _tmpAllTable
+            WHERE
+               `date` BETWEEN #{startTime} AND #{endTime}
+        GROUP BY
+            `date` DESC
+    </select>
 </mapper>