소스 검색

Merge remote-tracking branch 'origin/20210223' into 20210223

wangyangyang 4 년 전
부모
커밋
88fd0bc6e1

+ 4 - 4
sms_water/src/main/java/com/huaxu/controller/ComDisplayController.java

@@ -191,12 +191,12 @@ public class ComDisplayController {
     @RequestMapping(value="selectPipeNetLayer" , method = RequestMethod.GET)
     @ApiOperation(value = "查询管网地图图层及设备")
     public AjaxMessage<List<PipeNetLayerDto>> selectPipeNetLayer(
-            @ApiParam(value = "公司机构id", required = true)@RequestParam Integer companyOrgId,
+            @ApiParam(value = "公司机构id", required = false)@RequestParam(required = false) Integer companyOrgId,
             @ApiParam(value = "一级场景类型名称", required = false) @RequestParam(required = false) String sceneTypeName){
         OnlineDataDto onlineDataDto=new OnlineDataDto();
         onlineDataDto.setSceneTypeName(sceneTypeName);
         onlineDataDto.setFlag(1);
-        onlineDataDto.setSceneIds(sceneService.findByParentIdsByCom(Long.valueOf(companyOrgId)));
+        onlineDataDto.setSceneIds(companyOrgId==null?sceneService.findByParentIdsLike(null):sceneService.findByParentIdsByCom(Long.valueOf(companyOrgId)));
         List<PipeNetLayerDto> result=onlineMonitorService.selectPipeNetLayer(onlineDataDto);
         return new AjaxMessage<>(ResultStatus.OK, result);
     }
@@ -216,12 +216,12 @@ public class ComDisplayController {
     @RequestMapping(value="selectMapSuspension" , method = RequestMethod.GET)
     @ApiOperation(value = "查询地图悬浮数据")
     public AjaxMessage<List<MonitorDataCollectDto>> selectMapSuspension(
-            @ApiParam(value = "公司机构id", required = true)@RequestParam Integer companyOrgId,
+            @ApiParam(value = "公司机构id", required = false)@RequestParam(required = false) Integer companyOrgId,
             @ApiParam(value = "一级场景类型名称", required = false) @RequestParam(required = false) String sceneTypeName){
         MonitorDataCollectDto monitorDataCollectDto=new MonitorDataCollectDto();
         monitorDataCollectDto.setSceneTypeName(sceneTypeName);
         monitorDataCollectDto.setFlag(1);
-        monitorDataCollectDto.setSceneIds(sceneService.findByParentIdsByCom(Long.valueOf(companyOrgId)));
+        monitorDataCollectDto.setSceneIds(companyOrgId==null?sceneService.findByParentIdsLike(null):sceneService.findByParentIdsByCom(Long.valueOf(companyOrgId)));
         List<MonitorDataCollectDto> result=onlineMonitorService.selectMapSuspension(monitorDataCollectDto);
         return new AjaxMessage<>(ResultStatus.OK, result);
     }

+ 4 - 0
sms_water/src/main/java/com/huaxu/controller/OnlineMonitorController.java

@@ -77,6 +77,7 @@ public class OnlineMonitorController {
             @ApiParam(value = "一级场景类型名称", required = false) @RequestParam(required = false) String sceneTypeName){
         MonitorDataCollectDto monitorDataCollectDto=new MonitorDataCollectDto();
         monitorDataCollectDto.setSceneTypeName(sceneTypeName);
+        monitorDataCollectDto.setFlag(1);
         monitorDataCollectDto.setSceneIds(sceneService.findByParentIdsLike(null));
         List<MonitorDataCollectDto> result=onlineMonitorService.selectMapSuspension(monitorDataCollectDto);
         return new AjaxMessage<>(ResultStatus.OK, result);
@@ -88,6 +89,7 @@ public class OnlineMonitorController {
             @ApiParam(value = "一级场景id", required = true) @RequestParam Long sceneId){
         MonitorDataCollectDto monitorDataCollectDto=new MonitorDataCollectDto();
         monitorDataCollectDto.setSceneId(sceneId);
+        monitorDataCollectDto.setFlag(1);
         monitorDataCollectDto.setSceneIds(sceneService.findByParentIdsLike(null));
         List<MonitorDataCollectDto> result=onlineMonitorService.selectMapParam(monitorDataCollectDto);
         return new AjaxMessage<>(ResultStatus.OK, result);
@@ -142,6 +144,7 @@ public class OnlineMonitorController {
             @ApiParam(value = "一级场景id", required = true) @RequestParam Long deviceId){
         MonitorDataCollectDto monitorDataCollectDto=new MonitorDataCollectDto();
         monitorDataCollectDto.setDeviceId(deviceId);
+        monitorDataCollectDto.setFlag(1);
         monitorDataCollectDto.setSceneIds(sceneService.findByParentIdsLike(null));
         List<MonitorDataCollectDto> result=onlineMonitorService.selectDeviceMapParam(monitorDataCollectDto);
         return new AjaxMessage<>(ResultStatus.OK, result);
@@ -229,6 +232,7 @@ public class OnlineMonitorController {
             @ApiParam(value = "场景类型名称", required = false) @RequestParam(required = false) String sceneTypeName){
         OnlineDataDto onlineDataDto=new OnlineDataDto();
         onlineDataDto.setSceneTypeName(sceneTypeName);
+        onlineDataDto.setFlag(1);
         onlineDataDto.setSceneIds(sceneService.findByParentIdsLike(null));
         List<PipeNetLayerDto> result=onlineMonitorService.selectPipeNetLayer(onlineDataDto);
         return new AjaxMessage<>(ResultStatus.OK, result);

+ 38 - 0
sms_water/src/main/java/com/huaxu/service/impl/OnlineMonitorImpl.java

@@ -657,6 +657,19 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
                 }
             }
         }
+        for(MonitorDataCollectDto mon : result){
+            if(mon.getSceneTypeName().equals("水源")||mon.getSceneTypeName().equals("水厂")){
+                if(mon.getYieldWaterUsage()!=null) {
+                    mon.setYieldWaterUsage(mon.getYieldWaterUsage() / 10000);
+                }
+                if(mon.getIntakeWaterUsage()!=null) {
+                    mon.setIntakeWaterUsage(mon.getIntakeWaterUsage() / 10000);
+                }
+                if(mon.getPowerUsage()!=null) {
+                    mon.setPowerUsage(mon.getPowerUsage() / 10000);
+                }
+            }
+        }
     }
     /**
      * 获取在线数据及计算数据
@@ -758,6 +771,19 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
                 }
             }
         }
+        for(OnlineDataDto mon : result){
+            if(mon.getSceneTypeName().equals("水源")||mon.getSceneTypeName().equals("水厂")){
+                if(mon.getYieldWaterUsage()!=null) {
+                    mon.setYieldWaterUsage(mon.getYieldWaterUsage() / 10000);
+                }
+                if(mon.getIntakeWaterUsage()!=null) {
+                    mon.setIntakeWaterUsage(mon.getIntakeWaterUsage() / 10000);
+                }
+                if(mon.getPowerUsage()!=null) {
+                    mon.setPowerUsage(mon.getPowerUsage() / 10000);
+                }
+            }
+        }
     }
     /**
      * 获取计算数据总值
@@ -765,6 +791,7 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
     public MonitorDataCollectDto GetCalTotalData(List<MonitorDataCollectDto> calculateRes){
         MonitorDataCollectDto result=new MonitorDataCollectDto();
         for(MonitorDataCollectDto calculate :calculateRes){
+            result.setSceneTypeName(calculate.getSceneTypeName());
             for(MonitorDataDto monitorData : calculate.getMonitorDataEntities()){
                 byte[] bytes = redisUtil.get(("sms_water_"+monitorData.getDeviceCode()).getBytes());
                 if(bytes != null && bytes.length>0) {
@@ -800,6 +827,17 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
                 }
             }
         }
+        if(result.getSceneTypeName().equals("水源")||result.getSceneTypeName().equals("水厂")){
+            if(result.getYieldWaterUsage()!=null) {
+                result.setYieldWaterUsage(result.getYieldWaterUsage() / 10000);
+            }
+            if(result.getIntakeWaterUsage()!=null) {
+                result.setIntakeWaterUsage(result.getIntakeWaterUsage() / 10000);
+            }
+            if(result.getPowerUsage()!=null) {
+                result.setPowerUsage(result.getPowerUsage() / 10000);
+            }
+        }
         return result;
     }
 }

+ 3 - 2
sms_water/src/main/resources/mapper/OnlineMonitorMapper.xml

@@ -52,6 +52,7 @@
         <result property="pointY" column="point_y" jdbcType="VARCHAR"/>
         <result property="address" column="address" jdbcType="VARCHAR"/>
         <result property="deviceState" column="device_state" jdbcType="INTEGER"/>
+        <result property="sceneTypeName" column="scene_type_name" jdbcType="VARCHAR"/>
         <collection property="MonitorDataEntities" ofType="com.huaxu.dto.MonitorDataDto" javaType="list">
             <result property="attributeId" column="attribute_id" jdbcType="INTEGER"/>
             <result property="attributeName" column="attribute_name" jdbcType="VARCHAR"/>
@@ -558,7 +559,7 @@
     </select>
     <!-- 查询设备参数-->
     <select id="statsDeviceParm" resultMap="deviceDataMap">
-        SELECT t6.id device_id,t6.device_code,t6.device_name,t7.attribute_id,t7.parm_type attribute_type,
+        SELECT t6.id device_id,t6.device_code,t6.device_name,t7.attribute_id,t7.parm_type attribute_type,t3.scene_type_name,
          case when t7.attribute_id is  null then null when t8.id is null then 0 else 1 end is_alarm
         <if test="type == 4 ">,t9.latest_value</if>
         from sms_scene t1
@@ -682,7 +683,7 @@
     </select>
     <!--查询昨日水厂制水总量-->
     <select id="selectTotalYieldWater" resultType="java.lang.Double">
-        select sum(sum_value) yieldWater
+        select sum(sum_value)/10000 yieldWater
         from sms_scene t1
         <include refid="sceneDeviceJoins"/>
         inner join sms_month_report t8 on t8.device_id=t2.device_id and t8.attribute_id =t5.attribute_id