Forráskód Böngészése

实时告警记录优化

yq 4 éve
szülő
commit
cb64f7fb94

+ 1 - 1
fiveep-service/src/main/java/com/bizmatics/service/impl/HtAnalogDataServiceImpl.java

@@ -109,8 +109,8 @@ public class HtAnalogDataServiceImpl extends AbstractCrudService<HtAnalogDataMap
         Date date = new Date();
         Integer userId = SessionLocal.getUserId();
         List<CommonIcoVO> list = new ArrayList<>();
-        list.add(selectTreedMonthOne(DateUtils.getLastDayOfMonth(date),userId,"当月趋势图"));
         list.add(selectTreedMonthOne(DateUtils.getLastDayOfMonth(DateUtils.addMonths(date,-1)),userId,"上月趋势图"));
+        list.add(selectTreedMonthOne(DateUtils.getLastDayOfMonth(date),userId,"当月趋势图"));
         return list;
     }
 

+ 16 - 20
fiveep-service/src/main/java/com/bizmatics/service/impl/RtAnalogDataServiceImpl.java

@@ -3,29 +3,22 @@ package com.bizmatics.service.impl;
 import cn.afterturn.easypoi.excel.ExcelExportUtil;
 import cn.afterturn.easypoi.excel.entity.ExportParams;
 import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
-import cn.afterturn.easypoi.excel.export.template.ExcelExportOfTemplateUtil;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.bizmatics.common.core.exception.BusinessException;
-import com.bizmatics.common.core.util.BeanMapperUtils;
 import com.bizmatics.common.core.util.DateUtils;
 import com.bizmatics.common.core.util.FileUtils;
 import com.bizmatics.common.core.util.StringUtils;
+import com.bizmatics.common.mvc.base.AbstractCrudService;
 import com.bizmatics.common.spring.util.GlobalUtils;
-import com.bizmatics.model.*;
+import com.bizmatics.model.Device;
+import com.bizmatics.model.HtAnalogData;
+import com.bizmatics.model.RtAnalogData;
 import com.bizmatics.persistence.mapper.DeviceMapper;
 import com.bizmatics.persistence.mapper.RtAnalogDataMapper;
-import com.bizmatics.persistence.mapper.SiteMapper;
 import com.bizmatics.service.RtAnalogDataService;
-import com.bizmatics.common.mvc.base.AbstractCrudService;
-import com.bizmatics.service.SiteService;
-import com.bizmatics.service.UserSiteService;
 import com.bizmatics.service.util.Arith;
 import com.bizmatics.service.util.SessionLocal;
 import com.bizmatics.service.vo.RadCountVO;
-import com.bizmatics.service.vo.HtAnalogDataExportVO;
 import org.apache.commons.lang3.ArrayUtils;
-import org.apache.ibatis.annotations.Param;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -36,7 +29,6 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.util.*;
 import java.util.concurrent.atomic.AtomicReference;
-import java.util.stream.Stream;
 
 /**
  * <p>
@@ -49,8 +41,7 @@ import java.util.stream.Stream;
 @Service
 public class RtAnalogDataServiceImpl extends AbstractCrudService<RtAnalogDataMapper, RtAnalogData> implements RtAnalogDataService {
 
-    @Autowired
-    private UserSiteService userSiteService;
+
     @Autowired
     private DeviceMapper deviceMapper;
 
@@ -61,6 +52,7 @@ public class RtAnalogDataServiceImpl extends AbstractCrudService<RtAnalogDataMap
         AtomicReference<Integer> heavyLoad = new AtomicReference<>(0);
         AtomicReference<Integer> easyLoad = new AtomicReference<>(0);
         AtomicReference<Integer> norMalLoad = new AtomicReference<>(0);
+        AtomicReference<Integer> count = new AtomicReference<>(0);
         List<Device> deviceList = deviceMapper.list(userId, null, null, null, null, null);
         List<RtAnalogData> list = baseMapper.list(userId);
         for (Device device:deviceList) {
@@ -76,23 +68,27 @@ public class RtAnalogDataServiceImpl extends AbstractCrudService<RtAnalogDataMap
                             }
                         }
                         if (installedCapacityDouble < 0.4){
-                            easyLoad.getAndSet(easyLoad.get() + 1);
+                            easyLoad.getAndSet(easyLoad.get()+1);
                         }else if (installedCapacityDouble >= 0.4 && installedCapacityDouble <= 0.8){
-                            norMalLoad.getAndSet(norMalLoad.get() + 1);
+                            norMalLoad.getAndSet(norMalLoad.get()+1);
                         }else {
                             heavyLoad.getAndSet(heavyLoad.get() + 1);
                         }
+                        count.getAndSet(count.get() + 1);
                     });
 
         }
-        int count = deviceList.size();
         RadCountVO radCountVO = new RadCountVO();
-        radCountVO.setHeavyLoad(Arith.div(heavyLoad.get(),count));
-        radCountVO.setEasyLoad(Arith.div(easyLoad.get(),count));
-        radCountVO.setNorMalLoad(Arith.div(norMalLoad.get(),count));
+        radCountVO.setHeavyLoad(subRadio(heavyLoad.get(),count.get()));
+        radCountVO.setEasyLoad(subRadio(easyLoad.get(),count.get()));
+        radCountVO.setNorMalLoad(Arith.sub(1,Arith.add(radCountVO.getEasyLoad(),radCountVO.getHeavyLoad())));
         return radCountVO;
     }
 
+    public Double subRadio(Integer typeCount,Integer count){
+        return Optional.of(count).filter(total -> total != 0).map(sub -> Arith.div(typeCount,sub)).orElse(0.00);
+    }
+
     @Override
     public List<Map<String, Object>> getOne(Integer siteId) {
         List<Map<String, Object>> list = new ArrayList<>();