算法提交
This commit is contained in:
@@ -21,7 +21,6 @@ import com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.user.pojo.dto.DeptDTO;
|
||||
import com.njcn.user.pojo.po.Dept;
|
||||
import com.njcn.web.utils.WebUtil;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -149,7 +148,7 @@ public class OverviewServiceImpl implements OverviewService {
|
||||
//获取数据库数据
|
||||
List<RMpMonitorAlarmCountM> list = rMpMonitorAlarmCountMService.list(new LambdaQueryWrapper<RMpMonitorAlarmCountM>()
|
||||
.in(RMpMonitorAlarmCountM::getMeasurementPointId, ids)
|
||||
.eq(RMpMonitorAlarmCountM::getDataType,data.getId())
|
||||
// .eq(RMpMonitorAlarmCountM::getDataType,data.getId())
|
||||
.ge(StringUtils.isNotBlank(param.getStartTime()), RMpMonitorAlarmCountM::getDataDate, param.getStartTime())
|
||||
.le(StringUtils.isNotBlank(param.getEndTime()), RMpMonitorAlarmCountM::getDataDate, param.getEndTime())
|
||||
);
|
||||
|
||||
@@ -0,0 +1,69 @@
|
||||
package com.njcn.harmonic.pojo.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* Date: 2023/12/6 15:22【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Data
|
||||
public class ConverterDetailStatisticsDTO {
|
||||
|
||||
|
||||
/*主键 是否必填:是*/
|
||||
private String id;
|
||||
/*发生超标或暂态母线日均占比(%) 是否必填:否*/
|
||||
private BigDecimal abnormalBusAvgRate;
|
||||
/*发生超标或暂态母线数量(条) 是否必填:是*/
|
||||
private Integer abnormalBusNum;
|
||||
/*发生超标或暂态母线占比(%) 是否必填:否*/
|
||||
private BigDecimal abnormalBusRate;
|
||||
/*发生超标或暂态换流站日均占比(%) 是否必填:否*/
|
||||
private BigDecimal abnormalConverterAvgRate;
|
||||
/*发生超标或暂态换流站数量(条) 是否必填:否*/
|
||||
private Integer abnormalConverterNum;
|
||||
/*发生超标或暂态换流站占比(%) 是否必填:否*/
|
||||
private BigDecimal abnormalConverterRate;
|
||||
/*市级单位id 是否必填:是*/
|
||||
private String cityId;
|
||||
/*市级单位名称 是否必填:否*/
|
||||
private String cityName;
|
||||
/*监测交流母线数量(条) 是否必填:否*/
|
||||
private Integer monitorAlternatingBusNum;
|
||||
/*交流母线监测率(%) 是否必填:否*/
|
||||
private BigDecimal monitorAlternatingBusRate;
|
||||
/*监测换流站数量(座) 是否必填:是*/
|
||||
private Integer monitorConverterNum;
|
||||
/*换流站监测率(%) 是否必填:*/
|
||||
private BigDecimal monitorConverterRate;
|
||||
/*在运交流母线数量(条) 是否必填:是*/
|
||||
private Integer onlineAlternatingBusNum;
|
||||
/*在运换流站数量(座) 是否必填:是*/
|
||||
private Integer onlineConverterNum;
|
||||
/*省级单位名称 是否必填:否*/
|
||||
private String provinceName;
|
||||
/*省级单位id 是否必填:是*/
|
||||
private String provinceId;
|
||||
/*统计日期 是否必填:是*/
|
||||
private String statisticalDate;
|
||||
/*统计类型 是否必填:是*/
|
||||
private String statisticalType;
|
||||
/*统计层级 是否必填:是*/
|
||||
private String statisticalLevel;
|
||||
/*累计发生超标或暂态换流站数量(座) 是否必填:否*/
|
||||
private Integer abnormalConverterCount;
|
||||
/*累计监测换流站数量(座) 是否必填:否*/
|
||||
private Integer monitorConverterCount;
|
||||
/*累计发生超标或暂态母线数量(座) 是否必填:否*/
|
||||
private Integer abnormalBusCount;
|
||||
/*累计监测交流母线数量(座) 是否必填:否*/
|
||||
private Integer monitorAlternatingBusCount;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
package com.njcn.harmonic.pojo.dto;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* Date: 2023/12/6 15:30【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Data
|
||||
public class SubstationQualityStatisticsDTO {
|
||||
/*主键 是否必填:是*/
|
||||
private String id;
|
||||
|
||||
/*统计日期 是否必填:是*/
|
||||
private String statisticalDate;
|
||||
/*统计类型 是否必填:是*/
|
||||
private String statisticalType;
|
||||
|
||||
/*省级单位id 是否必填:是*/
|
||||
private String provinceId;
|
||||
/*省级单位名称 是否必填:否*/
|
||||
private String provinceName;
|
||||
/*市级单位id 是否必填:是*/
|
||||
private String cityId;
|
||||
/*市级单位名称 是否必填:否*/
|
||||
private String cityName;
|
||||
/*县级单位id 是否必填:否*/
|
||||
private String countyId;
|
||||
/*县级单位名称 是否必填:否*/
|
||||
private String countyName;
|
||||
|
||||
/*换流站id 是否必填:是*/
|
||||
private String converterId;
|
||||
/*换流站名称 是否必填:是*/
|
||||
private String converterName;
|
||||
|
||||
/*母线id 是否必填:否*/
|
||||
private String busId;
|
||||
/*母线名称 是否必填:否*/
|
||||
private String busName;
|
||||
/*母线电压等级 是否必填:否*/
|
||||
private String busVoltageLevel;
|
||||
|
||||
/*监测点id 是否必填:否*/
|
||||
private String monitorId;
|
||||
|
||||
/*站内有效监测点数量(个) 是否必填:是*/
|
||||
private Integer effectiveMonitorNum;
|
||||
/*月均超标天数 是否必填:否*/
|
||||
private BigDecimal monthOvDays;
|
||||
/*奇次谐波电压限值(%) 是否必填:是*/
|
||||
private BigDecimal oddVoltLimit;
|
||||
/*累计超标天数 是否必填:否*/
|
||||
private Integer totalOvDays;
|
||||
/*11次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v11;
|
||||
/*13次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v13;
|
||||
/*23次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v23;
|
||||
/*25次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v25;
|
||||
/*3次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v3;
|
||||
/*5次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v5;
|
||||
/*7次谐波电压95%概率值(%) 是否必填:否*/
|
||||
private BigDecimal v7;
|
||||
/*电压等级 是否必填:是*/
|
||||
private String voltageLevel;
|
||||
/*电压总谐波畸变率95%概率值统计值(%) 是否必填:否*/
|
||||
private BigDecimal vthd;
|
||||
/*电压总谐波畸变率95%概率值限值(%) 是否必填:是*/
|
||||
private BigDecimal vthdLimit;
|
||||
|
||||
/*谐波电压超标天数 是否必填:否*/
|
||||
private Integer harmvOvDay;
|
||||
|
||||
/*当年累计月数 是否必填:否*/
|
||||
private Integer monthsCount;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -7,7 +7,7 @@ import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -26,7 +26,6 @@ import java.util.Date;
|
||||
@TableName(value = "r_operating_index_d")
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Deprecated
|
||||
public class ROperatingIndexDPO {
|
||||
/**
|
||||
* 单位ID
|
||||
@@ -38,7 +37,7 @@ public class ROperatingIndexDPO {
|
||||
* 时间
|
||||
*/
|
||||
@MppMultiId(value = "data_date")
|
||||
private Date dataDate;
|
||||
private LocalDate dataDate;
|
||||
|
||||
/**
|
||||
* 在运监测点数
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
package com.njcn.harmonic.controller.majornetwork;
|
||||
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.harmonic.service.majornetwork.StationDataQualityService;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* Date: 2023/12/6 15:50【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
|
||||
@RestController
|
||||
@Api(tags = "上报电能质量换流站指标统计明细及统计数据接口")
|
||||
@RequiredArgsConstructor
|
||||
@RequestMapping("/StationDataQuality")
|
||||
public class StationDataQualitySendController extends BaseController {
|
||||
private final StationDataQualityService stationDataQualityService;
|
||||
@PostMapping("/report")
|
||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||
@ApiOperation("上报电能质量换流站指标统计明细及统计数据接口")
|
||||
public HttpResult<Boolean> report() {
|
||||
String methodDescribe = getMethodDescribe("report");
|
||||
|
||||
boolean flag = stationDataQualityService.report();
|
||||
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, flag, methodDescribe);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.njcn.harmonic.service.majornetwork;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* Date: 2023/12/6 15:57【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
public interface StationDataQualityService {
|
||||
boolean report();
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.njcn.harmonic.service.majornetwork.impl;
|
||||
|
||||
import com.njcn.device.pms.api.MonitorClient;
|
||||
import com.njcn.device.pms.pojo.po.Monitor;
|
||||
import com.njcn.harmonic.pojo.dto.SubstationQualityStatisticsDTO;
|
||||
import com.njcn.harmonic.service.majornetwork.StationDataQualityService;
|
||||
import com.njcn.user.api.DeptFeignClient;
|
||||
import com.njcn.user.pojo.vo.PvTerminalTreeVO;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* Date: 2023/12/6 15:57【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class StationDataQualityServiceImpl implements StationDataQualityService {
|
||||
|
||||
private final MonitorClient monitorClient;
|
||||
private final DeptFeignClient deptFeignClient;
|
||||
@Override
|
||||
public boolean report() {
|
||||
|
||||
List<Monitor> data = monitorClient.getMonitorList(new ArrayList<>()).getData();
|
||||
List<PvTerminalTreeVO> deptList = deptFeignClient.allDeptList().getData();
|
||||
Map<String, PvTerminalTreeVO> mapCode = deptList.stream().collect(Collectors.toMap(PvTerminalTreeVO::getCode, Function.identity()));
|
||||
Map<String, PvTerminalTreeVO> mapList = deptList.stream().collect(Collectors.toMap(PvTerminalTreeVO::getId, Function.identity()));
|
||||
data.stream().forEach(temp->{
|
||||
SubstationQualityStatisticsDTO substaticsDTO = new SubstationQualityStatisticsDTO();
|
||||
substaticsDTO.setId("1");
|
||||
|
||||
});
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -80,7 +80,11 @@ public class OrgPointExecutor extends BaseExecutor{
|
||||
public void processOperatingIndexProcess(NodeComponent bindCmp) {
|
||||
String tag = bindCmp.getTag();
|
||||
CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam = bindCmp.getRequestData();
|
||||
if (tag.equalsIgnoreCase("r_operating_index_m")) {
|
||||
if (tag.equalsIgnoreCase("r_operating_index_d")) {
|
||||
//日表
|
||||
rOperatingIndexService.handleDay(calculatedParam);
|
||||
}
|
||||
else if (tag.equalsIgnoreCase("r_operating_index_m")) {
|
||||
//日表
|
||||
rOperatingIndexService.handleMonth(calculatedParam);
|
||||
} else if (tag.equalsIgnoreCase("r_operating_index_q")) {
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
package com.njcn.prepare.harmonic.service.mysql.Impl.area;
|
||||
|
||||
import cn.hutool.core.date.DatePattern;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
||||
import com.njcn.device.pms.pojo.po.Monitor;
|
||||
import com.njcn.harmonic.pojo.po.*;
|
||||
import com.njcn.prepare.harmonic.constant.AlgorithmParam;
|
||||
@@ -26,7 +24,6 @@ import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.enums.DicDataTypeEnum;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.scheduling.annotation.Async;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
@@ -225,7 +222,8 @@ public class PrimaryGridDataServiceImpl implements PrimaryGridDataService {
|
||||
|
||||
ROperatingIndexDPO rOperatingIndexDPO = new ROperatingIndexDPO();
|
||||
rOperatingIndexDPO.setOrgNo(orgid);
|
||||
rOperatingIndexDPO.setDataDate(tempDate);
|
||||
|
||||
rOperatingIndexDPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate()));
|
||||
rOperatingIndexDPO.setMeasurementRunPoints(measurement_run_points);
|
||||
rOperatingIndexDPO.setTransitMeasurementPoints(transit_measurement_points);
|
||||
rOperatingIndexDPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count);
|
||||
@@ -397,7 +395,7 @@ public class PrimaryGridDataServiceImpl implements PrimaryGridDataService {
|
||||
|
||||
ROperatingIndexDPO rOperatingIndexDPO = new ROperatingIndexDPO();
|
||||
rOperatingIndexDPO.setOrgNo(orgid);
|
||||
rOperatingIndexDPO.setDataDate(tempDate);
|
||||
rOperatingIndexDPO.setDataDate(LocalDate.parse(primaryGridParam.getDataDate()));
|
||||
rOperatingIndexDPO.setMeasurementRunPoints(measurement_run_points);
|
||||
rOperatingIndexDPO.setTransitMeasurementPoints(transit_measurement_points);
|
||||
rOperatingIndexDPO.setEffectiveAccessMeasurementCount(effective_access_measurement_count);
|
||||
|
||||
@@ -20,4 +20,6 @@ public interface ROperatingIndexService {
|
||||
void handleQtr(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam);
|
||||
|
||||
void handleYear(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam);
|
||||
|
||||
void handleDay(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam);
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
|
||||
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||
import com.njcn.harmonic.pojo.po.ROperatingIndexDPO;
|
||||
import com.njcn.harmonic.pojo.po.ROperatingIndexMPO;
|
||||
import com.njcn.harmonic.pojo.po.ROperatingIndexQPO;
|
||||
import com.njcn.harmonic.pojo.po.ROperatingIndexYPO;
|
||||
@@ -16,6 +17,7 @@ import com.njcn.prepare.harmonic.pojo.mysql.ROperatingMonitorMPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RDnOperatingIndexMPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RDnOperatingQPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RDnOperatingYPO;
|
||||
import com.njcn.prepare.harmonic.service.mysql.area.ROperatingIndexDPOService;
|
||||
import com.njcn.prepare.harmonic.service.mysql.area.ROperatingIndexMPOService;
|
||||
import com.njcn.prepare.harmonic.service.mysql.area.ROperatingIndexQPOService;
|
||||
import com.njcn.prepare.harmonic.service.mysql.area.ROperatingIndexYPOService;
|
||||
@@ -57,6 +59,7 @@ public class ROperatingIndexServiceImpl implements ROperatingIndexService {
|
||||
private final ROperatingMonitorService rOperatingMonitorDService;
|
||||
private final ROperatingMonitorMService rOperatingMonitorMService;
|
||||
|
||||
private final ROperatingIndexDPOService rOperatingIndexDPOService;
|
||||
private final ROperatingIndexMPOService rOperatingIndexMPOService;
|
||||
private final ROperatingIndexQPOService rOperatingIndexQPOService;
|
||||
private final ROperatingIndexYPOService rOperatingIndexYPOService;
|
||||
@@ -514,6 +517,131 @@ public class ROperatingIndexServiceImpl implements ROperatingIndexService {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleDay(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam) {
|
||||
List<ROperatingIndexDPO> rdnOperatingIndexDPOList = new ArrayList<>();
|
||||
QueryWrapper<ROperatingMonitorDPO> queryWrapperD = new QueryWrapper<>();
|
||||
DateTime begin = DateUtil.beginOfDay(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
||||
DateTime end = DateUtil.endOfDay(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
||||
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN); /*获取监测点类型类型*/
|
||||
/*获取监测点类型类型*/
|
||||
|
||||
List<DictData> lineSortList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.LINE_SORT.getCode()).getData();
|
||||
Map<String, DictData> lineSortMap = lineSortList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData));
|
||||
|
||||
|
||||
for (DeptGetChildrenMoreDTO deptGetChildrenMoreDTO : calculatedParam.getIdList()) {
|
||||
if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getLineBaseList())) {
|
||||
List<String> collect = deptGetChildrenMoreDTO.getLineBaseList().stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
queryWrapperD.clear();
|
||||
queryWrapperD.in("measurement_point_id", collect).
|
||||
between("data_date",begin,end);
|
||||
|
||||
|
||||
List<ROperatingMonitorDPO> rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD);
|
||||
ROperatingIndexDPO rOperatingIndexDPO = new ROperatingIndexDPO();
|
||||
rOperatingIndexDPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId());
|
||||
rOperatingIndexDPO.setDataDate(localDate);
|
||||
List<String> collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).
|
||||
map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
|
||||
List<ROperatingMonitorDPO> monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList());
|
||||
|
||||
List<String> collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1).
|
||||
map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
|
||||
Map<String, List<ROperatingMonitorDPO>> collect3 = rOperatingMonitorDPOList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId));
|
||||
|
||||
Map<String, List<ROperatingMonitorDPO>> collect4 = monitorList.stream().collect(Collectors.groupingBy(ROperatingMonitorDPO::getDevId));
|
||||
|
||||
rOperatingIndexDPO.setEffectiveAccessMeasurementCount(collect2.size());
|
||||
rOperatingIndexDPO.setMeasurementRunPoints(collect.size());
|
||||
rOperatingIndexDPO.setOnlineMeasurementCount(collect4.size());
|
||||
rOperatingIndexDPO.setTransitMeasurementPoints(collect1.size());
|
||||
rOperatingIndexDPO.setOnlineMeasurementPoints(collect3.size());
|
||||
// rOperatingIndexMPO.setShouldCount();
|
||||
|
||||
List<String> collect5 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
|
||||
|
||||
double v = rOperatingMonitorDPOList.stream().mapToDouble(temp -> {
|
||||
return temp.getIndexIntegrityRate().doubleValue();
|
||||
}).average().orElse(0.0);
|
||||
double v1 = rOperatingMonitorDPOList.stream().mapToDouble(temp -> {
|
||||
return temp.getDataRightRate().doubleValue();
|
||||
}).average().orElse(0.0);
|
||||
double v2 = rOperatingMonitorDPOList.stream().mapToDouble(temp -> {
|
||||
return temp.getDataIntegrityRate().doubleValue();
|
||||
}).average().orElse(0.0);
|
||||
rOperatingIndexDPO.setIndexIntegrityRate(v);
|
||||
rOperatingIndexDPO.setDataIntegrityRate(v2);
|
||||
rOperatingIndexDPO.setIsUnusual(collect5.size());
|
||||
rOperatingIndexDPO.setDataRightRate(v1);
|
||||
rdnOperatingIndexDPOList.add(rOperatingIndexDPO);
|
||||
|
||||
}
|
||||
// if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) {
|
||||
// if (!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) {
|
||||
// Map<Integer, List<LineDevGetDTO>> collect3 = deptGetChildrenMoreDTO.getPwMonitorIds().stream().collect(Collectors.groupingBy(LineDevGetDTO::getLineType));
|
||||
//
|
||||
// collect3.forEach((k,v)->{
|
||||
// List<String> collect = v.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
// queryWrapperD.clear();
|
||||
// queryWrapperD.in("measurement_point_id", collect).
|
||||
// between("data_date",begin,end);
|
||||
//
|
||||
//
|
||||
// List<ROperatingMonitorDPO> rOperatingMonitorDPOList = rOperatingMonitorDService.list(queryWrapperD);
|
||||
// ROperatingIndexDPO rOperatingIndexDPO = new ROperatingIndexDPO();
|
||||
// rOperatingIndexDPO.setOrgNo(deptGetChildrenMoreDTO.getUnitId());
|
||||
// rOperatingIndexDPO.setDataDate(localDate);
|
||||
// List<String> collect1 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).
|
||||
// map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
//
|
||||
// List<ROperatingMonitorDPO> monitorList = rOperatingMonitorDPOList.stream().filter(temp -> temp.getEffectiveMinuteCount() > 1).collect(Collectors.toList());
|
||||
//
|
||||
// List<String> collect2 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getDataIntegrityRate().doubleValue() > 0.95 && temp.getIsUnusual() == 1).
|
||||
// map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
//
|
||||
//
|
||||
// rOperatingIndexDPO.setEffectiveAccessMeasurementCount(collect2.size());
|
||||
// rOperatingIndexDPO.setMeasurementRunPoints(collect.size());
|
||||
// rOperatingIndexDPO.setTransitMeasurementPoints(collect1.size());
|
||||
//
|
||||
//
|
||||
// List<String> collect5 = rOperatingMonitorDPOList.stream().filter(temp -> temp.getIsUnusual() == 0).map(ROperatingMonitorDPO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
//
|
||||
//
|
||||
// double integrity = rOperatingMonitorDPOList.stream().mapToDouble(temp -> {
|
||||
// return temp.getIndexIntegrityRate().doubleValue();
|
||||
// }).average().orElse(0.0);
|
||||
// double v1 = rOperatingMonitorDPOList.stream().mapToDouble(temp -> {
|
||||
// return temp.getDataRightRate().doubleValue();
|
||||
// }).average().orElse(0.0);
|
||||
// double v2 = rOperatingMonitorDPOList.stream().mapToDouble(temp -> {
|
||||
// return temp.getDataIntegrityRate().doubleValue();
|
||||
// }).average().orElse(0.0);
|
||||
// rOperatingIndexDPO.setIndexIntegrityRate(integrity);
|
||||
// rOperatingIndexDPO.setDataIntegrityRate(v2);
|
||||
// rOperatingIndexDPO.setIsUnusual(collect5.size());
|
||||
// rOperatingIndexDPO.setDataRightRate(v1);
|
||||
// rdnOperatingIndexMPOList.add(rDnOperatingIndexMPO);
|
||||
// });
|
||||
//
|
||||
// }
|
||||
//
|
||||
// }
|
||||
}
|
||||
|
||||
|
||||
if (!CollectionUtils.isEmpty(rdnOperatingIndexDPOList)){
|
||||
rOperatingIndexDPOService.saveOrUpdateBatchByMultiId(rdnOperatingIndexDPOList);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
private void hanlderYear(List<DeptGetChildrenMoreDTO> data, String dataDate, Integer type) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user