This commit is contained in:
wr
2025-12-18 14:51:15 +08:00
parent 63f20da451
commit f09409c553
2 changed files with 10 additions and 9 deletions

View File

@@ -83,7 +83,7 @@ public class IDataCrossingServiceImpl implements IDataCrossingService {
List<Overlimit> overLimitList = commTerminalGeneralClient.getOverLimitDataByIds(lineIds).getData(); List<Overlimit> overLimitList = commTerminalGeneralClient.getOverLimitDataByIds(lineIds).getData();
Map<String, Overlimit> overLimitMap = overLimitList.stream().collect(Collectors.toMap(Overlimit::getId, Function.identity())); Map<String, Overlimit> overLimitMap = overLimitList.stream().collect(Collectors.toMap(Overlimit::getId, Function.identity()));
//以100个监测点分片处理 //以100个监测点分片处理
List<List<String>> pendingIds = ListUtils.partition(lineIds, 5); List<List<String>> pendingIds = ListUtils.partition(lineIds, 1);
ArrayList<String> phase = ListUtil.toList(PhaseType.PHASE_A, PhaseType.PHASE_B, PhaseType.PHASE_C); ArrayList<String> phase = ListUtil.toList(PhaseType.PHASE_A, PhaseType.PHASE_B, PhaseType.PHASE_C);
MemorySizeUtil.getNowMemory(); MemorySizeUtil.getNowMemory();
for (int i = 0; i < pendingIds.size(); i++) { for (int i = 0; i < pendingIds.size(); i++) {

View File

@@ -455,7 +455,8 @@ public class IDataLimitRateAsyncImpl implements IDataLimitRateAsync {
List<DataPltDto> dataPltPOList) { List<DataPltDto> dataPltPOList) {
DataLimitDetailDto dto = new DataLimitDetailDto(); DataLimitDetailDto dto = new DataLimitDetailDto();
DataLimitRateDto limitRate = new DataLimitRateDto(); DataLimitRateDto limitRate = new DataLimitRateDto();
List<AbnormalData> thd = new ArrayList<>(), uDev = new ArrayList<>(), flicker = new ArrayList<>(), freqDev = new ArrayList<>(), uAberrance = new ArrayList<>(), iNeg = new ArrayList<>(); //thd 总谐波畸变率
List<AbnormalData> sx = new ArrayList<>(), uDev = new ArrayList<>(), flicker = new ArrayList<>(), freqDev = new ArrayList<>(), zxb = new ArrayList<>(), iNeg = new ArrayList<>();
// 初始化 v 系列列表 // 初始化 v 系列列表
List<AbnormalData>[] v = new List[24]; List<AbnormalData>[] v = new List[24];
for (int i = 0; i < 24; i++) { for (int i = 0; i < 24; i++) {
@@ -543,7 +544,7 @@ public class IDataLimitRateAsyncImpl implements IDataLimitRateAsync {
for (DataVDto item : dataVPOList) { for (DataVDto item : dataVPOList) {
if (ObjectUtil.isNotNull(item.getVThd())) { if (ObjectUtil.isNotNull(item.getVThd())) {
if (item.getVThd() > overlimit.getUaberrance()) { if (item.getVThd() > overlimit.getUaberrance()) {
addAbnormalData(thd, item.getPhasicType(), item.getValueType(), item.getMinTime(), item.getVThd(), overlimit.getUaberrance()); addAbnormalData(zxb, item.getPhasicType(), item.getValueType(), item.getMinTime(), item.getVThd(), overlimit.getUaberrance());
} }
} }
} }
@@ -553,7 +554,7 @@ public class IDataLimitRateAsyncImpl implements IDataLimitRateAsync {
for (DataVDto item : dataVPOUnbalanceList) { for (DataVDto item : dataVPOUnbalanceList) {
if (ObjectUtil.isNotNull(item.getVUnbalance())) { if (ObjectUtil.isNotNull(item.getVUnbalance())) {
if (item.getVUnbalance() > overlimit.getUbalance()) { if (item.getVUnbalance() > overlimit.getUbalance()) {
addAbnormalData(uAberrance, item.getPhasicType(), item.getValueType(), item.getMinTime(), item.getVUnbalance(), overlimit.getUbalance()); addAbnormalData(sx, item.getPhasicType(), item.getValueType(), item.getMinTime(), item.getVUnbalance(), overlimit.getUbalance());
} }
} }
} }
@@ -611,10 +612,10 @@ public class IDataLimitRateAsyncImpl implements IDataLimitRateAsync {
limitRate.setPhasicType(PhaseType.PHASE_T); limitRate.setPhasicType(PhaseType.PHASE_T);
limitRate.setAllTime(allTime); limitRate.setAllTime(allTime);
limitRate.setFlickerAllTime(flickerAllTime); limitRate.setFlickerAllTime(flickerAllTime);
limitRate.setUaberranceOvertime(thd.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setUaberranceOvertime(zxb.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
limitRate.setINegOvertime(iNeg.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setINegOvertime(iNeg.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
limitRate.setFreqDevOvertime(freqDev.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setFreqDevOvertime(freqDev.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
limitRate.setUbalanceOvertime(uAberrance.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setUbalanceOvertime(sx.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
limitRate.setVoltageDevOvertime(uDev.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setVoltageDevOvertime(uDev.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
limitRate.setFlickerOvertime(flicker.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setFlickerOvertime(flicker.stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
limitRate.setUharm2Overtime(v[0].stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setUharm2Overtime(v[0].stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
@@ -683,7 +684,7 @@ public class IDataLimitRateAsyncImpl implements IDataLimitRateAsync {
limitRate.setInuharm16Overtime(uHarm[15].stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size()); limitRate.setInuharm16Overtime(uHarm[15].stream().map(AbnormalData::getTime).distinct().collect(Collectors.toList()).size());
dto.setDataLimitRate(limitRate); dto.setDataLimitRate(limitRate);
int detailAllTime = flicker.size() + uAberrance.size() + iNeg.size() + freqDev.size() + thd.size() + uDev.size() + int detailAllTime = flicker.size() + sx.size() + iNeg.size() + freqDev.size() + zxb.size() + uDev.size() +
v[0].size() + v[1].size() + v[2].size() + v[3].size() + v[4].size() + v[5].size() + v[6].size() + v[7].size() + v[8].size() + v[9].size() + v[11].size() + v[12].size() + v[13].size() + v[14].size() + v[15].size() + v[16].size() + v[17].size() + v[18].size() + v[19].size() + v[20].size() + v[21].size() + v[22].size() + v[23].size() + v[0].size() + v[1].size() + v[2].size() + v[3].size() + v[4].size() + v[5].size() + v[6].size() + v[7].size() + v[8].size() + v[9].size() + v[11].size() + v[12].size() + v[13].size() + v[14].size() + v[15].size() + v[16].size() + v[17].size() + v[18].size() + v[19].size() + v[20].size() + v[21].size() + v[22].size() + v[23].size() +
i[0].size() + i[1].size() + i[2].size() + i[3].size() + i[4].size() + i[5].size() + i[6].size() + i[7].size() + i[8].size() + i[9].size() + i[10].size() + i[11].size() + i[12].size() + i[13].size() + i[14].size() + i[15].size() + i[16].size() + i[17].size() + i[18].size() + i[19].size() + i[20].size() + i[21].size() + i[22].size() + i[23].size() + i[0].size() + i[1].size() + i[2].size() + i[3].size() + i[4].size() + i[5].size() + i[6].size() + i[7].size() + i[8].size() + i[9].size() + i[10].size() + i[11].size() + i[12].size() + i[13].size() + i[14].size() + i[15].size() + i[16].size() + i[17].size() + i[18].size() + i[19].size() + i[20].size() + i[21].size() + i[22].size() + i[23].size() +
uHarm[0].size() + uHarm[1].size() + uHarm[2].size() + uHarm[3].size() + uHarm[4].size() + uHarm[5].size() + uHarm[6].size() + uHarm[7].size() + uHarm[8].size() + uHarm[9].size() + uHarm[10].size() + uHarm[11].size() + uHarm[12].size() + uHarm[13].size() + uHarm[14].size() + uHarm[15].size(); uHarm[0].size() + uHarm[1].size() + uHarm[2].size() + uHarm[3].size() + uHarm[4].size() + uHarm[5].size() + uHarm[6].size() + uHarm[7].size() + uHarm[8].size() + uHarm[9].size() + uHarm[10].size() + uHarm[11].size() + uHarm[12].size() + uHarm[13].size() + uHarm[14].size() + uHarm[15].size();
@@ -692,10 +693,10 @@ public class IDataLimitRateAsyncImpl implements IDataLimitRateAsync {
detail.setLineId(lineId); detail.setLineId(lineId);
detail.setTime(LocalDateTimeUtil.parseDate(dataDate, DatePattern.NORM_DATE_PATTERN)); detail.setTime(LocalDateTimeUtil.parseDate(dataDate, DatePattern.NORM_DATE_PATTERN));
detail.setFlickerOvertime(toJson(flicker)); detail.setFlickerOvertime(toJson(flicker));
detail.setUaberranceOvertime(toJson(uAberrance)); detail.setUaberranceOvertime(toJson(zxb));
detail.setINegOvertime(toJson(iNeg)); detail.setINegOvertime(toJson(iNeg));
detail.setFreqDevOvertime(toJson(freqDev)); detail.setFreqDevOvertime(toJson(freqDev));
detail.setUbalanceOvertime(toJson(thd)); detail.setUbalanceOvertime(toJson(sx));
detail.setVoltageDevOvertime(toJson(uDev)); detail.setVoltageDevOvertime(toJson(uDev));
detail.setUharm2Overtime(toJson(v[0])); detail.setUharm2Overtime(toJson(v[0]));
detail.setUharm3Overtime(toJson(v[1])); detail.setUharm3Overtime(toJson(v[1]));