Commit 468cb2ed authored by ZWT's avatar ZWT

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

1.开发基础信息配置-输电线路配置模块修改功能,完成接口冒烟测试并生成接口文档;
2.开发基础信息配置-输电线路配置模块删除功能,完成接口冒烟测试并生成接口文档;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 64ee41f7
...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import pps.core.base.entity.BasePowerLinePlantEnt; import pps.core.base.entity.BasePowerLinePlantEnt;
@Repository(value="pps.core.base.mapper.BasePowerLinePlantMapper") /**
* 输电线路光伏配置
*
* @author ZWT
* @date 2023/08/28
*/
@Repository(value = "pps.core.base.mapper.BasePowerLinePlantMapper")
public interface BasePowerLinePlantMapper extends BaseMapper<BasePowerLinePlantEnt> { public interface BasePowerLinePlantMapper extends BaseMapper<BasePowerLinePlantEnt> {
} }
...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import pps.core.base.entity.BasePowerLineStorageEnt; import pps.core.base.entity.BasePowerLineStorageEnt;
@Repository(value="pps.core.base.mapper.BasePowerLineStorageMapper") /**
* 输电线路储能配置
*
* @author ZWT
* @date 2023/08/28
*/
@Repository(value = "pps.core.base.mapper.BasePowerLineStorageMapper")
public interface BasePowerLineStorageMapper extends BaseMapper<BasePowerLineStorageEnt> { public interface BasePowerLineStorageMapper extends BaseMapper<BasePowerLineStorageEnt> {
} }
...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -4,6 +4,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import pps.core.base.entity.BasePowerLineWellheadEnt; import pps.core.base.entity.BasePowerLineWellheadEnt;
@Repository(value="pps.core.base.mapper.BasePowerLineWellheadMapper") /**
* 输电线路井口配置
*
* @author ZWT
* @date 2023/08/28
*/
@Repository(value = "pps.core.base.mapper.BasePowerLineWellheadMapper")
public interface BasePowerLineWellheadMapper extends BaseMapper<BasePowerLineWellheadEnt> { public interface BasePowerLineWellheadMapper extends BaseMapper<BasePowerLineWellheadEnt> {
} }
package pps.core.base.service; package pps.core.base.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import pps.core.base.entity.*; import pps.core.base.entity.*;
import pps.core.base.mapper.*; import pps.core.base.mapper.*;
import pps.core.base.service.data.base_power_line.*; import pps.core.base.service.data.base_power_line.*;
import pps.core.base.service.data.base_power_line_diesel.CreateBasePowerLineDieselInput;
import pps.core.base.service.data.base_power_line_plant.CreateBasePowerLinePlantInput;
import pps.core.base.service.data.base_power_line_storage.CreateBasePowerLineStorageInput;
import pps.core.base.service.data.base_power_line_wellhead.CreateBasePowerLineWellheadInput;
import pps.core.base.utils.BaseEntUtils; import pps.core.base.utils.BaseEntUtils;
import pps.core.common.session.PpsUserSession; import pps.core.common.session.PpsUserSession;
import xstartup.annotation.XService; import xstartup.annotation.XService;
...@@ -60,50 +57,8 @@ public class BasePowerLineService { ...@@ -60,50 +57,8 @@ public class BasePowerLineService {
mapper.insert(entity); mapper.insert(entity);
String lineId = entity.getId(); String lineId = entity.getId();
String ouId = entity.getOuId(); String ouId = entity.getOuId();
//新增井口配置 //新增关联信息
List<CreateBasePowerLineWellheadInput> wellheadInputs = input.getWellheadInputs(); this.saveLineRelation(lineId, ouId, session, input.getWellheadInputs(), input.getPlantInputs(), input.getStorageInputs(), input.getDieselInputs());
if (!wellheadInputs.isEmpty()) {
List<BasePowerLineWellheadEnt> wellheads = XCopyUtils.copyNewList(wellheadInputs, BasePowerLineWellheadEnt.class);
for (BasePowerLineWellheadEnt wellhead : wellheads) {
wellhead.setLineId(lineId);
wellhead.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(wellhead, session);
}
BaseEntUtils.batchInsert(BasePowerLineWellheadMapper.class, BasePowerLineWellheadEnt.class, wellheads);
}
//新增光伏配置
List<CreateBasePowerLinePlantInput> plantInputs = input.getPlantInputs();
if (!plantInputs.isEmpty()) {
List<BasePowerLinePlantEnt> plants = XCopyUtils.copyNewList(plantInputs, BasePowerLinePlantEnt.class);
for (BasePowerLinePlantEnt plant : plants) {
plant.setLineId(lineId);
plant.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(plant, session);
}
BaseEntUtils.batchInsert(BasePowerLinePlantMapper.class, BasePowerLinePlantEnt.class, plants);
}
//新增储能配置
List<CreateBasePowerLineStorageInput> storageInputs = input.getStorageInputs();
if (!storageInputs.isEmpty()) {
List<BasePowerLineStorageEnt> storages = XCopyUtils.copyNewList(storageInputs, BasePowerLineStorageEnt.class);
for (BasePowerLineStorageEnt storage : storages) {
storage.setLineId(lineId);
storage.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(storage, session);
}
BaseEntUtils.batchInsert(BasePowerLineStorageMapper.class, BasePowerLineStorageEnt.class, storages);
}
//新增柴发配置
List<CreateBasePowerLineDieselInput> dieselInputs = input.getDieselInputs();
if (!dieselInputs.isEmpty()) {
List<BasePowerLineDieselEnt> diesels = XCopyUtils.copyNewList(dieselInputs, BasePowerLineDieselEnt.class);
for (BasePowerLineDieselEnt diesel : diesels) {
diesel.setLineId(lineId);
diesel.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(diesel, session);
}
BaseEntUtils.batchInsert(BasePowerLineDieselMapper.class, BasePowerLineDieselEnt.class, diesels);
}
return XServiceResult.OK; return XServiceResult.OK;
}); });
} }
...@@ -117,37 +72,54 @@ public class BasePowerLineService { ...@@ -117,37 +72,54 @@ public class BasePowerLineService {
*/ */
@XApiAnonymous @XApiAnonymous
@XApiPost @XApiPost
@XText("输电线路配置--修改")
public XServiceResult updateBasePowerLine(XContext context, UpdateBasePowerLineInput input) { public XServiceResult updateBasePowerLine(XContext context, UpdateBasePowerLineInput input) {
// PpsUserSession session = context.getSession(PpsUserSession.class); // PpsUserSession session = context.getSession(PpsUserSession.class);
PpsUserSession session = new PpsUserSession(); PpsUserSession session = new PpsUserSession();
session.setId("123"); session.setId("123");
session.setUserName("ceshi"); session.setUserName("ceshi");
String lineId = input.getId();
String ouId = input.getOuId();
return XTransactionHelper.begin(context, () -> { return XTransactionHelper.begin(context, () -> {
BasePowerLineMapper mapper = context.getBean(BasePowerLineMapper.class); BasePowerLineMapper mapper = context.getBean(BasePowerLineMapper.class);
QueryWrapper<BasePowerLineEnt> queryWrapper = new QueryWrapper<>(); BasePowerLineEnt entity = this.selectOneByLineId(lineId, mapper);
queryWrapper.lambda().eq(BasePowerLineEnt::getId, input.getId());
BasePowerLineEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) { if (entity == null) {
return XServiceResult.error(context, XError.NotFound); return XServiceResult.error(context, XError.NotFound);
} }
//删除线路关联信息
this.deleteLineRelation(context, lineId);
//新增关联信息
this.saveLineRelation(lineId, ouId, session, input.getWellheadInputs(), input.getPlantInputs(), input.getStorageInputs(), input.getDieselInputs());
XCopyUtils.copyObject(input, entity); XCopyUtils.copyObject(input, entity);
mapper.updateById(entity); mapper.updateById(entity);
return XServiceResult.OK; return XServiceResult.OK;
}); });
} }
/**
* 输电线路配置--删除
* (如果被引用,则不能删除)
*
* @param context 上下文
* @param input 输入
* @return {@link XServiceResult}
*/
@XApiAnonymous @XApiAnonymous
@XApiPost @XApiPost
@XText("输电线路配置--删除")
public XServiceResult deleteBasePowerLine(XContext context, DeleteBasePowerLineInput input) { public XServiceResult deleteBasePowerLine(XContext context, DeleteBasePowerLineInput input) {
String lineId = input.getId();
return XTransactionHelper.begin(context, () -> {
BasePowerLineMapper mapper = context.getBean(BasePowerLineMapper.class); BasePowerLineMapper mapper = context.getBean(BasePowerLineMapper.class);
QueryWrapper<BasePowerLineEnt> queryWrapper = new QueryWrapper<>(); BasePowerLineEnt entity = this.selectOneByLineId(lineId, mapper);
queryWrapper.lambda().eq(BasePowerLineEnt::getId, input.getId());
BasePowerLineEnt entity = mapper.selectOne(queryWrapper);
if (entity == null) { if (entity == null) {
return XServiceResult.error(context, XError.NotFound); return XServiceResult.error(context, XError.NotFound);
} }
//删除线路关联信息
this.deleteLineRelation(context, lineId);
mapper.deleteById(entity); mapper.deleteById(entity);
return XServiceResult.OK; return XServiceResult.OK;
});
} }
@XApiAnonymous @XApiAnonymous
...@@ -193,4 +165,103 @@ public class BasePowerLineService { ...@@ -193,4 +165,103 @@ public class BasePowerLineService {
return XPageResult.success(outputs, input, pageInfo.getTotal()); return XPageResult.success(outputs, input, pageInfo.getTotal());
} }
/*-----------------------------------private-----------------------------------*/
/**
* 通过线路ID获取线路信息
*
* @param lineId 行id
* @param mapper 映射器
* @return {@link BasePowerLineEnt}
*/
private BasePowerLineEnt selectOneByLineId(String lineId, BasePowerLineMapper mapper) {
BasePowerLineEnt entity = mapper.selectOne(new QueryWrapper<BasePowerLineEnt>()
.lambda()
.eq(BasePowerLineEnt::getId, lineId));
return entity;
}
/**
* 保存线路关联信息
*
* @param lineId 线路id
* @param ouId 组织id
* @param session 会话
* @param wellheadInputs 井口列表
* @param plantInputs 光伏列表
* @param storageInputs 储能列表
* @param dieselInputs 柴发列表
*/
private void saveLineRelation(String lineId, String ouId, PpsUserSession session,
List wellheadInputs, List plantInputs, List storageInputs, List dieselInputs) {
//新增井口配置
if (!wellheadInputs.isEmpty()) {
List<BasePowerLineWellheadEnt> wellheads = XCopyUtils.copyNewList(wellheadInputs, BasePowerLineWellheadEnt.class);
for (BasePowerLineWellheadEnt wellhead : wellheads) {
wellhead.setLineId(lineId);
wellhead.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(wellhead, session);
}
BaseEntUtils.batchInsert(BasePowerLineWellheadMapper.class, BasePowerLineWellheadEnt.class, wellheads);
}
//新增光伏配置
if (!plantInputs.isEmpty()) {
List<BasePowerLinePlantEnt> plants = XCopyUtils.copyNewList(plantInputs, BasePowerLinePlantEnt.class);
for (BasePowerLinePlantEnt plant : plants) {
plant.setLineId(lineId);
plant.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(plant, session);
}
BaseEntUtils.batchInsert(BasePowerLinePlantMapper.class, BasePowerLinePlantEnt.class, plants);
}
//新增储能配置
if (!storageInputs.isEmpty()) {
List<BasePowerLineStorageEnt> storages = XCopyUtils.copyNewList(storageInputs, BasePowerLineStorageEnt.class);
for (BasePowerLineStorageEnt storage : storages) {
storage.setLineId(lineId);
storage.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(storage, session);
}
BaseEntUtils.batchInsert(BasePowerLineStorageMapper.class, BasePowerLineStorageEnt.class, storages);
}
//新增柴发配置
if (!dieselInputs.isEmpty()) {
List<BasePowerLineDieselEnt> diesels = XCopyUtils.copyNewList(dieselInputs, BasePowerLineDieselEnt.class);
for (BasePowerLineDieselEnt diesel : diesels) {
diesel.setLineId(lineId);
diesel.setOuId(ouId);
BaseEntUtils.setBaseEntDefault(diesel, session);
}
BaseEntUtils.batchInsert(BasePowerLineDieselMapper.class, BasePowerLineDieselEnt.class, diesels);
}
}
/**
* 删除线路关系信息
*
* @param context 上下文
* @param lineId 行id
*/
private void deleteLineRelation(XContext context, String lineId) {
//删除井口关联信息
BasePowerLineWellheadMapper wellheadMapper = context.getBean(BasePowerLineWellheadMapper.class);
wellheadMapper.delete(new LambdaQueryWrapper<BasePowerLineWellheadEnt>()
.eq(BasePowerLineWellheadEnt::getLineId, lineId)
);
//删除光伏关联信息
BasePowerLinePlantMapper plantMapper = context.getBean(BasePowerLinePlantMapper.class);
plantMapper.delete(new LambdaQueryWrapper<BasePowerLinePlantEnt>()
.eq(BasePowerLinePlantEnt::getLineId, lineId)
);
//删除储能关联信息
BasePowerLineStorageMapper storageMapper = context.getBean(BasePowerLineStorageMapper.class);
storageMapper.delete(new LambdaQueryWrapper<BasePowerLineStorageEnt>()
.eq(BasePowerLineStorageEnt::getLineId, lineId)
);
//删除柴发关联信息
BasePowerLineDieselMapper dieselMapper = context.getBean(BasePowerLineDieselMapper.class);
dieselMapper.delete(new LambdaQueryWrapper<BasePowerLineDieselEnt>()
.eq(BasePowerLineDieselEnt::getLineId, lineId)
);
}
} }
...@@ -75,8 +75,7 @@ public class BasePriceStrategyService { ...@@ -75,8 +75,7 @@ public class BasePriceStrategyService {
if (!inputMonths.isEmpty()) { if (!inputMonths.isEmpty()) {
List<BasePriceStrategyMonthEnt> monthList = XCopyUtils.copyNewList(inputMonths, BasePriceStrategyMonthEnt.class); List<BasePriceStrategyMonthEnt> monthList = XCopyUtils.copyNewList(inputMonths, BasePriceStrategyMonthEnt.class);
BasePriceStrategyMonthMapper monthMapper = context.getBean(BasePriceStrategyMonthMapper.class); BasePriceStrategyMonthMapper monthMapper = context.getBean(BasePriceStrategyMonthMapper.class);
BasePriceStrategyDetailMapper detailMapper = context.getBean(BasePriceStrategyDetailMapper.class); this.saveStrategyMonthDetail(monthMapper, monthList, strategyId, session);
this.saveStrategyMonthDetail(monthMapper, detailMapper, monthList, strategyId, session);
} }
return XServiceResult.OK; return XServiceResult.OK;
}); });
...@@ -126,7 +125,7 @@ public class BasePriceStrategyService { ...@@ -126,7 +125,7 @@ public class BasePriceStrategyService {
.eq(BasePriceStrategyDetailEnt::getStrategyId, strategyId) .eq(BasePriceStrategyDetailEnt::getStrategyId, strategyId)
.in(BasePriceStrategyDetailEnt::getStrategyMonth, collect) .in(BasePriceStrategyDetailEnt::getStrategyMonth, collect)
); );
this.saveStrategyMonthDetail(monthMapper, detailMapper, monthList, strategyId, session); this.saveStrategyMonthDetail(monthMapper, monthList, strategyId, session);
} }
XCopyUtils.copyObject(input, entity); XCopyUtils.copyObject(input, entity);
BaseEntUtils.setBaseEntDefault(entity, session); BaseEntUtils.setBaseEntDefault(entity, session);
...@@ -281,12 +280,11 @@ public class BasePriceStrategyService { ...@@ -281,12 +280,11 @@ public class BasePriceStrategyService {
* 保存策略明细 * 保存策略明细
* *
* @param monthMapper 月映射器 * @param monthMapper 月映射器
* @param detailMapper 细节映射器
* @param monthList 月清单 * @param monthList 月清单
* @param strategyId 战略id * @param strategyId 战略id
* @param session 会话 * @param session 会话
*/ */
private void saveStrategyMonthDetail(BasePriceStrategyMonthMapper monthMapper, BasePriceStrategyDetailMapper detailMapper, List<BasePriceStrategyMonthEnt> monthList, String strategyId, PpsUserSession session) { private void saveStrategyMonthDetail(BasePriceStrategyMonthMapper monthMapper, List<BasePriceStrategyMonthEnt> monthList, String strategyId, PpsUserSession session) {
Integer strategyMonth; Integer strategyMonth;
List<BasePriceStrategyDetailEnt> detailList; List<BasePriceStrategyDetailEnt> detailList;
for (BasePriceStrategyMonthEnt monthEnt : monthList) { for (BasePriceStrategyMonthEnt monthEnt : monthList) {
......
package pps.core.base.service.data.base_power_line; package pps.core.base.service.data.base_power_line;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.util.Date;
import java.math.BigDecimal;
/**
* 输电线路配置
*
* @author ZWT
* @date 2023/08/28
*/
@Data
public class DeleteBasePowerLineInput { public class DeleteBasePowerLineInput {
@XText("ID") @XText("ID")
@NotBlank(message = "缺少线路ID")
private String id; private String id;
@XText("是否删除(0_是;1_否)")
private Integer isDeleted;
@XText("创建人ID")
private String createById;
@XText("创建人名称")
private String createByName;
@XText("创建时间")
private Date createTime;
@XText("修改人ID")
private String modifyById;
@XText("修改人名称")
private String modifyByName;
@XText("修改时间")
private Date modifyTime;
@XText("组织机构ID") @XText("组织机构ID")
private String ouId; private String ouId;
...@@ -52,133 +40,4 @@ public class DeleteBasePowerLineInput { ...@@ -52,133 +40,4 @@ public class DeleteBasePowerLineInput {
@XText("是否激活返输调度(0_激活;1_关闭)") @XText("是否激活返输调度(0_激活;1_关闭)")
private Integer isReverseDispatch; private Integer isReverseDispatch;
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getOuId() {
return this.ouId;
}
public void setOuId(String value) {
this.ouId = value;
}
public String getUpperLineId() {
return this.upperLineId;
}
public void setUpperLineId(String value) {
this.upperLineId = value;
}
public String getLineName() {
return this.lineName;
}
public void setLineName(String value) {
this.lineName = value;
}
public String getGridTypeKey() {
return this.gridTypeKey;
}
public void setGridTypeKey(String value) {
this.gridTypeKey = value;
}
public String getLineTypeKey() {
return this.lineTypeKey;
}
public void setLineTypeKey(String value) {
this.lineTypeKey = value;
}
public String getStrategyId() {
return this.strategyId;
}
public void setStrategyId(String value) {
this.strategyId = value;
}
public Integer getIsShareDispatch() {
return this.isShareDispatch;
}
public void setIsShareDispatch(Integer value) {
this.isShareDispatch = value;
}
public Integer getIsReverseDispatch() {
return this.isReverseDispatch;
}
public void setIsReverseDispatch(Integer value) {
this.isReverseDispatch = value;
}
} }
...@@ -12,7 +12,6 @@ import xstartup.annotation.XText; ...@@ -12,7 +12,6 @@ import xstartup.annotation.XText;
import java.util.List; import java.util.List;
/** /**
* 更新基础电力线路输入
* 输电线路配置 * 输电线路配置
* *
* @author ZWT * @author ZWT
......
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