Commit d2c6fcd8 authored by ZWT's avatar ZWT

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

1.开发定期校准模块-校准周期新增接口,完成接口冒烟测试并生成接口文档;
2.开发定期校准模块-校准周期修改接口,完成接口冒烟测试并生成接口文档;
3.开发定期校准模块-校准周期详情接口,完成接口冒烟测试并生成接口文档;
4.开发定期校准模块-校准历史分页列表接口,完成接口冒烟测试并生成接口文档;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 62cfb6b1
......@@ -2,6 +2,7 @@ package pps.core.space.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import pps.core.common.entity.BaseModel;
import xstartup.annotation.XText;
import java.io.Serializable;
......@@ -14,38 +15,7 @@ import java.util.Date;
* @date 2023/09/05
*/
@Data
public class SpaceCalibrationHistoryView implements Serializable {
@XText("ID")
@TableField
private String id;
@XText("是否删除(0_是;1_否)")
@TableField
private Integer isDeleted;
@XText("创建人ID")
@TableField
private String createById;
@XText("创建人名称")
@TableField
private String createByName;
@XText("创建时间(执行开始时间)")
@TableField
private Date createTime;
@XText("修改人ID")
@TableField
private String modifyById;
@XText("修改人名称")
@TableField
private String modifyByName;
@XText("修改时间")
@TableField
private Date modifyTime;
public class SpaceCalibrationHistoryView extends BaseModel implements Serializable {
@XText("线路ID")
@TableField
......@@ -62,4 +32,25 @@ public class SpaceCalibrationHistoryView implements Serializable {
@XText("校准日期")
@TableField
private Date calibrationDate;
/**
* 组织机构ID
*/
@XText("组织机构ID")
@TableField
private String ouId;
/**
* 电网类型key(字典获取)
*/
@XText("电网类型key(字典获取)")
@TableField
private String gridTypeKey;
/**
* 制度名称
*/
@XText("制度名称")
@TableField
private String institutionName;
}
......@@ -5,9 +5,28 @@ import pps.core.space.entity.SpaceCalibrationHistoryView;
import java.util.List;
/**
* 校准历史
*
* @author ZWT
* @date 2023/09/06
*/
@Repository(value = "pps.core.space.mapper.SpaceCalibrationHistoryViewMapper")
public interface SpaceCalibrationHistoryViewMapper {
/**
* 选择一个
*
* @param record 记录
* @return {@link SpaceCalibrationHistoryView}
*/
SpaceCalibrationHistoryView selectOne(SpaceCalibrationHistoryView record);
/**
* 条件查询列表
*
* @param record 记录
* @return {@link List}<{@link SpaceCalibrationHistoryView}>
*/
List<SpaceCalibrationHistoryView> selectList(SpaceCalibrationHistoryView record);
}
package pps.core.space.service;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import pps.core.common.constant.BusinessConstant;
import pps.core.common.entity.BaseModel;
import pps.core.common.session.PpsUserSession;
import pps.core.common.utils.BaseUtils;
......@@ -35,7 +37,9 @@ import xstartup.feature.mybatis.helper.XMapperHelper;
import xstartup.helper.XTransactionHelper;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* 定期校准模块
......@@ -134,6 +138,40 @@ public class SpaceCalibrationService {
return XSingleResult.success(output);
}
/**
* 校准历史--分页列表
*
* @param context 上下文
* @param input 输入
* @return {@link XPageResult}<{@link QuerySpaceCalibrationHistoryViewOutput}>
*/
@XApiAnonymous
@XApiGet
@XText("校准历史--分页列表")
public XPageResult<QuerySpaceCalibrationHistoryViewOutput> querySpaceCalibrationHistoryView(XContext context, QuerySpaceCalibrationHistoryViewInput input) {
SpaceCalibrationHistoryViewMapper mapper = context.getBean(SpaceCalibrationHistoryViewMapper.class);
SpaceCalibrationHistoryView record = XCopyUtils.copyNewObject(input, SpaceCalibrationHistoryView.class);
PageHelper.startPage(input.getPage(), input.getLimit());
List<SpaceCalibrationHistoryView> list = mapper.selectList(record);
PageInfo<SpaceCalibrationHistoryView> pageInfo = new PageInfo<>(list);
List<QuerySpaceCalibrationHistoryViewOutput> outputs = XCopyUtils.copyNewList(pageInfo.getList(), QuerySpaceCalibrationHistoryViewOutput.class);
if (CollUtil.isNotEmpty(outputs)) {
Map<String, String> gridTypeMap = ServiceUtil.getDictMap(context, BusinessConstant.GRID_TYPE);
Map<String, String> ouMap = ServiceUtil.getOuMapByOuIds(context, outputs.stream()
.map(QuerySpaceCalibrationHistoryViewOutput::getOuId)
.distinct()
.collect(Collectors.toList())
);
String lineName = ServiceUtil.getPowerLineNameById(context, input.getLineId());
outputs.forEach(output -> {
output.setLineName(lineName);
output.setOuName(ouMap.get(output.getOuId()));
output.setGridTypeName(gridTypeMap.get(output.getGridTypeKey()));
});
}
return XPageResult.success(outputs, input, pageInfo.getTotal());
}
@XApiAnonymous
@XApiPost
public XServiceResult createSpaceCalibrationHistory(XContext context, CreateSpaceCalibrationHistoryInput input) {
......@@ -230,19 +268,6 @@ public class SpaceCalibrationService {
return XSingleResult.success(output);
}
@XApiAnonymous
@XApiGet
public XPageResult<QuerySpaceCalibrationHistoryViewOutput> querySpaceCalibrationHistoryView(XContext context, QuerySpaceCalibrationHistoryViewInput input) {
SpaceCalibrationHistoryViewMapper mapper = context.getBean(SpaceCalibrationHistoryViewMapper.class);
SpaceCalibrationHistoryView record = new SpaceCalibrationHistoryView();
XCopyUtils.copyObject(input, record);
PageHelper.startPage(input.getPage(), input.getLimit());
List<SpaceCalibrationHistoryView> list = mapper.selectList(record);
PageInfo<SpaceCalibrationHistoryView> pageInfo = new PageInfo<>(list);
List<QuerySpaceCalibrationHistoryViewOutput> outputs = XCopyUtils.copyNewList(pageInfo.getList(), QuerySpaceCalibrationHistoryViewOutput.class);
return XPageResult.success(outputs, input, pageInfo.getTotal());
}
/*-----------------------------------private-----------------------------------*/
/**
......
package pps.core.space.service.data.space_calibration_history;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;
import xstartup.annotation.XText;
import xstartup.base.data.XPageInput;
import java.util.Date;
/**
* 校准历史
*
* @author ZWT
* @date 2023/09/06
*/
@Data
public class QuerySpaceCalibrationHistoryViewInput 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")
@NotBlank(message = "缺少线路ID")
private String lineId;
@XText("间开制度ID")
private String institutionId;
@XText("执行周期")
private String executionCycle;
@XText("校准日期")
private Date calibrationDate;
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getLineId() {
return this.lineId;
}
public void setLineId(String value) {
this.lineId = value;
}
public String getInstitutionId() {
return this.institutionId;
}
public void setInstitutionId(String value) {
this.institutionId = value;
}
public String getExecutionCycle() {
return this.executionCycle;
}
public void setExecutionCycle(String value) {
this.executionCycle = value;
}
public Date getCalibrationDate() {
return this.calibrationDate;
}
public void setCalibrationDate(Date value) {
this.calibrationDate = value;
}
}
}
\ No newline at end of file
package pps.core.space.service.data.space_calibration_history;
import lombok.Data;
import xstartup.annotation.XText;
import xstartup.base.data.XPageInput;
import java.util.Date;
public class QuerySpaceCalibrationHistoryViewOutput extends XPageInput {
/**
* 执行历史
*
* @author ZWT
* @date 2023/09/06
*/
@Data
public class QuerySpaceCalibrationHistoryViewOutput {
@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 lineId;
......@@ -42,100 +28,39 @@ public class QuerySpaceCalibrationHistoryViewOutput extends XPageInput {
@XText("校准日期")
private Date calibrationDate;
public String getId() {
return this.id;
}
public void setId(String value) {
this.id = value;
}
public Integer getIsDeleted() {
return this.isDeleted;
}
public void setIsDeleted(Integer value) {
this.isDeleted = value;
}
public String getCreateById() {
return this.createById;
}
public void setCreateById(String value) {
this.createById = value;
}
public String getCreateByName() {
return this.createByName;
}
public void setCreateByName(String value) {
this.createByName = value;
}
public Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(Date value) {
this.createTime = value;
}
public String getModifyById() {
return this.modifyById;
}
public void setModifyById(String value) {
this.modifyById = value;
}
public String getModifyByName() {
return this.modifyByName;
}
public void setModifyByName(String value) {
this.modifyByName = value;
}
public Date getModifyTime() {
return this.modifyTime;
}
public void setModifyTime(Date value) {
this.modifyTime = value;
}
public String getLineId() {
return this.lineId;
}
public void setLineId(String value) {
this.lineId = value;
}
public String getInstitutionId() {
return this.institutionId;
}
public void setInstitutionId(String value) {
this.institutionId = value;
}
public String getExecutionCycle() {
return this.executionCycle;
}
public void setExecutionCycle(String value) {
this.executionCycle = value;
}
public Date getCalibrationDate() {
return this.calibrationDate;
}
public void setCalibrationDate(Date value) {
this.calibrationDate = value;
}
/**
* 组织机构ID
*/
@XText("组织机构ID")
private String ouId;
/**
* 电网类型key(字典获取)
*/
@XText("电网类型key(字典获取)")
private String gridTypeKey;
/**
* 制度名称
*/
@XText("制度名称")
private String institutionName;
/**
* 线路名称
*/
@XText("线路名称")
private String lineName;
/**
* 组织机构名称
*/
@XText("组织机构名称")
private String ouName;
/**
* 电网类型名称
*/
@XText("电网类型名称")
private String gridTypeName;
}
......@@ -30,6 +30,7 @@
execution_cycle,
calibration_date
</sql>
<select id="selectOne" parameterType="pps.core.space.entity.SpaceCalibrationHistoryView" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
......@@ -37,11 +38,29 @@
where
id=#{id}
</select>
<resultMap id="ExtendResultMap" type="pps.core.space.entity.SpaceCalibrationHistoryView" extends="BaseResultMap">
<result column="ou_id" property="ouId" jdbcType="VARCHAR"/>
<result column="grid_type_key" property="gridTypeKey" jdbcType="VARCHAR"/>
<result column="institution_name" property="institutionName" jdbcType="VARCHAR"/>
</resultMap>
<select id="selectList" parameterType="pps.core.space.entity.SpaceCalibrationHistoryView" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from space_calibration_history
where
id=#{id}
SELECT h.id,
h.line_id,
h.institution_id,
h.execution_cycle,
h.calibration_date,
d.ou_id,
d.grid_type_key,
d.institution_name
FROM space_institution_detail d
JOIN space_calibration_history h ON d.id = h.institution_id
WHERE d.is_current_basic = 0
AND d.is_deleted = 1
AND h.is_deleted = 1
AND d.line_id = #{lineId}
AND h.line_id = #{lineId}
ORDER BY h.calibration_date DESC
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment