Bladeren bron

电力告警

jichaobo 4 jaren geleden
bovenliggende
commit
f34ec24ea0

+ 5 - 0
fiveep-controller/src/main/java/com/bizmatics/controller/web/RtSwitchDataController.java

@@ -36,6 +36,11 @@ public class RtSwitchDataController {
     }
 
 
+    @RequestMapping("LoopStatus")
+    public ApiResult<List<Map<String,Object>>> getLoopStatus(@RequestParam Integer siteId){
+        return ApiResult.success(rtSwitchDataService.getLoopStatus(siteId));
+    }
+
 
 }
 

+ 9 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/RtSwitchDataMapper.java

@@ -4,6 +4,7 @@ import com.bizmatics.model.RtSwitchData;
 import com.bizmatics.common.mvc.base.CrudMapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.Date;
 import java.util.Map;
 
 /**
@@ -19,4 +20,12 @@ public interface RtSwitchDataMapper extends CrudMapper<RtSwitchData> {
 
     Map<String,Object> getOneMap(@Param("siteId") Integer siteId);
 
+    Map<String,Object> getLoopStatusMap(@Param("siteId") Integer siteId);
+
+    Integer getOffCountDMap(@Param("siteId") Integer siteId);
+
+    Integer getOffCountMMap(@Param("siteId") Integer siteId);
+
+    Map<String,Object> getLoopStatusListMap(@Param("siteId") Integer siteId);
+
 }

+ 69 - 0
fiveep-persistence/src/main/resources/mapper/mysql/RtSwitchDataMapper.xml

@@ -52,4 +52,73 @@
         </where>
     </select>
 
+    <select id="getLoopStatusMap" resultType="java.util.Map">
+        select
+        *
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join rt_switch_data as rsd
+        on d.device_code = rsd.deviceName
+        <where>
+                and d.enable = 1
+            <if test="siteId != null and siteId != 0">
+                and us.site_id = #{siteId}
+            </if>
+        </where>
+        limit 1
+    </select>
+
+    <select id="getOffCountDMap" resultType="java.lang.Integer">
+        select count(1)
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join alarm_power as ap
+        on d.device_code = ap.device_code
+        <where>
+            and ap.meas_name = 'LoadLive'
+            and ap.digital_value = 1
+            and d.enable = 1
+            and to_days(ap.sending_time) = to_days(now())
+            <if test="siteId != null and siteId != 0">
+                and us.site_id = #{siteId}
+            </if>
+        </where>
+    </select>
+    <select id="getOffCountMMap" resultType="java.lang.Integer">
+        select count(1)
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join alarm_power as ap
+        on d.device_code = ap.device_code
+        <where>
+            and ap.meas_name = 'LoadLive'
+            and ap.digital_value = 1
+            and d.enable = 1
+            and DATE_FORMAT( sending_time, '%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )
+            <if test="siteId != null and siteId != 0">
+                and us.site_id = #{siteId}
+            </if>
+        </where>
+    </select>
+
+    <select id="getLoopStatusListMap" resultType="java.util.Map">
+        select
+        *
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join rt_switch_data as rsd
+        on d.device_code = rsd.deviceName
+        <where>
+            and d.enable = 1
+            <if test="siteId != null and siteId != 0">
+                and us.site_id = #{siteId}
+            </if>
+        </where>
+        limit 1
+    </select>
+
 </mapper>

+ 3 - 0
fiveep-service/src/main/java/com/bizmatics/service/RtSwitchDataService.java

@@ -2,6 +2,7 @@ package com.bizmatics.service;
 
 import com.bizmatics.model.RtSwitchData;
 import com.bizmatics.common.mvc.base.CrudService;
+import com.bizmatics.service.vo.ApCountVO;
 
 import java.util.List;
 import java.util.Map;
@@ -22,4 +23,6 @@ public interface RtSwitchDataService extends CrudService<RtSwitchData> {
      * @return
      */
     List<Map<String,Object>> getOne(Integer siteId);
+
+    List<Map<String,Object>> getLoopStatus(Integer siteId);
 }

+ 22 - 4
fiveep-service/src/main/java/com/bizmatics/service/impl/RtSwitchDataServiceImpl.java

@@ -6,10 +6,7 @@ import com.bizmatics.service.RtSwitchDataService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * <p>
@@ -27,6 +24,27 @@ public class RtSwitchDataServiceImpl extends AbstractCrudService<RtSwitchDataMap
     public List<Map<String, Object>> getOne(Integer siteId) {
         List<Map<String, Object>> list = new ArrayList<>();
         Map<String, Object> radMap = baseMapper.getOneMap(siteId);
+        for (String name:radMap.keySet()) {
+            Map<String,Object> map = new HashMap<>();
+            map.put("name",name);
+            map.put("value",radMap.get(name));
+            list.add(map);
+        }
+        return list;
+    }
+
+    @Override
+    public List<Map<String, Object>> getLoopStatus(Integer siteId) {
+        List<Map<String, Object>> list = new ArrayList<>();
+        Map<String, Object> radMap = baseMapper.getLoopStatusMap(siteId);
+        Iterator<String> it = radMap.keySet().iterator();
+        Object value = radMap.get("LoadLive");
+        int day_count = baseMapper.getOffCountDMap(siteId);
+        int month_count = baseMapper.getOffCountMMap(siteId);
+
+
+
+
         for (String name:radMap.keySet()) {
             Map<String,Object> map = new HashMap<>();
             map.put("name",name);