Commit e66aa1dd authored by ZWT's avatar ZWT

feat(零碳): 长庆

1.修复登录页面登录接口验证码输入后不需要验证直接能登录的问题;
2.长庆演示,首页展示大屏功能修改,修改线路详情接口,增加查询日平均用电量逻辑,同时重构查询日产液量和日发电量逻辑,更新接口文档并完成接口冒烟测试,同时生成用例;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 06850e19
......@@ -20,4 +20,7 @@ public class DynamicQueryBasePowerLineOutput {
@XText("组织机构ID")
private String ouId;
@XText("市电峰谷配置ID")
private String strategyId;
}
......@@ -34,4 +34,12 @@ public interface SpaceInstitutionWellheadViewMapper {
* @return {@link List}<{@link SpaceInstitutionWellheadView}>
*/
List<SpaceInstitutionWellheadView> selectListByInstitutionIds(@Param(value = "list") Collection institutionIds);
/**
* 通过制度ID集合获取所有间开井口
*
* @param institutionIds 机构ID
* @return {@link List}<{@link SpaceInstitutionWellheadView}>
*/
List<SpaceInstitutionWellheadView> selectWellheadsByInstitutionIds(@Param(value = "list") Collection institutionIds);
}
......@@ -8,9 +8,13 @@ import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageInfo;
import com.github.pagehelper.page.PageMethod;
import pps.cloud.base.service.IBasePowerLineCloudService;
import pps.cloud.base.service.data.base_power_line.DynamicQueryBasePowerLineInput;
import pps.cloud.base.service.data.base_power_line.DynamicQueryBasePowerLineOutput;
import pps.core.common.constant.BusinessConstant;
import pps.core.common.entity.BaseModel;
import pps.core.space.entity.*;
import pps.core.space.enums.BusinessError;
import pps.core.space.mapper.*;
import pps.core.space.service.data.SpaceOptimizeDateDuration;
import pps.core.space.service.data.space_optimize_period.GetSpaceOptimizePeriodInput;
......@@ -25,15 +29,19 @@ import pps.core.space.utils.ServiceUtil;
import xstartup.annotation.XService;
import xstartup.annotation.XText;
import xstartup.base.XContext;
import xstartup.base.exception.XServiceException;
import xstartup.base.util.XCopyUtils;
import xstartup.data.XListResult;
import xstartup.data.XPageResult;
import xstartup.data.XServiceResult;
import xstartup.data.XSingleResult;
import xstartup.feature.api.annotation.XApiGet;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
......@@ -46,6 +54,50 @@ import java.util.stream.Collectors;
@XText("极短期间开优化模块")
public class SpaceOptimizeShortPeriodService extends SpaceOptimizeBaseService {
/**
* 动态优化
*
* @param context 上下文
* @return {@link XServiceResult}
*/
@XApiGet(anonymous = true)
@XText("极短期间开优化--动态优化")
public XServiceResult dynamicOptimize(XContext context) {
List<SpaceOptimizePeriodDTO> periodDTOList = new ArrayList<>(32);
List<SpaceOptimizeWellheadDTO> wellheadDTOList = new ArrayList<>(64);
List<SpaceOptimizeDurationDTO> durationDTOList = new ArrayList<>(128);
List<SpaceOptimizeDurationDTO> unOptimizeDurationList = new ArrayList<>(128);
//取生效中的基础间开
List<SpaceInstitutionDetailEnt> detailEntList = this.getEffectiveSpaceInstitution(context, "2024-04-02");
//取线路ID和制度ID
List<String> lineIds = new ArrayList<>(32);
List<String> institutionIds = new ArrayList<>(32);
detailEntList.forEach(detail -> {
lineIds.add(detail.getLineId());
institutionIds.add(detail.getId());
});
//取间开的所有井口
SpaceInstitutionWellheadViewMapper wellheadMapper = context.getBean(SpaceInstitutionWellheadViewMapper.class);
List<SpaceInstitutionWellheadView> spaceWellheadList = wellheadMapper.selectWellheadsByInstitutionIds(institutionIds);
if (CollUtil.isEmpty(spaceWellheadList)) {
throw new XServiceException(BusinessError.DidNotFindWellhead);
}
//取间开对应的线路
IBasePowerLineCloudService lineCloudService = context.getBean(IBasePowerLineCloudService.class);
XListResult<DynamicQueryBasePowerLineOutput> lineResult = lineCloudService.getBasePowerLineList(context, DynamicQueryBasePowerLineInput.builder()
.lineIds(lineIds)
.build());
lineResult.throwIfFail();
Map<String, DynamicQueryBasePowerLineOutput> lineMap = lineResult.getResult().stream()
.collect(Collectors.toMap(DynamicQueryBasePowerLineOutput::getId, Function.identity()));
for (SpaceInstitutionDetailEnt detail : detailEntList) {
}
return XServiceResult.OK;
}
/**
* 极短期间开开优化--分页列表
*
......
......@@ -125,4 +125,33 @@
#{item}
</foreach>
</select>
<resultMap id="ExtResultMap" type="pps.core.space.entity.SpaceInstitutionWellheadView" extends="BaseResultMap">
<result column="service_rating" property="serviceRating" jdbcType="DECIMAL"/>
</resultMap>
<select id="selectWellheadsByInstitutionIds" parameterType="pps.core.space.entity.SpaceInstitutionWellheadView"
resultMap="ExtResultMap">
SELECT
w.institution_id,
w.wellhead_id,
w.well_number,
w.run_type_key,
IFNULL( w.interval_type_key, '999' ) AS interval_type_key,
w.interval_describe,
IFNULL( w.start_seq, 0 ) AS start_seq,
w.open_well_day,
w.close_well_day,
w.run_duration,
b.service_rating
FROM
space_institution_wellhead w
LEFT JOIN base_wellhead b ON w.wellhead_id = b.id
WHERE
w.is_deleted = 1
AND w.institution_id IN
<foreach collection="list" open="(" close=")" separator="," item="item">
#{item}
</foreach>
</select>
</mapper>
\ No newline at end of file
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