Commit 2db9495c authored by ZWT's avatar ZWT

feat(能源管理系统): 测试问题修复

1.开发统计分析-能耗分析模块,绿电消纳列表接口,修改光伏电站Cloud模块查询电站列表接口,增加组织ID集合查询条件,添加接口文档,并完成接口冒烟测试;
2.开发统计分析-能耗分析模块,电量使用趋势列表接口,添加接口文档,并完成接口冒烟测试;
3.统计分析模块抽取基类,将公用方法移入基类;
4.开发统计分析-能耗分析模块,数据概览接口,添加接口文档,并完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 4955688f
...@@ -6,12 +6,14 @@ import pps.cloud.base.service.data.base_photovoltaic_plant.GetBasePhotovoltaicPl ...@@ -6,12 +6,14 @@ import pps.cloud.base.service.data.base_photovoltaic_plant.GetBasePhotovoltaicPl
import pps.core.common.constant.BusinessConstant; import pps.core.common.constant.BusinessConstant;
import pps.core.prediction.service.data.energy_consumption_analysis.GetEnergyConsumptionAnalysisInput; import pps.core.prediction.service.data.energy_consumption_analysis.GetEnergyConsumptionAnalysisInput;
import pps.core.prediction.service.data.energy_consumption_analysis.GetEnergyConsumptionAnalysisOutput; import pps.core.prediction.service.data.energy_consumption_analysis.GetEnergyConsumptionAnalysisOutput;
import pps.core.prediction.service.data.energy_consumption_analysis.GetEnergyConsumptionAnalysisViewOutput;
import pps.core.prediction.service.data.energy_consumption_curve.GetEnergyConsumptionCurveOutput; import pps.core.prediction.service.data.energy_consumption_curve.GetEnergyConsumptionCurveOutput;
import xstartup.annotation.XService; import xstartup.annotation.XService;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import xstartup.base.XContext; import xstartup.base.XContext;
import xstartup.base.util.XCopyUtils; import xstartup.base.util.XCopyUtils;
import xstartup.data.XListResult; import xstartup.data.XListResult;
import xstartup.data.XSingleResult;
import xstartup.feature.api.annotation.XApiAnonymous; import xstartup.feature.api.annotation.XApiAnonymous;
import xstartup.feature.api.annotation.XApiGet; import xstartup.feature.api.annotation.XApiGet;
...@@ -84,16 +86,16 @@ public class EnergyConsumptionAnalysisService extends StatisticAnalysisBaseServi ...@@ -84,16 +86,16 @@ public class EnergyConsumptionAnalysisService extends StatisticAnalysisBaseServi
} }
/** /**
* 能耗分析--电量使用趋势 * 能耗分析--电量使用趋势/数据概览
* *
* @param context 上下文 * @param context 上下文
* @param input 输入 * @param input 输入
* @return {@link XListResult}<{@link GetEnergyConsumptionCurveOutput}> * @return {@link XListResult}<{@link GetEnergyConsumptionAnalysisViewOutput}>
*/ */
@XText("能耗分析--电量使用趋势") @XText("能耗分析--电量使用趋势/数据概览")
@XApiAnonymous @XApiAnonymous
@XApiGet @XApiGet
public XListResult<GetEnergyConsumptionAnalysisOutput> queryElectricityUsageTrend(XContext context, GetEnergyConsumptionAnalysisInput input) { public XSingleResult<GetEnergyConsumptionAnalysisViewOutput> queryElectricityUsageTrend(XContext context, GetEnergyConsumptionAnalysisInput input) {
//查包含当前组织的所有子组织列表 //查包含当前组织的所有子组织列表
List<String> orgIdsByPath = super.getOrgIdsByPath(context, input.getOuId()); List<String> orgIdsByPath = super.getOrgIdsByPath(context, input.getOuId());
//查组织下的光伏电站 //查组织下的光伏电站
...@@ -110,13 +112,15 @@ public class EnergyConsumptionAnalysisService extends StatisticAnalysisBaseServi ...@@ -110,13 +112,15 @@ public class EnergyConsumptionAnalysisService extends StatisticAnalysisBaseServi
.collect(Collectors.toList()) .collect(Collectors.toList())
); );
} }
List<GetEnergyConsumptionAnalysisOutput> outputList = new ArrayList<>(0); List<GetEnergyConsumptionAnalysisOutput> powerList = new ArrayList<>(0);
BigDecimal greenElectricity = BigDecimal.ZERO;
BigDecimal cityElectricity = BigDecimal.ZERO;
if (CollUtil.isNotEmpty(powerGenerationList)) { if (CollUtil.isNotEmpty(powerGenerationList)) {
XCopyUtils.copyList(powerGenerationList, outputList, GetEnergyConsumptionAnalysisOutput.class); XCopyUtils.copyList(powerGenerationList, powerList, GetEnergyConsumptionAnalysisOutput.class);
//todo 设置一个值计算用电量 //todo 设置一个值计算用电量
BigDecimal flag = new BigDecimal("1.5"); BigDecimal flag = new BigDecimal("1.5");
BigDecimal power; BigDecimal power;
for (GetEnergyConsumptionAnalysisOutput output : outputList) { for (GetEnergyConsumptionAnalysisOutput output : powerList) {
power = output.getPower(); power = output.getPower();
if (Objects.isNull(power) || if (Objects.isNull(power) ||
power.compareTo(BigDecimal.ZERO) <= BusinessConstant.ZERO power.compareTo(BigDecimal.ZERO) <= BusinessConstant.ZERO
...@@ -124,14 +128,22 @@ public class EnergyConsumptionAnalysisService extends StatisticAnalysisBaseServi ...@@ -124,14 +128,22 @@ public class EnergyConsumptionAnalysisService extends StatisticAnalysisBaseServi
output.setElectricityConsumption(BigDecimal.ZERO); output.setElectricityConsumption(BigDecimal.ZERO);
continue; continue;
} }
BigDecimal bigDecimal = power.multiply(flag)
.setScale(2, BigDecimal.ROUND_HALF_UP);
//计算负荷 //计算负荷
output.setElectricityConsumption( output.setElectricityConsumption(bigDecimal);
power.multiply(flag) //计算市电/绿电总和
.setScale(2, BigDecimal.ROUND_HALF_UP) greenElectricity = greenElectricity.add(power);
); cityElectricity = cityElectricity.add(bigDecimal);
} }
} }
return XListResult.success(outputList); return XSingleResult.success(
GetEnergyConsumptionAnalysisViewOutput.builder()
.cityElectricity(cityElectricity)
.greenElectricity(greenElectricity)
.powerList(powerList)
.build()
);
} }
/*-----------------------------------private-----------------------------------*/ /*-----------------------------------private-----------------------------------*/
......
...@@ -9,7 +9,7 @@ import lombok.NoArgsConstructor; ...@@ -9,7 +9,7 @@ import lombok.NoArgsConstructor;
import xstartup.annotation.XText; import xstartup.annotation.XText;
/** /**
* 用能曲线(模拟数据测试用) * 能耗分析(模拟数据测试用)
* *
* @author ZWT * @author ZWT
* @date 2023/09/20 * @date 2023/09/20
......
...@@ -6,7 +6,7 @@ import xstartup.annotation.XText; ...@@ -6,7 +6,7 @@ import xstartup.annotation.XText;
import java.math.BigDecimal; import java.math.BigDecimal;
/** /**
* 用能曲线(模拟数据测试用) * 能耗分析(模拟数据测试用)
* *
* @author ZWT * @author ZWT
* @date 2023/09/20 * @date 2023/09/20
......
package pps.core.prediction.service.data.energy_consumption_analysis;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.List;
/**
* 能耗分析(模拟数据测试用)
*
* @author ZWT
* @date 2023/09/20
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class GetEnergyConsumptionAnalysisViewOutput {
@XText("绿电")
private BigDecimal greenElectricity;
@XText("市电")
private BigDecimal cityElectricity;
@XText("电量使用趋势")
List<GetEnergyConsumptionAnalysisOutput> powerList;
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment