diff --git a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDTO.java b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDTO.java index bd8672f2f..07c3d7cf6 100644 --- a/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDTO.java +++ b/pqs-device/common-device-biz/src/main/java/com/njcn/device/biz/pojo/dto/LineDTO.java @@ -37,4 +37,7 @@ public class LineDTO { @ApiModelProperty(name = "用户非网侧") private String objId; + + @ApiModelProperty(name = "对象类型大类") + private String bigObjType; } diff --git a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/constant/Param.java b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/constant/Param.java index 9d53ad366..6879ac17c 100644 --- a/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/constant/Param.java +++ b/pqs-device/pq-device/pq-device-api/src/main/java/com/njcn/device/pq/constant/Param.java @@ -71,38 +71,4 @@ public interface Param { Integer WEEK = 4; Integer DAY = 5; - //以下四个固定ID用于某些业务判断 -// //字典(sys_dict_data):电压暂升的ID -// String UPPEREVENT = "c5ce588cb76fba90c4519ab250c962d0"; -// //字典(sys_dict_data):电压暂降的ID -// String LOWEREVENT = "c37861896dafab0883321e1d508caa51"; -// //字典(sys_dict_data):光伏电站的ID -// String PHOTOVOLTAICPOWER = "45615057cb88650ffc4779b0629bac7e"; -// //字典(sys_dict_data):风电场的ID -// String WINDFARM = "f9145acb79cbf136b9ee89fd38d72583"; - - /** - * 以下的四个Map为有功功率页面查看指标详情的四个指标分组下的具体指标(指标对应的可能不对 到时候直接改map里的key即可) - * put(name:表ele_epd_pqd中的名称,value:页面展示的指标名称) - */ - Map DATABSEMAP = new HashMap(){{ - put("线电压偏差","电压偏差"); - put("电压负序不平衡度","三相电压不平衡度"); - put("相电压电压变动幅度","电压波动"); - put("相电压长时闪变","长时闪变"); - put("电流负序不平衡度","电流不平衡度"); - }}; - - Map UHARMMAP = new HashMap(){{ - put("相电压谐波含有率序列","谐波电压"); - }}; - - Map IHARMMAP = new HashMap(){{ - put("谐波电流有效值","谐波电流"); - }}; - - Map INTERHARMONICMAP = new HashMap(){{ - put("间谐波电压有效值序列","间谐波电压含有率"); - }}; - } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml index 82ce9e376..6793b7fd3 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/mapping/LineMapper.xml @@ -1435,7 +1435,8 @@ pqd.Run_Flag as runFlag, detail.PT_Type AS ptType, detail.PT_Phase_Type AS ptPhaseType, - detail.Obj_Id AS objId + detail.Obj_Id AS objId, + detail.Big_Obj_Type AS bigObjType FROM pq_line line, pq_line_detail detail, diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/activepowerrange/impl/PowerStatisticsServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/activepowerrange/impl/PowerStatisticsServiceImpl.java index dd00ea9cc..d70e0e074 100644 --- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/activepowerrange/impl/PowerStatisticsServiceImpl.java +++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/activepowerrange/impl/PowerStatisticsServiceImpl.java @@ -3,6 +3,7 @@ package com.njcn.harmonic.service.activepowerrange.impl; import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.write.metadata.WriteSheet; @@ -27,6 +28,7 @@ import org.apache.poi.xssf.usermodel.XSSFDrawing; import org.apache.poi.xssf.usermodel.XSSFSimpleShape; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; + import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.lang.reflect.Field; @@ -38,6 +40,7 @@ import java.util.stream.Collectors; /** * 有功功率趋势统计 服务实现类 + * * @author guofeihu * @since 2024-08-20 */ @@ -46,20 +49,36 @@ import java.util.stream.Collectors; public class PowerStatisticsServiceImpl implements PowerStatisticsService { private final RActivePowerRangeFeignClient rActivePowerRangeFeignClient; - private final CommonService commonService; - private final DecimalFormat df = new DecimalFormat(Param.DECIMAL_FORMATSTR); - private final DecimalFormat dftwo = new DecimalFormat(Param.DECIMAL_FORMATTWOSTR); - private final EpdFeignClient epdFeignClient; - private List METHODS = Arrays.asList(InfluxDBTableConstant.AVG,InfluxDBTableConstant.CP95,InfluxDBTableConstant.MIN,InfluxDBTableConstant.MAX); + private List METHODS = Arrays.asList(InfluxDBTableConstant.AVG, InfluxDBTableConstant.CP95, InfluxDBTableConstant.MIN, InfluxDBTableConstant.MAX); - private List PHASE = Arrays.asList(InfluxDBTableConstant.PHASE_TYPE_A,InfluxDBTableConstant.PHASE_TYPE_B,InfluxDBTableConstant.PHASE_TYPE_C); + private List PHASE = Arrays.asList(InfluxDBTableConstant.PHASE_TYPE_A, InfluxDBTableConstant.PHASE_TYPE_B, InfluxDBTableConstant.PHASE_TYPE_C); - private List times = Arrays.asList("0~10%","10~20%","20~30%","30~40%","40~50%","50~60%","60~70%","70~80%","80~90%","90~100%"); + private List times = Arrays.asList("0~10%", "10~20%", "20~30%", "30~40%", "40~50%", "50~60%", "60~70%", "70~80%", "80~90%", "90~100%"); + + Map DATABSEMAP = new HashMap() {{ + put("PPVDev", "电压偏差"); + put("ImbNgV", "三相电压不平衡度"); + put("PhFluc", "电压波动"); + put("PhPlt", "长时闪变"); + put("ImbNgA", "电流不平衡度"); + }}; + + Map UHARMMAP = new HashMap() {{ + put("HRPhV", "谐波电压"); + }}; + + Map IHARMMAP = new HashMap() {{ + put("HA", "谐波电流"); + }}; + + Map INTERHARMONICMAP = new HashMap() {{ + put("IHRPhV", "间谐波电压含有率"); + }}; @Override public PowerStatisticsVO getDataByLineId(PowerStatisticsParam powerStatisticsParam) { @@ -73,9 +92,9 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { rActivePowerRangeFeignClient.record(rActivePowerRangeParam); //执行完就可以获取到区间数据了 RActivePowerRangePO rActivePowerRangePO = rActivePowerRangeFeignClient.getDataByLineId(powerStatisticsParam.getLineId(), - powerStatisticsParam.getSearchBeginTime(),powerStatisticsParam.getSearchEndTime()).getData(); + powerStatisticsParam.getSearchBeginTime(), powerStatisticsParam.getSearchEndTime()).getData(); //如果的确没有统计到数据则默认 - if(rActivePowerRangePO == null){ + if (rActivePowerRangePO == null) { rActivePowerRangePO = new RActivePowerRangePO(); } PowerStatisticsVO powerStatisticsVO = new PowerStatisticsVO(); @@ -85,18 +104,18 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { + powerStatisticsVO.getMinsNum3() + powerStatisticsVO.getMinsNum4() + powerStatisticsVO.getMinsNum5() + powerStatisticsVO.getMinsNum6() + powerStatisticsVO.getMinsNum7() + powerStatisticsVO.getMinsNum8() + powerStatisticsVO.getMinsNum9(); - if(total != 0){ + if (total != 0) { BigDecimal totalData = BigDecimal.valueOf(total); - powerStatisticsVO.setProportion0(BigDecimal.valueOf(powerStatisticsVO.getMinsNum0()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion1(BigDecimal.valueOf(powerStatisticsVO.getMinsNum1()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion2(BigDecimal.valueOf(powerStatisticsVO.getMinsNum2()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion3(BigDecimal.valueOf(powerStatisticsVO.getMinsNum3()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion4(BigDecimal.valueOf(powerStatisticsVO.getMinsNum4()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion5(BigDecimal.valueOf(powerStatisticsVO.getMinsNum5()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion6(BigDecimal.valueOf(powerStatisticsVO.getMinsNum6()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion7(BigDecimal.valueOf(powerStatisticsVO.getMinsNum7()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion8(BigDecimal.valueOf(powerStatisticsVO.getMinsNum8()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); - powerStatisticsVO.setProportion9(BigDecimal.valueOf(powerStatisticsVO.getMinsNum9()* 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion0(BigDecimal.valueOf(powerStatisticsVO.getMinsNum0() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion1(BigDecimal.valueOf(powerStatisticsVO.getMinsNum1() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion2(BigDecimal.valueOf(powerStatisticsVO.getMinsNum2() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion3(BigDecimal.valueOf(powerStatisticsVO.getMinsNum3() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion4(BigDecimal.valueOf(powerStatisticsVO.getMinsNum4() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion5(BigDecimal.valueOf(powerStatisticsVO.getMinsNum5() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion6(BigDecimal.valueOf(powerStatisticsVO.getMinsNum6() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion7(BigDecimal.valueOf(powerStatisticsVO.getMinsNum7() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion8(BigDecimal.valueOf(powerStatisticsVO.getMinsNum8() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); + powerStatisticsVO.setProportion9(BigDecimal.valueOf(powerStatisticsVO.getMinsNum9() * 100.0).divide(totalData, 4, RoundingMode.HALF_UP).doubleValue()); } return powerStatisticsVO; } @@ -108,11 +127,11 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { BeanUtil.copyProperties(powerStatisticsParam, rActivePowerRangeParam); rActivePowerRangeParam.setSearch(true); RActivePowerRangePO rActivePowerRangePO = rActivePowerRangeFeignClient.getDataByLineId(powerStatisticsParam.getLineId(), - powerStatisticsParam.getSearchBeginTime(),powerStatisticsParam.getSearchEndTime()).getData(); - if(rActivePowerRangePO != null){ - String times = reflexObjValue(rActivePowerRangePO,"minsTime"+powerStatisticsParam.getField()).toString().replace("null",""); + powerStatisticsParam.getSearchBeginTime(), powerStatisticsParam.getSearchEndTime()).getData(); + if (rActivePowerRangePO != null) { + String times = reflexObjValue(rActivePowerRangePO, "minsTime" + powerStatisticsParam.getField()).toString().replace("null", ""); rActivePowerRangeParam.setSearchTimeFort(false); - for(String se : times.split("&")){ + for (String se : times.split("&")) { String startTime = se.split(",")[0]; String endTime = se.split(",")[1]; rActivePowerRangeParam.setSearchBeginTime(startTime); @@ -125,9 +144,9 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { } /** - * @Description: 反射获取值 * @param obj * @param fieldName + * @Description: 反射获取值 * @return: java.lang.Object * @Author: wr * @Date: 2025/3/26 19:24 @@ -148,80 +167,68 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { public List getTargetByTime(PowerStatisticsParam powerStatisticsParam) { List result = new ArrayList(); List eleEpdPqds = new ArrayList<>(); - //获取固定指标具体请看Param.DATABSEMAP - if("1".equals(powerStatisticsParam.getStatisticalId())){ - com.njcn.device.pq.constant.Param.DATABSEMAP.forEach((key,value) ->{ - List epdPqds = epdFeignClient.findListByShowName(key).getData(); - for(EleEpdPqd epdPqd : epdPqds){ + //获取固定指标具体请看 + if ("1".equals(powerStatisticsParam.getStatisticalId())) { + DATABSEMAP.forEach((key, value) -> { + EleEpdPqd epdPqd = epdFeignClient.findByName(key).getData(); + if(ObjectUtil.isNotEmpty(epdPqd)){ epdPqd.setShowName(value); - } - if(!epdPqds.isEmpty()){ - //这边相别只需要获得一个即可 - eleEpdPqds.add(epdPqds.get(0)); + eleEpdPqds.add(epdPqd); } }); } - if("2".equals(powerStatisticsParam.getStatisticalId())){ - com.njcn.device.pq.constant.Param.UHARMMAP.forEach((key,value) ->{ - List epdPqds = epdFeignClient.findListByShowName(key).getData(); - for(EleEpdPqd epdPqd : epdPqds){ + if ("2".equals(powerStatisticsParam.getStatisticalId())) { + UHARMMAP.forEach((key, value) -> { + EleEpdPqd epdPqd = epdFeignClient.findByName(key).getData(); + if(ObjectUtil.isNotEmpty(epdPqd)){ epdPqd.setShowName(value); - } - if(!epdPqds.isEmpty()){ - //这边相别只需要获得一个即可 - eleEpdPqds.add(epdPqds.get(0)); + eleEpdPqds.add(epdPqd); } }); } - if("3".equals(powerStatisticsParam.getStatisticalId())){ - com.njcn.device.pq.constant.Param.IHARMMAP.forEach((key,value) ->{ - List epdPqds = epdFeignClient.findListByShowName(key).getData(); - for(EleEpdPqd epdPqd : epdPqds){ + if ("3".equals(powerStatisticsParam.getStatisticalId())) { + IHARMMAP.forEach((key, value) -> { + EleEpdPqd epdPqd = epdFeignClient.findByName(key).getData(); + if(ObjectUtil.isNotEmpty(epdPqd)){ epdPqd.setShowName(value); - } - if(!epdPqds.isEmpty()){ - //这边相别只需要获得一个即可 - eleEpdPqds.add(epdPqds.get(0)); + eleEpdPqds.add(epdPqd); } }); } - if("4".equals(powerStatisticsParam.getStatisticalId())){ - com.njcn.device.pq.constant.Param.INTERHARMONICMAP.forEach((key,value) ->{ - List epdPqds = epdFeignClient.findListByShowName(key).getData(); - for(EleEpdPqd epdPqd : epdPqds){ + if ("4".equals(powerStatisticsParam.getStatisticalId())) { + INTERHARMONICMAP.forEach((key, value) -> { + EleEpdPqd epdPqd = epdFeignClient.findByName(key).getData(); + if(ObjectUtil.isNotEmpty(epdPqd)){ epdPqd.setShowName(value); - } - if(!epdPqds.isEmpty()){ - //这边相别只需要获得一个即可 - eleEpdPqds.add(epdPqds.get(0)); + eleEpdPqds.add(epdPqd); } }); } - eleEpdPqds.forEach(epdPqd->{ + eleEpdPqds.forEach(epdPqd -> { List commonQueryParams = new ArrayList<>(); commonQueryParams.clear(); //带有谐波次数的指标 - if(epdPqd.getHarmEnd()!=null && epdPqd.getHarmStart()!=null){ + if (epdPqd.getHarmEnd() != null && epdPqd.getHarmStart() != null) { for (int i = epdPqd.getHarmStart().intValue(); i <= epdPqd.getHarmEnd().intValue(); i++) { ThdDataVO thdDataVO = new ThdDataVO(); thdDataVO.setUnit(epdPqd.getUnit()); thdDataVO.setTime(powerStatisticsParam.getSearchBeginTime()); - String index = i+""; - if(epdPqd.getShowName().equals("间谐波电压含有率")){ + String index = i + ""; + if (epdPqd.getShowName().equals("间谐波电压含有率")) { thdDataVO.setAnotherName(Integer.parseInt(index) - 0.5 + "次"); - }else{ + } else { thdDataVO.setAnotherName(index + "次"); } - getThdDataVO(epdPqd.getOtherName()+"_"+index,thdDataVO,epdPqd,powerStatisticsParam); + getThdDataVO(epdPqd.getOtherName() + "_" + index, thdDataVO, epdPqd, powerStatisticsParam); result.add(thdDataVO); } - }else{ + } else { //无谐波次数的指标 ThdDataVO thdDataVO = new ThdDataVO(); thdDataVO.setAnotherName(epdPqd.getShowName()); thdDataVO.setUnit(epdPqd.getUnit()); thdDataVO.setTime(powerStatisticsParam.getSearchBeginTime()); - getThdDataVO(null,thdDataVO,epdPqd,powerStatisticsParam); + getThdDataVO(null, thdDataVO, epdPqd, powerStatisticsParam); result.add(thdDataVO); } }); @@ -229,12 +236,12 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { } //将各个指标的所有的相别统计方式以表格的维度进行组装数据 - private ThdDataVO getThdDataVO(String columnName, ThdDataVO thdDataVO, EleEpdPqd epdPqd, PowerStatisticsParam powerStatisticsParam){ + private ThdDataVO getThdDataVO(String columnName, ThdDataVO thdDataVO, EleEpdPqd epdPqd, PowerStatisticsParam powerStatisticsParam) { List commonQueryParams = new ArrayList<>(); CommonQueryParam commonQueryParam = new CommonQueryParam(); commonQueryParam.setLineId(powerStatisticsParam.getLineId()); commonQueryParam.setTableName(epdPqd.getClassId()); - commonQueryParam.setColumnName(columnName == null ? epdPqd.getOtherName():columnName); + commonQueryParam.setColumnName(columnName == null ? epdPqd.getOtherName() : columnName); commonQueryParam.setStartTime(powerStatisticsParam.getSearchBeginTime()); commonQueryParam.setEndTime(powerStatisticsParam.getSearchEndTime()); //唯一不同的条件时统计方式和相别,所以这边直接把所有的情况都考虑进去 @@ -243,87 +250,87 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { commonQueryParams.add(commonQueryParam); List deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setAVGPhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setAVGPhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(0)); commonQueryParam.setPhasic(PHASE.get(1)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setAVGPhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setAVGPhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(0)); commonQueryParam.setPhasic(PHASE.get(2)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setAVGPhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setAVGPhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(1)); commonQueryParam.setPhasic(PHASE.get(0)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setCP95PhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setCP95PhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(1)); commonQueryParam.setPhasic(PHASE.get(1)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setCP95PhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setCP95PhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(1)); commonQueryParam.setPhasic(PHASE.get(2)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setCP95PhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setCP95PhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(2)); commonQueryParam.setPhasic(PHASE.get(0)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setMINPhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setMINPhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(2)); commonQueryParam.setPhasic(PHASE.get(1)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setMINPhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setMINPhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(2)); commonQueryParam.setPhasic(PHASE.get(2)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setMINPhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setMINPhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(3)); commonQueryParam.setPhasic(PHASE.get(0)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setMAXPhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setMAXPhaseA(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(3)); commonQueryParam.setPhasic(PHASE.get(1)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setMAXPhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setMAXPhaseB(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } commonQueryParam.setDataType(METHODS.get(3)); commonQueryParam.setPhasic(PHASE.get(2)); deviceRtData = commonService.getNewDeviceRtDataByTime(commonQueryParams); - if(!deviceRtData.isEmpty()) { - thdDataVO.setMAXPhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue()))+""); + if (!deviceRtData.isEmpty()) { + thdDataVO.setMAXPhaseC(Double.valueOf(df.format(deviceRtData.get(0).getValue())) + ""); } return thdDataVO; } @@ -336,53 +343,53 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { ExportParams exportParams = new ExportParams(powerStatisticsParam.getSearchValue(), "区间数据"); //各区间数量 PowerStatisticsExcelRangVO num = new PowerStatisticsExcelRangVO(); - num.setMinsNum0(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum0()+""); - num.setMinsNum1(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum1()+""); - num.setMinsNum2(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum2()+""); - num.setMinsNum3(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum3()+""); - num.setMinsNum4(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum4()+""); - num.setMinsNum5(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum5()+""); - num.setMinsNum6(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum6()+""); - num.setMinsNum7(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum7()+""); - num.setMinsNum8(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum8()+""); - num.setMinsNum9(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getMinsNum9()+""); + num.setMinsNum0(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum0() + ""); + num.setMinsNum1(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum1() + ""); + num.setMinsNum2(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum2() + ""); + num.setMinsNum3(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum3() + ""); + num.setMinsNum4(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum4() + ""); + num.setMinsNum5(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum5() + ""); + num.setMinsNum6(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum6() + ""); + num.setMinsNum7(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum7() + ""); + num.setMinsNum8(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum8() + ""); + num.setMinsNum9(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getMinsNum9() + ""); num.setText("个数"); powerStatisticsVOS.add(num); //各区间是否越限 PowerStatisticsExcelRangVO isOrNot = new PowerStatisticsExcelRangVO(); - isOrNot.setMinsNum0(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot0()>0?"是":"否"); - isOrNot.setMinsNum1(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot1()>0?"是":"否"); - isOrNot.setMinsNum2(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot2()>0?"是":"否"); - isOrNot.setMinsNum3(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot3()>0?"是":"否"); - isOrNot.setMinsNum4(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot4()>0?"是":"否"); - isOrNot.setMinsNum5(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot5()>0?"是":"否"); - isOrNot.setMinsNum6(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot6()>0?"是":"否"); - isOrNot.setMinsNum7(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot7()>0?"是":"否"); - isOrNot.setMinsNum8(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot8()>0?"是":"否"); - isOrNot.setMinsNum9(powerStatisticsVO.getLineId() == null? "":powerStatisticsVO.getIsOrNot9()>0?"是":"否"); + isOrNot.setMinsNum0(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot0() > 0 ? "是" : "否"); + isOrNot.setMinsNum1(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot1() > 0 ? "是" : "否"); + isOrNot.setMinsNum2(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot2() > 0 ? "是" : "否"); + isOrNot.setMinsNum3(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot3() > 0 ? "是" : "否"); + isOrNot.setMinsNum4(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot4() > 0 ? "是" : "否"); + isOrNot.setMinsNum5(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot5() > 0 ? "是" : "否"); + isOrNot.setMinsNum6(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot6() > 0 ? "是" : "否"); + isOrNot.setMinsNum7(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot7() > 0 ? "是" : "否"); + isOrNot.setMinsNum8(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot8() > 0 ? "是" : "否"); + isOrNot.setMinsNum9(powerStatisticsVO.getLineId() == null ? "" : powerStatisticsVO.getIsOrNot9() > 0 ? "是" : "否"); isOrNot.setText("是否越限"); powerStatisticsVOS.add(isOrNot); //各区间占比 PowerStatisticsExcelRangVO proportion = new PowerStatisticsExcelRangVO(); int total = 0; - if(powerStatisticsVO.getLineId() != null){ + if (powerStatisticsVO.getLineId() != null) { total = powerStatisticsVO.getMinsNum0() + powerStatisticsVO.getMinsNum1() + powerStatisticsVO.getMinsNum2() + powerStatisticsVO.getMinsNum3() + powerStatisticsVO.getMinsNum4() + powerStatisticsVO.getMinsNum5() + powerStatisticsVO.getMinsNum6() + powerStatisticsVO.getMinsNum7() + powerStatisticsVO.getMinsNum8() + powerStatisticsVO.getMinsNum9(); } - if(total != 0){ - proportion.setMinsNum0(dftwo.format((double)powerStatisticsVO.getMinsNum0().intValue() / total * 100) + "%"); - proportion.setMinsNum1(dftwo.format((double)powerStatisticsVO.getMinsNum1().intValue() / total * 100) + "%"); - proportion.setMinsNum2(dftwo.format((double)powerStatisticsVO.getMinsNum2().intValue() / total * 100) + "%"); - proportion.setMinsNum3(dftwo.format((double)powerStatisticsVO.getMinsNum3().intValue() / total * 100) + "%"); - proportion.setMinsNum4(dftwo.format((double)powerStatisticsVO.getMinsNum4().intValue() / total * 100) + "%"); - proportion.setMinsNum5(dftwo.format((double)powerStatisticsVO.getMinsNum5().intValue() / total * 100) + "%"); - proportion.setMinsNum6(dftwo.format((double)powerStatisticsVO.getMinsNum6().intValue() / total * 100) + "%"); - proportion.setMinsNum7(dftwo.format((double)powerStatisticsVO.getMinsNum7().intValue() / total * 100) + "%"); - proportion.setMinsNum8(dftwo.format((double)powerStatisticsVO.getMinsNum8().intValue() / total * 100) + "%"); - proportion.setMinsNum9(dftwo.format((double)powerStatisticsVO.getMinsNum9().intValue() / total * 100) + "%"); - }else{ + if (total != 0) { + proportion.setMinsNum0(dftwo.format((double) powerStatisticsVO.getMinsNum0().intValue() / total * 100) + "%"); + proportion.setMinsNum1(dftwo.format((double) powerStatisticsVO.getMinsNum1().intValue() / total * 100) + "%"); + proportion.setMinsNum2(dftwo.format((double) powerStatisticsVO.getMinsNum2().intValue() / total * 100) + "%"); + proportion.setMinsNum3(dftwo.format((double) powerStatisticsVO.getMinsNum3().intValue() / total * 100) + "%"); + proportion.setMinsNum4(dftwo.format((double) powerStatisticsVO.getMinsNum4().intValue() / total * 100) + "%"); + proportion.setMinsNum5(dftwo.format((double) powerStatisticsVO.getMinsNum5().intValue() / total * 100) + "%"); + proportion.setMinsNum6(dftwo.format((double) powerStatisticsVO.getMinsNum6().intValue() / total * 100) + "%"); + proportion.setMinsNum7(dftwo.format((double) powerStatisticsVO.getMinsNum7().intValue() / total * 100) + "%"); + proportion.setMinsNum8(dftwo.format((double) powerStatisticsVO.getMinsNum8().intValue() / total * 100) + "%"); + proportion.setMinsNum9(dftwo.format((double) powerStatisticsVO.getMinsNum9().intValue() / total * 100) + "%"); + } else { proportion.setMinsNum0(""); proportion.setMinsNum1(""); proportion.setMinsNum2(""); @@ -414,7 +421,7 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.CENTER); //如果当前表格为是(是否越限:是)则红色字体显示 - if(cell.getStringCellValue().equals("是")){ + if (cell.getStringCellValue().equals("是")) { style.setFont(redFont); } cell.setCellStyle(style); @@ -441,49 +448,49 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { //设置线的风格 simpleShape.setLineStyle(0); //设置线的颜色 - simpleShape.setLineStyleColor(0,0,0); + simpleShape.setLineStyleColor(0, 0, 0); //删除第一行title //sheet.removeRow(sheet.getRow(0)); //上移(因为删除一行只是将数据清空了留下空行) //sheet.shiftRows(1, sheet.getLastRowNum(), -1); - PoiUtil.exportFileByWorkbook(workbook, powerStatisticsParam.getSearchValue()+".xlsx", response); + PoiUtil.exportFileByWorkbook(workbook, powerStatisticsParam.getSearchValue() + ".xlsx", response); } @Override public void exportExcelListTemplate(PowerStatisticsParam powerStatisticsParam, HttpServletResponse response) { //获取各个区间的详细数据(就是调用getTargetByTime方法在进行某些指标的名称的处理) - List time0 = getExcelListRecord(powerStatisticsParam.getTime0(),powerStatisticsParam.getLineId()); - List time1 = getExcelListRecord(powerStatisticsParam.getTime1(),powerStatisticsParam.getLineId()); - List time2 = getExcelListRecord(powerStatisticsParam.getTime2(),powerStatisticsParam.getLineId()); - List time3 = getExcelListRecord(powerStatisticsParam.getTime3(),powerStatisticsParam.getLineId()); - List time4 = getExcelListRecord(powerStatisticsParam.getTime4(),powerStatisticsParam.getLineId()); - List time5 = getExcelListRecord(powerStatisticsParam.getTime5(),powerStatisticsParam.getLineId()); - List time6 = getExcelListRecord(powerStatisticsParam.getTime6(),powerStatisticsParam.getLineId()); - List time7 = getExcelListRecord(powerStatisticsParam.getTime7(),powerStatisticsParam.getLineId()); - List time8 = getExcelListRecord(powerStatisticsParam.getTime8(),powerStatisticsParam.getLineId()); - List time9 = getExcelListRecord(powerStatisticsParam.getTime9(),powerStatisticsParam.getLineId()); + List time0 = getExcelListRecord(powerStatisticsParam.getTime0(), powerStatisticsParam.getLineId()); + List time1 = getExcelListRecord(powerStatisticsParam.getTime1(), powerStatisticsParam.getLineId()); + List time2 = getExcelListRecord(powerStatisticsParam.getTime2(), powerStatisticsParam.getLineId()); + List time3 = getExcelListRecord(powerStatisticsParam.getTime3(), powerStatisticsParam.getLineId()); + List time4 = getExcelListRecord(powerStatisticsParam.getTime4(), powerStatisticsParam.getLineId()); + List time5 = getExcelListRecord(powerStatisticsParam.getTime5(), powerStatisticsParam.getLineId()); + List time6 = getExcelListRecord(powerStatisticsParam.getTime6(), powerStatisticsParam.getLineId()); + List time7 = getExcelListRecord(powerStatisticsParam.getTime7(), powerStatisticsParam.getLineId()); + List time8 = getExcelListRecord(powerStatisticsParam.getTime8(), powerStatisticsParam.getLineId()); + List time9 = getExcelListRecord(powerStatisticsParam.getTime9(), powerStatisticsParam.getLineId()); try { //10个区间10个sheet10组数据 ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), ThdDataVOExcel.class).build(); - WriteSheet sheet0 = EasyExcel.writerSheet(0, times.get(0) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet0 = EasyExcel.writerSheet(0, times.get(0)).head(ThdDataVOExcel.class).build(); excelWriter.write(time0, sheet0); - WriteSheet sheet1 = EasyExcel.writerSheet(1, times.get(1) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet1 = EasyExcel.writerSheet(1, times.get(1)).head(ThdDataVOExcel.class).build(); excelWriter.write(time1, sheet1); - WriteSheet sheet2 = EasyExcel.writerSheet(2, times.get(2) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet2 = EasyExcel.writerSheet(2, times.get(2)).head(ThdDataVOExcel.class).build(); excelWriter.write(time2, sheet2); - WriteSheet sheet3 = EasyExcel.writerSheet(3, times.get(3) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet3 = EasyExcel.writerSheet(3, times.get(3)).head(ThdDataVOExcel.class).build(); excelWriter.write(time3, sheet3); - WriteSheet sheet4 = EasyExcel.writerSheet(4, times.get(4) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet4 = EasyExcel.writerSheet(4, times.get(4)).head(ThdDataVOExcel.class).build(); excelWriter.write(time4, sheet4); - WriteSheet sheet5 = EasyExcel.writerSheet(5, times.get(5) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet5 = EasyExcel.writerSheet(5, times.get(5)).head(ThdDataVOExcel.class).build(); excelWriter.write(time5, sheet5); - WriteSheet sheet6 = EasyExcel.writerSheet(6, times.get(6) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet6 = EasyExcel.writerSheet(6, times.get(6)).head(ThdDataVOExcel.class).build(); excelWriter.write(time6, sheet6); - WriteSheet sheet7 = EasyExcel.writerSheet(7, times.get(7) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet7 = EasyExcel.writerSheet(7, times.get(7)).head(ThdDataVOExcel.class).build(); excelWriter.write(time7, sheet7); - WriteSheet sheet8 = EasyExcel.writerSheet(8, times.get(8) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet8 = EasyExcel.writerSheet(8, times.get(8)).head(ThdDataVOExcel.class).build(); excelWriter.write(time8, sheet8); - WriteSheet sheet9 = EasyExcel.writerSheet(9, times.get(9) ).head(ThdDataVOExcel.class).build(); + WriteSheet sheet9 = EasyExcel.writerSheet(9, times.get(9)).head(ThdDataVOExcel.class).build(); excelWriter.write(time9, sheet9); excelWriter.finish(); } catch (IOException e) { @@ -491,28 +498,28 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { } } - private List getExcelListRecord(List times, String lineId){ + private List getExcelListRecord(List times, String lineId) { List thdDataVOS = new ArrayList<>(); List thdDataVOExcels = new ArrayList<>(); PowerStatisticsParam powerStatisticsParam = new PowerStatisticsParam(); powerStatisticsParam.setLineId(lineId); - for(String time : times){ + for (String time : times) { powerStatisticsParam.setSearchBeginTime(time); powerStatisticsParam.setSearchEndTime(time); for (int i = 1; i <= 4; i++) { - powerStatisticsParam.setStatisticalId(i+""); + powerStatisticsParam.setStatisticalId(i + ""); List thdDataVOList = getTargetByTime(powerStatisticsParam); - if(i != 1){ - for(ThdDataVO thdDataVO : thdDataVOList){ - switch (i){ + if (i != 1) { + for (ThdDataVO thdDataVO : thdDataVOList) { + switch (i) { case 2: - thdDataVO.setAnotherName("谐波电压"+thdDataVO.getAnotherName()); + thdDataVO.setAnotherName("谐波电压" + thdDataVO.getAnotherName()); break; case 3: - thdDataVO.setAnotherName("谐波电流"+thdDataVO.getAnotherName()); + thdDataVO.setAnotherName("谐波电流" + thdDataVO.getAnotherName()); break; case 4: - thdDataVO.setAnotherName("间谐波电压"+thdDataVO.getAnotherName()); + thdDataVO.setAnotherName("间谐波电压" + thdDataVO.getAnotherName()); break; } } @@ -520,7 +527,7 @@ public class PowerStatisticsServiceImpl implements PowerStatisticsService { thdDataVOS.addAll(thdDataVOList); } } - for(ThdDataVO thdDataVO : thdDataVOS){ + for (ThdDataVO thdDataVO : thdDataVOS) { ThdDataVOExcel thdDataVOExcel = new ThdDataVOExcel(); BeanUtils.copyProperties(thdDataVO, thdDataVOExcel); thdDataVOExcels.add(thdDataVOExcel); diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/event/RActivePowerRangeServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/event/RActivePowerRangeServiceImpl.java index b21c3c2ce..37ee90629 100644 --- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/event/RActivePowerRangeServiceImpl.java +++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/Impl/event/RActivePowerRangeServiceImpl.java @@ -1,5 +1,6 @@ package com.njcn.prepare.harmonic.service.mysql.Impl.event; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.IdUtil; import com.alibaba.excel.util.DateUtils; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -7,9 +8,7 @@ import com.github.jeffreyning.mybatisplus.service.MppServiceImpl; import com.njcn.device.biz.commApi.CommLineClient; import com.njcn.device.biz.pojo.dto.LineDTO; import com.njcn.device.biz.pojo.po.Overlimit; -import com.njcn.device.pq.api.NewStationClient; import com.njcn.device.pq.api.OverLimitClient; -import com.njcn.device.pq.pojo.po.NewStation; import com.njcn.event.pojo.constant.Param; import com.njcn.harmonic.pojo.vo.PowerStatisticsTargetVO; import com.njcn.harmonic.pojo.vo.ThdDataVO; @@ -21,10 +20,16 @@ import com.njcn.prepare.harmonic.mapper.mysql.event.RActivePowerRangeMapper; import com.njcn.prepare.harmonic.pojo.param.RActivePowerRangeParam; import com.njcn.prepare.harmonic.pojo.po.RActivePowerRangePO; import com.njcn.prepare.harmonic.service.mysql.event.RActivePowerRangeService; +import com.njcn.supervision.api.UserLedgerFeignClient; +import com.njcn.supervision.pojo.vo.user.NewUserReportVO; +import com.njcn.system.api.DictTreeFeignClient; +import com.njcn.system.enums.DicTreeEnum; +import com.njcn.system.pojo.vo.DictTreeVO; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; + import java.lang.reflect.Field; import java.text.DecimalFormat; import java.text.SimpleDateFormat; @@ -48,31 +53,20 @@ import java.util.stream.Collectors; public class RActivePowerRangeServiceImpl extends MppServiceImpl implements RActivePowerRangeService { private final CommonService commonService; - private final IDataVService iDataVService; - private final IDataIService iDataIService; - private final DataPltService dataPltService; - private final DataInHarmVService dataInHarmVService; - private final DataHarmRateVService dataHarmRateVService; - private final DataFlucService dataFlucService; - private final CommLineClient commLineClient; - - private final NewStationClient newStationClient; - + private final DictTreeFeignClient dictTreeFeignClient; private final OverLimitClient overLimitClient; + private final UserLedgerFeignClient userLedgerFeignClient; private DateTimeFormatter formatter = DateTimeFormatter.ofPattern(Param.DATE_FORMAT); - private final DecimalFormat df = new DecimalFormat(com.njcn.harmonic.constant.Param.DECIMAL_FORMATSTR); - private SimpleDateFormat sdf = new SimpleDateFormat(Param.DATE_FORMAT); - private List PHASE = Arrays.asList(InfluxDBTableConstant.PHASE_TYPE_A, InfluxDBTableConstant.PHASE_TYPE_B, InfluxDBTableConstant.PHASE_TYPE_C); /** @@ -97,6 +91,7 @@ public class RActivePowerRangeServiceImpl extends MppServiceImpl record(RActivePowerRangeParam rActivePowerRangeParam) { + DictTreeVO windFarms = dictTreeFeignClient.queryByCode(DicTreeEnum.Wind_Farms.getCode()).getData(); if (rActivePowerRangeParam == null) { rActivePowerRangeParam = new RActivePowerRangeParam(); } @@ -110,10 +105,10 @@ public class RActivePowerRangeServiceImpl extends MppServiceImpl data = userLedgerFeignClient.getUserReportByIds(Collections.singletonList(lineDTO.getObjId())).getData(); + if (CollUtil.isNotEmpty(data)) { + //新能源站有些必须是风电场 RActivePowerRangePO rActivePowerRangePO = new RActivePowerRangePO(); rActivePowerRangePO.setLineId(lineId); rActivePowerRangePO.setTimeId(LocalDate.now()); @@ -174,7 +168,7 @@ public class RActivePowerRangeServiceImpl extends MppServiceImpl 0 && Double.compare(maxDto.getValue(), overlimit.getVoltageDev()) > 0) { + if (Double.compare(maxDto.getValue(), 0) > 0 && Double.compare(maxDto.getValue(), overlimit.getVoltageDev()) < 0) { return overlimit.getVoltageDev(); } } if (!minList.isEmpty()) { - if (Double.compare(minDto.getValue(), 0) < 0 && Double.compare(maxDto.getValue(), overlimit.getUvoltageDev()) > 0) { + if (Double.compare(minDto.getValue(), 0) < 0 && Double.compare(minDto.getValue(), overlimit.getUvoltageDev()) > 0) { return overlimit.getUvoltageDev(); } } @@ -469,7 +465,7 @@ public class RActivePowerRangeServiceImpl extends MppServiceImpl list,Float limit) { + private ThdDataVO initThdDataVO(List list, Float limit) { ThdDataVO tdv = new ThdDataVO(); boolean isF = false; //list包含了一组不同相别不同统计方式的数据(最多12条,因为统计方式和相别自由组合最多12条) @@ -500,7 +496,7 @@ public class RActivePowerRangeServiceImpl extends MppServiceImpl 0){ + if (Double.compare(statisticalDataDTO.getValue(), limit) > 0) { isF = true; } } @@ -567,7 +563,7 @@ public class RActivePowerRangeServiceImpl extends MppServiceImpl implements SpThroughService { private final EventDetailFeignClient eventDetailFeignClient; - private final CommLineClient commLineClient; - private final NewStationClient newStationClient; private final TransientFeignClient transientFeignClient; private final DeptLineFeignClient deptLineFeignClient; private final UserLedgerFeignClient userLedgerFeignClient; @@ -129,17 +125,17 @@ public class SpThroughServiceImpl extends MppServiceImpl> newListRmsData) { + private boolean isThrough(int start, int end, int ms, float voltageLevel, List> newListRmsData) { boolean isThrough = false; //格式化RMS源数据 float startVoltageLevel = voltageLevel * (start / 100F); @@ -187,11 +181,9 @@ public class SpThroughServiceImpl extends MppServiceImpl> findListByShowName(@RequestParam("name") String name); + @PostMapping("/selectByClassId") HttpResult> selectByClassId(@RequestParam("classId") String classId);