Commit 1999b94d authored by ZWT's avatar ZWT

feat(吉林演示): 松原

1.开发中间库表结构及数据导出功能,检查中间库表结构是否有变动,同时获取最新数据,验证数据是否更新;
2.创建场站每日信息统计记录表,新建场站日信息数据采集汇总定时任务,整理汇总场站纬度每日数据,完成功能验证;
3.针对吉林提供的统计数据,对吉林首页部分功能修改;
4.针对中间库每日井口数据统计表结构变动,修改井口日统计定时任务数据处理逻辑,完成功能验证;
5.修改日发电量统计定时任务,排查数据丢失问题,完成功能验证;
6.修改场站每日信息汇总统计定时任务,增加统计每日光伏发电量逻辑,修改表结构及数据结构和业务处理逻辑,完成功能验证;
7.修改吉林首页线路详情接口,区分部署环境,增加吉林个性化数据处理逻辑,完成接口冒烟测试;
8.修改实际发电功率统计定时任务,排查数据丢失问题,完成功能验证;
9.修改实际发电量统计定时任务,排查数据丢失问题,完成功能验证;
10.修改吉林首页井场效果评价数据统计接口,区分部署环境,增加吉林个性化数据处理逻辑,完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent e20feddb
...@@ -22,9 +22,6 @@ import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowe ...@@ -22,9 +22,6 @@ import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowe
import pps.cloud.base.service.data.base_wellhead.DynamicQueryBaseWellheadInput; import pps.cloud.base.service.data.base_wellhead.DynamicQueryBaseWellheadInput;
import pps.cloud.base.service.data.base_wellhead.DynamicQueryBaseWellheadOutput; import pps.cloud.base.service.data.base_wellhead.DynamicQueryBaseWellheadOutput;
import pps.cloud.base.service.data.config_oil_field.GetConfigOilFieldOutput; import pps.cloud.base.service.data.config_oil_field.GetConfigOilFieldOutput;
import pps.cloud.space.service.IDailyElectricityTrendCloudService;
import pps.cloud.space.service.data.line_daily_electricity_trend.GetLineDailyElectricityTrendInput;
import pps.cloud.space.service.data.line_daily_electricity_trend.GetLineDailyElectricityTrendOutput;
import pps.cloud.system.service.SystemAreaService; import pps.cloud.system.service.SystemAreaService;
import pps.cloud.system.service.data.sys_area.GetSysAreaInput; import pps.cloud.system.service.data.sys_area.GetSysAreaInput;
import pps.cloud.system.service.data.sys_area.GetSysAreaOutput; import pps.cloud.system.service.data.sys_area.GetSysAreaOutput;
...@@ -606,6 +603,9 @@ public class HomePageService { ...@@ -606,6 +603,9 @@ public class HomePageService {
} }
} }
String oilFieldCode = ServiceUtil.getOilFieldCode(context); String oilFieldCode = ServiceUtil.getOilFieldCode(context);
//区分环境
switch (oilFieldCode) {
case BusinessConstant.ENV_CQ:
ThirdDailyAccumulationUpdateMapper analysisMapper = context.getBean(ThirdDailyAccumulationUpdateMapper.class); ThirdDailyAccumulationUpdateMapper analysisMapper = context.getBean(ThirdDailyAccumulationUpdateMapper.class);
ThirdDailyAccumulationUpdateEnt analysisEnt = analysisMapper.selectOne(new QueryWrapper<ThirdDailyAccumulationUpdateEnt>() ThirdDailyAccumulationUpdateEnt analysisEnt = analysisMapper.selectOne(new QueryWrapper<ThirdDailyAccumulationUpdateEnt>()
.select("IFNULL( SUM( photovoltaic_power ), 0 ) AS photovoltaic_power", .select("IFNULL( SUM( photovoltaic_power ), 0 ) AS photovoltaic_power",
...@@ -631,9 +631,6 @@ public class HomePageService { ...@@ -631,9 +631,6 @@ public class HomePageService {
.subtract(analysisEnt.getPhotovoltaicPower() .subtract(analysisEnt.getPhotovoltaicPower()
.multiply(BigDecimal.valueOf(0.28))) .multiply(BigDecimal.valueOf(0.28)))
.divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP); .divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
//区分环境
switch (oilFieldCode) {
case BusinessConstant.ENV_CQ:
if (CharSequenceUtil.equals("bb1bff9d-7068-48c9-9be8-c80eb0d49152", stationId)) { if (CharSequenceUtil.equals("bb1bff9d-7068-48c9-9be8-c80eb0d49152", stationId)) {
greenElectricityRate = "94.03"; greenElectricityRate = "94.03";
} else { } else {
...@@ -651,20 +648,32 @@ public class HomePageService { ...@@ -651,20 +648,32 @@ public class HomePageService {
.divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP); .divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
break; break;
case BusinessConstant.ENV_SY: case BusinessConstant.ENV_SY:
//近零碳井场绿电占比:(累计就地消纳量/累计井场用电量*100%)+5 StationDailyProductionSituationMapper dailyMapper = context.getBean(StationDailyProductionSituationMapper.class);
greenElectricityRate = BaseUtils.getRate(analysisEnt.getInPlaceConsumption(), analysisEnt.getDailyElectricityConsumption()) StationDailyProductionSituationEnt dailyEnt = dailyMapper.selectOne(new QueryWrapper<StationDailyProductionSituationEnt>()
.add(BigDecimal.valueOf(5)) .select("IFNULL( SUM( photovoltaic_power ), 0 ) AS photovoltaic_power",
.toString(); "IFNULL( SUM( daily_electricity_consumption ), 0 ) AS daily_electricity_consumption",
//谷电占比:所有井的谷电时间开井时长/所有井开井时长保留2位小数 "IFNULL( SUM( electricity_charge_city ), 0 ) AS electricity_charge_city")
IDailyElectricityTrendCloudService bean = context.getBean(IDailyElectricityTrendCloudService.class); .lambda()
XSingleResult<GetLineDailyElectricityTrendOutput> result = bean.querySumDailyElectricity(context, GetLineDailyElectricityTrendInput.builder() .in(StationDailyProductionSituationEnt::getStationName, lineNameList)
.systemSource(oilFieldCode) .eq(StationDailyProductionSituationEnt::getSystemSource, oilFieldCode)
.stationNameList(lineNameList) );
.build()); //发电量
result.throwIfFail(); powerGeneration = dailyEnt.getPhotovoltaicPower()
GetLineDailyElectricityTrendOutput lineDailyElectricity = result.getResult(); .divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
valleyElectricRate = BaseUtils.getRate(lineDailyElectricity.getValleyElectricOpenHour(), lineDailyElectricity.getSumRunDuration()); //用电量
dailyElectricityConsumption = dailyEnt.getDailyElectricityConsumption()
.divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
//累计减碳量
carbonReduction = ServiceUtil.calculateCarbonReduction(dailyEnt.getPhotovoltaicPower());
//经济效益(万元):光伏累计发电*0.65-光伏累计发电*0.28
economicBenefit = dailyEnt.getPhotovoltaicPower()
.multiply(BigDecimal.valueOf(0.65))
.subtract(dailyEnt.getPhotovoltaicPower()
.multiply(BigDecimal.valueOf(0.28)))
.divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
//累计电费 //累计电费
accumulatedCharge = dailyEnt.getElectricityChargeCity()
.divide(BusinessConstant.BIG_DECIMAL_10000, 2, RoundingMode.HALF_UP);
break; break;
default: default:
} }
......
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