Commit e213fb9e authored by ZWT's avatar ZWT

feat(能源管理系统): 间开制度管理

1.修改基础信息配置-井口配置模块删除接口,增加私有方法校验井口是否已被线路引用;
2.修改基础信息配置-光伏电站配置模块删除接口,增加私有方法校验光伏电站是否已被线路引用;
3.修改基础信息配置-储能设备配置模块删除接口,增加私有方法校验储能设备是否已被线路引用;
4.修改基础信息配置-柴发设备配置模块删除接口,增加私有方法校验柴发设备是否已被线路引用;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 4e7507b4
package pps.core.common.utils;
import com.baomidou.mybatisplus.core.enums.SqlMethod;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.TableInfo;
import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
import com.baomidou.mybatisplus.core.toolkit.ReflectionKit;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.binding.MapperMethod;
import pps.core.common.entity.BaseModel;
import pps.core.common.session.PpsUserSession;
import java.io.Serializable;
import java.util.Collection;
import java.util.Date;
import java.util.Objects;
/**
* 封装工具类
......@@ -44,40 +34,4 @@ public class BaseUtils {
model.setModifyByName(userName);
model.setModifyTime(now);
}
/**
* 批量插入
*
* @param mapper 映射器
* @param entityClass 实体类
* @param list 列表
*/
public static <E> void batchInsert(Class<?> mapper, Class<?> entityClass, Collection<E> list) {
String sqlStatement = SqlHelper.getSqlStatement(mapper, SqlMethod.INSERT_ONE);
SqlHelper.executeBatch(entityClass, null, list, 1000, (sqlSession, ent) -> {
sqlSession.insert(sqlStatement, ent);
});
}
/**
* 批量保存或更新
*
* @param baseMapper 基地映射器
* @param entityClass 实体类
* @param list 列表
*/
public static <E> void saveOrUpdateBatch(BaseMapper baseMapper, Class<?> entityClass, Collection<E> list) {
TableInfo tableInfo = TableInfoHelper.getTableInfo(entityClass);
String keyProperty = tableInfo.getKeyProperty();
SqlHelper.executeBatch(entityClass, null, list, 1000, (sqlSession, ent) -> {
Object idVal = ReflectionKit.getFieldValue(ent, keyProperty);
if (!com.baomidou.mybatisplus.core.toolkit.StringUtils.checkValNull(idVal) && Objects.nonNull(baseMapper.selectById((Serializable) idVal))) {
MapperMethod.ParamMap<E> param = new MapperMethod.ParamMap();
param.put("et", ent);
sqlSession.update(tableInfo.getSqlStatement(SqlMethod.UPDATE_BY_ID.getMethod()), param);
} else {
sqlSession.insert(tableInfo.getSqlStatement(SqlMethod.INSERT_ONE.getMethod()), ent);
}
});
}
}
\ No newline at end of file
......@@ -392,6 +392,7 @@ public class BasePowerLineService {
*/
private void saveLineRelation(XContext context, String lineId, String ouId, PpsUserSession session,
List wellheadInputs, List plantInputs, List storageInputs, List dieselInputs) {
//todo 改批量新增
//新增井口配置
if (CollUtil.isNotEmpty(wellheadInputs)) {
BasePowerLineWellheadMapper wellheadMapper = context.getBean(BasePowerLineWellheadMapper.class);
......@@ -402,7 +403,6 @@ public class BasePowerLineService {
BaseUtils.setBaseModelDefault(wellhead, session);
wellheadMapper.insert(wellhead);
}
// BaseUtils.batchInsert(BasePowerLineWellheadMapper.class, BasePowerLineWellheadEnt.class, wellheads);
}
//新增光伏配置
if (CollUtil.isNotEmpty(plantInputs)) {
......@@ -414,7 +414,6 @@ public class BasePowerLineService {
BaseUtils.setBaseModelDefault(plant, session);
plantMapper.insert(plant);
}
// BaseUtils.batchInsert(BasePowerLinePlantMapper.class, BasePowerLinePlantEnt.class, plants);
}
//新增储能配置
if (CollUtil.isNotEmpty(storageInputs)) {
......@@ -426,7 +425,6 @@ public class BasePowerLineService {
BaseUtils.setBaseModelDefault(storage, session);
storageMapper.insert(storage);
}
// BaseUtils.batchInsert(BasePowerLineStorageMapper.class, BasePowerLineStorageEnt.class, storages);
}
//新增柴发配置
if (CollUtil.isNotEmpty(dieselInputs)) {
......@@ -438,7 +436,6 @@ public class BasePowerLineService {
BaseUtils.setBaseModelDefault(diesel, session);
dieselMapper.insert(diesel);
}
// BaseUtils.batchInsert(BasePowerLineDieselMapper.class, BasePowerLineDieselEnt.class, diesels);
}
}
}
......@@ -334,6 +334,7 @@ public class BasePriceStrategyService {
BaseUtils.setBaseModelDefault(monthEnt, session);
monthMapper.insert(monthEnt);
strategyMonth = monthEnt.getStrategyMonth();
//todo 改批量新增
detailList = monthEnt.getDetails();
for (BasePriceStrategyDetailEnt detailEnt : detailList) {
detailEnt.setStrategyId(strategyId);
......@@ -341,7 +342,6 @@ public class BasePriceStrategyService {
BaseUtils.setBaseModelDefault(detailEnt, session);
detailMapper.insert(detailEnt);
}
// BaseUtils.batchInsert(BasePriceStrategyDetailMapper.class, BasePriceStrategyDetailEnt.class, detailList);
}
}
}
\ No newline at end of file
package pps.core.base.utils;
import com.baomidou.mybatisplus.core.enums.SqlMethod;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import pps.cloud.space.service.ISpaceInstitutionDetailCloudService;
import pps.cloud.system.service.SysOrganizationCloudService;
import pps.cloud.system.service.SystemAreaService;
......@@ -9,6 +11,7 @@ import xstartup.base.XContext;
import xstartup.data.XListResult;
import xstartup.data.XSingleResult;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Optional;
......@@ -125,4 +128,18 @@ public class ServiceUtil {
result.throwIfFail();
return result.getResult() > 0;
}
/**
* 批量插入
*
* @param mapper 映射器
* @param entityClass 实体类
* @param list 列表
*/
public static <E> void batchInsert(Class<?> mapper, Class<?> entityClass, Collection<E> list) {
String sqlStatement = SqlHelper.getSqlStatement(mapper, SqlMethod.INSERT_ONE);
SqlHelper.executeBatch(entityClass, null, list, 1000, (sqlSession, ent) -> {
sqlSession.insert(sqlStatement, ent);
});
}
}
\ No newline at end of file
......@@ -68,7 +68,7 @@ public class SpaceInstitutionDetailService {
List<CreateSpaceInstitutionWellheadInput> wellheadList = input.getWellheadList();
if (CollUtil.isNotEmpty(wellheadList)) {
SpaceInstitutionWellheadViewMapper wellheadMapper = context.getBean(SpaceInstitutionWellheadViewMapper.class);
this.saveInstitutionWellhead(session, institutionId, wellheadList, wellheadMapper);
this.saveInstitutionWellhead(context, session, institutionId, wellheadList, wellheadMapper);
}
return XServiceResult.OK;
});
......@@ -383,10 +383,12 @@ public class SpaceInstitutionDetailService {
* @param wellheadList 井口一览表
* @param wellheadMapper 井口测绘仪
*/
private void saveInstitutionWellhead(PpsUserSession session, String institutionId, List wellheadList,
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) {
wellhead.setInstitutionId(institutionId);
BaseUtils.setBaseModelDefault(wellhead, session);
......@@ -400,8 +402,8 @@ public class SpaceInstitutionDetailService {
d.setConfigId(configId);
d.setInstitutionId(institutionId);
BaseUtils.setBaseModelDefault(d, session);
durationMapper.insert(d);
});
BaseUtils.batchInsert(SpaceInstitutionDurationMapper.class, SpaceInstitutionDurationEnt.class, durationList);
}
}
}
......@@ -443,7 +445,7 @@ public class SpaceInstitutionDetailService {
.eq(SpaceInstitutionDurationEnt::getInstitutionId, institutionId)
);
//重新添加关联信息
this.saveInstitutionWellhead(session, institutionId, wellheadList, wellheadMapper);
this.saveInstitutionWellhead(context, session, institutionId, wellheadList, wellheadMapper);
}
XCopyUtils.copyObject(input, entity);
BaseUtils.setBaseModelDefault(entity, session);
......
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