删除废弃代码

This commit is contained in:
2023-07-25 08:41:16 +08:00
parent 87298343dd
commit e5f46d1393
3 changed files with 0 additions and 288 deletions

View File

@@ -1,76 +0,0 @@
package com.njcn.prepare.harmonic.controller.area;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.ServerInfo;
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.device.biz.commApi.CommTerminalGeneralClient;
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
import com.njcn.prepare.harmonic.pojo.param.OrgParam;
import com.njcn.prepare.harmonic.service.mysql.area.IRStatHarmonicOrgDService;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.po.Dept;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.time.LocalDateTime;
import java.util.List;
/**
* 类的介绍:
*
* @author xuyang
* @version 1.0.0
* @createTime 2023/7/19 14:09
*/
@Slf4j
@Api(tags = "单位稳态指标数据统计")
@RestController
@RequestMapping("AreaHarmonic")
@AllArgsConstructor
public class RStatHarmonicOrgController extends BaseController {
private final DeptFeignClient deptFeignClient;
private final CommTerminalGeneralClient commTerminalGeneralClient;
private final IRStatHarmonicOrgDService irStatHarmonicOrgDService;
@OperateInfo(info = LogEnum.BUSINESS_MEDIUM)
@ApiOperation("日统计")
@PostMapping("day")
@ApiImplicitParam(value = "orgParam",name = "orgParam",required = true)
@ApiModelProperty("r_stat_harmonic_org_d表数据需要先生成r_stat_org_d表")
public HttpResult<Boolean> dayHandle(@RequestBody OrgParam orgParam){
log.info(LocalDateTime.now()+"dayHandle开始执行");
String methodDescribe = getMethodDescribe("dayHandle");
/**
* 支持补录
*/
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
if(StringUtils.isEmpty(orgParam.getOrgId())){
Dept data = deptFeignClient.getRootDept().getData();
deptGetLineParam.setDeptId(data.getId());
}else {
deptGetLineParam.setDeptId(orgParam.getOrgId());
}
deptGetLineParam.setServerName(ServerInfo.PREPARE_BOOT);
List<DeptGetChildrenMoreDTO> data = commTerminalGeneralClient.deptGetLine(deptGetLineParam).getData();
irStatHarmonicOrgDService.dayHandle(data,orgParam.getDataDate());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
}

View File

@@ -1,191 +0,0 @@
package com.njcn.prepare.harmonic.service.mysql.Impl.area;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailD;
import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailD;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgD;
import com.njcn.harmonic.pojo.po.RStatOrgDPO;
import com.njcn.prepare.harmonic.mapper.mysql.area.RStatHarmonicOrgDMapper;
import com.njcn.prepare.harmonic.mapper.mysql.area.RStatOrgDMapper;
import com.njcn.prepare.harmonic.mapper.mysql.line.RMpPartHarmonicDetailDMapper;
import com.njcn.prepare.harmonic.mapper.mysql.line.RMpSurplusHarmonicDetailDMapper;
import com.njcn.prepare.harmonic.service.mysql.area.IRStatHarmonicOrgDService;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.text.DecimalFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* 类的介绍:
*
* @author xuyang
* @version 1.0.0
* @createTime 2023/7/20 9:31
*/
@Service
@AllArgsConstructor
public class RStatHarmonicOrgDServiceImpl extends MppServiceImpl<RStatHarmonicOrgDMapper, RStatHarmonicOrgD> implements IRStatHarmonicOrgDService {
private final DicDataFeignClient dicDataFeignClient;
private final RMpPartHarmonicDetailDMapper rMpPartHarmonicDetailDMapper;
private final RMpSurplusHarmonicDetailDMapper rMpSurplusHarmonicDetailDMapper;
private final RStatOrgDMapper rStatOrgDMapper;
@Override
public void dayHandle(List<DeptGetChildrenMoreDTO> data, String dataDate) {
List<RStatHarmonicOrgD> orgDList = new ArrayList<>();
Date date = DateUtil.parse(dataDate);
QueryWrapper<RMpPartHarmonicDetailD> queryWrapper = new QueryWrapper<>();
QueryWrapper<RMpSurplusHarmonicDetailD> rMpSurplusHarmonicDetailDQueryWrapper = new QueryWrapper<>();
QueryWrapper<RStatOrgDPO> rStatOrgDPOQueryWrapper = new QueryWrapper<>();
DecimalFormat df = new DecimalFormat("0.00");
/*获取稳态统计指标*/
List<DictData> steadyStatis = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
/*获取数据类型*/
List<DictData> dataTypeList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DATA_TYPE.getCode()).getData();
Map<String, DictData> dataTypeMap = dataTypeList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData));
data.forEach(deptGetChildrenMoreDTO -> {
/*主网*/
if(!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getLineBaseList())){
List<LineDevGetDTO> lineBaseList = deptGetChildrenMoreDTO.getLineBaseList();
Map<Integer, List<LineDevGetDTO>> collect = lineBaseList.stream().collect(Collectors.groupingBy(LineDevGetDTO::getLineType));
collect.forEach((k, v)->{
List<String> collect1 = v.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
queryWrapper.clear();
queryWrapper.select("is_freq","is_v_dev","is_v","is_i","is_unbalance","is_i_neg").
in("measurement_point_id",collect1).
eq("DATE_FORMAT( data_date ,'%Y-%m-%d')",dataDate);
List<RMpPartHarmonicDetailD> rMpPartHarmonicDetailDS = rMpPartHarmonicDetailDMapper.selectList(queryWrapper);
rMpSurplusHarmonicDetailDQueryWrapper.clear();
rMpSurplusHarmonicDetailDQueryWrapper.select("is_flicker","is_inuharm").
in("measurement_point_id",collect1).
eq("DATE_FORMAT( data_date ,'%Y-%m-%d')",dataDate);
List<RMpSurplusHarmonicDetailD> rMpSurplusHarmonicDetailDS = rMpSurplusHarmonicDetailDMapper.selectList(rMpSurplusHarmonicDetailDQueryWrapper);
rStatOrgDPOQueryWrapper.clear();
rStatOrgDPOQueryWrapper.select("effective_measurement").
eq("org_no",deptGetChildrenMoreDTO.getUnitId()).
eq("data_type",dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId()).
eq("DATE_FORMAT( data_date ,'%Y-%m-%d')",dataDate);
RStatOrgDPO rStatOrgDPO = rStatOrgDMapper.selectOne(rStatOrgDPOQueryWrapper);
steadyStatis.forEach(dictData -> {
if(Objects.equals(dictData.getCode(),DicDataEnum.TOTAL_INDICATOR.getCode())){
return;
}
RStatHarmonicOrgD rStatHarmonicOrgD = new RStatHarmonicOrgD();
rStatHarmonicOrgD.setOrgNo(deptGetChildrenMoreDTO.getUnitId());
rStatHarmonicOrgD.setDataDate(date);
rStatHarmonicOrgD.setHarmonicType(dictData.getId());
rStatHarmonicOrgD.setDataType(dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId());
rStatHarmonicOrgD.setOverLimitMeasurementAverage(getSteadyStatisData(dictData,rMpPartHarmonicDetailDS,rMpSurplusHarmonicDetailDS));
if(rStatOrgDPO.getEffectiveMeasurement()==0){
rStatHarmonicOrgD.setOverLimitMeasurementRatioAverage(1.00F);
}else{
String value = df.format((float)rStatHarmonicOrgD.getOverLimitMeasurementAverage()/ rStatOrgDPO.getEffectiveMeasurement());
rStatHarmonicOrgD.setOverLimitMeasurementRatioAverage(Float.parseFloat(value));
}
orgDList.add(rStatHarmonicOrgD);
});
});
}
/*配网*/
if(!CollectionUtils.isEmpty(deptGetChildrenMoreDTO.getPwMonitorIds())) {
List<LineDevGetDTO> pwMonitorIds = deptGetChildrenMoreDTO.getPwMonitorIds();
Map<Integer, List<LineDevGetDTO>> pwMonitorMap = pwMonitorIds.stream().collect(Collectors.groupingBy(LineDevGetDTO::getLineType));
pwMonitorMap.forEach((k, v) -> {
List<String> collect1 = v.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
queryWrapper.clear();
queryWrapper.select("is_freq", "is_v_dev", "is_v", "is_i", "is_unbalance", "is_i_neg").
in("measurement_point_id", collect1).
eq("DATE_FORMAT( data_date ,'%Y-%m-%d')", dataDate);
List<RMpPartHarmonicDetailD> rMpPartHarmonicDetailDS = rMpPartHarmonicDetailDMapper.selectList(queryWrapper);
rMpSurplusHarmonicDetailDQueryWrapper.clear();
rMpSurplusHarmonicDetailDQueryWrapper.select("is_flicker", "is_inuharm").
in("measurement_point_id", collect1).
eq("DATE_FORMAT( data_date ,'%Y-%m-%d')", dataDate);
List<RMpSurplusHarmonicDetailD> rMpSurplusHarmonicDetailDS = rMpSurplusHarmonicDetailDMapper.selectList(rMpSurplusHarmonicDetailDQueryWrapper);
rStatOrgDPOQueryWrapper.clear();
rStatOrgDPOQueryWrapper.select("effective_measurement").
eq("org_no", deptGetChildrenMoreDTO.getUnitId()).
eq("data_type", dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId()).
eq("DATE_FORMAT( data_date ,'%Y-%m-%d')", dataDate);
RStatOrgDPO rStatOrgDPO = rStatOrgDMapper.selectOne(rStatOrgDPOQueryWrapper);
steadyStatis.forEach(dictData -> {
if (Objects.equals(dictData.getCode(), DicDataEnum.NEG_CURRENT.getCode())) {
return;
}
RStatHarmonicOrgD rStatHarmonicOrgD = new RStatHarmonicOrgD();
rStatHarmonicOrgD.setOrgNo(deptGetChildrenMoreDTO.getUnitId());
rStatHarmonicOrgD.setDataDate(date);
rStatHarmonicOrgD.setHarmonicType(dictData.getId());
rStatHarmonicOrgD.setDataType(dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId());
rStatHarmonicOrgD.setOverLimitMeasurementAverage(getSteadyStatisData(dictData,rMpPartHarmonicDetailDS,rMpSurplusHarmonicDetailDS));
if(rStatOrgDPO.getEffectiveMeasurement()==0){
rStatHarmonicOrgD.setOverLimitMeasurementRatioAverage(1.00F);
}else{
String value = df.format((float)rStatHarmonicOrgD.getOverLimitMeasurementAverage()/ rStatOrgDPO.getEffectiveMeasurement());
rStatHarmonicOrgD.setOverLimitMeasurementRatioAverage(Float.parseFloat(value));
}
orgDList.add(rStatHarmonicOrgD);
});
});
}
});
System.out.println("orgDList===:" + orgDList);
// if(!CollectionUtils.isEmpty(orgDList)){
// this.saveOrUpdateBatchByMultiId(orgDList,1000);
// }
}
private Integer getSteadyStatisData(DictData dictData, List<RMpPartHarmonicDetailD> rMpPartHarmonicDetailDS, List<RMpSurplusHarmonicDetailD> rMpSurplusHarmonicDetailDS) {
Integer value = 0;
if (Objects.equals(dictData.getCode(),DicDataEnum.VOLTAGE_DEV.getCode())) {
value = Integer.valueOf(rMpPartHarmonicDetailDS.stream().filter(temp ->temp.getIsVDev()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.FLICKER.getCode())) {
value = Integer.valueOf(rMpSurplusHarmonicDetailDS.stream().filter(temp ->temp.getIsFlicker()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.HARMONIC_VOLTAGE.getCode())) {
value = Integer.valueOf(rMpPartHarmonicDetailDS.stream().filter(temp ->temp.getIsV()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.HARMONIC_CURRENT.getCode())) {
value = Integer.valueOf(rMpPartHarmonicDetailDS.stream().filter(temp ->temp.getIsI()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.INTERHARMONIC_VOLTAGE.getCode())) {
value = Integer.valueOf(rMpSurplusHarmonicDetailDS.stream().filter(temp ->temp.getIsInuharm()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.PHASE_VOLTAGE.getCode())) {
value = Integer.valueOf(rMpPartHarmonicDetailDS.stream().filter(temp ->temp.getIsUnbalance()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.FREQUENCY_DEV.getCode())) {
value = Integer.valueOf(rMpPartHarmonicDetailDS.stream().filter(temp ->temp.getIsFreq()==1).count()+"");
}
if (Objects.equals(dictData.getCode(),DicDataEnum.NEG_CURRENT.getCode())) {
value = Integer.valueOf(rMpPartHarmonicDetailDS.stream().filter(temp ->temp.getIsINeg()==1).count()+"");
}
return value;
}
}

View File

@@ -1,21 +0,0 @@
package com.njcn.prepare.harmonic.service.mysql.area;
import com.github.jeffreyning.mybatisplus.service.IMppService;
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgD;
import java.util.List;
/**
* @author xuyang
*/
public interface IRStatHarmonicOrgDService extends IMppService<RStatHarmonicOrgD> {
/**
* 日表处理
* @param data 监测点信息
* @param dataDate 时间
*/
void dayHandle(List<DeptGetChildrenMoreDTO> data, String dataDate);
}