Commit 597134b8 authored by ZWT's avatar ZWT

feat(能源管理系统): 基础信息配置

1.修改基础信息配置-井口配置模块删除接口,增加私有方法校验井口是否已被线路引用;
2.修改基础信息配置-光伏电站配置模块删除接口,增加私有方法校验光伏电站是否已被线路引用;
3.修改基础信息配置-储能设备配置模块删除接口,增加私有方法校验储能设备是否已被线路引用;
4.修改基础信息配置-柴发设备配置模块删除接口,增加私有方法校验柴发设备是否已被线路引用;
5.修改基础信息配置-市电峰谷模块新增/修改接口,优化市电峰谷关联信息批量新增逻辑;
6.修改基础信息配置-输电线路配置模块新增/修改接口,优化输电线路关联信息批量新增逻辑;
7.修改基础信息配置-间开制度管理模块新增/修改接口,优化间开制度关联信息批量新增逻辑;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent ecdbc085
......@@ -328,17 +328,21 @@ public class BasePriceStrategyService {
BasePriceStrategyDetailViewMapper detailMapper = context.getBean(BasePriceStrategyDetailViewMapper.class);
List<BasePriceStrategyDetailView> detailViewList = new ArrayList<>(256);
List<BasePriceStrategyMonthView> monthViewList = new ArrayList<>(16);
List<BasePriceStrategyDetailView> details;
for (BasePriceStrategyMonthView monthView : monthList) {
monthView.setStrategyId(strategyId);
BaseUtils.setBaseModelDefault(monthView, session);
monthView.setId(UUID.randomUUID().toString());
monthViewList.add(monthView);
for (BasePriceStrategyDetailView detailView : monthView.getDetails()) {
detailView.setStrategyId(strategyId);
detailView.setStrategyMonth(monthView.getStrategyMonth());
BaseUtils.setBaseModelDefault(detailView, session);
detailView.setId(UUID.randomUUID().toString());
detailViewList.add(detailView);
details = monthView.getDetails();
if (CollUtil.isNotEmpty(details)) {
details.forEach(d -> {
d.setStrategyId(strategyId);
d.setStrategyMonth(monthView.getStrategyMonth());
BaseUtils.setBaseModelDefault(d, session);
d.setId(UUID.randomUUID().toString());
detailViewList.add(d);
});
}
}
monthMapper.batchInsertList(monthViewList);
......
package pps.core.space.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import pps.core.common.entity.BaseModel;
import xstartup.annotation.XText;
......@@ -17,7 +16,6 @@ import java.util.List;
* @date 2023/09/05
*/
@Data
@TableName("space_institution_wellhead")
public class SpaceInstitutionWellheadView extends BaseModel implements Serializable {
@XText("间开制度ID")
......@@ -65,5 +63,5 @@ public class SpaceInstitutionWellheadView extends BaseModel implements Serializa
*/
@XText("启动间隔(分钟)")
@TableField(exist = false)
private List<SpaceInstitutionDurationEnt> durationList;
private List<SpaceInstitutionDurationView> durationList;
}
package pps.core.space.mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import pps.core.space.entity.SpaceInstitutionDurationView;
......@@ -16,4 +17,12 @@ public interface SpaceInstitutionDurationViewMapper {
SpaceInstitutionDurationView selectOne(SpaceInstitutionDurationView record);
List<SpaceInstitutionDurationView> selectList(SpaceInstitutionDurationView record);
/**
* 批量新增
*
* @param list 列表
* @return int
*/
int batchInsertList(@Param(value = "list") List<SpaceInstitutionDurationView> list);
}
package pps.core.space.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import pps.core.space.entity.SpaceInstitutionWellheadView;
......@@ -13,8 +13,16 @@ import java.util.List;
* @date 2023/09/05
*/
@Repository(value = "pps.core.space.mapper.SpaceInstitutionWellheadViewMapper")
public interface SpaceInstitutionWellheadViewMapper extends BaseMapper<SpaceInstitutionWellheadView> {
public interface SpaceInstitutionWellheadViewMapper {
SpaceInstitutionWellheadView selectOne(SpaceInstitutionWellheadView record);
List<SpaceInstitutionWellheadView> selectList(SpaceInstitutionWellheadView record);
/**
* 批量新增
*
* @param list 列表
* @return int
*/
int batchInsertList(@Param(value = "list") List<SpaceInstitutionWellheadView> list);
}
package pps.core.space.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.UUID;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.github.pagehelper.PageHelper;
......@@ -67,8 +68,7 @@ public class SpaceInstitutionDetailService {
String institutionId = entity.getId();
List<CreateSpaceInstitutionWellheadInput> wellheadList = input.getWellheadList();
if (CollUtil.isNotEmpty(wellheadList)) {
SpaceInstitutionWellheadViewMapper wellheadMapper = context.getBean(SpaceInstitutionWellheadViewMapper.class);
this.saveInstitutionWellhead(context, session, institutionId, wellheadList, wellheadMapper);
this.saveInstitutionWellhead(context, session, institutionId, wellheadList);
}
return XServiceResult.OK;
});
......@@ -85,7 +85,6 @@ public class SpaceInstitutionDetailService {
@XApiPost
@XText("基础间开配置--修改")
public XServiceResult updateSpaceInstitutionDetail(XContext context, UpdateSpaceInstitutionDetailInput input) {
PpsUserSession session = context.getSession(PpsUserSession.class);
String institutionId = input.getId();
return XTransactionHelper.begin(context, () -> {
SpaceInstitutionDetailMapper mapper = context.getBean(SpaceInstitutionDetailMapper.class);
......@@ -97,6 +96,7 @@ public class SpaceInstitutionDetailService {
if (isCurrentBasic.equals(0)) {
return XServiceResult.error(992, "基础制度无法修改");
}
PpsUserSession session = context.getSession(PpsUserSession.class);
this.updateInstitutionDetail(context, session, mapper, institutionId, input, entity);
return XServiceResult.OK;
});
......@@ -326,10 +326,7 @@ public class SpaceInstitutionDetailService {
@XApiPost
@XText("校准历史--重新优化")
public XServiceResult anewOptimizeInstitution(XContext context, UpdateSpaceInstitutionDetailInput input) {
PpsUserSession session = new PpsUserSession();
session.setId("123");
session.setUserName("ceshi");
// PpsUserSession session = context.getSession(PpsUserSession.class);
PpsUserSession session = context.getSession(PpsUserSession.class);
String institutionId = input.getId();
return XTransactionHelper.begin(context, () -> {
SpaceInstitutionDetailMapper mapper = context.getBean(SpaceInstitutionDetailMapper.class);
......@@ -381,31 +378,36 @@ public class SpaceInstitutionDetailService {
* @param session 一场
* @param institutionId 机构id
* @param wellheadList 井口一览表
* @param wellheadMapper 井口测绘仪
*/
private void saveInstitutionWellhead(XContext context, PpsUserSession session, String institutionId, List wellheadList,
SpaceInstitutionWellheadViewMapper wellheadMapper) {
List<SpaceInstitutionWellheadView> wellheads = XCopyUtils.copyNewList(wellheadList, SpaceInstitutionWellheadView.class);
SpaceInstitutionDurationMapper durationMapper = context.getBean(SpaceInstitutionDurationMapper.class);
List<SpaceInstitutionDurationEnt> durationList;
//todo 改批量新增
for (SpaceInstitutionWellheadView wellhead : wellheads) {
private void saveInstitutionWellhead(XContext context, PpsUserSession session, String institutionId, List wellheadList) {
SpaceInstitutionWellheadViewMapper wellheadViewMapper = context.getBean(SpaceInstitutionWellheadViewMapper.class);
SpaceInstitutionDurationViewMapper durationViewMapper = context.getBean(SpaceInstitutionDurationViewMapper.class);
List<SpaceInstitutionDurationView> durationViewList = new ArrayList<>(128);
List<SpaceInstitutionWellheadView> wellheadViewList = new ArrayList<>(32);
List<SpaceInstitutionDurationView> durationList;
for (SpaceInstitutionWellheadView wellhead : (List<SpaceInstitutionWellheadView>) XCopyUtils.copyNewList(wellheadList, SpaceInstitutionWellheadView.class)) {
wellhead.setInstitutionId(institutionId);
BaseUtils.setBaseModelDefault(wellhead, session);
wellheadMapper.insert(wellhead);
String wellheadId = wellhead.getWellheadId();
String configId = wellhead.getId();
wellhead.setId(UUID.randomUUID().toString());
wellheadViewList.add(wellhead);
durationList = wellhead.getDurationList();
if (CollUtil.isNotEmpty(durationList)) {
durationList.forEach(d -> {
d.setWellheadId(wellheadId);
d.setConfigId(configId);
d.setWellheadId(wellhead.getWellheadId());
d.setConfigId(wellhead.getId());
d.setInstitutionId(institutionId);
BaseUtils.setBaseModelDefault(d, session);
durationMapper.insert(d);
d.setId(UUID.randomUUID().toString());
durationViewList.add(d);
});
}
}
if (CollUtil.isNotEmpty(wellheadViewList)) {
wellheadViewMapper.batchInsertList(wellheadViewList);
}
if (CollUtil.isNotEmpty(durationViewList)) {
durationViewMapper.batchInsertList(durationViewList);
}
}
/**
......@@ -436,16 +438,16 @@ public class SpaceInstitutionDetailService {
List<UpdateSpaceInstitutionWellheadInput> wellheadList = input.getWellheadList();
if (CollUtil.isNotEmpty(wellheadList)) {
//删除之前关联的信息
SpaceInstitutionWellheadViewMapper wellheadMapper = context.getBean(SpaceInstitutionWellheadViewMapper.class);
wellheadMapper.delete(new LambdaQueryWrapper<SpaceInstitutionWellheadView>()
.eq(SpaceInstitutionWellheadView::getInstitutionId, institutionId)
SpaceInstitutionWellheadMapper wellheadMapper = context.getBean(SpaceInstitutionWellheadMapper.class);
wellheadMapper.delete(new LambdaQueryWrapper<SpaceInstitutionWellheadEnt>()
.eq(SpaceInstitutionWellheadEnt::getInstitutionId, institutionId)
);
SpaceInstitutionDurationMapper durationMapper = context.getBean(SpaceInstitutionDurationMapper.class);
durationMapper.delete(new LambdaQueryWrapper<SpaceInstitutionDurationEnt>()
.eq(SpaceInstitutionDurationEnt::getInstitutionId, institutionId)
);
//重新添加关联信息
this.saveInstitutionWellhead(context, session, institutionId, wellheadList, wellheadMapper);
this.saveInstitutionWellhead(context, session, institutionId, wellheadList);
}
XCopyUtils.copyObject(input, entity);
BaseUtils.setBaseModelDefault(entity, session);
......
......@@ -49,4 +49,40 @@
where
id=#{id}
</select>
<insert id="batchInsertList" parameterType="list">
INSERT INTO space_institution_duration (
id,
create_by_id,
create_by_name,
create_time,
modify_by_id,
modify_by_name,
modify_time,
institution_id,
config_id,
wellhead_id,
generation_type_key,
open_well_time,
close_well_time
)
VALUES
<foreach collection="list" item="item" separator=",">
(
#{item.id},
#{item.createById},
#{item.createByName},
#{item.createTime},
#{item.modifyById},
#{item.modifyByName},
#{item.modifyTime},
#{item.institutionId},
#{item.configId},
#{item.wellheadId},
#{item.generationTypeKey},
#{item.openWellTime},
#{item.closeWellTime}
)
</foreach>
</insert>
</mapper>
\ No newline at end of file
......@@ -57,4 +57,48 @@
where
id=#{id}
</select>
<insert id="batchInsertList" parameterType="list">
INSERT INTO space_institution_wellhead (
id,
create_by_id,
create_by_name,
create_time,
modify_by_id,
modify_by_name,
modify_time,
institution_id,
wellhead_id,
well_number,
run_type_key,
interval_type_key,
interval_describe,
start_seq,
open_well_day,
close_well_day,
run_duration
)
VALUES
<foreach collection="list" item="item" separator=",">
(
#{item.id},
#{item.createById},
#{item.createByName},
#{item.createTime},
#{item.modifyById},
#{item.modifyByName},
#{item.modifyTime},
#{item.institutionId},
#{item.wellheadId},
#{item.wellNumber},
#{item.runTypeKey},
#{item.intervalTypeKey},
#{item.intervalDescribe},
#{item.startSeq},
#{item.openWellDay},
#{item.closeWellDay},
#{item.runDuration}
)
</foreach>
</insert>
</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