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