Selaa lähdekoodia

综合展示-二供排行

yuejiaying 4 vuotta sitten
vanhempi
commit
7abd352fe2

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

@@ -147,10 +147,6 @@ public class ComDisplayController {
         monitorDataCollectDto.setSceneTypeName("泵站");
         monitorDataCollectDto.setSceneIds(sceneService.findByParentIdsByCom(Long.valueOf(companyOrgId)));
         List<MonitorDataCollectDto> result = onlineMonitorService.selectMapSuspensionForMonth(monitorDataCollectDto);
-
-        for (MonitorDataCollectDto item : result) {
-            item.setYieldWaterUsage(item.getYieldWaterUsage() != null ? (double) Math.round(item.getYieldWaterUsage() / (float) 100) / 100 : null);
-        }
         return new AjaxMessage<>(ResultStatus.OK, result);
     }
 

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

@@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.text.DecimalFormat;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -40,6 +41,8 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
     private RedisUtil redisUtil;
     @Autowired
     private OrgInfoUtil orgInfoUtil;
+    @Autowired
+    private MonitorDataReportServiceImpl monitorDataReportServiceImpl;
     /**
      * 查询实时报警信息
      * @return
@@ -117,23 +120,24 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
         monitorDataCollectDto.setPermissonType(loginUser.getPermissonType());
         monitorDataCollectDto.setType(3);
         List<MonitorDataCollectDto> result = onlineMonitorMapper.selectSceneParamForLastMonth(monitorDataCollectDto);
-        if (!StringUtils.isEmpty(monitorDataCollectDto.getSceneTypeName())) {
-            monitorDataCollectDto.setType(1);
-            List<MonitorDataCollectDto> calculateRes = onlineMonitorMapper.selectSceneParam(monitorDataCollectDto);
-            GetCalMonitorData(result, calculateRes);
-            //按水量倒序排序 如果是水源按照取水量排序,其他按照供水量
-            result.sort(new Comparator<MonitorDataCollectDto>() {
-                @Override
-                public int compare(MonitorDataCollectDto o1, MonitorDataCollectDto o2) {
-                    Double d1 = monitorDataCollectDto.getSceneTypeName().equals("水源") ? (o1.getIntakeWaterUsage() == null ? 0d : o1.getIntakeWaterUsage()) : (o1.getYieldWaterUsage() == null ? 0d : o1.getYieldWaterUsage());
-                    Double d2 = monitorDataCollectDto.getSceneTypeName().equals("水源") ? (o2.getIntakeWaterUsage() == null ? 0d : o2.getIntakeWaterUsage()) : (o2.getYieldWaterUsage() == null ? 0d : o2.getYieldWaterUsage());
-                    if (d1 > d2) {
-                        return -1;
-                    }
-                    return 0;
-                }
-            });
+
+        for(MonitorDataCollectDto mon:result){
+            BigDecimal yieldWaterUsage=monitorDataReportServiceImpl.getAmountCount(null,mon.getSceneId().intValue(),"泵站",3,2);
+            mon.setYieldWaterUsage(yieldWaterUsage.doubleValue()/10000);
         }
+        //按水量倒序排序 如果是水源按照取水量排序,其他按照供水量
+        result.sort(new Comparator<MonitorDataCollectDto>() {
+            @Override
+            public int compare(MonitorDataCollectDto o1, MonitorDataCollectDto o2) {
+                Double d1 = monitorDataCollectDto.getSceneTypeName().equals("水源") ? (o1.getIntakeWaterUsage() == null ? 0d : o1.getIntakeWaterUsage()) : (o1.getYieldWaterUsage() == null ? 0d : o1.getYieldWaterUsage());
+                Double d2 = monitorDataCollectDto.getSceneTypeName().equals("水源") ? (o2.getIntakeWaterUsage() == null ? 0d : o2.getIntakeWaterUsage()) : (o2.getYieldWaterUsage() == null ? 0d : o2.getYieldWaterUsage());
+                if (d1 > d2) {
+                    return -1;
+                }
+                return 0;
+            }
+        });
+
         return result;
     }
     /**
@@ -489,23 +493,19 @@ public class OnlineMonitorImpl implements OnlineMonitorService {
         List<SecDataCollectDto> secDataCollectDtos = new ArrayList<>();
         if(!StringUtils.isEmpty(monitorDataCollectDto.getSceneTypeName()))
         {
-            monitorDataCollectDto.setType(1);
-            List<MonitorDataCollectDto> calculateRes=onlineMonitorMapper.selectSceneParamForLastMonth(monitorDataCollectDto);
-            GetCalMonitorData(result,calculateRes);
             Map<Long,SecDataCollectDto> map = new HashMap<>();
             // 按公司进行汇总
             for(MonitorDataCollectDto item : result) {
                 System.out.println("公司ID:"+item.getCompanyOrgId());
                 if (!map.containsKey(item.getCompanyOrgId())) {
                     SecDataCollectDto secDataCollectDto = new SecDataCollectDto();
-                    secDataCollectDto.setYieldWaterUsage(item.getYieldWaterUsage()!=null?(double) Math.round(item.getYieldWaterUsage()/(float)100)/100:0);
                     secDataCollectDto.setCount(1);
                     secDataCollectDto.setComName(orgInfoUtil.getOrgName(item.getCompanyOrgId().intValue()));
+                    BigDecimal yieldWaterUsage=monitorDataReportServiceImpl.getAmountCount(item.getCompanyOrgId().intValue(),null,"泵站",3,2);
+                    secDataCollectDto.setYieldWaterUsage(yieldWaterUsage.doubleValue());
                     map.put(item.getCompanyOrgId(), secDataCollectDto);
                 } else {
-                    Double yieldWaterUsage = map.get(item.getCompanyOrgId()).getYieldWaterUsage() != null ? (double) Math.round(map.get(item.getCompanyOrgId()).getYieldWaterUsage()/(float)100)/100 : 0d;
                     Integer count = map.get(item.getCompanyOrgId()).getCount() != null ? map.get(item.getCompanyOrgId()).getCount() : 1;
-                    map.get(item.getCompanyOrgId()).setYieldWaterUsage(yieldWaterUsage + (item.getYieldWaterUsage() != null ? item.getYieldWaterUsage() : 0));
                     map.get(item.getCompanyOrgId()).setCount(count + 1);
                 }
             }