浏览代码

+ 告警数据对接

chen.cheng 1 月之前
父节点
当前提交
ba169f65bf

+ 26 - 12
ems/ems-cloud/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpAlarmController.java

@@ -1,15 +1,9 @@
 package com.ruoyi.ems.controller;
 
-import com.huashe.common.domain.AjaxResult;
-import com.ruoyi.common.core.utils.poi.ExcelUtil;
-import com.ruoyi.common.core.web.controller.BaseController;
-import com.ruoyi.common.core.web.page.TableDataInfo;
-import com.ruoyi.common.log.annotation.Log;
-import com.ruoyi.common.log.enums.BusinessType;
-import com.ruoyi.common.security.annotation.RequiresPermissions;
-import com.ruoyi.ems.domain.AdmOpAlarm;
-import com.ruoyi.ems.service.IAdmOpAlarmService;
-import io.swagger.annotations.Api;
+import java.util.List;
+
+import javax.servlet.http.HttpServletResponse;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -21,8 +15,17 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
-import javax.servlet.http.HttpServletResponse;
-import java.util.List;
+import com.huashe.common.domain.AjaxResult;
+import com.ruoyi.common.core.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.page.TableDataInfo;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.ems.domain.AdmOpAlarm;
+import com.ruoyi.ems.service.IAdmOpAlarmService;
+
+import io.swagger.annotations.Api;
 
 /**
  * 能源设施告警Controller
@@ -141,4 +144,15 @@ public class AdmOpAlarmController extends BaseController {
     public AjaxResult qrySubSysIndexYear(@RequestParam("areaCode") String areaCode) {
         return success(opAlarmService.qrySubSysIndexYear(areaCode));
     }
+
+    @GetMapping("/cnt/handled")
+    public AjaxResult cntHandledAlarmByDate(AdmOpAlarm admOpAlarm) {
+        return success(opAlarmService.cntHandledAlarmByDate(admOpAlarm));
+    }
+
+    @GetMapping("/cnt/date/alarm/type")
+    public AjaxResult qryAlarmTypeIndexByDate(AdmOpAlarm admOpAlarm) {
+        return success(opAlarmService.qryAlarmTypeIndexByDate(admOpAlarm));
+    }
+
 }

+ 7 - 3
ems/ems-core/src/main/java/com/ruoyi/ems/mapper/AdmOpAlarmMapper.java

@@ -1,11 +1,12 @@
 package com.ruoyi.ems.mapper;
 
-import com.ruoyi.ems.domain.AdmOpAlarm;
-import org.apache.ibatis.annotations.Param;
-
 import java.util.List;
 import java.util.Map;
 
+import org.apache.ibatis.annotations.Param;
+
+import com.ruoyi.ems.domain.AdmOpAlarm;
+
 /**
  * 能源设施告警Mapper接口
  *
@@ -64,6 +65,7 @@ public interface AdmOpAlarmMapper {
     List<Map<String, Object>> qryAlarmTypeIndex(@Param("areaCode") String areaCode,
         @Param("startTime") String startTime, @Param("endTime") String endTime);
 
+    List<Map<String, Object>> qryAlarmTypeIndexByDate(AdmOpAlarm admOpAlarm);
     List<Map<String, Object>> qryAlarmTypeIndexDay(@Param("alarmDate") String alarmDate,
         @Param("areaCode") String areaCode);
 
@@ -82,4 +84,6 @@ public interface AdmOpAlarmMapper {
     List<Map<String, Object>> qrySubSysIndexYear(@Param("alarmDate") String alarmDate,
         @Param("areaCode") String areaCode);
 
+    Map<String, Object> cntHandledAlarmByDate(AdmOpAlarm admOpAlarm);
+
 }

+ 4 - 0
ems/ems-core/src/main/java/com/ruoyi/ems/service/IAdmOpAlarmService.java

@@ -62,6 +62,8 @@ public interface IAdmOpAlarmService {
 
     List<Map<String, Object>> qryAlarmTypeIndex(String areaCode, String startTime, String endTime);
 
+    List<Map<String, Object>> qryAlarmTypeIndexByDate(AdmOpAlarm params);
+
     List<Map<String, Object>> qryAlarmTypeIndexDay(String areaCode);
 
     List<Map<String, Object>> qryAlarmTypeIndexMonth(String areaCode);
@@ -73,4 +75,6 @@ public interface IAdmOpAlarmService {
     List<Map<String, Object>> qrySubSysIndexMonth(String areaCode);
 
     List<Map<String, Object>> qrySubSysIndexYear(String areaCode);
+
+    Map<String, Object> cntHandledAlarmByDate(AdmOpAlarm admOpAlarm);
 }

+ 17 - 7
ems/ems-core/src/main/java/com/ruoyi/ems/service/impl/AdmOpAlarmServiceImpl.java

@@ -1,5 +1,12 @@
 package com.ruoyi.ems.service.impl;
 
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.lang3.ObjectUtils;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
 
 import com.ruoyi.common.core.utils.DateTimeUtil;
 import com.ruoyi.ems.domain.AdmOpAlarm;
@@ -12,13 +19,6 @@ import com.ruoyi.ems.mapper.AreaMapper;
 import com.ruoyi.ems.mapper.EmsDeviceMapper;
 import com.ruoyi.ems.mapper.EmsFacsMapper;
 import com.ruoyi.ems.service.IAdmOpAlarmService;
-import org.apache.commons.lang3.ObjectUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-import java.util.Map;
 
 /**
  * 能源设施告警Service业务层处理
@@ -114,6 +114,11 @@ public class AdmOpAlarmServiceImpl implements IAdmOpAlarmService {
     }
 
     @Override
+    public List<Map<String, Object>> qryAlarmTypeIndexByDate(AdmOpAlarm params) {
+        return admOpAlarmMapper.qryAlarmTypeIndexByDate(params);
+    }
+
+    @Override
     public List<Map<String, Object>> qryAlarmTypeIndexDay(String areaCode) {
         String dateTime = DateTimeUtil.currentDateTime(DateTimeUtil.DateFormatter.yyyy_MM_dd);
         return admOpAlarmMapper.qryAlarmTypeIndexDay(dateTime, areaCode);
@@ -149,6 +154,11 @@ public class AdmOpAlarmServiceImpl implements IAdmOpAlarmService {
         return admOpAlarmMapper.qrySubSysIndexYear(firstDayOfRecentYear, areaCode);
     }
 
+    @Override
+    public Map<String, Object> cntHandledAlarmByDate(AdmOpAlarm admOpAlarm) {
+        return admOpAlarmMapper.cntHandledAlarmByDate(admOpAlarm);
+    }
+
     private String getObjInfo(Integer objType, String objCode) {
         if (AlarmObjType.AREA.getCode().equals(objType)) {
             Area area = areaMapper.selectAreaByCode(objCode);

+ 27 - 3
ems/ems-core/src/main/resources/mapper/ems/AdmOpAlarmMapper.xml

@@ -127,11 +127,11 @@
     </delete>
 
     <select id="qryAlarmTypeIndex" resultType="java.util.Map">
-        SELECT count(*)   cnt,
-               alarm_type alarmType
+        SELECT count(*) cnt,
+        alarm_type alarmType
         FROM adm_op_alarm
         <where>
-            <if test="areaCode != null and areaCode != '' and areaCode !='-1'">area_code = #{areaCode}</if>
+            <if test="areaCode != null and areaCode != '' and areaCode !='-1'">and area_code = #{areaCode}</if>
             <if test="startTime != null  and startTime != '' and endTime != null and endTime !=''">
                 and alarm_time &gt;= #{startTime} and alarm_time &lt;= #{endTime}
             </if>
@@ -139,6 +139,19 @@
         GROUP BY alarm_type
     </select>
 
+    <select id="qryAlarmTypeIndexByDate" parameterType="admOpAlarm" resultType="java.util.Map">
+        SELECT count(*) cnt,
+        alarm_type alarmType
+        FROM adm_op_alarm
+        <where>
+            <if test="areaCode != null and areaCode != '' and areaCode !='-1'">and area_code = #{areaCode}</if>
+            <if test="startRecTime != null and startRecTime != ''">
+                and alarm_date like CONCAT(#{startRecTime},'%')
+            </if>
+        </where>
+        GROUP BY alarm_type
+    </select>
+
     <select id="qryAlarmTypeIndexDay" resultType="java.util.Map">
         SELECT count(*)                         cnt,
                alarm_type                       alarmType,
@@ -227,4 +240,15 @@
         ORDER BY alarm.system_code,
                  dateIndex
     </select>
+    <select id="cntHandledAlarmByDate" parameterType="admOpAlarm"  resultType="java.util.Map">
+        SELECT
+        count(id) cnt,
+        sum( CASE WHEN aoa.alarm_state = 1 THEN 1 ELSE 0 END) handledCnt
+        from
+        adm_op_alarm aoa
+        <where>
+            <if test="areaCode != null and areaCode != '' and areaCode !='-1'">and area_code = #{areaCode}</if>
+            <if test="startRecTime != null and startRecTime != ''">and aoa.alarm_date like CONCAT(#{startRecTime}, '%')</if>
+        </where>
+    </select>
 </mapper>