feat(ems): 添加能源消耗记录管理功能

- 创建 EmsEnergyRecord 实体类,定义能耗记录主键、表计ID、能源ID、消耗量等字段
- 实现 EmsEnergyRecordBo 业务对象,用于接收前端参数并进行数据验证
- 开发 EmsEnergyRecordController 控制器,提供查询、新增、修改、删除和导出功能
- 配置 EmsEnergyRecordMapper 数据访问接口,继承 BaseMapperPlus 进行数据库操作
- 编写 EmsEnergyRecordMapper.xml 映射文件,定义结果集映射关系
- 实现 EmsEnergyRecordServiceImpl 服务类,封装业务逻辑和数据处理方法
- 定义 EmsEnergyRecordVo 视图对象,配置Excel导出注解和字典转换功能
- 提供 IEmsEnergyRecordService 接口,规范服务层方法契约
This commit is contained in:
2026-04-20 13:08:33 +08:00
parent af002b84d3
commit bd4d591934
8 changed files with 488 additions and 0 deletions

View File

@@ -0,0 +1,60 @@
package com.klp.ems.domain;
import com.baomidou.mybatisplus.annotation.*;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 能源消耗记录对象 ems_energy_record
*
* @author klp
* @date 2026-04-20
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("ems_energy_record")
public class EmsEnergyRecord extends BaseEntity {
private static final long serialVersionUID=1L;
/**
* 能耗记录主键ID
*/
@TableId(value = "energy_record_id")
private Long energyRecordId;
/**
* 表计ID关联计量设备表
*/
private Long meterId;
/**
* 能源ID关联能源类型表电/水/气/暖等)
*/
private Long energyId;
/**
* 消耗量
*/
private BigDecimal consumption;
/**
* 统计日期yyyy-MM-dd
*/
private Date recordDate;
/**
* 记录人ID
*/
private Long recordedBy;
/**
* 删除标志0=存在 2=删除)
*/
@TableLogic
private String delFlag;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,59 @@
package com.klp.ems.domain.bo;
import com.klp.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 能源消耗记录业务对象 ems_energy_record
*
* @author klp
* @date 2026-04-20
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class EmsEnergyRecordBo extends BaseEntity {
/**
* 能耗记录主键ID
*/
private Long energyRecordId;
/**
* 表计ID关联计量设备表
*/
private Long meterId;
/**
* 能源ID关联能源类型表电/水/气/暖等)
*/
private Long energyId;
/**
* 消耗量
*/
private BigDecimal consumption;
/**
* 统计日期yyyy-MM-dd
*/
private Date recordDate;
/**
* 记录人ID
*/
private Long recordedBy;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,71 @@
package com.klp.ems.domain.vo;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.klp.common.annotation.ExcelDictFormat;
import com.klp.common.convert.ExcelDictConvert;
import lombok.Data;
/**
* 能源消耗记录视图对象 ems_energy_record
*
* @author klp
* @date 2026-04-20
*/
@Data
@ExcelIgnoreUnannotated
public class EmsEnergyRecordVo {
private static final long serialVersionUID = 1L;
/**
* 能耗记录主键ID
*/
@ExcelProperty(value = "能耗记录主键ID")
private Long energyRecordId;
/**
* 表计ID关联计量设备表
*/
@ExcelProperty(value = "表计ID", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "关=联计量设备表")
private Long meterId;
/**
* 能源ID关联能源类型表电/水/气/暖等)
*/
@ExcelProperty(value = "能源ID", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "关=联能源类型表:电/水/气/暖等")
private Long energyId;
/**
* 消耗量
*/
@ExcelProperty(value = "消耗量")
private BigDecimal consumption;
/**
* 统计日期yyyy-MM-dd
*/
@ExcelProperty(value = "统计日期", converter = ExcelDictConvert.class)
@ExcelDictFormat(readConverterExp = "y=yyy-MM-dd")
private Date recordDate;
/**
* 记录人ID
*/
@ExcelProperty(value = "记录人ID")
private Long recordedBy;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}