|
|
|
|
@@ -1,9 +1,7 @@
|
|
|
|
|
package com.njcn.prepare.harmonic.service.mysql.Impl.line;
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
|
|
import cn.hutool.core.date.LocalDateTimeUtil;
|
|
|
|
|
import cn.hutool.core.date.TimeInterval;
|
|
|
|
|
import cn.hutool.core.date.*;
|
|
|
|
|
import cn.hutool.core.util.StrUtil;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
@@ -12,13 +10,14 @@ import com.njcn.common.pojo.constant.ServerInfo;
|
|
|
|
|
import com.njcn.common.pojo.response.HttpResult;
|
|
|
|
|
import com.njcn.common.utils.LogUtil;
|
|
|
|
|
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
|
|
|
|
import com.njcn.device.biz.pojo.dto.DeptGetChildrenDTO;
|
|
|
|
|
import com.njcn.device.biz.pojo.dto.*;
|
|
|
|
|
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
|
|
|
|
import com.njcn.device.pq.api.LineFeignClient;
|
|
|
|
|
import com.njcn.device.biz.pojo.po.Overlimit;
|
|
|
|
|
import com.njcn.harmonic.pojo.dto.PublicDTO;
|
|
|
|
|
import com.njcn.harmonic.pojo.po.*;
|
|
|
|
|
import com.njcn.harmonic.pojo.po.day.*;
|
|
|
|
|
import com.njcn.prepare.bo.CalculatedParam;
|
|
|
|
|
import com.njcn.prepare.harmonic.mapper.mysql.line.*;
|
|
|
|
|
import com.njcn.prepare.harmonic.pojo.dto.PollutionDTO;
|
|
|
|
|
import com.njcn.prepare.harmonic.pojo.param.LineParam;
|
|
|
|
|
@@ -31,11 +30,14 @@ import com.njcn.user.api.DeptFeignClient;
|
|
|
|
|
import com.njcn.user.pojo.po.Dept;
|
|
|
|
|
import lombok.AllArgsConstructor;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.apache.commons.collections.CollectionUtils;
|
|
|
|
|
import org.apache.commons.collections4.ListUtils;
|
|
|
|
|
import org.springframework.scheduling.annotation.Async;
|
|
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
|
|
import java.math.RoundingMode;
|
|
|
|
|
import java.time.LocalDate;
|
|
|
|
|
import java.time.LocalDateTime;
|
|
|
|
|
import java.util.*;
|
|
|
|
|
import java.util.function.BinaryOperator;
|
|
|
|
|
@@ -84,15 +86,265 @@ public class PollutionServiceImpl implements PollutionService {
|
|
|
|
|
private final IRStatDataIDService dataIDService;
|
|
|
|
|
private final IRStatDataInharmVDService inharmVDService;
|
|
|
|
|
private final IRStatDataPltDService pltDService;
|
|
|
|
|
/**-------------------------------监测点污区图-----------------------------------**/
|
|
|
|
|
@Override
|
|
|
|
|
public void handleDay(CalculatedParam calculatedParam) {
|
|
|
|
|
List<PollutionDTO> pollutionList ;
|
|
|
|
|
|
|
|
|
|
List<DictData> dictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.POLLUTION_STATIS.getCode()).getData();
|
|
|
|
|
LocalDate local = LocalDateTimeUtil.parseDate(calculatedParam.getDataDate());
|
|
|
|
|
String beginDay =LocalDateTimeUtil.format(LocalDateTimeUtil.beginOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)),DatePattern.NORM_DATETIME_PATTERN);
|
|
|
|
|
String endDay = LocalDateTimeUtil.format(LocalDateTimeUtil.endOfDay(LocalDateTimeUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN)),DatePattern.NORM_DATETIME_PATTERN);
|
|
|
|
|
List<String> idList = calculatedParam.getIdList();
|
|
|
|
|
List<Overlimit> overLimitList = new ArrayList<>();
|
|
|
|
|
for (String lineId :idList){
|
|
|
|
|
Overlimit overlimit = commTerminalGeneralClient.getOverLimitData(lineId).getData();
|
|
|
|
|
overLimitList.add(overlimit);
|
|
|
|
|
}
|
|
|
|
|
//指标数据获取
|
|
|
|
|
List<PublicDTO> harmonicVoltageList = getHarmonicVoltage(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> harmonicCurrentList = getHarmonicCurrent(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> frequencyDeviationList = getFrequencyDeviation(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> voltageDeviationList = getVoltageDeviation(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> threePhaseVoltageList = getThreePhaseVoltageUnbalance(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> negativeSequenceList = getNegativeSequenceCurrent(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> interHarmonicVoltageList = getInterharmonicVoltage(overLimitList,beginDay,endDay);
|
|
|
|
|
List<PublicDTO> voltageFlickerList = getVoltageFlicker(overLimitList,beginDay,endDay);
|
|
|
|
|
|
|
|
|
|
List<PollutionDTO> lineIdList = new ArrayList<>();
|
|
|
|
|
idList.forEach(item->{
|
|
|
|
|
PollutionDTO pollutionDTO = new PollutionDTO();
|
|
|
|
|
pollutionDTO.setLineId(item);
|
|
|
|
|
lineIdList.add(pollutionDTO);
|
|
|
|
|
});
|
|
|
|
|
pollutionList = processPollutionList(lineIdList,harmonicVoltageList,harmonicCurrentList,frequencyDeviationList,voltageDeviationList,threePhaseVoltageList,negativeSequenceList,interHarmonicVoltageList,voltageFlickerList);
|
|
|
|
|
insertPollutionDayMySql(pollutionList, dictData, local);
|
|
|
|
|
}
|
|
|
|
|
/*-------------------------------单位污区图------------------------------------*/
|
|
|
|
|
@Override
|
|
|
|
|
public void handleOrgDay(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam) {
|
|
|
|
|
LocalDate local = LocalDateTimeUtil.parseDate(calculatedParam.getDataDate());
|
|
|
|
|
|
|
|
|
|
QueryWrapper<RMpPollutionDPO> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
|
|
|
|
|
for (DeptGetChildrenMoreDTO deptGetChildrenMoreDTO : calculatedParam.getIdList()) {
|
|
|
|
|
Collection<LineDevGetDTO> union = CollectionUtils.union(Optional.ofNullable(deptGetChildrenMoreDTO.getLineBaseList()).orElse(new ArrayList<LineDevGetDTO>()),
|
|
|
|
|
Optional.ofNullable(deptGetChildrenMoreDTO.getPwMonitorIds()).orElse(new ArrayList<LineDevGetDTO>()));
|
|
|
|
|
List<String> collect = union.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
|
|
|
|
if (CollectionUtils.isEmpty(collect)){
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
queryWrapper.clear();
|
|
|
|
|
queryWrapper.in(
|
|
|
|
|
"line_id",collect
|
|
|
|
|
).eq("data_date",local);
|
|
|
|
|
List<RMpPollutionDPO> rMpPollutionDPOS = rMpPollutionDMapper.selectList(queryWrapper);
|
|
|
|
|
Map<String, List<RMpPollutionDPO>> collect1 = rMpPollutionDPOS.stream().collect(Collectors.groupingBy(RMpPollutionDPO::getPollutionType));
|
|
|
|
|
collect1.forEach((k,v)->{
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("orgId",deptGetChildrenMoreDTO.getUnitId());
|
|
|
|
|
inMap.put("dataDate",local);
|
|
|
|
|
inMap.put("pollutionType",k);
|
|
|
|
|
inMap.put("value",v.stream().max(Comparator.comparing(RMpPollutionDPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionOrgDMapper.insertPollution(inMap);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void handleOrgMonth(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam) {
|
|
|
|
|
|
|
|
|
|
DateTime begin = DateUtil.beginOfMonth(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
DateTime end = DateUtil.endOfMonth(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN);
|
|
|
|
|
|
|
|
|
|
List<RStatPollutionOrgDPO> substationD = rStatPollutionOrgDMapper.selectList(new LambdaQueryWrapper<RStatPollutionOrgDPO>()
|
|
|
|
|
.ge(RStatPollutionOrgDPO::getDataDate, begin)
|
|
|
|
|
.le(RStatPollutionOrgDPO::getDataDate, end)
|
|
|
|
|
);
|
|
|
|
|
Map<String, List<RStatPollutionOrgDPO>> substationDMap = substationD.stream().collect(Collectors.groupingBy(temp -> temp.getOrgId() +"_"+ temp.getPollutionType()));
|
|
|
|
|
substationDMap.forEach((key,value)->{
|
|
|
|
|
String[] split = key.split("_");
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("orgId",split[0]);
|
|
|
|
|
inMap.put("dataDate",localDate);
|
|
|
|
|
inMap.put("pollutionType",split[1]);
|
|
|
|
|
inMap.put("value",value.stream().max(Comparator.comparing(RStatPollutionOrgDPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionOrgMMapper.insertPollution(inMap);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void handleOrgQtr(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam) {
|
|
|
|
|
DateTime begin = DateUtil.beginOfQuarter(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
DateTime end = DateUtil.endOfQuarter(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN); /*获取监测点类型类型*/
|
|
|
|
|
|
|
|
|
|
List<RStatPollutionOrgMPO> substationD = rStatPollutionOrgMMapper.selectList(new LambdaQueryWrapper<RStatPollutionOrgMPO>()
|
|
|
|
|
.ge(RStatPollutionOrgMPO::getDataDate, begin)
|
|
|
|
|
.le(RStatPollutionOrgMPO::getDataDate, end)
|
|
|
|
|
);
|
|
|
|
|
Map<String, List<RStatPollutionOrgMPO>> substationDMap = substationD.stream().collect(Collectors.groupingBy(temp -> temp.getOrgId() +"_"+ temp.getPollutionType()));
|
|
|
|
|
substationDMap.forEach((key,value)->{
|
|
|
|
|
String[] split = key.split("_");
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("orgId",split[0]);
|
|
|
|
|
inMap.put("dataDate",localDate);
|
|
|
|
|
inMap.put("pollutionType",split[1]);
|
|
|
|
|
inMap.put("value",value.stream().max(Comparator.comparing(RStatPollutionOrgMPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionOrgQMapper.insertPollution(inMap);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void handleOrgYear(CalculatedParam<DeptGetChildrenMoreDTO> calculatedParam) {
|
|
|
|
|
DateTime begin = DateUtil.beginOfYear(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
DateTime end = DateUtil.endOfYear(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN); /*获取监测点类型类型*/
|
|
|
|
|
|
|
|
|
|
List<RStatPollutionOrgQPO> substationD = rStatPollutionOrgQMapper.selectList(new LambdaQueryWrapper<RStatPollutionOrgQPO>()
|
|
|
|
|
.ge(RStatPollutionOrgQPO::getDataDate, begin)
|
|
|
|
|
.le(RStatPollutionOrgQPO::getDataDate, end)
|
|
|
|
|
);
|
|
|
|
|
Map<String, List<RStatPollutionOrgQPO>> substationDMap = substationD.stream().collect(Collectors.groupingBy(temp -> temp.getOrgId() +"_"+ temp.getPollutionType()));
|
|
|
|
|
substationDMap.forEach((key,value)->{
|
|
|
|
|
String[] split = key.split("_");
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("orgId",split[0]);
|
|
|
|
|
inMap.put("dataDate",localDate);
|
|
|
|
|
inMap.put("pollutionType",split[1]);
|
|
|
|
|
inMap.put("value",value.stream().max(Comparator.comparing(RStatPollutionOrgQPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionOrgYMapper.insertPollution(inMap);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*----------------------------------------------变电站污区图----------------------------------------------------*/
|
|
|
|
|
@Override
|
|
|
|
|
public void handleSubstationDay(CalculatedParam<String> calculatedParam) {
|
|
|
|
|
LocalDate local = LocalDateTimeUtil.parseDate(calculatedParam.getDataDate());
|
|
|
|
|
|
|
|
|
|
QueryWrapper<RMpPollutionDPO> queryWrapper = new QueryWrapper<>();
|
|
|
|
|
|
|
|
|
|
for (String substationId : calculatedParam.getIdList()) {
|
|
|
|
|
LineDevGetBandDTO data = commTerminalGeneralClient.substationGetLine(substationId).getData();
|
|
|
|
|
Collection<LineDevGetDTO> union = CollectionUtils.union(Optional.ofNullable(data.getPwList()).orElse(new ArrayList<>()),
|
|
|
|
|
Optional.ofNullable(data.getZwList()).orElse(new ArrayList<>()));
|
|
|
|
|
List<String> collect = union.stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
|
|
|
|
if (CollectionUtils.isEmpty(collect)){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
queryWrapper.clear();
|
|
|
|
|
queryWrapper.in(
|
|
|
|
|
"line_id",collect
|
|
|
|
|
).eq("data_date",local);
|
|
|
|
|
List<RMpPollutionDPO> rMpPollutionDPOS = rMpPollutionDMapper.selectList(queryWrapper);
|
|
|
|
|
Map<String, List<RMpPollutionDPO>> collect1 = rMpPollutionDPOS.stream().collect(Collectors.groupingBy(RMpPollutionDPO::getPollutionType));
|
|
|
|
|
collect1.forEach((k,v)->{
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("substationId",substationId);
|
|
|
|
|
inMap.put("dataDate",local);
|
|
|
|
|
inMap.put("pollutionType",k);
|
|
|
|
|
inMap.put("value",v.stream().max(Comparator.comparing(RMpPollutionDPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionSubstationDMapper.insertPollution(inMap);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void handleSubstationMonth(CalculatedParam<String> calculatedParam) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DateTime begin = DateUtil.beginOfMonth(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
DateTime end = DateUtil.endOfMonth(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN);
|
|
|
|
|
|
|
|
|
|
List<RStatPollutionSubstationDPO> substationD = rStatPollutionSubstationDMapper.selectList(new LambdaQueryWrapper<RStatPollutionSubstationDPO>()
|
|
|
|
|
.ge(RStatPollutionSubstationDPO::getDataDate, begin)
|
|
|
|
|
.le(RStatPollutionSubstationDPO::getDataDate, end)
|
|
|
|
|
);
|
|
|
|
|
Map<String, List<RStatPollutionSubstationDPO>> substationDMap = substationD.stream().collect(Collectors.groupingBy(temp -> temp.getSubstationId() +"_"+ temp.getPollutionType()));
|
|
|
|
|
substationDMap.forEach((key,value)->{
|
|
|
|
|
String[] split = key.split("_");
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("substationId",split[0]);
|
|
|
|
|
inMap.put("dataDate",localDate);
|
|
|
|
|
inMap.put("pollutionType",split[1]);
|
|
|
|
|
inMap.put("value",value.stream().max(Comparator.comparing(RStatPollutionSubstationDPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionSubstationMMapper.insertPollution(inMap);
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void handleSubstationQtr(CalculatedParam<String> calculatedParam) {
|
|
|
|
|
|
|
|
|
|
DateTime begin = DateUtil.beginOfQuarter(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
DateTime end = DateUtil.endOfQuarter(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN); /*获取监测点类型类型*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
List<RStatPollutionSubstationM> substationM = rStatPollutionSubstationMMapper.selectList(new LambdaQueryWrapper<RStatPollutionSubstationM>()
|
|
|
|
|
.ge(RStatPollutionSubstationM::getDataDate, begin)
|
|
|
|
|
.le(RStatPollutionSubstationM::getDataDate, end)
|
|
|
|
|
);
|
|
|
|
|
Map<String, List<RStatPollutionSubstationM>> substationDMap = substationM.stream().collect(Collectors.groupingBy(temp -> temp.getSubstationId() +"_"+ temp.getPollutionType()));
|
|
|
|
|
substationDMap.forEach((key,value)->{
|
|
|
|
|
String[] split = key.split("_");
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("substationId",split[0]);
|
|
|
|
|
inMap.put("dataDate",localDate);
|
|
|
|
|
inMap.put("pollutionType",split[1]);
|
|
|
|
|
inMap.put("value",value.stream().max(Comparator.comparing(RStatPollutionSubstationM::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionSubstationQMapper.insertPollution(inMap);
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void handleSubstationYear(CalculatedParam<String> calculatedParam) {
|
|
|
|
|
|
|
|
|
|
DateTime begin = DateUtil.beginOfYear(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
DateTime end = DateUtil.endOfYear(DateUtil.parse(calculatedParam.getDataDate(), DatePattern.NORM_DATE_PATTERN));
|
|
|
|
|
LocalDate localDate = LocalDateTimeUtil.parseDate( DateUtil.format(begin, DatePattern.NORM_DATE_PATTERN), DatePattern.NORM_DATE_PATTERN);
|
|
|
|
|
|
|
|
|
|
List<RStatPollutionSubstationQPO> substationM = rStatPollutionSubstationQMapper.selectList(new LambdaQueryWrapper<RStatPollutionSubstationQPO>()
|
|
|
|
|
.ge(RStatPollutionSubstationQPO::getDataDate, begin)
|
|
|
|
|
.le(RStatPollutionSubstationQPO::getDataDate, end)
|
|
|
|
|
);
|
|
|
|
|
Map<String, List<RStatPollutionSubstationQPO>> substationDMap = substationM.stream().collect(Collectors.groupingBy(temp -> temp.getSubstationId() +"_"+ temp.getPollutionType()));
|
|
|
|
|
substationDMap.forEach((key,value)->{
|
|
|
|
|
String[] split = key.split("_");
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("substationId",split[0]);
|
|
|
|
|
inMap.put("dataDate",localDate);
|
|
|
|
|
inMap.put("pollutionType",split[1]);
|
|
|
|
|
inMap.put("value",value.stream().max(Comparator.comparing(RStatPollutionSubstationQPO::getValue)).get().getValue());
|
|
|
|
|
rStatPollutionSubstationYMapper.insertPollution(inMap);
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*--------------------------------------------原始代码------------------------------------------------------*/
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@Async("asyncExecutor")
|
|
|
|
|
@Deprecated
|
|
|
|
|
public void processPollutionData(LineParam lineParam) {
|
|
|
|
|
|
|
|
|
|
TimeInterval timer = new TimeInterval();
|
|
|
|
|
List<PollutionDTO> pollutionList;
|
|
|
|
|
LocalDateTime local = LocalDateTimeUtil.now();
|
|
|
|
|
LocalDate local = LocalDate.now();
|
|
|
|
|
if (StrUtil.isNotBlank(lineParam.getDataDate())){
|
|
|
|
|
local = DateUtil.parseLocalDateTime(lineParam.getBeginTime());
|
|
|
|
|
local = LocalDateTimeUtil.parseDate(lineParam.getBeginTime());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
List<DictData> dictData = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.POLLUTION_STATIS.getCode()).getData();
|
|
|
|
|
@@ -133,7 +385,7 @@ public class PollutionServiceImpl implements PollutionService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
LocalDateTime localEnd = DateUtil.parseLocalDateTime(lineParam.getEndTime());
|
|
|
|
|
LocalDate localEnd = LocalDateTimeUtil.parseDate(lineParam.getEndTime());
|
|
|
|
|
LambdaQueryWrapper<RMpPollutionDPO> lambdaQuery = new LambdaQueryWrapper<>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -148,10 +400,11 @@ public class PollutionServiceImpl implements PollutionService {
|
|
|
|
|
LogUtil.njcnDebug(log, "监测点污染指标数据完成耗时:{}", timer.intervalRestart());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* MySql入表
|
|
|
|
|
*/
|
|
|
|
|
private void insertPolluctionMySql(List<RMpPollutionDPO> pollutionDayList, List<DictData> dictData, LocalDateTime local, LocalDateTime localEnd,Integer type){
|
|
|
|
|
private void insertPolluctionMySql(List<RMpPollutionDPO> pollutionDayList, List<DictData> dictData, LocalDate local, LocalDate localEnd,Integer type){
|
|
|
|
|
HttpResult<Map<String, List<String>>> substationOut = commTerminalGeneralClient.getLineBySubstationRelation(1);
|
|
|
|
|
|
|
|
|
|
Dept dept = deptFeignClient.getRootDept().getData();
|
|
|
|
|
@@ -167,7 +420,7 @@ public class PollutionServiceImpl implements PollutionService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*MySql入表 r_mp_pollution_d*/
|
|
|
|
|
private void insertPollutionDayMySql(List<PollutionDTO> pollutionList,List<DictData> dictDataList, LocalDateTime local){
|
|
|
|
|
private void insertPollutionDayMySql(List<PollutionDTO> pollutionList,List<DictData> dictDataList, LocalDate local){
|
|
|
|
|
for (PollutionDTO pollution : pollutionList){
|
|
|
|
|
Map<String, Object> inMap = new HashMap<>();
|
|
|
|
|
inMap.put("lineId",pollution.getLineId());
|
|
|
|
|
@@ -180,7 +433,7 @@ public class PollutionServiceImpl implements PollutionService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*MySql入表 r_stat_pollution_substation*/
|
|
|
|
|
private void insertSubstation(List<DictData> dictDataList,Map<String, List<String>> substationMap,List<RMpPollutionDPO> pollutionDayList,LocalDateTime local,LocalDateTime localEnd, Integer type){
|
|
|
|
|
private void insertSubstation(List<DictData> dictDataList,Map<String, List<String>> substationMap,List<RMpPollutionDPO> pollutionDayList,LocalDate local,LocalDate localEnd, Integer type){
|
|
|
|
|
if(Integer.valueOf(BizParamConstant.STAT_BIZ_DAY).equals(type)){
|
|
|
|
|
for (String key : substationMap.keySet()){
|
|
|
|
|
List<RMpPollutionDPO> processList = new ArrayList<>();
|
|
|
|
|
@@ -256,7 +509,7 @@ public class PollutionServiceImpl implements PollutionService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*MySql入表 r_stat_pollution_org*/
|
|
|
|
|
private void insertUnit(List<DictData> dictDataList,List<DeptGetChildrenDTO> deptGetChildrenDTOList,List<RMpPollutionDPO> pollutionDayList,LocalDateTime local, LocalDateTime localEnd, Integer type){
|
|
|
|
|
private void insertUnit(List<DictData> dictDataList,List<DeptGetChildrenDTO> deptGetChildrenDTOList,List<RMpPollutionDPO> pollutionDayList,LocalDate local, LocalDate localEnd, Integer type){
|
|
|
|
|
if (Integer.valueOf(BizParamConstant.STAT_BIZ_DAY).equals(type)){
|
|
|
|
|
for (DeptGetChildrenDTO deptGetChildrenDTO : deptGetChildrenDTOList){
|
|
|
|
|
List<RMpPollutionDPO> processList = new ArrayList<>();
|
|
|
|
|
|