feat(ems): 添加告警、能耗记录和能源费率模块- 新增告警实体类 EmsAlert 及相关业务对象、控制器、映射器和服务实现
- 新增能耗记录实体类 EmsEnergyConsumption 及相关业务对象、控制器、映射器和服务实现 - 新增能源费率实体类 EmsEnergyRate 及相关业务对象、控制器、映射器和服务实现 - 实现各模块的基础 CRUD 功能,包括分页查询、导出 Excel 等操作 - 配置 MyBatis 映射文件及逻辑删除支持
This commit is contained in:
81
klp-ems/src/main/java/com/klp/ems/domain/vo/EmsAlertVo.java
Normal file
81
klp-ems/src/main/java/com/klp/ems/domain/vo/EmsAlertVo.java
Normal file
@@ -0,0 +1,81 @@
|
||||
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_alert
|
||||
*
|
||||
* @author klp
|
||||
* @date 2025-09-28
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class EmsAlertVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long alertId;
|
||||
|
||||
/**
|
||||
* 关联计量设备
|
||||
*/
|
||||
@ExcelProperty(value = "关联计量设备")
|
||||
private Long meterId;
|
||||
|
||||
/**
|
||||
* 告警类型:0=异常用量,1=高用量,2=设备故障
|
||||
*/
|
||||
@ExcelProperty(value = "告警类型:0=异常用量,1=高用量,2=设备故障")
|
||||
private Long alertType;
|
||||
|
||||
/**
|
||||
* 实际值
|
||||
*/
|
||||
@ExcelProperty(value = "实际值")
|
||||
private BigDecimal actualValue;
|
||||
|
||||
/**
|
||||
* 告警时间
|
||||
*/
|
||||
@ExcelProperty(value = "告警时间")
|
||||
private Date alertTime;
|
||||
|
||||
/**
|
||||
* 告警状态:0=待处理,1=已处理
|
||||
*/
|
||||
@ExcelProperty(value = "告警状态:0=待处理,1=已处理")
|
||||
private Long status;
|
||||
|
||||
/**
|
||||
* 处理人(不设外键)
|
||||
*/
|
||||
@ExcelProperty(value = "处理人", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "不=设外键")
|
||||
private Long resolvedBy;
|
||||
|
||||
/**
|
||||
* 处理时间
|
||||
*/
|
||||
@ExcelProperty(value = "处理时间")
|
||||
private Date resolvedTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
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_consumption
|
||||
*
|
||||
* @author Joshi
|
||||
* @date 2025-09-28
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class EmsEnergyConsumptionVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long energyConsumptionId;
|
||||
|
||||
/**
|
||||
* 关联计量设备
|
||||
*/
|
||||
@ExcelProperty(value = "关联计量设备")
|
||||
private Long meterId;
|
||||
|
||||
/**
|
||||
* 起始读数
|
||||
*/
|
||||
@ExcelProperty(value = "起始读数")
|
||||
private BigDecimal startReading;
|
||||
|
||||
/**
|
||||
* 结束读数
|
||||
*/
|
||||
@ExcelProperty(value = "结束读数")
|
||||
private BigDecimal endReading;
|
||||
|
||||
/**
|
||||
* 消耗量
|
||||
*/
|
||||
@ExcelProperty(value = "消耗量")
|
||||
private BigDecimal consumption;
|
||||
|
||||
/**
|
||||
* 起始时间
|
||||
*/
|
||||
@ExcelProperty(value = "起始时间")
|
||||
private Date startTime;
|
||||
|
||||
/**
|
||||
* 结束时间
|
||||
*/
|
||||
@ExcelProperty(value = "结束时间")
|
||||
private Date endTime;
|
||||
|
||||
/**
|
||||
* 记录人(不设外键)
|
||||
*/
|
||||
@ExcelProperty(value = "记录人", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "不=设外键")
|
||||
private Long recordedBy;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
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;
|
||||
|
||||
|
||||
/**
|
||||
* 能源费率(currency 为 INT:0=CNY,1=USD,2=EUR)视图对象 ems_energy_rate
|
||||
*
|
||||
* @author Joshi
|
||||
* @date 2025-09-28
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class EmsEnergyRateVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long energyRateId;
|
||||
|
||||
/**
|
||||
* 关联能源类型
|
||||
*/
|
||||
@ExcelProperty(value = "关联能源类型")
|
||||
private Long energyTypeId;
|
||||
|
||||
/**
|
||||
* 费率
|
||||
*/
|
||||
@ExcelProperty(value = "费率")
|
||||
private BigDecimal rate;
|
||||
|
||||
/**
|
||||
* 货币:0=CNY,1=USD,2=EUR
|
||||
*/
|
||||
@ExcelProperty(value = "货币:0=CNY,1=USD,2=EUR")
|
||||
private Long currency;
|
||||
|
||||
/**
|
||||
* 生效日期
|
||||
*/
|
||||
@ExcelProperty(value = "生效日期")
|
||||
private Date effectiveDate;
|
||||
|
||||
/**
|
||||
* 失效日期,NULL表示长期有效
|
||||
*/
|
||||
@ExcelProperty(value = "失效日期,NULL表示长期有效")
|
||||
private Date expiryDate;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
package com.klp.ems.domain.vo;
|
||||
|
||||
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_type
|
||||
*
|
||||
* @author Joshi
|
||||
* @date 2025-09-28
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class EmsEnergyTypeVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long energyTypeId;
|
||||
|
||||
/**
|
||||
* 能源名称,如:电力、自来水、天然气
|
||||
*/
|
||||
@ExcelProperty(value = "能源名称,如:电力、自来水、天然气")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 计量单位,如:kWh、m³
|
||||
*/
|
||||
@ExcelProperty(value = "计量单位,如:kWh、m³")
|
||||
private String unit;
|
||||
|
||||
/**
|
||||
* 能源编码
|
||||
*/
|
||||
@ExcelProperty(value = "能源编码")
|
||||
private String code;
|
||||
|
||||
/**
|
||||
* 能源描述
|
||||
*/
|
||||
@ExcelProperty(value = "能源描述")
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,59 @@
|
||||
package com.klp.ems.domain.vo;
|
||||
|
||||
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_location
|
||||
*
|
||||
* @author Joshi
|
||||
* @date 2025-09-28
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class EmsLocationVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long locationId;
|
||||
|
||||
/**
|
||||
* 区域名称
|
||||
*/
|
||||
@ExcelProperty(value = "区域名称")
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* 父级区域ID,用于构建区域层级
|
||||
*/
|
||||
@ExcelProperty(value = "父级区域ID,用于构建区域层级")
|
||||
private Long parentId;
|
||||
|
||||
/**
|
||||
* 区域描述
|
||||
*/
|
||||
@ExcelProperty(value = "区域描述")
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* 详细地址
|
||||
*/
|
||||
@ExcelProperty(value = "详细地址")
|
||||
private String address;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
93
klp-ems/src/main/java/com/klp/ems/domain/vo/EmsMeterVo.java
Normal file
93
klp-ems/src/main/java/com/klp/ems/domain/vo/EmsMeterVo.java
Normal file
@@ -0,0 +1,93 @@
|
||||
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_meter
|
||||
*
|
||||
* @author Joshi
|
||||
* @date 2025-09-28
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class EmsMeterVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ExcelProperty(value = "")
|
||||
private Long meterId;
|
||||
|
||||
/**
|
||||
* 设备编号
|
||||
*/
|
||||
@ExcelProperty(value = "设备编号")
|
||||
private String meterCode;
|
||||
|
||||
/**
|
||||
* 关联能源类型
|
||||
*/
|
||||
@ExcelProperty(value = "关联能源类型")
|
||||
private Long energyTypeId;
|
||||
|
||||
/**
|
||||
* 安装位置
|
||||
*/
|
||||
@ExcelProperty(value = "安装位置")
|
||||
private Long locationId;
|
||||
|
||||
/**
|
||||
* 设备型号
|
||||
*/
|
||||
@ExcelProperty(value = "设备型号")
|
||||
private String model;
|
||||
|
||||
/**
|
||||
* 制造商
|
||||
*/
|
||||
@ExcelProperty(value = "制造商")
|
||||
private String manufacturer;
|
||||
|
||||
/**
|
||||
* 安装日期
|
||||
*/
|
||||
@ExcelProperty(value = "安装日期")
|
||||
private Date installDate;
|
||||
|
||||
/**
|
||||
* 设备状态:0=在用,1=停用,2=维护
|
||||
*/
|
||||
@ExcelProperty(value = "设备状态:0=在用,1=停用,2=维护")
|
||||
private Long status;
|
||||
|
||||
/**
|
||||
* 上次校准日期
|
||||
*/
|
||||
@ExcelProperty(value = "上次校准日期")
|
||||
private Date lastCalibrationDate;
|
||||
|
||||
/**
|
||||
* 阈值(按设备设置)
|
||||
*/
|
||||
@ExcelProperty(value = "阈值", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(readConverterExp = "按=设备设置")
|
||||
private BigDecimal thresholdValue;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
@ExcelProperty(value = "备注")
|
||||
private String remark;
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user