Commit c8807de3 authored by tianchao's avatar tianchao
parents 8234caa5 edd50cd5
...@@ -16,6 +16,11 @@ public class BusinessConstant { ...@@ -16,6 +16,11 @@ public class BusinessConstant {
*/ */
public static final String PARENT_OU_ID = "00000000-0000-0000-0000-000000000000"; public static final String PARENT_OU_ID = "00000000-0000-0000-0000-000000000000";
/**
* 线路标志id
*/
public static final String LINE_FLAG_ID = "000";
/** /**
* 光伏电站 * 光伏电站
*/ */
...@@ -113,7 +118,7 @@ public class BusinessConstant { ...@@ -113,7 +118,7 @@ public class BusinessConstant {
/** /**
* 一天结束时间 * 一天结束时间
*/ */
public static final String END_OF_DAY_TIME = "23:59"; public static final String END_OF_DAY_TIME = "24:00";
/** /**
* 一天开始时间 * 一天开始时间
......
...@@ -96,20 +96,6 @@ public class BaseUtils { ...@@ -96,20 +96,6 @@ public class BaseUtils {
return StringUtils.replace(UUID.randomUUID().toString(), "-", ""); return StringUtils.replace(UUID.randomUUID().toString(), "-", "");
} }
/**
* 获取月份执行周期
*
* @param date 日期
* @return {@link String}
*/
public static String getExecutionCycleForMonth(Date date) {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(DateUtil.format(DateUtil.beginOfDay(date), BusinessConstant.DATE_FORMAT_DAY_C))
.append('-')
.append(DateUtil.format(DateUtil.endOfMonth(date), BusinessConstant.DATE_FORMAT_DAY_C));
return stringBuilder.toString();
}
/** /**
* 获取周执行周期 * 获取周执行周期
* *
...@@ -134,12 +120,27 @@ public class BaseUtils { ...@@ -134,12 +120,27 @@ public class BaseUtils {
*/ */
public static String getExecutionCycleForCalibration(Date date, int offset) { public static String getExecutionCycleForCalibration(Date date, int offset) {
StringBuilder stringBuilder = new StringBuilder(); StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(DateUtil.format(DateUtil.beginOfDay(date), BusinessConstant.DATE_FORMAT_DAY_C)) stringBuilder.append(DateUtil.format(date, BusinessConstant.DATE_FORMAT_DAY_C))
.append('-') .append('-')
.append(DateUtil.format(DateUtil.offsetDay(date, offset), BusinessConstant.DATE_FORMAT_DAY_C)); .append(DateUtil.format(DateUtil.offsetDay(date, offset), BusinessConstant.DATE_FORMAT_DAY_C));
return stringBuilder.toString(); return stringBuilder.toString();
} }
/**
* 获取校准执行周期
*
* @param startDate 开始日期
* @param endDate 结束日期
* @return {@link String}
*/
public static String getExecutionCycleForCalibration(Date startDate, Date endDate) {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(DateUtil.format(startDate, BusinessConstant.DATE_FORMAT_DAY_C))
.append('-')
.append(DateUtil.format(endDate, BusinessConstant.DATE_FORMAT_DAY_C));
return stringBuilder.toString();
}
/** /**
* 获取时差分钟 * 获取时差分钟
* *
......
...@@ -18,4 +18,14 @@ public interface SystemAreaService { ...@@ -18,4 +18,14 @@ public interface SystemAreaService {
@XText("查询地区详细地址") @XText("查询地区详细地址")
XSingleResult<AddressInfoModel> getAddressInfo(XContext context, GetSysAreaInput input); XSingleResult<AddressInfoModel> getAddressInfo(XContext context, GetSysAreaInput input);
/**
* 地区Cloud服务-条件查询地区
*
* @param context 上下文
* @param input 输入
* @return {@link XSingleResult}<{@link GetSysAreaOutput}>
*/
@XText("地区Cloud服务-条件查询地区")
XSingleResult<GetSysAreaOutput> getSysAreaByParam(XContext context, GetSysAreaInput input);
} }
package pps.cloud.system.service.data; package pps.cloud.system.service.data;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 地区入参
*
* @author ZWT
* @date 2023/10/10
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class GetSysAreaInput { public class GetSysAreaInput {
private Integer id; private Integer id;
private String name; private String name;
...@@ -8,37 +24,4 @@ public class GetSysAreaInput { ...@@ -8,37 +24,4 @@ public class GetSysAreaInput {
private Integer parentId; private Integer parentId;
private Integer lev; private Integer lev;
public Integer getId() {
return this.id;
}
public void setId(Integer value) {
this.id = value;
}
public String getName() {
return this.name;
}
public void setName(String value) {
this.name = value;
}
public Integer getParentId() {
return this.parentId;
}
public void setParentId(Integer value) {
this.parentId = value;
}
public Integer getLev() {
return this.lev;
}
public void setLev(Integer value) {
this.lev = value;
}
} }
...@@ -155,4 +155,11 @@ public class SysOrganizationView implements Serializable { ...@@ -155,4 +155,11 @@ public class SysOrganizationView implements Serializable {
@XText("线路ID") @XText("线路ID")
@TableField(exist = false) @TableField(exist = false)
private String lineId; private String lineId;
/**
* 电网类型key
*/
@XText("电网类型key(字典获取)")
@TableField(exist = false)
private String gridTypeKey;
} }
package pps.core.system.service; package pps.core.system.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 org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import pps.cloud.system.service.SystemAreaService; import pps.cloud.system.service.SystemAreaService;
import pps.cloud.system.service.data.AddressInfoModel; import pps.cloud.system.service.data.AddressInfoModel;
import pps.cloud.system.service.data.GetSysAreaInput; import pps.cloud.system.service.data.GetSysAreaInput;
...@@ -20,6 +20,7 @@ import xstartup.data.XSingleResult; ...@@ -20,6 +20,7 @@ import xstartup.data.XSingleResult;
import xstartup.feature.api.annotation.XApiPost; import xstartup.feature.api.annotation.XApiPost;
import java.util.List; import java.util.List;
import java.util.Objects;
@XService @XService
public class SystemAreaServiceImpl implements SystemAreaService { public class SystemAreaServiceImpl implements SystemAreaService {
...@@ -40,33 +41,56 @@ public class SystemAreaServiceImpl implements SystemAreaService { ...@@ -40,33 +41,56 @@ public class SystemAreaServiceImpl implements SystemAreaService {
Integer sysAreaId = input.getId(); Integer sysAreaId = input.getId();
SysAreaMapper mapper = context.getBean(SysAreaMapper.class); SysAreaMapper mapper = context.getBean(SysAreaMapper.class);
AddressInfoModel model = new AddressInfoModel(); AddressInfoModel model = new AddressInfoModel();
QueryWrapper<SysAreaEnt> queryWrapper =new QueryWrapper<>(); QueryWrapper<SysAreaEnt> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(SysAreaEnt::getId,sysAreaId); queryWrapper.lambda().eq(SysAreaEnt::getId, sysAreaId);
SysAreaEnt sysAreaEnt = mapper.selectOne(queryWrapper); SysAreaEnt sysAreaEnt = mapper.selectOne(queryWrapper);
if(ObjectUtils.isNotEmpty(sysAreaEnt)){ if (ObjectUtils.isNotEmpty(sysAreaEnt)) {
if(sysAreaEnt.getLev()==0){ if (sysAreaEnt.getLev() == 0) {
model.setArea(String.valueOf(sysAreaEnt.getId())); model.setArea(String.valueOf(sysAreaEnt.getId()));
} }
while (!StringUtils.equals("0",String.valueOf(sysAreaEnt.getParentId()))){ while (!StringUtils.equals("0", String.valueOf(sysAreaEnt.getParentId()))) {
if(sysAreaEnt.getLev()==1){ if (sysAreaEnt.getLev() == 1) {
model.setProvince(String.valueOf(sysAreaEnt.getId())); model.setProvince(String.valueOf(sysAreaEnt.getId()));
} }
if(sysAreaEnt.getLev()==2){ if (sysAreaEnt.getLev() == 2) {
model.setCity(String.valueOf(sysAreaEnt.getId())); model.setCity(String.valueOf(sysAreaEnt.getId()));
} }
if(sysAreaEnt.getLev()==3){ if (sysAreaEnt.getLev() == 3) {
model.setCounty(String.valueOf(sysAreaEnt.getId())); model.setCounty(String.valueOf(sysAreaEnt.getId()));
} }
QueryWrapper<SysAreaEnt> query =new QueryWrapper<>(); QueryWrapper<SysAreaEnt> query = new QueryWrapper<>();
query.lambda().eq(SysAreaEnt::getId,sysAreaEnt.getParentId()); query.lambda().eq(SysAreaEnt::getId, sysAreaEnt.getParentId());
sysAreaEnt = mapper.selectOne(query); sysAreaEnt = mapper.selectOne(query);
if(sysAreaEnt.getLev()==0){ if (sysAreaEnt.getLev() == 0) {
model.setArea(String.valueOf(sysAreaEnt.getId())); model.setArea(String.valueOf(sysAreaEnt.getId()));
} }
} }
} }
return XSingleResult.success(model); return XSingleResult.success(model);
} }
/**
* 地区Cloud服务-条件查询地区
*
* @param context 上下文
* @param input 输入
* @return {@link XSingleResult}<{@link GetSysAreaOutput}>
*/
@XApiPost
@Override
public XSingleResult<GetSysAreaOutput> getSysAreaByParam(XContext context, GetSysAreaInput input) {
Integer id = input.getId();
String name = input.getName();
Integer parentId = input.getParentId();
SysAreaMapper mapper = context.getBean(SysAreaMapper.class);
SysAreaEnt sysAreaEnt = mapper.selectOne(new LambdaQueryWrapper<SysAreaEnt>()
.eq(Objects.nonNull(id), SysAreaEnt::getId, id)
.eq(Objects.nonNull(parentId), SysAreaEnt::getParentId, parentId)
.eq(StringUtils.isNotEmpty(name), SysAreaEnt::getName, name)
.last("LIMIT 1")
);
return XSingleResult.success(XCopyUtils.copyNewObject(sysAreaEnt, GetSysAreaOutput.class));
}
} }
...@@ -23,4 +23,10 @@ public class DynamicQuerySysOrganizationOutput { ...@@ -23,4 +23,10 @@ public class DynamicQuerySysOrganizationOutput {
@XText("线路ID") @XText("线路ID")
private String lineId; private String lineId;
/**
* 电网类型key
*/
@XText("电网类型key(字典获取)")
private String gridTypeKey;
} }
...@@ -558,6 +558,7 @@ ...@@ -558,6 +558,7 @@
<resultMap id="ExtendResultMap" type="pps.core.system.entity.SysOrganizationView" extends="BaseResultMap"> <resultMap id="ExtendResultMap" type="pps.core.system.entity.SysOrganizationView" extends="BaseResultMap">
<result column="line_id" property="lineId" jdbcType="VARCHAR"/> <result column="line_id" property="lineId" jdbcType="VARCHAR"/>
<result column="grid_type_key" property="gridTypeKey" jdbcType="VARCHAR"/>
</resultMap> </resultMap>
<select id="selectLineList" parameterType="pps.core.system.entity.SysOrganizationView" <select id="selectLineList" parameterType="pps.core.system.entity.SysOrganizationView"
...@@ -577,7 +578,8 @@ ...@@ -577,7 +578,8 @@
(SELECT o.id, (SELECT o.id,
o.ou_name AS ou_name, o.ou_name AS ou_name,
'' AS line_id, '' AS line_id,
'ORG' AS ou_level 'ORG' AS ou_level,
'' AS grid_type_key
FROM sys_organization o FROM sys_organization o
LEFT JOIN sys_organization_rel r ON o.id = r.ou_id LEFT JOIN sys_organization_rel r ON o.id = r.ou_id
WHERE r.parent_ou_id = #{id} WHERE r.parent_ou_id = #{id}
...@@ -585,7 +587,11 @@ ...@@ -585,7 +587,11 @@
AND o.is_deleted = 1 AND o.is_deleted = 1
ORDER BY r.sort) ORDER BY r.sort)
UNION ALL UNION ALL
(SELECT ou_id AS id, line_name AS ou_name, id AS line_id, 'LINE' AS ou_level (SELECT ou_id AS id,
line_name AS ou_name,
id AS line_id,
'LINE' AS ou_level,
grid_type_key
FROM base_power_line FROM base_power_line
WHERE ou_id = #{id} WHERE ou_id = #{id}
AND is_deleted = 1 AND is_deleted = 1
......
...@@ -8,6 +8,7 @@ import pps.cloud.base.service.data.base_power_line.GetBasePowerLineViewOutput; ...@@ -8,6 +8,7 @@ import pps.cloud.base.service.data.base_power_line.GetBasePowerLineViewOutput;
import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantInput; import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantInput;
import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantOutput; import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantOutput;
import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageInput; import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageInput;
import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageOutput;
import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageViewOutput; import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageViewOutput;
import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadInput; import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadInput;
import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadViewOutput; import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadViewOutput;
...@@ -82,5 +83,16 @@ public interface IBasePowerLineCloudService { ...@@ -82,5 +83,16 @@ public interface IBasePowerLineCloudService {
*/ */
@XText("输电线路配置Cloud模块--条件查询线路关联储能设备参数平均值") @XText("输电线路配置Cloud模块--条件查询线路关联储能设备参数平均值")
@XApiPost @XApiPost
XListResult<DynamicQueryBasePowerLineStorageViewOutput> queryPowerLineStorageListByLineIds(XContext context, DynamicQueryBasePowerLineStorageInput input); XListResult<DynamicQueryBasePowerLineStorageViewOutput> queryPowerLineStorageAvgByLineIds(XContext context, DynamicQueryBasePowerLineStorageInput input);
/**
* 输电线路配置Cloud模块--条件查询线路关联储能设备信息
*
* @param context 上下文
* @param input 输入
* @return {@link XListResult}<{@link DynamicQueryBasePowerLineStorageOutput}>
*/
@XText("输电线路配置Cloud模块--条件查询线路关联储能设备信息")
@XApiPost
XListResult<DynamicQueryBasePowerLineStorageOutput> queryPowerLineStorageListByLineIds(XContext context, DynamicQueryBasePowerLineStorageInput input);
} }
package pps.cloud.base.service.data.base_power_line_storage;
import lombok.Data;
import xstartup.annotation.XText;
/**
* 输电线路储能配置
*
* @author ZWT
* @date 2023/08/25
*/
@Data
public class DynamicQueryBasePowerLineStorageOutput {
@XText("线路ID")
private String lineId;
@XText("储能设备ID")
private String storageId;
}
...@@ -50,7 +50,24 @@ public class BasePhotovoltaicPlantEnt extends BaseModel implements Serializable ...@@ -50,7 +50,24 @@ public class BasePhotovoltaicPlantEnt extends BaseModel implements Serializable
@XText("组织机构name") @XText("组织机构name")
@TableField @TableField
private String ouName; private String ouName;
@XText("光伏设备规格型号name(字典获取)") @XText("光伏设备规格型号name(字典获取)")
@TableField @TableField
private String photovoltaicModelName; private String photovoltaicModelName;
@XText("经度(°)")
@TableField
private BigDecimal longitude;
@XText("纬度(°)")
@TableField
private BigDecimal latitude;
@XText("高程(m)")
@TableField
private BigDecimal elevation;
@XText("地区编码")
@TableField
private Integer areaCode;
} }
...@@ -48,6 +48,7 @@ public class BasePhotovoltaicPlantView extends BaseModel implements Serializable ...@@ -48,6 +48,7 @@ public class BasePhotovoltaicPlantView extends BaseModel implements Serializable
@XText("组织机构name") @XText("组织机构name")
@TableField @TableField
private String ouName; private String ouName;
@XText("光伏设备规格型号name(字典获取)") @XText("光伏设备规格型号name(字典获取)")
@TableField @TableField
private String photovoltaicModelName; private String photovoltaicModelName;
...@@ -59,4 +60,20 @@ public class BasePhotovoltaicPlantView extends BaseModel implements Serializable ...@@ -59,4 +60,20 @@ public class BasePhotovoltaicPlantView extends BaseModel implements Serializable
@XText("所属省份") @XText("所属省份")
@TableField(exist = false) @TableField(exist = false)
private String provinceCode; private String provinceCode;
@XText("经度(°)")
@TableField
private BigDecimal longitude;
@XText("纬度(°)")
@TableField
private BigDecimal latitude;
@XText("高程(m)")
@TableField
private BigDecimal elevation;
@XText("地区编码")
@TableField
private Integer areaCode;
} }
...@@ -5,9 +5,17 @@ import pps.core.base.entity.BasePhotovoltaicPlantView; ...@@ -5,9 +5,17 @@ import pps.core.base.entity.BasePhotovoltaicPlantView;
import java.util.List; import java.util.List;
@Repository(value="pps.core.base.mapper.BasePhotovoltaicPlantViewMapper") /**
* 光伏电站
*
* @author ZWT
* @date 2023/10/10
*/
@Repository(value = "pps.core.base.mapper.BasePhotovoltaicPlantViewMapper")
public interface BasePhotovoltaicPlantViewMapper { public interface BasePhotovoltaicPlantViewMapper {
BasePhotovoltaicPlantView selectOne(BasePhotovoltaicPlantView record); BasePhotovoltaicPlantView selectOne(BasePhotovoltaicPlantView record);
List<BasePhotovoltaicPlantView> selectList(BasePhotovoltaicPlantView record); List<BasePhotovoltaicPlantView> selectList(BasePhotovoltaicPlantView record);
List<BasePhotovoltaicPlantView> selectPlantDetailList(BasePhotovoltaicPlantView record); List<BasePhotovoltaicPlantView> selectPlantDetailList(BasePhotovoltaicPlantView record);
} }
...@@ -131,7 +131,7 @@ public class BaseDieselGeneratorService { ...@@ -131,7 +131,7 @@ public class BaseDieselGeneratorService {
QueryWrapper<BaseDieselGeneratorEnt> queryWrapper = new QueryWrapper<>(); QueryWrapper<BaseDieselGeneratorEnt> queryWrapper = new QueryWrapper<>();
if (StringUtils.isNotEmpty(input.getLineId())) { if (StringUtils.isNotEmpty(input.getLineId())) {
queryWrapper.lambda() queryWrapper.lambda()
.notExists("SELECT 1 FROM base_power_line_diesel w WHERE base_diesel_generator.id = w.diesel_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId()) .notExists(!StringUtils.equals(BusinessConstant.LINE_FLAG_ID, input.getLineId()), "SELECT 1 FROM base_power_line_diesel w WHERE base_diesel_generator.id = w.diesel_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId())
.eq(BaseDieselGeneratorEnt::getOuId, input.getOuId()); .eq(BaseDieselGeneratorEnt::getOuId, input.getOuId());
} else { } else {
List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId()); List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId());
......
...@@ -131,7 +131,7 @@ public class BaseEnergyStorageDeviceService { ...@@ -131,7 +131,7 @@ public class BaseEnergyStorageDeviceService {
QueryWrapper<BaseEnergyStorageDeviceEnt> queryWrapper = new QueryWrapper<>(); QueryWrapper<BaseEnergyStorageDeviceEnt> queryWrapper = new QueryWrapper<>();
if (StringUtils.isNotEmpty(input.getLineId())) { if (StringUtils.isNotEmpty(input.getLineId())) {
queryWrapper.lambda() queryWrapper.lambda()
.notExists("SELECT 1 FROM base_power_line_storage w WHERE base_energy_storage_device.id = w.storage_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId()) .notExists(!StringUtils.equals(BusinessConstant.LINE_FLAG_ID, input.getLineId()), "SELECT 1 FROM base_power_line_storage w WHERE base_energy_storage_device.id = w.storage_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId())
.eq(BaseEnergyStorageDeviceEnt::getOuId, input.getOuId()); .eq(BaseEnergyStorageDeviceEnt::getOuId, input.getOuId());
} else { } else {
List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId()); List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId());
......
...@@ -5,6 +5,9 @@ import cn.hutool.core.util.StrUtil; ...@@ -5,6 +5,9 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 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 org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import pps.cloud.system.service.SystemAreaService;
import pps.cloud.system.service.data.GetSysAreaInput;
import pps.cloud.system.service.data.GetSysAreaOutput;
import pps.core.base.entity.BasePhotovoltaicPlantEnt; import pps.core.base.entity.BasePhotovoltaicPlantEnt;
import pps.core.base.entity.BasePowerLineEnt; import pps.core.base.entity.BasePowerLineEnt;
import pps.core.base.entity.BasePowerLinePlantEnt; import pps.core.base.entity.BasePowerLinePlantEnt;
...@@ -39,6 +42,7 @@ import xstartup.helper.XTransactionHelper; ...@@ -39,6 +42,7 @@ import xstartup.helper.XTransactionHelper;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.Optional;
/** /**
...@@ -50,33 +54,53 @@ import java.util.Objects; ...@@ -50,33 +54,53 @@ import java.util.Objects;
@XService @XService
public class BasePhotovoltaicPlantService { public class BasePhotovoltaicPlantService {
@XText("新增") /**
* 光伏电站模块--新增
* POST /base/base-photovoltaic-plant/create-base-photovoltaic-plant
* 接口ID:105466278
* 接口地址:https://app.apifox.com/project/3196988/apis/api-105466278
*
* @param context 上下文
* @param input 输入
* @return {@link XServiceResult}
*/
@XText("光伏电站模块--新增")
@XApiAnonymous @XApiAnonymous
@XApiPost @XApiPost
public XServiceResult createBasePhotovoltaicPlant(XContext context, CreateBasePhotovoltaicPlantInput input) { public XServiceResult createBasePhotovoltaicPlant(XContext context, CreateBasePhotovoltaicPlantInput input) {
PpsUserSession session = context.getSession(PpsUserSession.class);
BasePhotovoltaicPlantEnt entity = XCopyUtils.copyNewObject(input, BasePhotovoltaicPlantEnt.class);
BaseUtils.setBaseModelDefault(entity, session);
return XTransactionHelper.begin(context, () -> { return XTransactionHelper.begin(context, () -> {
BasePhotovoltaicPlantMapper mapper = context.getBean(BasePhotovoltaicPlantMapper.class); BasePhotovoltaicPlantMapper mapper = context.getBean(BasePhotovoltaicPlantMapper.class);
BasePhotovoltaicPlantEnt entity = XCopyUtils.copyNewObject(input, BasePhotovoltaicPlantEnt.class);
PpsUserSession session = context.getSession(PpsUserSession.class);
BaseUtils.setBaseModelDefault(entity, session);
mapper.insert(entity); mapper.insert(entity);
return XServiceResult.OK; return XServiceResult.OK;
}); });
} }
@XText("更新") /**
* 光伏电站模块--修改
* POST /base/base-photovoltaic-plant/update-base-photovoltaic-plant
* 接口ID:105466279
* 接口地址:https://app.apifox.com/project/3196988/apis/api-105466279
*
* @param context 上下文
* @param input 输入
* @return {@link XServiceResult}
*/
@XText("光伏电站模块--修改")
@XApiAnonymous @XApiAnonymous
@XApiPost @XApiPost
public XServiceResult updateBasePhotovoltaicPlant(XContext context, UpdateBasePhotovoltaicPlantInput input) { public XServiceResult updateBasePhotovoltaicPlant(XContext context, UpdateBasePhotovoltaicPlantInput input) {
PpsUserSession session = context.getSession(PpsUserSession.class);
BasePhotovoltaicPlantMapper mapper = context.getBean(BasePhotovoltaicPlantMapper.class);
BasePhotovoltaicPlantEnt entity = this.selectOneByPlantId(input.getId(), mapper);
if (Objects.isNull(entity)) {
return XServiceResult.error(context, XError.NotFound);
}
XCopyUtils.copyObject(input, entity);
BaseUtils.setBaseModelDefault(entity, session);
return XTransactionHelper.begin(context, () -> { return XTransactionHelper.begin(context, () -> {
BasePhotovoltaicPlantMapper mapper = context.getBean(BasePhotovoltaicPlantMapper.class);
BasePhotovoltaicPlantEnt entity = this.selectOneByPlantId(input.getId(), mapper);
if (Objects.isNull(entity)) {
return XServiceResult.error(context, XError.NotFound);
}
XCopyUtils.copyObject(input, entity);
PpsUserSession session = context.getSession(PpsUserSession.class);
BaseUtils.setBaseModelDefault(entity, session);
mapper.updateById(entity); mapper.updateById(entity);
return XServiceResult.OK; return XServiceResult.OK;
}); });
...@@ -106,7 +130,17 @@ public class BasePhotovoltaicPlantService { ...@@ -106,7 +130,17 @@ public class BasePhotovoltaicPlantService {
}); });
} }
@XText("根据id获取详情") /**
* 光伏电站模块--详情
* GET /base/base-photovoltaic-plant/get-base-photovoltaic-plant
* 接口ID:105466276
* 接口地址:https://app.apifox.com/project/3196988/apis/api-105466276
*
* @param context 上下文
* @param input 输入
* @return {@link XSingleResult}<{@link GetBasePhotovoltaicPlantOutput}>
*/
@XText("光伏电站模块--详情")
@XApiAnonymous @XApiAnonymous
@XApiGet @XApiGet
public XSingleResult<GetBasePhotovoltaicPlantOutput> getBasePhotovoltaicPlant(XContext context, GetBasePhotovoltaicPlantInput input) { public XSingleResult<GetBasePhotovoltaicPlantOutput> getBasePhotovoltaicPlant(XContext context, GetBasePhotovoltaicPlantInput input) {
...@@ -124,11 +158,16 @@ public class BasePhotovoltaicPlantService { ...@@ -124,11 +158,16 @@ public class BasePhotovoltaicPlantService {
if (Objects.nonNull(organizationView)) { if (Objects.nonNull(organizationView)) {
output.setProvince(organizationView.getProvinceName()); output.setProvince(organizationView.getProvinceName());
} }
output.setAreaName(Optional.ofNullable(this.getSysAreaInfo(context, GetSysAreaInput.builder()
.id(entity.getAreaCode())
.build()))
.map(GetSysAreaOutput::getName)
.orElse(null));
return XSingleResult.success(output); return XSingleResult.success(output);
} }
/** /**
* 分页查询 * 光伏电站模块--分页查询
* GET /base/base-photovoltaic-plant/query-base-photovoltaic-plant * GET /base/base-photovoltaic-plant/query-base-photovoltaic-plant
* 接口ID:105466277 * 接口ID:105466277
* 接口地址:https://app.apifox.com/project/3196988/apis/api-105466277 * 接口地址:https://app.apifox.com/project/3196988/apis/api-105466277
...@@ -137,7 +176,7 @@ public class BasePhotovoltaicPlantService { ...@@ -137,7 +176,7 @@ public class BasePhotovoltaicPlantService {
* @param input 输入 * @param input 输入
* @return {@link XPageResult}<{@link QueryBasePhotovoltaicPlantOutput}> * @return {@link XPageResult}<{@link QueryBasePhotovoltaicPlantOutput}>
*/ */
@XText("分页查询") @XText("光伏电站模块--分页查询")
@XApiAnonymous @XApiAnonymous
@XApiGet @XApiGet
public XPageResult<QueryBasePhotovoltaicPlantOutput> queryBasePhotovoltaicPlant(XContext context, QueryBasePhotovoltaicPlantInput input) { public XPageResult<QueryBasePhotovoltaicPlantOutput> queryBasePhotovoltaicPlant(XContext context, QueryBasePhotovoltaicPlantInput input) {
...@@ -146,7 +185,7 @@ public class BasePhotovoltaicPlantService { ...@@ -146,7 +185,7 @@ public class BasePhotovoltaicPlantService {
QueryWrapper<BasePhotovoltaicPlantEnt> queryWrapper = new QueryWrapper<>(); QueryWrapper<BasePhotovoltaicPlantEnt> queryWrapper = new QueryWrapper<>();
if (StringUtils.isNotEmpty(input.getLineId())) { if (StringUtils.isNotEmpty(input.getLineId())) {
queryWrapper.lambda() queryWrapper.lambda()
.notExists("SELECT 1 FROM base_power_line_plant w WHERE base_photovoltaic_plant.id = w.plant_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId()) .notExists(!StringUtils.equals(BusinessConstant.LINE_FLAG_ID, input.getLineId()), "SELECT 1 FROM base_power_line_plant w WHERE base_photovoltaic_plant.id = w.plant_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId())
.eq(BasePhotovoltaicPlantEnt::getOuId, input.getOuId()); .eq(BasePhotovoltaicPlantEnt::getOuId, input.getOuId());
} else { } else {
List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId()); List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId());
...@@ -230,4 +269,18 @@ public class BasePhotovoltaicPlantService { ...@@ -230,4 +269,18 @@ public class BasePhotovoltaicPlantService {
return mapper.selectOne(new LambdaQueryWrapper<BasePhotovoltaicPlantEnt>() return mapper.selectOne(new LambdaQueryWrapper<BasePhotovoltaicPlantEnt>()
.eq(BaseModel::getId, plantId)); .eq(BaseModel::getId, plantId));
} }
/**
* 获取系统区域信息
*
* @param context 上下文
* @param input 输入
* @return {@link GetSysAreaOutput}
*/
private GetSysAreaOutput getSysAreaInfo(XContext context, GetSysAreaInput input) {
SystemAreaService systemAreaService = context.getBean(SystemAreaService.class);
XSingleResult<GetSysAreaOutput> singleResult = systemAreaService.getSysAreaByParam(context, input);
singleResult.throwIfFail();
return singleResult.getResult();
}
} }
...@@ -11,17 +11,12 @@ import pps.cloud.base.service.data.base_power_line.GetBasePowerLineViewOutput; ...@@ -11,17 +11,12 @@ import pps.cloud.base.service.data.base_power_line.GetBasePowerLineViewOutput;
import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantInput; import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantInput;
import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantOutput; import pps.cloud.base.service.data.base_power_line_plant.DynamicQueryBasePowerLinePlantOutput;
import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageInput; import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageInput;
import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageOutput;
import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageViewOutput; import pps.cloud.base.service.data.base_power_line_storage.DynamicQueryBasePowerLineStorageViewOutput;
import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadInput; import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadInput;
import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadViewOutput; import pps.cloud.base.service.data.base_power_line_wellhead.DynamicQueryBasePowerLineWellheadViewOutput;
import pps.core.base.entity.BasePowerLineEnt; import pps.core.base.entity.*;
import pps.core.base.entity.BasePowerLinePlantEnt; import pps.core.base.mapper.*;
import pps.core.base.entity.BasePowerLineStorageView;
import pps.core.base.entity.BasePowerLineWellheadView;
import pps.core.base.mapper.BasePowerLineMapper;
import pps.core.base.mapper.BasePowerLinePlantMapper;
import pps.core.base.mapper.BasePowerLineStorageViewMapper;
import pps.core.base.mapper.BasePowerLineWellheadViewMapper;
import pps.core.common.constant.BusinessConstant; import pps.core.common.constant.BusinessConstant;
import pps.core.common.entity.BaseModel; import pps.core.common.entity.BaseModel;
import xstartup.annotation.XService; import xstartup.annotation.XService;
...@@ -30,7 +25,6 @@ import xstartup.base.util.XCopyUtils; ...@@ -30,7 +25,6 @@ import xstartup.base.util.XCopyUtils;
import xstartup.data.XListResult; import xstartup.data.XListResult;
import xstartup.data.XSingleResult; import xstartup.data.XSingleResult;
import java.util.ArrayList;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
...@@ -56,8 +50,7 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService ...@@ -56,8 +50,7 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService
BasePowerLineEnt entity = mapper.selectOne(new LambdaQueryWrapper<BasePowerLineEnt>() BasePowerLineEnt entity = mapper.selectOne(new LambdaQueryWrapper<BasePowerLineEnt>()
.eq(BaseModel::getId, input.getId()) .eq(BaseModel::getId, input.getId())
); );
GetBasePowerLineViewOutput output = XCopyUtils.copyNewObject(entity, GetBasePowerLineViewOutput.class); return XSingleResult.success(XCopyUtils.copyNewObject(entity, GetBasePowerLineViewOutput.class));
return XSingleResult.success(output);
} }
/** /**
...@@ -90,8 +83,7 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService ...@@ -90,8 +83,7 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService
.eq(StringUtils.isNotBlank(strategyId), BasePowerLineEnt::getStrategyId, strategyId) .eq(StringUtils.isNotBlank(strategyId), BasePowerLineEnt::getStrategyId, strategyId)
.orderByDesc(BaseModel::getModifyTime) .orderByDesc(BaseModel::getModifyTime)
); );
List<DynamicQueryBasePowerLineOutput> lineOutputList = XCopyUtils.copyNewList(selectList, DynamicQueryBasePowerLineOutput.class); return XListResult.success(XCopyUtils.copyNewList(selectList, DynamicQueryBasePowerLineOutput.class));
return XListResult.success(lineOutputList);
} }
/** /**
...@@ -110,13 +102,7 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService ...@@ -110,13 +102,7 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService
.wellheadIds(input.getWellheadIds()) .wellheadIds(input.getWellheadIds())
.build() .build()
); );
List<DynamicQueryBasePowerLineWellheadViewOutput> outputs; return XListResult.success(XCopyUtils.copyNewList(wellheadViews, DynamicQueryBasePowerLineWellheadViewOutput.class));
if (CollUtil.isEmpty(wellheadViews)) {
outputs = new ArrayList<>(0);
} else {
outputs = XCopyUtils.copyNewList(wellheadViews, DynamicQueryBasePowerLineWellheadViewOutput.class);
}
return XListResult.success(outputs);
} }
/** /**
...@@ -137,16 +123,10 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService ...@@ -137,16 +123,10 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService
.eq(StringUtils.isNotBlank(plantId), BasePowerLinePlantEnt::getPlantId, plantId) .eq(StringUtils.isNotBlank(plantId), BasePowerLinePlantEnt::getPlantId, plantId)
.in(CollUtil.isNotEmpty(lineIds), BasePowerLinePlantEnt::getLineId, lineIds) .in(CollUtil.isNotEmpty(lineIds), BasePowerLinePlantEnt::getLineId, lineIds)
); );
List<DynamicQueryBasePowerLinePlantOutput> outputs; return XListResult.success(XCopyUtils.copyNewList(
if (CollUtil.isEmpty(list)) { list,
outputs = new ArrayList<>(0); DynamicQueryBasePowerLinePlantOutput.class
} else { ));
outputs = XCopyUtils.copyNewList(
list,
DynamicQueryBasePowerLinePlantOutput.class
);
}
return XListResult.success(outputs);
} }
/** /**
...@@ -157,18 +137,32 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService ...@@ -157,18 +137,32 @@ public class BasePowerLineCloudServiceImpl implements IBasePowerLineCloudService
* @return {@link XListResult}<{@link DynamicQueryBasePowerLineStorageViewOutput}> * @return {@link XListResult}<{@link DynamicQueryBasePowerLineStorageViewOutput}>
*/ */
@Override @Override
public XListResult<DynamicQueryBasePowerLineStorageViewOutput> queryPowerLineStorageListByLineIds(XContext context, DynamicQueryBasePowerLineStorageInput input) { public XListResult<DynamicQueryBasePowerLineStorageViewOutput> queryPowerLineStorageAvgByLineIds(XContext context, DynamicQueryBasePowerLineStorageInput input) {
BasePowerLineStorageViewMapper mapper = context.getBean(BasePowerLineStorageViewMapper.class); BasePowerLineStorageViewMapper mapper = context.getBean(BasePowerLineStorageViewMapper.class);
List<BasePowerLineStorageView> list = mapper.selectStorageAverageByLineIds(input.getLineIds()); List<BasePowerLineStorageView> list = mapper.selectStorageAverageByLineIds(input.getLineIds());
List<DynamicQueryBasePowerLineStorageViewOutput> outputs; return XListResult.success(XCopyUtils.copyNewList(
if (CollUtil.isEmpty(list)) { list,
outputs = new ArrayList<>(0); DynamicQueryBasePowerLineStorageViewOutput.class
} else { ));
outputs = XCopyUtils.copyNewList( }
list,
DynamicQueryBasePowerLineStorageViewOutput.class /**
); * 输电线路配置Cloud模块--条件查询线路关联储能设备信息
} *
return XListResult.success(outputs); * @param context 上下文
* @param input 输入
* @return {@link XListResult}<{@link DynamicQueryBasePowerLineStorageOutput}>
*/
@Override
public XListResult<DynamicQueryBasePowerLineStorageOutput> queryPowerLineStorageListByLineIds(XContext context, DynamicQueryBasePowerLineStorageInput input) {
BasePowerLineStorageMapper storageMapper = context.getBean(BasePowerLineStorageMapper.class);
List<BasePowerLineStorageEnt> list = storageMapper.selectList(new LambdaQueryWrapper<BasePowerLineStorageEnt>()
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.in(BasePowerLineStorageEnt::getLineId, input.getLineIds())
);
return XListResult.success(XCopyUtils.copyNewList(
list,
DynamicQueryBasePowerLineStorageOutput.class
));
} }
} }
\ No newline at end of file
package pps.core.base.service; package pps.core.base.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.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
...@@ -187,41 +186,43 @@ public class BasePriceStrategyService { ...@@ -187,41 +186,43 @@ public class BasePriceStrategyService {
public XSingleResult<GetBasePriceStrategyOutput> getBasePriceStrategy(XContext context, GetBasePriceStrategyInput input) { public XSingleResult<GetBasePriceStrategyOutput> getBasePriceStrategy(XContext context, GetBasePriceStrategyInput input) {
BasePriceStrategyMapper mapper = context.getBean(BasePriceStrategyMapper.class); BasePriceStrategyMapper mapper = context.getBean(BasePriceStrategyMapper.class);
String strategyId = input.getId(); String strategyId = input.getId();
QueryWrapper<BasePriceStrategyEnt> queryWrapper = new QueryWrapper<>(); BasePriceStrategyEnt entity = mapper.selectOne(new LambdaQueryWrapper<BasePriceStrategyEnt>()
queryWrapper.lambda()
.select(BasePriceStrategyEnt::getId, .select(BasePriceStrategyEnt::getId,
BasePriceStrategyEnt::getPolicyName, BasePriceStrategyEnt::getPolicyName,
BasePriceStrategyEnt::getAreaCode, BasePriceStrategyEnt::getAreaCode,
BasePriceStrategyEnt::getStrategyYear, BasePriceStrategyEnt::getStrategyYear,
BasePriceStrategyEnt::getIsFixedPrice, BasePriceStrategyEnt::getIsFixedPrice,
BasePriceStrategyEnt::getFixedElectricityPrice) BasePriceStrategyEnt::getFixedElectricityPrice)
.eq(BasePriceStrategyEnt::getId, strategyId); .eq(BasePriceStrategyEnt::getId, strategyId)
BasePriceStrategyEnt entity = mapper.selectOne(queryWrapper); .eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
);
if (Objects.isNull(entity)) { if (Objects.isNull(entity)) {
return XSingleResult.error(context, XError.NotFound); return XSingleResult.error(context, XError.NotFound);
} }
GetBasePriceStrategyOutput output = XCopyUtils.copyNewObject(entity, GetBasePriceStrategyOutput.class); GetBasePriceStrategyOutput output = XCopyUtils.copyNewObject(entity, GetBasePriceStrategyOutput.class);
//查月份 //查月份
BasePriceStrategyMonthMapper monthMapper = context.getBean(BasePriceStrategyMonthMapper.class); BasePriceStrategyMonthMapper monthMapper = context.getBean(BasePriceStrategyMonthMapper.class);
List<BasePriceStrategyMonthEnt> monthEntList = monthMapper.selectList(new QueryWrapper<BasePriceStrategyMonthEnt>() List<BasePriceStrategyMonthEnt> monthEntList = monthMapper.selectList(new LambdaQueryWrapper<BasePriceStrategyMonthEnt>()
.lambda()
.select(BasePriceStrategyMonthEnt::getId, BasePriceStrategyMonthEnt::getStrategyMonth) .select(BasePriceStrategyMonthEnt::getId, BasePriceStrategyMonthEnt::getStrategyMonth)
.eq(BasePriceStrategyMonthEnt::getStrategyId, strategyId) .eq(BasePriceStrategyMonthEnt::getStrategyId, strategyId)
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.last(" ORDER BY strategy_month + 0 ") .last(" ORDER BY strategy_month + 0 ")
); );
if (CollUtil.isNotEmpty(monthEntList)) { if (CollUtil.isNotEmpty(monthEntList)) {
List<GetBasePriceStrategyMonthOutput> months = XCopyUtils.copyNewList(monthEntList, GetBasePriceStrategyMonthOutput.class); List<GetBasePriceStrategyMonthOutput> months = XCopyUtils.copyNewList(monthEntList, GetBasePriceStrategyMonthOutput.class);
//查明细 //查明细
BasePriceStrategyDetailMapper detailMapper = context.getBean(BasePriceStrategyDetailMapper.class); BasePriceStrategyDetailMapper detailMapper = context.getBean(BasePriceStrategyDetailMapper.class);
List<BasePriceStrategyDetailEnt> detailEntList = detailMapper.selectList(new QueryWrapper<BasePriceStrategyDetailEnt>() List<BasePriceStrategyDetailEnt> detailEntList = detailMapper.selectList(new LambdaQueryWrapper<BasePriceStrategyDetailEnt>()
.lambda()
.select(BasePriceStrategyDetailEnt::getStrategyMonth, .select(BasePriceStrategyDetailEnt::getStrategyMonth,
BasePriceStrategyDetailEnt::getPeriodTypeKey, BasePriceStrategyDetailEnt::getPeriodTypeKey,
BasePriceStrategyDetailEnt::getStartTime, BasePriceStrategyDetailEnt::getStartTime,
BasePriceStrategyDetailEnt::getEndTime, BasePriceStrategyDetailEnt::getEndTime,
BasePriceStrategyDetailEnt::getElectrovalence, BasePriceStrategyDetailEnt::getElectrovalence,
BasePriceStrategyDetailEnt::getInternalSettlementPrice) BasePriceStrategyDetailEnt::getInternalSettlementPrice)
.eq(BasePriceStrategyDetailEnt::getStrategyId, strategyId)); .eq(BasePriceStrategyDetailEnt::getStrategyId, strategyId)
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.orderByAsc(BasePriceStrategyDetailEnt::getStartTime)
);
if (CollUtil.isNotEmpty(detailEntList)) { if (CollUtil.isNotEmpty(detailEntList)) {
Map<String, String> dictMap = ServiceUtil.getDictMap(context, BusinessConstant.TIME_FRAME); Map<String, String> dictMap = ServiceUtil.getDictMap(context, BusinessConstant.TIME_FRAME);
List<GetBasePriceStrategyDetailOutput> detailOutputs = XCopyUtils.copyNewList(detailEntList, GetBasePriceStrategyDetailOutput.class); List<GetBasePriceStrategyDetailOutput> detailOutputs = XCopyUtils.copyNewList(detailEntList, GetBasePriceStrategyDetailOutput.class);
......
...@@ -134,7 +134,7 @@ public class BaseWellheadService { ...@@ -134,7 +134,7 @@ public class BaseWellheadService {
QueryWrapper<BaseWellheadEnt> queryWrapper = new QueryWrapper<>(); QueryWrapper<BaseWellheadEnt> queryWrapper = new QueryWrapper<>();
if (StringUtils.isNotEmpty(input.getLineId())) { if (StringUtils.isNotEmpty(input.getLineId())) {
queryWrapper.lambda() queryWrapper.lambda()
.notExists("SELECT 1 FROM base_power_line_wellhead w WHERE base_wellhead.id = w.wellhead_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId()) .notExists(!StringUtils.equals(BusinessConstant.LINE_FLAG_ID, input.getLineId()), "SELECT 1 FROM base_power_line_wellhead w WHERE base_wellhead.id = w.wellhead_id AND w.is_deleted = 1 AND w.line_id <> {0}", input.getLineId())
.eq(BaseWellheadEnt::getOuId, input.getOuId()); .eq(BaseWellheadEnt::getOuId, input.getOuId());
} else { } else {
List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId()); List<String> allListByOuId = ServiceUtil.getOrgIdsByPath(context, input.getOuId());
......
...@@ -5,6 +5,12 @@ import xstartup.annotation.XText; ...@@ -5,6 +5,12 @@ import xstartup.annotation.XText;
import java.math.BigDecimal; import java.math.BigDecimal;
/**
* 光伏电站
*
* @author ZWT
* @date 2023/10/10
*/
@Data @Data
public class CreateBasePhotovoltaicPlantInput { public class CreateBasePhotovoltaicPlantInput {
...@@ -28,9 +34,22 @@ public class CreateBasePhotovoltaicPlantInput { ...@@ -28,9 +34,22 @@ public class CreateBasePhotovoltaicPlantInput {
@XText("阵列朝向") @XText("阵列朝向")
private BigDecimal arrayOrientation; private BigDecimal arrayOrientation;
@XText("组织机构name") @XText("组织机构name")
private String ouName; private String ouName;
@XText("光伏设备规格型号name(字典获取)") @XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName; private String photovoltaicModelName;
@XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
@XText("高程(m)")
private BigDecimal elevation;
@XText("地区编码")
private Integer areaCode;
} }
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class CreateBasePhotovoltaicPlantOutput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
...@@ -2,9 +2,10 @@ package pps.core.base.service.data.base_photovoltaic_plant; ...@@ -2,9 +2,10 @@ package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data; import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
@Data @Data
public class DeleteBasePhotovoltaicPlantInput { public class DeleteBasePhotovoltaicPlantInput {
@XText("ID") @XText("ID")
private String id; private String id;
}
} \ No newline at end of file
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class DeleteBasePhotovoltaicPlantOutput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class DynamicQueryBasePhotovoltaicPlantInput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class DynamicQueryBasePhotovoltaicPlantOutput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class DynamicQueryBasePhotovoltaicPlantViewOutput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
...@@ -2,11 +2,10 @@ package pps.core.base.service.data.base_photovoltaic_plant; ...@@ -2,11 +2,10 @@ package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data; import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
@Data @Data
public class GetBasePhotovoltaicPlantInput { public class GetBasePhotovoltaicPlantInput {
@XText("ID") @XText("ID")
private String id; private String id;
}
\ No newline at end of file
}
...@@ -4,34 +4,19 @@ import lombok.Data; ...@@ -4,34 +4,19 @@ import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
/**
* 光伏电站
*
* @author ZWT
* @date 2023/10/10
*/
@Data @Data
public class GetBasePhotovoltaicPlantOutput { public class GetBasePhotovoltaicPlantOutput {
@XText("ID") @XText("ID")
private String id; private String id;
@XText("是否删除(1_是;0_否)")
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;
...@@ -62,4 +47,18 @@ public class GetBasePhotovoltaicPlantOutput { ...@@ -62,4 +47,18 @@ public class GetBasePhotovoltaicPlantOutput {
@XText("所在地区") @XText("所在地区")
private String province; private String province;
@XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
@XText("高程(m)")
private BigDecimal elevation;
@XText("地区编码")
private Integer areaCode;
@XText("地区名称")
private String areaName;
} }
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class GetBasePhotovoltaicPlantViewInput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class GetBasePhotovoltaicPlantViewOutput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
package pps.core.base.service.data.base_photovoltaic_plant; package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
@Data
public class GetSysOrganizationAndPlantViewOutput { public class GetSysOrganizationAndPlantViewOutput {
@XText("主键") @XText("主键")
private String id; private String id;
...@@ -62,6 +64,7 @@ public class GetSysOrganizationAndPlantViewOutput { ...@@ -62,6 +64,7 @@ public class GetSysOrganizationAndPlantViewOutput {
@XText("父级id") @XText("父级id")
private String parentOuId; private String parentOuId;
private String type; private String type;
@XText("经度") @XText("经度")
...@@ -73,187 +76,6 @@ public class GetSysOrganizationAndPlantViewOutput { ...@@ -73,187 +76,6 @@ public class GetSysOrganizationAndPlantViewOutput {
@XText("高程") @XText("高程")
private BigDecimal elevation; private BigDecimal elevation;
public BigDecimal getLongitude() { @XText("地区编码")
return longitude; private Integer areaCode;
}
public void setLongitude(BigDecimal longitude) {
this.longitude = longitude;
}
public BigDecimal getLatitude() {
return latitude;
}
public void setLatitude(BigDecimal latitude) {
this.latitude = latitude;
}
public BigDecimal getElevation() {
return elevation;
}
public void setElevation(BigDecimal elevation) {
this.elevation = elevation;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public String getOuCode() {
return this.ouCode;
}
public void setOuCode(String value) {
this.ouCode = value;
}
public String getOuName() {
return this.ouName;
}
public void setOuName(String value) {
this.ouName = value;
}
public String getShortName() {
return this.shortName;
}
public void setShortName(String value) {
this.shortName = value;
}
public String getOuLevel() {
return this.ouLevel;
}
public void setOuLevel(String value) {
this.ouLevel = value;
}
public String getDescription() {
return this.description;
}
public void setDescription(String value) {
this.description = 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 getPostCode() {
return this.postCode;
}
public void setPostCode(String value) {
this.postCode = value;
}
public String getPostAddress() {
return this.postAddress;
}
public void setPostAddress(String value) {
this.postAddress = value;
}
public String getFaxNo() {
return this.faxNo;
}
public void setFaxNo(String value) {
this.faxNo = value;
}
public String getPhone() {
return this.phone;
}
public void setPhone(String value) {
this.phone = value;
}
public String getCountry() {
return this.country;
}
public void setCountry(String value) {
this.country = value;
}
public Integer getProvince() {
return this.province;
}
public void setProvince(Integer value) {
this.province = value;
}
public String getParentOuId() {
return parentOuId;
}
public void setParentOuId(String parentOuId) {
this.parentOuId = parentOuId;
}
} }
...@@ -46,4 +46,16 @@ public class QueryBasePhotovoltaicPlantInput extends XPageInput { ...@@ -46,4 +46,16 @@ public class QueryBasePhotovoltaicPlantInput extends XPageInput {
@XText("线路ID") @XText("线路ID")
private String lineId; private String lineId;
@XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
@XText("高程(m)")
private BigDecimal elevation;
@XText("地区编码")
private Integer areaCode;
} }
...@@ -43,4 +43,16 @@ public class QueryBasePhotovoltaicPlantOutput { ...@@ -43,4 +43,16 @@ public class QueryBasePhotovoltaicPlantOutput {
@XText("光伏设备规格型号name(字典获取)") @XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName; private String photovoltaicModelName;
@XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
@XText("高程(m)")
private BigDecimal elevation;
@XText("地区编码")
private Integer areaCode;
} }
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import xstartup.base.data.XPageInput;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class QueryBasePhotovoltaicPlantViewInput extends XPageInput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import xstartup.base.data.XPageInput;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class QueryBasePhotovoltaicPlantViewOutput extends XPageInput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
...@@ -4,8 +4,16 @@ import lombok.Data; ...@@ -4,8 +4,16 @@ import lombok.Data;
import xstartup.annotation.XText; import xstartup.annotation.XText;
import java.math.BigDecimal; import java.math.BigDecimal;
/**
* 光伏电站
*
* @author ZWT
* @date 2023/10/10
*/
@Data @Data
public class UpdateBasePhotovoltaicPlantInput { public class UpdateBasePhotovoltaicPlantInput {
@XText("ID") @XText("ID")
private String id; private String id;
...@@ -32,7 +40,19 @@ public class UpdateBasePhotovoltaicPlantInput { ...@@ -32,7 +40,19 @@ public class UpdateBasePhotovoltaicPlantInput {
@XText("组织机构name") @XText("组织机构name")
private String ouName; private String ouName;
@XText("光伏设备规格型号name(字典获取)") @XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName; private String photovoltaicModelName;
} @XText("经度(°)")
private BigDecimal longitude;
@XText("纬度(°)")
private BigDecimal latitude;
@XText("高程(m)")
private BigDecimal elevation;
@XText("地区编码")
private Integer areaCode;
}
\ No newline at end of file
package pps.core.base.service.data.base_photovoltaic_plant;
import lombok.Data;
import xstartup.annotation.XText;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class UpdateBasePhotovoltaicPlantOutput {
@XText("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")
private String ouId;
@XText("电站名称")
private String stationName;
@XText("出厂编号")
private String makerNumber;
@XText("光伏设备规格型号key(字典获取)")
private String photovoltaicModelKey;
@XText("安装倾角")
private BigDecimal mountingAngle;
@XText("装机总量(KWP)")
private BigDecimal totalPower;
@XText("阵列朝向")
private BigDecimal arrayOrientation;
@XText("组织机构name")
private String ouName;
@XText("光伏设备规格型号name(字典获取)")
private String photovoltaicModelName;
}
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pps.core.base.mapper.BasePhotovoltaicPlantViewMapper"> <mapper namespace="pps.core.base.mapper.BasePhotovoltaicPlantViewMapper">
<resultMap id="BaseResultMap" type="pps.core.base.entity.BasePhotovoltaicPlantView"> <resultMap id="BaseResultMap" type="pps.core.base.entity.BasePhotovoltaicPlantView">
<id column="id" property="id" jdbcType="VARCHAR" /> <id column="id" property="id" jdbcType="VARCHAR"/>
<result column="is_deleted" property="isDeleted" jdbcType="INTEGER" /> <result column="is_deleted" property="isDeleted" jdbcType="INTEGER"/>
<result column="create_by_id" property="createById" jdbcType="VARCHAR" /> <result column="create_by_id" property="createById" jdbcType="VARCHAR"/>
<result column="create_by_name" property="createByName" jdbcType="VARCHAR" /> <result column="create_by_name" property="createByName" jdbcType="VARCHAR"/>
<result column="create_time" property="createTime" jdbcType="DATE" /> <result column="create_time" property="createTime" jdbcType="DATE"/>
<result column="modify_by_id" property="modifyById" jdbcType="VARCHAR" /> <result column="modify_by_id" property="modifyById" jdbcType="VARCHAR"/>
<result column="modify_by_name" property="modifyByName" jdbcType="VARCHAR" /> <result column="modify_by_name" property="modifyByName" jdbcType="VARCHAR"/>
<result column="modify_time" property="modifyTime" jdbcType="DATE" /> <result column="modify_time" property="modifyTime" jdbcType="DATE"/>
<result column="ou_id" property="ouId" jdbcType="VARCHAR" /> <result column="ou_id" property="ouId" jdbcType="VARCHAR"/>
<result column="ou_name" property="ouName" jdbcType="VARCHAR" /> <result column="ou_name" property="ouName" jdbcType="VARCHAR"/>
<result column="station_name" property="stationName" jdbcType="VARCHAR" /> <result column="station_name" property="stationName" jdbcType="VARCHAR"/>
<result column="maker_number" property="makerNumber" jdbcType="VARCHAR" /> <result column="maker_number" property="makerNumber" jdbcType="VARCHAR"/>
<result column="photovoltaic_model_key" property="photovoltaicModelKey" jdbcType="VARCHAR" /> <result column="photovoltaic_model_key" property="photovoltaicModelKey" jdbcType="VARCHAR"/>
<result column="photovoltaic_model_name" property="photovoltaicModelName" jdbcType="VARCHAR" /> <result column="photovoltaic_model_name" property="photovoltaicModelName" jdbcType="VARCHAR"/>
<result column="mounting_angle" property="mountingAngle" jdbcType="DECIMAL" /> <result column="mounting_angle" property="mountingAngle" jdbcType="DECIMAL"/>
<result column="total_power" property="totalPower" jdbcType="DECIMAL" /> <result column="total_power" property="totalPower" jdbcType="DECIMAL"/>
<result column="array_orientation" property="arrayOrientation" jdbcType="DECIMAL" /> <result column="array_orientation" property="arrayOrientation" jdbcType="DECIMAL"/>
<result column="city_code" property="cityCode" jdbcType="VARCHAR" /> <result column="city_code" property="cityCode" jdbcType="VARCHAR"/>
<result column="province_code" property="provinceCode" jdbcType="VARCHAR" /> <result column="province_code" property="provinceCode" jdbcType="VARCHAR"/>
</resultMap> <result column="longitude" property="longitude" jdbcType="DECIMAL"/>
<sql id="Base_Column_List"> <result column="latitude" property="latitude" jdbcType="DECIMAL"/>
id, <result column="elevation" property="elevation" jdbcType="DECIMAL"/>
<result column="area_code" property="areaCode" jdbcType="INTEGER"/>
</resultMap>
<sql id="Base_Column_List">
id
,
is_deleted, is_deleted,
create_by_id, create_by_id,
create_by_name, create_by_name,
...@@ -39,48 +44,50 @@ ...@@ -39,48 +44,50 @@
photovoltaic_model_name, photovoltaic_model_name,
mounting_angle, mounting_angle,
total_power, total_power,
array_orientation array_orientation,
</sql> longitude,
<select id="selectOne" parameterType="pps.core.base.entity.BasePhotovoltaicPlantView" resultMap="BaseResultMap"> latitude,
select elevation,
<include refid="Base_Column_List" /> area_code
from base_photovoltaic_plant </sql>
where <select id="selectOne" parameterType="pps.core.base.entity.BasePhotovoltaicPlantView" resultMap="BaseResultMap">
id=#{id} select
</select> <include refid="Base_Column_List"/>
<select id="selectList" parameterType="pps.core.base.entity.BasePhotovoltaicPlantView" resultMap="BaseResultMap"> from base_photovoltaic_plant
select where
<include refid="Base_Column_List" /> id=#{id}
from base_photovoltaic_plant </select>
where <select id="selectList" parameterType="pps.core.base.entity.BasePhotovoltaicPlantView" resultMap="BaseResultMap">
id=#{id} select
</select> <include refid="Base_Column_List"/>
<select id="selectPlantDetailList" parameterType="pps.core.base.entity.BasePhotovoltaicPlantView" resultMap="BaseResultMap"> from base_photovoltaic_plant
select where
p.id, id=#{id}
p.is_deleted, </select>
p.create_by_id, <select id="selectPlantDetailList" parameterType="pps.core.base.entity.BasePhotovoltaicPlantView"
p.create_by_name, resultMap="BaseResultMap">
p.create_time, select p.id,
p.modify_by_id, p.is_deleted,
p.modify_by_name, p.create_by_id,
p.modify_time, p.create_by_name,
p.ou_id, p.create_time,
p.ou_name, p.modify_by_id,
p.station_name, p.modify_by_name,
p.maker_number, p.modify_time,
p.photovoltaic_model_key, p.ou_id,
p.photovoltaic_model_name, p.ou_name,
p.mounting_angle, p.station_name,
p.total_power, p.maker_number,
p.array_orientation , p.photovoltaic_model_key,
sa.city_code , p.photovoltaic_model_name,
sa.province_code p.mounting_angle,
from p.total_power,
base_photovoltaic_plant p p.array_orientation,
join sys_organization so on so.id = p.ou_id sa.city_code,
left join sys_area sa on sa.id = so.province sa.province_code
where from base_photovoltaic_plant p
p.is_deleted = #{isDeleted} join sys_organization so on so.id = p.ou_id
</select> left join sys_area sa on sa.id = so.province
where p.is_deleted = #{isDeleted}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
AND l.wellhead_id = #{wellheadId} AND l.wellhead_id = #{wellheadId}
</if> </if>
ORDER BY ORDER BY
l.create_time ASC l.start_seq ASC
</select> </select>
<select id="selectWellheadListByParam" parameterType="pps.core.base.entity.BasePowerLineWellheadView" <select id="selectWellheadListByParam" parameterType="pps.core.base.entity.BasePowerLineWellheadView"
......
...@@ -29,4 +29,8 @@ public class SpaceOptimizeLongWellheadEnt extends BaseModel implements Serializa ...@@ -29,4 +29,8 @@ public class SpaceOptimizeLongWellheadEnt extends BaseModel implements Serializa
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -27,4 +27,8 @@ public class SpaceOptimizeLongWellheadView extends BaseModel implements Serializ ...@@ -27,4 +27,8 @@ public class SpaceOptimizeLongWellheadView extends BaseModel implements Serializ
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -29,4 +29,8 @@ public class SpaceOptimizeMidWellheadEnt extends BaseModel implements Serializab ...@@ -29,4 +29,8 @@ public class SpaceOptimizeMidWellheadEnt extends BaseModel implements Serializab
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -27,4 +27,8 @@ public class SpaceOptimizeMidWellheadView extends BaseModel implements Serializa ...@@ -27,4 +27,8 @@ public class SpaceOptimizeMidWellheadView extends BaseModel implements Serializa
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -29,4 +29,8 @@ public class SpaceOptimizeShortWellheadEnt extends BaseModel implements Serializ ...@@ -29,4 +29,8 @@ public class SpaceOptimizeShortWellheadEnt extends BaseModel implements Serializ
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -33,4 +33,8 @@ public class SpaceOptimizeShortWellheadView extends BaseModel implements Seriali ...@@ -33,4 +33,8 @@ public class SpaceOptimizeShortWellheadView extends BaseModel implements Seriali
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -27,4 +27,8 @@ public class SpaceOptimizeWellheadDTO extends BaseModel implements Serializable ...@@ -27,4 +27,8 @@ public class SpaceOptimizeWellheadDTO extends BaseModel implements Serializable
@XText("井号") @XText("井号")
@TableField @TableField
private String wellNumber; private String wellNumber;
@XText("启动顺序")
@TableField
private Integer startSeq;
} }
...@@ -18,6 +18,7 @@ public enum BusinessError implements XError { ...@@ -18,6 +18,7 @@ public enum BusinessError implements XError {
UnableToOptimize(2106, "无法优化"), UnableToOptimize(2106, "无法优化"),
LackOfHistoryRecord(2107, "缺少历史记录"), LackOfHistoryRecord(2107, "缺少历史记录"),
CannotBeDeleted(2108, "基础制度无法删除"), CannotBeDeleted(2108, "基础制度无法删除"),
Expired(2109, "已过期,无法重新校准"),
; ;
private int code; private int code;
......
...@@ -271,7 +271,7 @@ public class SpaceCalibrationService { ...@@ -271,7 +271,7 @@ public class SpaceCalibrationService {
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE) .eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.eq(SpaceOptimizeMidPeriodEnt::getInstitutionId, historyEnt.getInstitutionId()) .eq(SpaceOptimizeMidPeriodEnt::getInstitutionId, historyEnt.getInstitutionId())
.ge(SpaceOptimizeMidPeriodEnt::getOptimizeDeadline, inputDate) .ge(SpaceOptimizeMidPeriodEnt::getOptimizeDeadline, inputDate)
.le(BaseModel::getCreateTime, inputDate) .apply("DATE_FORMAT( create_time, '%Y-%m-%d' ) <= {0}", inputDate)
.orderByDesc(BaseModel::getCreateTime) .orderByDesc(BaseModel::getCreateTime)
.last("LIMIT 1") .last("LIMIT 1")
); );
...@@ -291,7 +291,7 @@ public class SpaceCalibrationService { ...@@ -291,7 +291,7 @@ public class SpaceCalibrationService {
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE) .eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.eq(SpaceOptimizeLongPeriodEnt::getInstitutionId, historyEnt.getInstitutionId()) .eq(SpaceOptimizeLongPeriodEnt::getInstitutionId, historyEnt.getInstitutionId())
.ge(SpaceOptimizeLongPeriodEnt::getOptimizeDeadline, inputDate) .ge(SpaceOptimizeLongPeriodEnt::getOptimizeDeadline, inputDate)
.le(BaseModel::getCreateTime, inputDate) .apply("DATE_FORMAT( create_time, '%Y-%m-%d' ) <= {0}", inputDate)
.orderByDesc(BaseModel::getCreateTime) .orderByDesc(BaseModel::getCreateTime)
.last("LIMIT 1") .last("LIMIT 1")
); );
......
...@@ -20,6 +20,7 @@ import xstartup.data.XServiceResult; ...@@ -20,6 +20,7 @@ import xstartup.data.XServiceResult;
import xstartup.helper.XTransactionHelper; import xstartup.helper.XTransactionHelper;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
...@@ -61,12 +62,15 @@ public class SpaceOptimizeLongCloudServiceImpl extends SpaceOptimizeBaseService ...@@ -61,12 +62,15 @@ public class SpaceOptimizeLongCloudServiceImpl extends SpaceOptimizeBaseService
List<SpaceOptimizeWellheadDTO> wellheadDTOList = new ArrayList<>(64); List<SpaceOptimizeWellheadDTO> wellheadDTOList = new ArrayList<>(64);
List<SpaceOptimizeDurationDTO> durationDTOList = new ArrayList<>(128); List<SpaceOptimizeDurationDTO> durationDTOList = new ArrayList<>(128);
List<SpaceOptimizeDurationDTO> unOptimizeDurationList = new ArrayList<>(128); List<SpaceOptimizeDurationDTO> unOptimizeDurationList = new ArrayList<>(128);
String executionCycleForMonth = BaseUtils.getExecutionCycleForMonth(date);
DateTime optimizeDeadline = DateUtil.endOfMonth(date);
//优化 //优化
for (SpaceInstitutionDetailEnt detail : detailEntList) { for (SpaceInstitutionDetailEnt detail : detailEntList) {
Date institutionEndDate = detail.getInstitutionEndDate();
DateTime optimizeDeadline = DateUtil.endOfMonth(date);
if (optimizeDeadline.compareTo(institutionEndDate) > 0) {
optimizeDeadline = DateUtil.endOfDay(institutionEndDate);
}
//创建记录 //创建记录
String periodId = super.createOptimizePeriod(periodDTOList, detail.getId(), detail.getLineId(), executionCycleForMonth, optimizeDeadline); String periodId = super.createOptimizePeriod(periodDTOList, detail.getId(), detail.getLineId(), BaseUtils.getExecutionCycleForCalibration(date, optimizeDeadline), optimizeDeadline);
switch (detail.getGridTypeKey()) { switch (detail.getGridTypeKey()) {
//并网型优化 //并网型优化
case "1": case "1":
...@@ -84,7 +88,7 @@ public class SpaceOptimizeLongCloudServiceImpl extends SpaceOptimizeBaseService ...@@ -84,7 +88,7 @@ public class SpaceOptimizeLongCloudServiceImpl extends SpaceOptimizeBaseService
super.offGridOptimization(context, wellheadDTOList, durationDTOList, unOptimizeDurationList, relation.getWellheadsByInstitutionIdIdMap().get(detail.getId()), super.offGridOptimization(context, wellheadDTOList, durationDTOList, unOptimizeDurationList, relation.getWellheadsByInstitutionIdIdMap().get(detail.getId()),
relation.getStorageAvgMap(), detail, periodId, relation.getStorageAvgMap(), detail, periodId,
DynamicQueryStoragePredictedPowerInput.builder() DynamicQueryStoragePredictedPowerInput.builder()
.storageIds(relation.getPlantIdsByLineIdMap().get(detail.getLineId())) .storageIds(relation.getStorageIdsByLineIdMap().get(detail.getLineId()))
.yearTime(String.valueOf(lastYear)) .yearTime(String.valueOf(lastYear))
.monthTime(lastMonth) .monthTime(lastMonth)
.build(), .build(),
......
...@@ -97,7 +97,6 @@ public class SpaceOptimizeLongPeriodService extends SpaceOptimizeBaseService { ...@@ -97,7 +97,6 @@ public class SpaceOptimizeLongPeriodService extends SpaceOptimizeBaseService {
return XSingleResult.error(context, XError.NotFound); return XSingleResult.error(context, XError.NotFound);
} }
GetSpaceOptimizeLongPeriodViewOutput output = XCopyUtils.copyNewObject(period, GetSpaceOptimizeLongPeriodViewOutput.class); GetSpaceOptimizeLongPeriodViewOutput output = XCopyUtils.copyNewObject(period, GetSpaceOptimizeLongPeriodViewOutput.class);
output.setDateList(ServiceUtil.getOptimizeDateList(period.getCreateTime(), period.getOptimizeDeadline()));
//查间开制度详情 //查间开制度详情
SpaceInstitutionDetailMapper detailMapper = context.getBean(SpaceInstitutionDetailMapper.class); SpaceInstitutionDetailMapper detailMapper = context.getBean(SpaceInstitutionDetailMapper.class);
SpaceInstitutionDetailEnt detailEnt = detailMapper.selectById(period.getInstitutionId()); SpaceInstitutionDetailEnt detailEnt = detailMapper.selectById(period.getInstitutionId());
...@@ -113,12 +112,18 @@ public class SpaceOptimizeLongPeriodService extends SpaceOptimizeBaseService { ...@@ -113,12 +112,18 @@ public class SpaceOptimizeLongPeriodService extends SpaceOptimizeBaseService {
} else { } else {
output.setStrategyDetailList(new ArrayList<>(0)); output.setStrategyDetailList(new ArrayList<>(0));
} }
DateTime beginOfMonth = DateUtil.beginOfMonth(period.getOptimizeDeadline());
if (beginOfMonth.compareTo(detailEnt.getInstitutionStartDate()) < 0) {
beginOfMonth = DateUtil.date(detailEnt.getInstitutionStartDate());
}
output.setDateList(ServiceUtil.getOptimizeDateList(beginOfMonth, period.getOptimizeDeadline()));
output.setGridTypeKey(detailEnt.getGridTypeKey()); output.setGridTypeKey(detailEnt.getGridTypeKey());
//查井口列表 //查井口列表
SpaceOptimizeLongWellheadMapper wellheadMapper = context.getBean(SpaceOptimizeLongWellheadMapper.class); SpaceOptimizeLongWellheadMapper wellheadMapper = context.getBean(SpaceOptimizeLongWellheadMapper.class);
List<SpaceOptimizeLongWellheadEnt> wellheadList = wellheadMapper.selectList(new LambdaQueryWrapper<SpaceOptimizeLongWellheadEnt>() List<SpaceOptimizeLongWellheadEnt> wellheadList = wellheadMapper.selectList(new LambdaQueryWrapper<SpaceOptimizeLongWellheadEnt>()
.eq(SpaceOptimizeLongWellheadEnt::getLongPeriodId, longPeriodId) .eq(SpaceOptimizeLongWellheadEnt::getLongPeriodId, longPeriodId)
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE) .eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.orderByAsc(SpaceOptimizeLongWellheadEnt::getStartSeq)
); );
if (CollUtil.isNotEmpty(wellheadList)) { if (CollUtil.isNotEmpty(wellheadList)) {
List<GetSpaceOptimizeLongWellheadOutput> wellheadOutputs = XCopyUtils.copyNewList(wellheadList, GetSpaceOptimizeLongWellheadOutput.class); List<GetSpaceOptimizeLongWellheadOutput> wellheadOutputs = XCopyUtils.copyNewList(wellheadList, GetSpaceOptimizeLongWellheadOutput.class);
......
...@@ -20,6 +20,7 @@ import xstartup.data.XServiceResult; ...@@ -20,6 +20,7 @@ import xstartup.data.XServiceResult;
import xstartup.helper.XTransactionHelper; import xstartup.helper.XTransactionHelper;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
...@@ -53,14 +54,18 @@ public class SpaceOptimizeMidCloudServiceImpl extends SpaceOptimizeBaseService i ...@@ -53,14 +54,18 @@ public class SpaceOptimizeMidCloudServiceImpl extends SpaceOptimizeBaseService i
List<SpaceOptimizeDurationDTO> durationDTOList = new ArrayList<>(128); List<SpaceOptimizeDurationDTO> durationDTOList = new ArrayList<>(128);
List<SpaceOptimizeDurationDTO> unOptimizeDurationList = new ArrayList<>(128); List<SpaceOptimizeDurationDTO> unOptimizeDurationList = new ArrayList<>(128);
String executionCycleForWeek = BaseUtils.getExecutionCycleForWeek(date); String executionCycleForWeek = BaseUtils.getExecutionCycleForWeek(date);
//优化截止日期
DateTime optimizeDeadline = DateUtil.endOfWeek(date);
//日期查询范围结束条件,下周一 //日期查询范围结束条件,下周一
String nextWeek = DateUtil.beginOfWeek(DateUtil.nextWeek()).toString(BusinessConstant.DATE_FORMAT_DAY); String nextWeek = DateUtil.beginOfWeek(DateUtil.nextWeek()).toString(BusinessConstant.DATE_FORMAT_DAY);
//优化 //优化
for (SpaceInstitutionDetailEnt detail : detailEntList) { for (SpaceInstitutionDetailEnt detail : detailEntList) {
String detailId = detail.getId(); String detailId = detail.getId();
String lineId = detail.getLineId(); String lineId = detail.getLineId();
Date institutionEndDate = detail.getInstitutionEndDate();
//优化截止日期
DateTime optimizeDeadline = DateUtil.endOfWeek(date);
if (optimizeDeadline.compareTo(institutionEndDate) > 0) {
optimizeDeadline = DateUtil.endOfDay(institutionEndDate);
}
//创建记录 //创建记录
String periodId = super.createOptimizePeriod(periodDTOList, detailId, lineId, executionCycleForWeek, optimizeDeadline); String periodId = super.createOptimizePeriod(periodDTOList, detailId, lineId, executionCycleForWeek, optimizeDeadline);
switch (detail.getGridTypeKey()) { switch (detail.getGridTypeKey()) {
...@@ -81,7 +86,7 @@ public class SpaceOptimizeMidCloudServiceImpl extends SpaceOptimizeBaseService i ...@@ -81,7 +86,7 @@ public class SpaceOptimizeMidCloudServiceImpl extends SpaceOptimizeBaseService i
super.offGridOptimization(context, wellheadDTOList, durationDTOList, unOptimizeDurationList, super.offGridOptimization(context, wellheadDTOList, durationDTOList, unOptimizeDurationList,
relation.getWellheadsByInstitutionIdIdMap().get(detail.getId()), relation.getStorageAvgMap(), detail, periodId, relation.getWellheadsByInstitutionIdIdMap().get(detail.getId()), relation.getStorageAvgMap(), detail, periodId,
DynamicQueryStoragePredictedPowerInput.builder() DynamicQueryStoragePredictedPowerInput.builder()
.storageIds(relation.getPlantIdsByLineIdMap().get(detail.getLineId())) .storageIds(relation.getStorageIdsByLineIdMap().get(detail.getLineId()))
.startTime(DateUtil.beginOfWeek(lastWeek).toString(BusinessConstant.DATE_FORMAT_DAY)) .startTime(DateUtil.beginOfWeek(lastWeek).toString(BusinessConstant.DATE_FORMAT_DAY))
.endTime(DateUtil.endOfWeek(lastWeek).toString(BusinessConstant.DATE_FORMAT_DAY)) .endTime(DateUtil.endOfWeek(lastWeek).toString(BusinessConstant.DATE_FORMAT_DAY))
.build(), .build(),
......
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.date.DateTime;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
...@@ -95,7 +96,6 @@ public class SpaceOptimizeMidPeriodService extends SpaceOptimizeBaseService { ...@@ -95,7 +96,6 @@ public class SpaceOptimizeMidPeriodService extends SpaceOptimizeBaseService {
return XSingleResult.error(context, XError.NotFound); return XSingleResult.error(context, XError.NotFound);
} }
GetSpaceOptimizeMidPeriodViewOutput output = XCopyUtils.copyNewObject(period, GetSpaceOptimizeMidPeriodViewOutput.class); GetSpaceOptimizeMidPeriodViewOutput output = XCopyUtils.copyNewObject(period, GetSpaceOptimizeMidPeriodViewOutput.class);
output.setDateList(ServiceUtil.getOptimizeDateList(period.getCreateTime(), period.getOptimizeDeadline()));
//查间开制度详情 //查间开制度详情
SpaceInstitutionDetailMapper detailMapper = context.getBean(SpaceInstitutionDetailMapper.class); SpaceInstitutionDetailMapper detailMapper = context.getBean(SpaceInstitutionDetailMapper.class);
SpaceInstitutionDetailEnt detailEnt = detailMapper.selectById(period.getInstitutionId()); SpaceInstitutionDetailEnt detailEnt = detailMapper.selectById(period.getInstitutionId());
...@@ -111,12 +111,18 @@ public class SpaceOptimizeMidPeriodService extends SpaceOptimizeBaseService { ...@@ -111,12 +111,18 @@ public class SpaceOptimizeMidPeriodService extends SpaceOptimizeBaseService {
} else { } else {
output.setStrategyDetailList(new ArrayList<>(0)); output.setStrategyDetailList(new ArrayList<>(0));
} }
DateTime beginOfWeek = DateUtil.beginOfWeek(period.getOptimizeDeadline());
if (beginOfWeek.compareTo(detailEnt.getInstitutionStartDate()) < 0) {
beginOfWeek = DateUtil.date(detailEnt.getInstitutionStartDate());
}
output.setDateList(ServiceUtil.getOptimizeDateList(beginOfWeek, period.getOptimizeDeadline()));
output.setGridTypeKey(detailEnt.getGridTypeKey()); output.setGridTypeKey(detailEnt.getGridTypeKey());
//查井口列表 //查井口列表
SpaceOptimizeMidWellheadMapper wellheadMapper = context.getBean(SpaceOptimizeMidWellheadMapper.class); SpaceOptimizeMidWellheadMapper wellheadMapper = context.getBean(SpaceOptimizeMidWellheadMapper.class);
List<SpaceOptimizeMidWellheadEnt> wellheadList = wellheadMapper.selectList(new LambdaQueryWrapper<SpaceOptimizeMidWellheadEnt>() List<SpaceOptimizeMidWellheadEnt> wellheadList = wellheadMapper.selectList(new LambdaQueryWrapper<SpaceOptimizeMidWellheadEnt>()
.eq(SpaceOptimizeMidWellheadEnt::getMidPeriodId, midPeriodId) .eq(SpaceOptimizeMidWellheadEnt::getMidPeriodId, midPeriodId)
.eq(BaseModel::getIsDeleted, BusinessConstant.ONE) .eq(BaseModel::getIsDeleted, BusinessConstant.ONE)
.orderByAsc(SpaceOptimizeMidWellheadEnt::getStartSeq)
); );
if (CollUtil.isNotEmpty(wellheadList)) { if (CollUtil.isNotEmpty(wellheadList)) {
List<GetSpaceOptimizeMidWellheadOutput> wellheadOutputs = XCopyUtils.copyNewList(wellheadList, GetSpaceOptimizeMidWellheadOutput.class); List<GetSpaceOptimizeMidWellheadOutput> wellheadOutputs = XCopyUtils.copyNewList(wellheadList, GetSpaceOptimizeMidWellheadOutput.class);
......
...@@ -107,7 +107,7 @@ public class SpaceOptimizeShortCloudServiceImpl extends SpaceOptimizeBaseService ...@@ -107,7 +107,7 @@ public class SpaceOptimizeShortCloudServiceImpl extends SpaceOptimizeBaseService
if (CollUtil.isNotEmpty(unOptimizeWellheadList)) { if (CollUtil.isNotEmpty(unOptimizeWellheadList)) {
for (SpaceInstitutionWellheadEnt wellhead : unOptimizeWellheadList) { for (SpaceInstitutionWellheadEnt wellhead : unOptimizeWellheadList) {
String wellheadId = wellhead.getWellheadId(); String wellheadId = wellhead.getWellheadId();
String recordId = super.createOptimizeWellhead(wellheadDTOList, periodId, wellheadId, wellhead.getWellNumber()); String recordId = super.createOptimizeWellhead(wellheadDTOList, periodId, wellheadId, wellhead.getWellNumber(), wellhead.getStartSeq());
switch (wellhead.getIntervalTypeKey()) { switch (wellhead.getIntervalTypeKey()) {
//小间开(不优化) //小间开(不优化)
case "0": case "0":
...@@ -166,7 +166,7 @@ public class SpaceOptimizeShortCloudServiceImpl extends SpaceOptimizeBaseService ...@@ -166,7 +166,7 @@ public class SpaceOptimizeShortCloudServiceImpl extends SpaceOptimizeBaseService
} }
for (SpaceInstitutionWellheadEnt wellhead : needToOptimizeWellheadList) { for (SpaceInstitutionWellheadEnt wellhead : needToOptimizeWellheadList) {
String wellheadId = wellhead.getWellheadId(); String wellheadId = wellhead.getWellheadId();
String recordId = super.createOptimizeWellhead(wellheadDTOList, periodId, wellheadId, wellhead.getWellNumber()); String recordId = super.createOptimizeWellhead(wellheadDTOList, periodId, wellheadId, wellhead.getWellNumber(), wellhead.getStartSeq());
if (!durationListMap.containsKey(wellheadId)) { if (!durationListMap.containsKey(wellheadId)) {
continue; continue;
} }
......
...@@ -36,4 +36,9 @@ public class SpaceOptimizeLineRelation { ...@@ -36,4 +36,9 @@ public class SpaceOptimizeLineRelation {
* 储能设备参数平均值Map * 储能设备参数平均值Map
*/ */
Map<String, List<DynamicQueryBasePowerLineStorageViewOutput>> storageAvgMap; Map<String, List<DynamicQueryBasePowerLineStorageViewOutput>> storageAvgMap;
/**
* 储能设备Map
*/
Map<String, List<String>> storageIdsByLineIdMap;
} }
...@@ -48,4 +48,10 @@ public class UpdateSpaceInstitutionDetailInput { ...@@ -48,4 +48,10 @@ public class UpdateSpaceInstitutionDetailInput {
*/ */
@XText("间开制度井口配置") @XText("间开制度井口配置")
List<UpdateSpaceInstitutionWellheadInput> wellheadList; List<UpdateSpaceInstitutionWellheadInput> wellheadList;
/**
* 校准历史ID
*/
@XText("校准历史ID")
private String historyId;
} }
...@@ -221,7 +221,7 @@ public class ServiceUtil { ...@@ -221,7 +221,7 @@ public class ServiceUtil {
} }
} }
if (i == last) { if (i == last) {
//如果结束时间不是23:59,初始化最终关井时间 //如果结束时间不是24:00,初始化最终关井时间
if (!StringUtils.equals(BusinessConstant.END_OF_DAY_TIME, closeWellTime)) { if (!StringUtils.equals(BusinessConstant.END_OF_DAY_TIME, closeWellTime)) {
allList.add( allList.add(
SpaceOptimizeDateDuration.builder() SpaceOptimizeDateDuration.builder()
......
...@@ -83,6 +83,7 @@ ...@@ -83,6 +83,7 @@
start_interval start_interval
FROM space_institution_detail FROM space_institution_detail
WHERE is_current_basic = 0 WHERE is_current_basic = 0
AND is_deleted = 1
AND ou_id = #{ouId}), AND ou_id = #{ouId}),
long_period long_period
AS (SELECT row_number() over ( PARTITION BY institution_id ORDER BY optimize_deadline DESC ) AS line_number,id, AS (SELECT row_number() over ( PARTITION BY institution_id ORDER BY optimize_deadline DESC ) AS line_number,id,
...@@ -91,7 +92,8 @@ ...@@ -91,7 +92,8 @@
optimize_state, optimize_state,
optimize_deadline optimize_deadline
FROM space_optimize_long_period FROM space_optimize_long_period
WHERE institution_id IN (SELECT id FROM institution_detail)), WHERE institution_id IN (SELECT id FROM institution_detail)
AND is_deleted = 1),
mid_period mid_period
AS (SELECT row_number() over ( PARTITION BY institution_id ORDER BY optimize_deadline DESC ) AS line_number,id, AS (SELECT row_number() over ( PARTITION BY institution_id ORDER BY optimize_deadline DESC ) AS line_number,id,
institution_id, institution_id,
...@@ -99,7 +101,8 @@ ...@@ -99,7 +101,8 @@
optimize_state, optimize_state,
optimize_deadline optimize_deadline
FROM space_optimize_mid_period FROM space_optimize_mid_period
WHERE institution_id IN (SELECT id FROM institution_detail)) WHERE institution_id IN (SELECT id FROM institution_detail)
AND is_deleted = 1)
SELECT d.id, SELECT d.id,
d.ou_id, d.ou_id,
d.line_id, d.line_id,
......
...@@ -110,9 +110,9 @@ ...@@ -110,9 +110,9 @@
wellhead_id, wellhead_id,
well_number, well_number,
run_type_key, run_type_key,
interval_type_key, IFNULL( interval_type_key, '999' ) AS interval_type_key,
interval_describe, interval_describe,
start_seq, IFNULL( start_seq, 0 ) AS start_seq,
open_well_day, open_well_day,
close_well_day, close_well_day,
run_duration run_duration
......
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
JOIN space_optimize_long_period p ON d.id = p.institution_id JOIN space_optimize_long_period p ON d.id = p.institution_id
WHERE p.is_deleted = 1 WHERE p.is_deleted = 1
AND p.line_id = #{lineId} AND p.line_id = #{lineId}
ORDER BY p.optimize_deadline DESC ORDER BY p.create_time DESC
</select> </select>
<insert id="batchInsertList" parameterType="list"> <insert id="batchInsertList" parameterType="list">
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
<result column="long_period_id" property="longPeriodId" jdbcType="VARCHAR"/> <result column="long_period_id" property="longPeriodId" jdbcType="VARCHAR"/>
<result column="wellhead_id" property="wellheadId" jdbcType="VARCHAR"/> <result column="wellhead_id" property="wellheadId" jdbcType="VARCHAR"/>
<result column="well_number" property="wellNumber" jdbcType="VARCHAR"/> <result column="well_number" property="wellNumber" jdbcType="VARCHAR"/>
<result column="start_seq" property="startSeq" jdbcType="INTEGER"/>
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id id
...@@ -26,7 +27,8 @@ ...@@ -26,7 +27,8 @@
modify_time, modify_time,
long_period_id, long_period_id,
wellhead_id, wellhead_id,
well_number well_number,
start_seq
</sql> </sql>
<select id="selectOne" parameterType="pps.core.space.entity.SpaceOptimizeLongWellheadView" <select id="selectOne" parameterType="pps.core.space.entity.SpaceOptimizeLongWellheadView"
resultMap="BaseResultMap"> resultMap="BaseResultMap">
......
...@@ -60,6 +60,6 @@ ...@@ -60,6 +60,6 @@
JOIN space_optimize_mid_period p ON d.id = p.institution_id JOIN space_optimize_mid_period p ON d.id = p.institution_id
WHERE p.is_deleted = 1 WHERE p.is_deleted = 1
AND p.line_id = #{lineId} AND p.line_id = #{lineId}
ORDER BY p.optimize_deadline DESC ORDER BY p.create_time DESC
</select> </select>
</mapper> </mapper>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pps.core.space.mapper.SpaceOptimizeMidWellheadViewMapper">
<resultMap id="BaseResultMap" type="pps.core.space.entity.SpaceOptimizeMidWellheadView">
<id column="id" property="id" jdbcType="VARCHAR"/>
<result column="is_deleted" property="isDeleted" jdbcType="INTEGER"/>
<result column="create_by_id" property="createById" jdbcType="VARCHAR"/>
<result column="create_by_name" property="createByName" jdbcType="VARCHAR"/>
<result column="create_time" property="createTime" jdbcType="DATE"/>
<result column="modify_by_id" property="modifyById" jdbcType="VARCHAR"/>
<result column="modify_by_name" property="modifyByName" jdbcType="VARCHAR"/>
<result column="modify_time" property="modifyTime" jdbcType="DATE"/>
<result column="mid_period_id" property="midPeriodId" jdbcType="VARCHAR"/>
<result column="wellhead_id" property="wellheadId" jdbcType="VARCHAR"/>
<result column="well_number" property="wellNumber" jdbcType="VARCHAR"/>
<result column="start_seq" property="startSeq" jdbcType="INTEGER"/>
</resultMap>
<sql id="Base_Column_List">
id
,
is_deleted,
create_by_id,
create_by_name,
create_time,
modify_by_id,
modify_by_name,
modify_time,
mid_period_id,
wellhead_id,
well_number,
start_seq
</sql>
<select id="selectOne" parameterType="pps.core.space.entity.SpaceOptimizeMidWellheadView" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from space_optimize_mid_wellhead
where
id=#{id}
</select>
<select id="selectList" parameterType="pps.core.space.entity.SpaceOptimizeMidWellheadView"
resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from space_optimize_mid_wellhead
where
id=#{id}
</select>
</mapper>
\ No newline at end of file
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
<result column="short_period_id" property="shortPeriodId" jdbcType="VARCHAR"/> <result column="short_period_id" property="shortPeriodId" jdbcType="VARCHAR"/>
<result column="wellhead_id" property="wellheadId" jdbcType="VARCHAR"/> <result column="wellhead_id" property="wellheadId" jdbcType="VARCHAR"/>
<result column="well_number" property="wellNumber" jdbcType="VARCHAR"/> <result column="well_number" property="wellNumber" jdbcType="VARCHAR"/>
<result column="start_seq" property="startSeq" jdbcType="INTEGER"/>
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id id
...@@ -26,7 +27,8 @@ ...@@ -26,7 +27,8 @@
modify_time, modify_time,
short_period_id, short_period_id,
wellhead_id, wellhead_id,
well_number well_number,
start_seq
</sql> </sql>
<select id="selectOne" parameterType="pps.core.space.entity.SpaceOptimizeShortWellheadView" <select id="selectOne" parameterType="pps.core.space.entity.SpaceOptimizeShortWellheadView"
resultMap="BaseResultMap"> resultMap="BaseResultMap">
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<insert id="longWellheadBatchInsertList" parameterType="list"> <insert id="longWellheadBatchInsertList" parameterType="list">
INSERT INTO space_optimize_long_wellhead ( id, create_by_id, create_by_name, create_time, INSERT INTO space_optimize_long_wellhead ( id, create_by_id, create_by_name, create_time,
modify_by_id, modify_by_name, modify_time, long_period_id, wellhead_id, well_number ) modify_by_id, modify_by_name, modify_time, long_period_id, wellhead_id, well_number, start_seq)
VALUES VALUES
<foreach collection="list" item="item" separator=","> <foreach collection="list" item="item" separator=",">
( (
...@@ -40,7 +40,8 @@ ...@@ -40,7 +40,8 @@
#{item.modifyTime}, #{item.modifyTime},
#{item.periodId}, #{item.periodId},
#{item.wellheadId}, #{item.wellheadId},
#{item.wellNumber} #{item.wellNumber},
#{item.startSeq}
) )
</foreach> </foreach>
</insert> </insert>
...@@ -115,7 +116,7 @@ ...@@ -115,7 +116,7 @@
<insert id="midWellheadBatchInsertList" parameterType="list"> <insert id="midWellheadBatchInsertList" parameterType="list">
INSERT INTO space_optimize_mid_wellhead ( id, create_by_id, create_by_name, create_time, INSERT INTO space_optimize_mid_wellhead ( id, create_by_id, create_by_name, create_time,
modify_by_id, modify_by_name, modify_time, mid_period_id, wellhead_id, well_number ) modify_by_id, modify_by_name, modify_time, mid_period_id, wellhead_id, well_number, start_seq)
VALUES VALUES
<foreach collection="list" item="item" separator=","> <foreach collection="list" item="item" separator=",">
( (
...@@ -128,7 +129,8 @@ ...@@ -128,7 +129,8 @@
#{item.modifyTime}, #{item.modifyTime},
#{item.periodId}, #{item.periodId},
#{item.wellheadId}, #{item.wellheadId},
#{item.wellNumber} #{item.wellNumber},
#{item.startSeq}
) )
</foreach> </foreach>
</insert> </insert>
...@@ -201,7 +203,7 @@ ...@@ -201,7 +203,7 @@
<insert id="shortWellheadBatchInsertList" parameterType="list"> <insert id="shortWellheadBatchInsertList" parameterType="list">
INSERT INTO space_optimize_short_wellhead (id, create_by_id, create_by_name, create_time, modify_by_id, INSERT INTO space_optimize_short_wellhead (id, create_by_id, create_by_name, create_time, modify_by_id,
modify_by_name, modify_time, short_period_id, wellhead_id, well_number) modify_by_name, modify_time, short_period_id, wellhead_id, well_number, start_seq)
VALUES VALUES
<foreach collection="list" item="item" separator=","> <foreach collection="list" item="item" separator=",">
( (
...@@ -214,7 +216,8 @@ ...@@ -214,7 +216,8 @@
#{item.modifyTime}, #{item.modifyTime},
#{item.periodId}, #{item.periodId},
#{item.wellheadId}, #{item.wellheadId},
#{item.wellNumber} #{item.wellNumber},
#{item.startSeq}
) )
</foreach> </foreach>
</insert> </insert>
......
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