Commit a4506ffb authored by ZWT's avatar ZWT

feat(吉林演示): 松原

1.修改系统首页大屏总览接口,增加区分组织机构逻辑,完成接口冒烟测试;
2.修改系统首页获取井场列表接口,增加区分组织机构逻辑,完成接口冒烟测试;
3.修改系统首页井场功能下钻后提示报错问题,修改用电功率数据获取逻辑,修复报错问题;
4.修改输电线路分页列表查询接口,增加查询条件,在查询父线路列表时只查询10千伏线路,修改线上接口文档同时完成接口冒烟测试;
5.修改系统首页井场实时监控接口,增加区分组织机构逻辑,完成接口冒烟测试;
6.修改系统首页用能分析接口,增加区分组织机构逻辑,完成接口冒烟测试;
7.修改系统首页井场用能分析(双坐标轴)接口,增加区分组织机构逻辑,完成接口冒烟测试;
8.修改系统首页累积用电接口,增加区分组织机构逻辑,完成接口冒烟测试;
9.修改系统首页光伏实时监控接口,增加区分组织机构逻辑,完成接口冒烟测试;
10.修改系统首页井场效果评价接口,增加区分组织机构逻辑,完成接口冒烟测试;
11.修改系统首页先导实验井间开制度接口,增加区分组织机构逻辑,完成接口冒烟测试;
12.修改极短期间开优化模块井口生产情况油井状态接口,增加区分组织机构逻辑,完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent a234f52f
......@@ -7,16 +7,14 @@ import pps.cloud.base.service.data.base_power_line.DynamicQueryBasePowerLineInpu
import pps.cloud.base.service.data.base_power_line.DynamicQueryBasePowerLineOutput;
import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadInput;
import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadViewOutput;
import pps.cloud.system.service.SysOrganizationCloudService;
import pps.cloud.system.service.data.sys_organization.GetAllOuListByOuIdInput;
import pps.cloud.system.service.data.sys_organization.GetSysOrganizationViewOutput;
import pps.core.common.constant.BusinessConstant;
import pps.core.common.utils.BaseUtils;
import pps.core.prediction.entity.ThirdPhotovoltaicPowerEnt;
import pps.core.prediction.entity.WellheadDailyProductionSituationEnt;
import pps.core.prediction.mapper.ThirdPhotovoltaicPowerMapper;
import pps.core.prediction.mapper.WellheadDailyProductionSituationMapper;
import pps.core.prediction.service.data.third_photovoltaic_power.GetThirdPhotovoltaicPowerInput;
import pps.core.prediction.service.data.third_photovoltaic_power.GetThirdPhotovoltaicPowerOutput;
import pps.core.prediction.utils.ServiceUtil;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext;
......@@ -25,7 +23,6 @@ import xstartup.data.XSingleResult;
import xstartup.feature.api.annotation.XApiPost;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
......@@ -51,7 +48,7 @@ public class ThirdPhotovoltaicPowerService {
@XApiPost
public XSingleResult<GetThirdPhotovoltaicPowerOutput> getPhotovoltaicPowerOverview(XContext context, GetThirdPhotovoltaicPowerInput input) {
GetThirdPhotovoltaicPowerOutput output = new GetThirdPhotovoltaicPowerOutput();
List<DynamicQueryBasePowerLineOutput> lineList = this.getBasePowerLineListByOuIdList(context, this.getOrgIdsByPath(context, input.getOuId()));
List<DynamicQueryBasePowerLineOutput> lineList = this.getBasePowerLineListByOuIdList(context, ServiceUtil.getOrgIdsByPath(context, input.getOuId()));
if (CollUtil.isEmpty(lineList)) {
output.setPowerGeneration(BigDecimal.ZERO);
output.setPowerConsumption(BigDecimal.ZERO);
......@@ -91,50 +88,14 @@ public class ThirdPhotovoltaicPowerService {
);
output.setPowerGeneration(photovoltaicPowerEnt.getPhotovoltaicPower());
output.setPowerConsumption(powerConsumption);
output.setAbsorptionRate(this.getAbsorptionRate(photovoltaicPowerEnt.getPhotovoltaicPower(), powerConsumption));
//消纳率:光伏发电/累计用电*100%
output.setAbsorptionRate(BaseUtils.getRate(photovoltaicPowerEnt.getPhotovoltaicPower(), powerConsumption));
}
return XSingleResult.success(output);
}
/*-----------------------------------private-----------------------------------*/
/**
* 获取消纳率
* 消纳率:光伏发电/累计用电*100%
*
* @param powerGeneration 发电
* @param powerConsumption 功耗
* @return {@link BigDecimal}
*/
private BigDecimal getAbsorptionRate(BigDecimal powerGeneration, BigDecimal powerConsumption) {
BigDecimal absorptionRate;
if (powerConsumption.compareTo(BigDecimal.ZERO) > 0) {
absorptionRate = powerGeneration.divide(powerConsumption, 4, RoundingMode.HALF_UP)
.multiply(BusinessConstant.BIG_DECIMAL_100);
} else {
absorptionRate = BigDecimal.ZERO;
}
return absorptionRate;
}
/**
* 获取所有path包含组织ID的组织
*
* @param context 上下文
* @param ouId ou id
* @return {@link List}<{@link String}>
*/
private List<String> getOrgIdsByPath(XContext context, String ouId) {
SysOrganizationCloudService organizationCloudService = context.getBean(SysOrganizationCloudService.class);
GetAllOuListByOuIdInput ouIdInput = new GetAllOuListByOuIdInput();
ouIdInput.setOuId(ouId);
XListResult<GetSysOrganizationViewOutput> allListByOuId = organizationCloudService.getAllListByOuId(context, ouIdInput);
allListByOuId.throwIfFail();
return allListByOuId.getResult().stream()
.map(GetSysOrganizationViewOutput::getId)
.collect(Collectors.toList());
}
/**
* 查询组织列表下所有线路
*
......
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