数据20250904优化-功率数据不计算

This commit is contained in:
2025-09-16 10:53:41 +08:00
parent 2451e00022
commit b8d3643ba9
2 changed files with 10 additions and 18 deletions

View File

@ -12,7 +12,6 @@ import org.springframework.util.CollectionUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode; import java.math.RoundingMode;
import java.text.DecimalFormat;
import java.time.LocalDate; import java.time.LocalDate;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
@ -44,9 +43,6 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
@Autowired @Autowired
private EmsDailyChargeDataMapper emsDailyChargeDataMapper; private EmsDailyChargeDataMapper emsDailyChargeDataMapper;
private static final BigDecimal DDS_STORAGE_FACTOR = new BigDecimal("0.1");
private static final BigDecimal DDS_PV_FACTOR = new BigDecimal("-0.001");
// 电量指标 // 电量指标
@Override @Override
public ElectricDataInfoVo getElectricDataResult(DateSearchRequest requestVo) { public ElectricDataInfoVo getElectricDataResult(DateSearchRequest requestVo) {
@ -343,7 +339,7 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
dataList = emsAmmeterDataMapper.getPowerDataByMonth(requestVo); dataList = emsAmmeterDataMapper.getPowerDataByMonth(requestVo);
} }
// 处理数据设置 负荷功率 // 负荷功率
dealDataPower(requestVo.getSiteId(),dataList); dealDataPower(requestVo.getSiteId(),dataList);
return dataList; return dataList;
} }
@ -359,11 +355,9 @@ public class EmsStatsReportServiceImpl implements IEmsStatsReportService
BigDecimal pvPower = powerStatisListVo.getPvPower() == null ? BigDecimal.ZERO : powerStatisListVo.getPvPower(); BigDecimal pvPower = powerStatisListVo.getPvPower() == null ? BigDecimal.ZERO : powerStatisListVo.getPvPower();
BigDecimal loadPower = new BigDecimal(0); BigDecimal loadPower = new BigDecimal(0);
// 电动所:储能功率=储能功率乘0.1;光伏功率=光伏功率*乘-0.001负荷功率=电网功率+光伏功率-储能功率 // 电动所:负荷功率=电网功率+光伏功率-储能功率
if (SiteEnum.DDS.getCode().equals(siteId)){ if (SiteEnum.DDS.getCode().equals(siteId)){
powerStatisListVo.setStoragePower(storagePower.multiply(DDS_STORAGE_FACTOR).stripTrailingZeros()); loadPower = gridPower.add(pvPower).subtract(storagePower);
powerStatisListVo.setPvPower(pvPower.multiply(DDS_PV_FACTOR).stripTrailingZeros());
loadPower = gridPower.add(powerStatisListVo.getPvPower()).subtract(powerStatisListVo.getStoragePower());
powerStatisListVo.setLoadPower(loadPower); powerStatisListVo.setLoadPower(loadPower);
} else if (SiteEnum.FX.getCode().equals(siteId)){ } else if (SiteEnum.FX.getCode().equals(siteId)){
// 奉贤:负荷功率=电网功率-储能功率; // 奉贤:负荷功率=电网功率-储能功率;

View File

@ -17,6 +17,7 @@ import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.LocalTime; import java.time.LocalTime;
@ -618,9 +619,9 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
BigDecimal pvPower = powerStat != null ? powerStat.getPvPower() : BigDecimal.ZERO; BigDecimal pvPower = powerStat != null ? powerStat.getPvPower() : BigDecimal.ZERO;
BigDecimal storagePower = powerStat != null ? powerStat.getStoragePower() : BigDecimal.ZERO; BigDecimal storagePower = powerStat != null ? powerStat.getStoragePower() : BigDecimal.ZERO;
BigDecimal gridPower = powerStat != null ? powerStat.getGridPower() : BigDecimal.ZERO; BigDecimal gridPower = powerStat != null ? powerStat.getGridPower() : BigDecimal.ZERO;
BigDecimal avgSoh = stackStat != null ? stackStat.getAvgSoh() : BigDecimal.ZERO; BigDecimal avgSoh = stackStat != null ? stackStat.getAvgSoh().setScale(2,RoundingMode.HALF_UP) : BigDecimal.ZERO;
BigDecimal avgSoc = stackStat != null ? stackStat.getAvgSoc() : BigDecimal.ZERO; BigDecimal avgSoc = stackStat != null ? stackStat.getAvgSoc().setScale(2,RoundingMode.HALF_UP) : BigDecimal.ZERO;
BigDecimal avgTemp = stackStat != null ? stackStat.getAvgTemp() : BigDecimal.ZERO; BigDecimal avgTemp = stackStat != null ? stackStat.getAvgTemp().setScale(2,RoundingMode.HALF_UP) : BigDecimal.ZERO;
// 假设完整构造参数(补充原代码中缺失的部分) // 假设完整构造参数(补充原代码中缺失的部分)
return new PointDataResponse(date, pvPower, storagePower, BigDecimal.ZERO, gridPower, avgSoh, avgSoc, avgTemp); return new PointDataResponse(date, pvPower, storagePower, BigDecimal.ZERO, gridPower, avgSoh, avgSoc, avgTemp);
@ -629,7 +630,7 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
.sorted(Comparator.comparing(PointDataResponse::getStatisDate)) .sorted(Comparator.comparing(PointDataResponse::getStatisDate))
.collect(Collectors.toList()); .collect(Collectors.toList());
// 处理数据系数 &负荷功率 // 负荷功率
dealDataPower(requestVo.getSiteId(),responseList); dealDataPower(requestVo.getSiteId(),responseList);
return responseList; return responseList;
@ -646,13 +647,10 @@ public class SingleSiteServiceImpl implements ISingleSiteService {
BigDecimal pvPower = pointDataResponse.getPvPower() == null ? BigDecimal.ZERO : pointDataResponse.getPvPower(); BigDecimal pvPower = pointDataResponse.getPvPower() == null ? BigDecimal.ZERO : pointDataResponse.getPvPower();
BigDecimal loadPower = new BigDecimal(0); BigDecimal loadPower = new BigDecimal(0);
// 电动所:储能功率=储能功率乘0.1;光伏功率=光伏功率*乘-0.001负荷功率=电网功率+光伏功率-储能功率 // 电动所:负荷功率=电网功率+光伏功率-储能功率
// 奉贤:负荷功率=电网功率-储能功率; // 奉贤:负荷功率=电网功率-储能功率;
// 电动所:储能功率=储能功率乘0.1;光伏功率=光伏功率*乘-0.001;负荷功率=电网功率+光伏功率-储能功率
if (SiteEnum.DDS.getCode().equals(siteId)){ if (SiteEnum.DDS.getCode().equals(siteId)){
pointDataResponse.setStoragePower(storagePower.multiply(storageFactor.get(siteId)).stripTrailingZeros()); loadPower = gridPower.add(pvPower).subtract(storagePower);
pointDataResponse.setPvPower(pvPower.multiply(pvFactor.get(siteId)).stripTrailingZeros());
loadPower = gridPower.add(pointDataResponse.getPvPower()).subtract(pointDataResponse.getStoragePower());
pointDataResponse.setLoadPower(loadPower); pointDataResponse.setLoadPower(loadPower);
} else if (SiteEnum.FX.getCode().equals(siteId)){ } else if (SiteEnum.FX.getCode().equals(siteId)){
// 奉贤:负荷功率=电网功率-储能功率; // 奉贤:负荷功率=电网功率-储能功率;