diff --git a/hw-api/hw-api-ems/pom.xml b/hw-api/hw-api-ems/pom.xml
new file mode 100644
index 00000000..9e924916
--- /dev/null
+++ b/hw-api/hw-api-ems/pom.xml
@@ -0,0 +1,22 @@
+
+
+
+ hw
+ com.hw
+ 3.6.3
+ ../../pom.xml
+
+ 4.0.0
+
+ hw-api-ems
+
+
+ com.hw
+ hw-common-core
+
+
+
+
+
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/RemoteEmsService.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/RemoteEmsService.java
new file mode 100644
index 00000000..58391007
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/RemoteEmsService.java
@@ -0,0 +1,29 @@
+package com.hw.ems.api;
+
+import com.hw.common.core.constant.SecurityConstants;
+import com.hw.common.core.constant.ServiceNameConstants;
+import com.hw.common.core.domain.R;
+import com.hw.ems.api.factory.RemoteEmsFallbackFactory;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestHeader;
+
+/**
+ * @ClassName : RemoteEmsService
+ * @Description : zhouhy
+ * @Author :
+ * @Date: 2023-12-25 17:07
+ */
+@FeignClient(contextId = "remoteEmsService", value = ServiceNameConstants.EMS_SERVICE, fallbackFactory = RemoteEmsFallbackFactory.class)
+public interface RemoteEmsService {
+ @PostMapping("/record/dnbInstant/getDnbInstant")
+ R> getDnbInstantByJob(@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+
+
+ @PostMapping("/record/alarmData/thresholdTimingTask")
+ R> thresholdTimingTask(@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+
+ @PostMapping("/record/alarmData/deviceOfflineTimingTask")
+ R> deviceOfflineTimingTask(@RequestHeader(SecurityConstants.FROM_SOURCE) String source);
+
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseBuildInfo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseBuildInfo.java
new file mode 100644
index 00000000..52574687
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseBuildInfo.java
@@ -0,0 +1,161 @@
+package com.hw.ems.api.domain;
+
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 建筑信息管理对象 base_build_info
+ *
+ * @author YinQ
+ * @date 2023-05-05
+ */
+public class BaseBuildInfo extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 父级编号 */
+ @Excel(name = "父级编号")
+ private Long parentId;
+ /** 祖级列表 */
+ @Excel(name = "祖级列表")
+ private String ancestors;
+ /** 子菜单 */
+ private List children = new ArrayList();
+ /** 自增标识 */
+ private Long objid;
+
+ /** 建筑编号 */
+ @Excel(name = "建筑编号")
+ private String buildId;
+
+ /** 建筑名称 */
+ @Excel(name = "建筑名称")
+ private String buildName;
+
+ /** 状态 */
+ @Excel(name = "状态")
+ private Long buildStatus;
+
+ /** 等级 */
+ @Excel(name = "等级")
+ private Long grade;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setBuildId(String buildId)
+ {
+ this.buildId = buildId;
+ }
+
+ public String getBuildId()
+ {
+ return buildId;
+ }
+ public void setBuildName(String buildName)
+ {
+ this.buildName = buildName;
+ }
+
+ public String getBuildName()
+ {
+ return buildName;
+ }
+ public void setBuildStatus(Long buildStatus)
+ {
+ this.buildStatus = buildStatus;
+ }
+
+ public Long getBuildStatus()
+ {
+ return buildStatus;
+ }
+ public void setGrade(Long grade)
+ {
+ this.grade = grade;
+ }
+
+ public Long getGrade()
+ {
+ return grade;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ public List getChildren() {
+ return children;
+ }
+
+ public void setChildren(List children) {
+ this.children = children;
+ }
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
+ public String getAncestors() {
+ return ancestors;
+ }
+
+ public void setAncestors(String ancestors) {
+ this.ancestors = ancestors;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("buildId", getBuildId())
+ .append("buildName", getBuildName())
+ .append("buildStatus", getBuildStatus())
+ .append("grade", getGrade())
+ .append("remark", getRemark())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseBusinessType.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseBusinessType.java
new file mode 100644
index 00000000..bb7b690f
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseBusinessType.java
@@ -0,0 +1,148 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 业态类型管理对象 base_business_type
+ *
+ * @author YinQ
+ * @date 2023-05-05
+ */
+public class BaseBusinessType extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 父级编号 */
+ @Excel(name = "父级编号")
+ private Long parentId;
+ /** 祖级列表 */
+ @Excel(name = "祖级列表")
+ private String ancestors;
+ /** 子菜单 */
+ private List children = new ArrayList();
+
+ /** 编号 */
+ private Long objid;
+
+ /** 业态类型编号 */
+ @Excel(name = "业态类型编号")
+ private String businessId;
+
+ /** 业态类型名称 */
+ @Excel(name = "业态类型名称")
+ private String businessName;
+
+ /** 状态 */
+ @Excel(name = "状态")
+ private Long businessStatus;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
+ public String getAncestors() {
+ return ancestors;
+ }
+
+ public void setAncestors(String ancestors) {
+ this.ancestors = ancestors;
+ }
+
+ public List getChildren() {
+ return children;
+ }
+
+ public void setChildren(List children) {
+ this.children = children;
+ }
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setBusinessId(String businessId)
+ {
+ this.businessId = businessId;
+ }
+
+ public String getBusinessId()
+ {
+ return businessId;
+ }
+ public void setBusinessName(String businessName)
+ {
+ this.businessName = businessName;
+ }
+
+ public String getBusinessName()
+ {
+ return businessName;
+ }
+ public void setBusinessStatus(Long businessStatus)
+ {
+ this.businessStatus = businessStatus;
+ }
+
+ public Long getBusinessStatus()
+ {
+ return businessStatus;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("parentId", getParentId())
+ .append("businessId", getBusinessId())
+ .append("businessName", getBusinessName())
+ .append("businessStatus", getBusinessStatus())
+ .append("userId", getUserId())
+ .append("deptId", getDeptId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseCollectCommunicate.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseCollectCommunicate.java
new file mode 100644
index 00000000..4a9ac3b3
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseCollectCommunicate.java
@@ -0,0 +1,242 @@
+package com.hw.ems.api.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 集中器通讯信息对象 base_collect_communicate
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class BaseCollectCommunicate extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objid;
+
+ /** 集中器编号 */
+ @Excel(name = "集中器编号")
+ private String collectDeviceId;
+
+ /** 终端时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "终端时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date terminalTime;
+
+ /** 时间间隔 */
+ @Excel(name = "时间间隔")
+ private Long timeInterval;
+
+ /** 仪表协议 */
+ @Excel(name = "仪表协议")
+ private String meterAgreement;
+
+ /** 仪表类型 */
+ @Excel(name = "仪表类型")
+ private Long meterType;
+
+ /** 仪表状态 */
+ @Excel(name = "仪表状态")
+ private Long meterStatus;
+
+ /** 终端地址 */
+ @Excel(name = "终端地址")
+ private String meterIp;
+
+ /** 心跳频率 */
+ @Excel(name = "心跳频率")
+ private Long heartInterval;
+
+ /** 波特率一通道 */
+ @Excel(name = "波特率一通道")
+ private Long baudRateOne;
+
+ /** 波特率二通道 */
+ @Excel(name = "波特率二通道")
+ private Long baudRateTwo;
+
+ /** 波特率三通道 */
+ @Excel(name = "波特率三通道")
+ private Long baudRateThree;
+
+ /** 波特率四通道 */
+ @Excel(name = "波特率四通道")
+ private Long baudRateFour;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setCollectDeviceId(String collectDeviceId)
+ {
+ this.collectDeviceId = collectDeviceId;
+ }
+
+ public String getCollectDeviceId()
+ {
+ return collectDeviceId;
+ }
+ public void setTerminalTime(Date terminalTime)
+ {
+ this.terminalTime = terminalTime;
+ }
+
+ public Date getTerminalTime()
+ {
+ return terminalTime;
+ }
+ public void setTimeInterval(Long timeInterval)
+ {
+ this.timeInterval = timeInterval;
+ }
+
+ public Long getTimeInterval()
+ {
+ return timeInterval;
+ }
+ public void setMeterAgreement(String meterAgreement)
+ {
+ this.meterAgreement = meterAgreement;
+ }
+
+ public String getMeterAgreement()
+ {
+ return meterAgreement;
+ }
+ public void setMeterType(Long meterType)
+ {
+ this.meterType = meterType;
+ }
+
+ public Long getMeterType()
+ {
+ return meterType;
+ }
+ public void setMeterStatus(Long meterStatus)
+ {
+ this.meterStatus = meterStatus;
+ }
+
+ public Long getMeterStatus()
+ {
+ return meterStatus;
+ }
+ public void setMeterIp(String meterIp)
+ {
+ this.meterIp = meterIp;
+ }
+
+ public String getMeterIp()
+ {
+ return meterIp;
+ }
+ public void setHeartInterval(Long heartInterval)
+ {
+ this.heartInterval = heartInterval;
+ }
+
+ public Long getHeartInterval()
+ {
+ return heartInterval;
+ }
+ public void setBaudRateOne(Long baudRateOne)
+ {
+ this.baudRateOne = baudRateOne;
+ }
+
+ public Long getBaudRateOne()
+ {
+ return baudRateOne;
+ }
+ public void setBaudRateTwo(Long baudRateTwo)
+ {
+ this.baudRateTwo = baudRateTwo;
+ }
+
+ public Long getBaudRateTwo()
+ {
+ return baudRateTwo;
+ }
+ public void setBaudRateThree(Long baudRateThree)
+ {
+ this.baudRateThree = baudRateThree;
+ }
+
+ public Long getBaudRateThree()
+ {
+ return baudRateThree;
+ }
+ public void setBaudRateFour(Long baudRateFour)
+ {
+ this.baudRateFour = baudRateFour;
+ }
+
+ public Long getBaudRateFour()
+ {
+ return baudRateFour;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("collectDeviceId", getCollectDeviceId())
+ .append("terminalTime", getTerminalTime())
+ .append("timeInterval", getTimeInterval())
+ .append("meterAgreement", getMeterAgreement())
+ .append("meterType", getMeterType())
+ .append("meterStatus", getMeterStatus())
+ .append("meterIp", getMeterIp())
+ .append("heartInterval", getHeartInterval())
+ .append("baudRateOne", getBaudRateOne())
+ .append("baudRateTwo", getBaudRateTwo())
+ .append("baudRateThree", getBaudRateThree())
+ .append("baudRateFour", getBaudRateFour())
+ .append("remark", getRemark())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseCollectDeviceInfo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseCollectDeviceInfo.java
new file mode 100644
index 00000000..883af247
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseCollectDeviceInfo.java
@@ -0,0 +1,213 @@
+package com.hw.ems.api.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 采集设备信息对象 base_collect_device_info
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class BaseCollectDeviceInfo extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objid;
+
+ /** 设备编号 */
+ private String collectDeviceId;
+
+ /** 设备名称 */
+ @Excel(name = "设备名称")
+ private String collectDeviceName;
+
+ /** 生产厂家 */
+ @Excel(name = "生产厂家")
+ private String manufacturer;
+
+ /** 生产编号 */
+ @Excel(name = "生产编号")
+ private String factoryNumber;
+
+ /** 生产日期 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date produceDate;
+
+ /** 安装位置 */
+ @Excel(name = "安装位置")
+ private String address;
+
+ /** 能源类型 */
+ @Excel(name = "能源类型")
+ private Long energyType;
+
+ /** 型号 */
+ @Excel(name = "型号")
+ private String model;
+
+ /** 地址 */
+ @Excel(name = "地址")
+ private String ip;
+
+ /** 终端在线状态 */
+ @Excel(name = "终端在线状态")
+ private Long onlineState;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setCollectDeviceId(String collectDeviceId)
+ {
+ this.collectDeviceId = collectDeviceId;
+ }
+
+ public String getCollectDeviceId()
+ {
+ return collectDeviceId;
+ }
+ public void setCollectDeviceName(String collectDeviceName)
+ {
+ this.collectDeviceName = collectDeviceName;
+ }
+
+ public String getCollectDeviceName()
+ {
+ return collectDeviceName;
+ }
+ public void setManufacturer(String manufacturer)
+ {
+ this.manufacturer = manufacturer;
+ }
+
+ public String getManufacturer()
+ {
+ return manufacturer;
+ }
+ public void setFactoryNumber(String factoryNumber)
+ {
+ this.factoryNumber = factoryNumber;
+ }
+
+ public String getFactoryNumber()
+ {
+ return factoryNumber;
+ }
+ public void setProduceDate(Date produceDate)
+ {
+ this.produceDate = produceDate;
+ }
+
+ public Date getProduceDate()
+ {
+ return produceDate;
+ }
+ public void setAddress(String address)
+ {
+ this.address = address;
+ }
+
+ public String getAddress()
+ {
+ return address;
+ }
+ public void setEnergyType(Long energyType)
+ {
+ this.energyType = energyType;
+ }
+
+ public Long getEnergyType()
+ {
+ return energyType;
+ }
+ public void setModel(String model)
+ {
+ this.model = model;
+ }
+
+ public String getModel()
+ {
+ return model;
+ }
+ public void setIp(String ip)
+ {
+ this.ip = ip;
+ }
+
+ public String getIp()
+ {
+ return ip;
+ }
+ public void setOnlineState(Long onlineState)
+ {
+ this.onlineState = onlineState;
+ }
+
+ public Long getOnlineState()
+ {
+ return onlineState;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("collectDeviceId", getCollectDeviceId())
+ .append("collectDeviceName", getCollectDeviceName())
+ .append("manufacturer", getManufacturer())
+ .append("factoryNumber", getFactoryNumber())
+ .append("produceDate", getProduceDate())
+ .append("address", getAddress())
+ .append("energyType", getEnergyType())
+ .append("model", getModel())
+ .append("ip", getIp())
+ .append("remark", getRemark())
+ .append("onlineState", getOnlineState())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseDnbThreshold.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseDnbThreshold.java
new file mode 100644
index 00000000..3ff8dbcb
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseDnbThreshold.java
@@ -0,0 +1,316 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+
+/**
+ * 电阈值信息对象 base_dnb_threshold
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class BaseDnbThreshold extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objid;
+
+ /** 计量设备编号 */
+ @Excel(name = "计量设备编号")
+ private String monitorId;
+
+ @Excel(name = "计量设备名称")
+ private String monitorName;
+
+ /** A相电流最大值 */
+ @Excel(name = "A相电流最大值")
+ private BigDecimal iAMax;
+
+ /** A相电流最小值 */
+ @Excel(name = "A相电流最小值")
+ private BigDecimal iAMin;
+
+ /** B相电流最大值 */
+ @Excel(name = "B相电流最大值")
+ private BigDecimal iBMax;
+
+ /** B相电流最小值 */
+ @Excel(name = "B相电流最小值")
+ private BigDecimal iBMin;
+
+ /** C相电流最大值 */
+ @Excel(name = "C相电流最大值")
+ private BigDecimal iCMax;
+
+ /** C相电流最小值 */
+ @Excel(name = "C相电流最小值")
+ private BigDecimal iCMin;
+
+ /** A相电压最大值 */
+ @Excel(name = "A相电压最大值")
+ private BigDecimal vAMax;
+
+ /** A相电压最小值 */
+ @Excel(name = "A相电压最小值")
+ private BigDecimal vAMin;
+
+ /** B相电压最大值 */
+ @Excel(name = "B相电压最大值")
+ private BigDecimal vBMax;
+
+ /** B相电压最小值 */
+ @Excel(name = "B相电压最小值")
+ private BigDecimal vBMin;
+
+ /** C相电压最大值 */
+ @Excel(name = "C相电压最大值")
+ private BigDecimal vCMax;
+
+ /** C相电压最小值 */
+ @Excel(name = "C相电压最小值")
+ private BigDecimal vCMin;
+
+ /** 小时耗量 */
+ @Excel(name = "小时耗量")
+ private BigDecimal hourConsumption;
+
+ /** 天耗量 */
+ @Excel(name = "天耗量")
+ private BigDecimal dayConsumption;
+
+ /** 线损率(%) */
+ @Excel(name = "线损率(%)")
+ private BigDecimal lineLossRate;
+
+ /** 阈值状态 */
+ @Excel(name = "阈值状态")
+ private Long thresholdStatus;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public BigDecimal getHourConsumption() {
+ return hourConsumption;
+ }
+
+ public void setHourConsumption(BigDecimal hourConsumption) {
+ this.hourConsumption = hourConsumption;
+ }
+
+ public BigDecimal getDayConsumption() {
+ return dayConsumption;
+ }
+
+ public void setDayConsumption(BigDecimal dayConsumption) {
+ this.dayConsumption = dayConsumption;
+ }
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setMonitorId(String monitorId)
+ {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId()
+ {
+ return monitorId;
+ }
+ public void setiAMax(BigDecimal iAMax)
+ {
+ this.iAMax = iAMax;
+ }
+
+ public BigDecimal getiAMax()
+ {
+ return iAMax;
+ }
+ public void setiAMin(BigDecimal iAMin)
+ {
+ this.iAMin = iAMin;
+ }
+
+ public BigDecimal getiAMin()
+ {
+ return iAMin;
+ }
+ public void setiBMax(BigDecimal iBMax)
+ {
+ this.iBMax = iBMax;
+ }
+
+ public BigDecimal getiBMax()
+ {
+ return iBMax;
+ }
+ public void setiBMin(BigDecimal iBMin)
+ {
+ this.iBMin = iBMin;
+ }
+
+ public BigDecimal getiBMin()
+ {
+ return iBMin;
+ }
+ public void setiCMax(BigDecimal iCMax)
+ {
+ this.iCMax = iCMax;
+ }
+
+ public BigDecimal getiCMax()
+ {
+ return iCMax;
+ }
+ public void setiCMin(BigDecimal iCMin)
+ {
+ this.iCMin = iCMin;
+ }
+
+ public BigDecimal getiCMin()
+ {
+ return iCMin;
+ }
+ public void setvAMax(BigDecimal vAMax)
+ {
+ this.vAMax = vAMax;
+ }
+
+ public BigDecimal getvAMax()
+ {
+ return vAMax;
+ }
+ public void setvAMin(BigDecimal vAMin)
+ {
+ this.vAMin = vAMin;
+ }
+
+ public BigDecimal getvAMin()
+ {
+ return vAMin;
+ }
+ public void setvBMax(BigDecimal vBMax)
+ {
+ this.vBMax = vBMax;
+ }
+
+ public BigDecimal getvBMax()
+ {
+ return vBMax;
+ }
+ public void setvBMin(BigDecimal vBMin)
+ {
+ this.vBMin = vBMin;
+ }
+
+ public BigDecimal getvBMin()
+ {
+ return vBMin;
+ }
+ public void setvCMax(BigDecimal vCMax)
+ {
+ this.vCMax = vCMax;
+ }
+
+ public BigDecimal getvCMax()
+ {
+ return vCMax;
+ }
+ public void setvCMin(BigDecimal vCMin)
+ {
+ this.vCMin = vCMin;
+ }
+
+ public BigDecimal getvCMin()
+ {
+ return vCMin;
+ }
+ public void setLineLossRate(BigDecimal lineLossRate)
+ {
+ this.lineLossRate = lineLossRate;
+ }
+
+ public BigDecimal getLineLossRate()
+ {
+ return lineLossRate;
+ }
+ public void setThresholdStatus(Long thresholdStatus)
+ {
+ this.thresholdStatus = thresholdStatus;
+ }
+
+ public Long getThresholdStatus()
+ {
+ return thresholdStatus;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ public String getMonitorName() {
+ return monitorName;
+ }
+
+ public void setMonitorName(String monitorName) {
+ this.monitorName = monitorName;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("monitorId", getMonitorId())
+ .append("iAMax", getiAMax())
+ .append("iAMin", getiAMin())
+ .append("iBMax", getiBMax())
+ .append("iBMin", getiBMin())
+ .append("iCMax", getiCMax())
+ .append("iCMin", getiCMin())
+ .append("vAMax", getvAMax())
+ .append("vAMin", getvAMin())
+ .append("vBMax", getvBMax())
+ .append("vBMin", getvBMin())
+ .append("vCMax", getvCMax())
+ .append("vCMin", getvCMin())
+ .append("lineLossRate", getLineLossRate())
+ .append("thresholdStatus", getThresholdStatus())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseEnergyType.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseEnergyType.java
new file mode 100644
index 00000000..3a8c09cf
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseEnergyType.java
@@ -0,0 +1,127 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+
+/**
+ * 能源类型信息对象 base_energy_type
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class BaseEnergyType extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objid;
+
+ /** 能源类型编号 */
+ @Excel(name = "能源类型编号")
+ private Long energyTypeId;
+
+ /** 能源类型名称 */
+ @Excel(name = "能源类型名称")
+ private String energyName;
+
+ /** 单位 */
+ @Excel(name = "单位")
+ private String measureUnit;
+
+ /** 单价 */
+ @Excel(name = "单价")
+ private BigDecimal price;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setEnergyTypeId(Long energyTypeId)
+ {
+ this.energyTypeId = energyTypeId;
+ }
+
+ public Long getEnergyTypeId()
+ {
+ return energyTypeId;
+ }
+ public void setEnergyName(String energyName)
+ {
+ this.energyName = energyName;
+ }
+
+ public String getEnergyName()
+ {
+ return energyName;
+ }
+ public void setMeasureUnit(String measureUnit)
+ {
+ this.measureUnit = measureUnit;
+ }
+
+ public String getMeasureUnit()
+ {
+ return measureUnit;
+ }
+ public void setPrice(BigDecimal price)
+ {
+ this.price = price;
+ }
+
+ public BigDecimal getPrice()
+ {
+ return price;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("energyTypeId", getEnergyTypeId())
+ .append("energyName", getEnergyName())
+ .append("measureUnit", getMeasureUnit())
+ .append("price", getPrice())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseLineLoss.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseLineLoss.java
new file mode 100644
index 00000000..3c28b648
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseLineLoss.java
@@ -0,0 +1,167 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 线损对象信息对象 base_line_loss
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class BaseLineLoss extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objid;
+
+ /** 线损对象编号 */
+ @Excel(name = "线损对象编号")
+ private String lineLossId;
+
+ /** 线损对象名称 */
+ @Excel(name = "线损对象名称")
+ private String lineLossName;
+
+ /** 监测点编号 */
+ @Excel(name = "监测点编号")
+ private String monitorId;
+
+ /** 监测点名称 */
+ @Excel(name = "监测点名称")
+ private String monitorName;
+
+ /** 监测点类型 */
+ @Excel(name = "监测点类型")
+ private Long monitorType;
+
+ /** 等级 */
+ @Excel(name = "等级")
+ private Long grade;
+
+ /** 计量设备状态 */
+ @Excel(name = "计量设备状态")
+ private Long lineLossStatus;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setLineLossId(String lineLossId)
+ {
+ this.lineLossId = lineLossId;
+ }
+
+ public String getLineLossId()
+ {
+ return lineLossId;
+ }
+ public void setLineLossName(String lineLossName)
+ {
+ this.lineLossName = lineLossName;
+ }
+
+ public String getLineLossName()
+ {
+ return lineLossName;
+ }
+ public void setMonitorId(String monitorId)
+ {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId()
+ {
+ return monitorId;
+ }
+ public void setMonitorName(String monitorName)
+ {
+ this.monitorName = monitorName;
+ }
+
+ public String getMonitorName()
+ {
+ return monitorName;
+ }
+ public void setMonitorType(Long monitorType)
+ {
+ this.monitorType = monitorType;
+ }
+
+ public Long getMonitorType()
+ {
+ return monitorType;
+ }
+ public void setGrade(Long grade)
+ {
+ this.grade = grade;
+ }
+
+ public Long getGrade()
+ {
+ return grade;
+ }
+ public void setLineLossStatus(Long lineLossStatus)
+ {
+ this.lineLossStatus = lineLossStatus;
+ }
+
+ public Long getLineLossStatus()
+ {
+ return lineLossStatus;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("lineLossId", getLineLossId())
+ .append("lineLossName", getLineLossName())
+ .append("monitorId", getMonitorId())
+ .append("monitorName", getMonitorName())
+ .append("monitorType", getMonitorType())
+ .append("grade", getGrade())
+ .append("lineLossStatus", getLineLossStatus())
+ .append("userId", getUserId())
+ .append("deptId", getDeptId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMeterInfo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMeterInfo.java
new file mode 100644
index 00000000..095ce80e
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMeterInfo.java
@@ -0,0 +1,267 @@
+package com.hw.ems.api.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+
+/**
+ * 计量仪表信息对象 base_meter_info
+ *
+ * @author YinQ
+ * @date 2023-03-31
+ */
+public class BaseMeterInfo extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objid;
+
+ /** 园区编号 */
+ private Long deptId;
+
+ /** 园区名称 */
+ @Excel(name = "园区名称")
+ private String deptName;
+
+ /** 楼栋号 */
+ @Excel(name = "楼栋号")
+ private String buildNumber;
+
+ /** 楼层号 */
+ @Excel(name = "楼层号")
+ private String floorNumber;
+
+ /** 房间号(计量对象) */
+ @Excel(name = "房间号(计量对象)")
+ private String roomNumber;
+
+ /** 物理编号 */
+ @Excel(name = "物理编号")
+ private String physicalNumber;
+
+ /** 生产厂家 */
+ @Excel(name = "生产厂家")
+ private String manufacturer;
+
+ /** 精度 */
+ @Excel(name = "精度")
+ private BigDecimal precisionValue;
+
+ /** 生产日期 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date produceDate;
+
+ /** 仪表编号 */
+ @Excel(name = "仪表编号")
+ private String meterId;
+
+ /** 仪表型号 */
+ @Excel(name = "仪表型号")
+ private String model;
+
+ /** 能源类型 */
+ @Excel(name = "能源类型")
+ private Long meterEnergyType;
+
+ /** 仪表地址 */
+ @Excel(name = "仪表地址")
+ private String meterAdress;
+
+ /** 仪表状态 */
+ @Excel(name = "仪表状态")
+ private Long meterStatus;
+
+ /** CT变化 */
+ @Excel(name = "CT变化")
+ private String ctChange;
+
+ /** 终端编号 */
+ @Excel(name = "终端编号")
+ private String collectId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setDeptName(String deptName)
+ {
+ this.deptName = deptName;
+ }
+
+ public String getDeptName()
+ {
+ return deptName;
+ }
+ public void setBuildNumber(String buildNumber)
+ {
+ this.buildNumber = buildNumber;
+ }
+
+ public String getBuildNumber()
+ {
+ return buildNumber;
+ }
+ public void setFloorNumber(String floorNumber)
+ {
+ this.floorNumber = floorNumber;
+ }
+
+ public String getFloorNumber()
+ {
+ return floorNumber;
+ }
+ public void setRoomNumber(String roomNumber)
+ {
+ this.roomNumber = roomNumber;
+ }
+
+ public String getRoomNumber()
+ {
+ return roomNumber;
+ }
+ public void setPhysicalNumber(String physicalNumber)
+ {
+ this.physicalNumber = physicalNumber;
+ }
+
+ public String getPhysicalNumber()
+ {
+ return physicalNumber;
+ }
+ public void setManufacturer(String manufacturer)
+ {
+ this.manufacturer = manufacturer;
+ }
+
+ public String getManufacturer()
+ {
+ return manufacturer;
+ }
+ public void setPrecisionValue(BigDecimal precisionValue)
+ {
+ this.precisionValue = precisionValue;
+ }
+
+ public BigDecimal getPrecisionValue()
+ {
+ return precisionValue;
+ }
+ public void setProduceDate(Date produceDate)
+ {
+ this.produceDate = produceDate;
+ }
+
+ public Date getProduceDate()
+ {
+ return produceDate;
+ }
+ public void setMeterId(String meterId)
+ {
+ this.meterId = meterId;
+ }
+
+ public String getMeterId()
+ {
+ return meterId;
+ }
+ public void setModel(String model)
+ {
+ this.model = model;
+ }
+
+ public String getModel()
+ {
+ return model;
+ }
+ public void setMeterEnergyType(Long meterEnergyType)
+ {
+ this.meterEnergyType = meterEnergyType;
+ }
+
+ public Long getMeterEnergyType()
+ {
+ return meterEnergyType;
+ }
+ public void setMeterAdress(String meterAdress)
+ {
+ this.meterAdress = meterAdress;
+ }
+
+ public String getMeterAdress()
+ {
+ return meterAdress;
+ }
+ public void setMeterStatus(Long meterStatus)
+ {
+ this.meterStatus = meterStatus;
+ }
+
+ public Long getMeterStatus()
+ {
+ return meterStatus;
+ }
+ public void setCtChange(String ctChange)
+ {
+ this.ctChange = ctChange;
+ }
+
+ public String getCtChange()
+ {
+ return ctChange;
+ }
+ public void setCollectId(String collectId)
+ {
+ this.collectId = collectId;
+ }
+
+ public String getCollectId()
+ {
+ return collectId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("deptId", getDeptId())
+ .append("deptName", getDeptName())
+ .append("buildNumber", getBuildNumber())
+ .append("floorNumber", getFloorNumber())
+ .append("roomNumber", getRoomNumber())
+ .append("physicalNumber", getPhysicalNumber())
+ .append("manufacturer", getManufacturer())
+ .append("precisionValue", getPrecisionValue())
+ .append("produceDate", getProduceDate())
+ .append("meterId", getMeterId())
+ .append("model", getModel())
+ .append("meterEnergyType", getMeterEnergyType())
+ .append("meterAdress", getMeterAdress())
+ .append("meterStatus", getMeterStatus())
+ .append("ctChange", getCtChange())
+ .append("collectId", getCollectId())
+ .append("remark", getRemark())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMonitorInfo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMonitorInfo.java
new file mode 100644
index 00000000..ecdcca19
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMonitorInfo.java
@@ -0,0 +1,461 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 计量设备信息对象 base_monitor_info
+ *
+ * @author sf
+ * @date 2023-04-23
+ */
+public class BaseMonitorInfo extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键标识 */
+ @Excel(name = "主键标识")
+ private Long objid;
+
+ /** 父级编号 */
+ @Excel(name = "父级编号")
+ private Long parentId;
+
+ /** 计量设备编号 */
+ @Excel(name = "计量设备编号")
+ private String monitorId;
+
+ /** 计量设备名称 */
+ @Excel(name = "计量设备名称")
+ private String monitorName;
+
+ /** 计量设备位置 */
+ @Excel(name = "计量设备位置")
+ private String monitorAddr;
+
+ /** 计量设备类型 */
+ @Excel(name = "计量设备类型(2-电;3水)")
+ private Long monitorType;
+
+ /** CBS房间编号 */
+ @Excel(name = "CBS房间编号")
+ private String roomCode;
+
+ /** CBS房间名称 */
+ @Excel(name = "CBS房间名称")
+ private String roomName;
+
+ /** CBS物理编号 */
+ @Excel(name = "CBS物理编号")
+ private String physicalCode;
+
+ /** 采集设备编号 */
+ @Excel(name = "采集设备编号")
+ private String collectDeviceId;
+
+ /** 公摊表类型 */
+ @Excel(name = "公摊表类型(0-公共表;1-单元表;2-无)")
+ private Integer publicShareType;
+
+ /** 表具层级 */
+ @Excel(name = "表具层级")
+ private Long monitorHierarchy;
+
+ /** 祖级列表 */
+ @Excel(name = "祖级列表")
+ private String ancestors;
+
+ /** 等级 */
+ @Excel(name = "等级")
+ private Integer grade;
+
+ /** 建筑类型 */
+ @Excel(name = "建筑类型")
+ private String buildObjid;
+
+ /** 分项类型 */
+ @Excel(name = "分项类型")
+ private String subentryId;
+
+ /** 业态类型 */
+ @Excel(name = "业态类型")
+ private String businessId;
+
+ /** 传感器仪表 */
+ @Excel(name = "传感器仪表")
+ private String meterTypeId;
+
+ /** 测量器具 */
+ @Excel(name = "测量器具")
+ private String meterId;
+
+ /** 修正值 */
+ @Excel(name = "修正值")
+ private BigDecimal correctValue;
+
+ /** PT值 */
+ @Excel(name = "PT值")
+ private Long pt;
+
+ /** CT值 */
+ @Excel(name = "CT值")
+ private Long ct;
+
+ /** 是否虚拟表 */
+ @Excel(name = "是否虚拟表")
+ private String isAmmeter;
+
+ /** 通断复位 */
+ private Long isKeyMonitor;
+
+ /** 是否断路 */
+ @Excel(name = "是否断路")
+ private Long isCircuit;
+
+ /** 权限标识(部门) */
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ private Long userId;
+
+ private String buildName;
+
+ private String subentryName;
+
+ private String businessName;
+
+ /** 计量设备状态 */
+ @Excel(name = "计量设备状态")
+ private Long monitorStatus;
+
+ /** 子部门 */
+ private List children = new ArrayList();
+
+ private Boolean flag;
+
+ public String getPhysicalCode() {
+ return physicalCode;
+ }
+
+ public void setPhysicalCode(String physicalCode) {
+ this.physicalCode = physicalCode;
+ }
+
+ public String getRoomCode() {
+ return roomCode;
+ }
+
+ public void setRoomCode(String roomCode) {
+ this.roomCode = roomCode;
+ }
+
+ public String getRoomName() {
+ return roomName;
+ }
+
+ public void setRoomName(String roomName) {
+ this.roomName = roomName;
+ }
+
+ public Long getMonitorHierarchy() {
+ return monitorHierarchy;
+ }
+
+ public void setMonitorHierarchy(Long monitorHierarchy) {
+ this.monitorHierarchy = monitorHierarchy;
+ }
+
+ public Boolean getFlag() {
+ return flag;
+ }
+
+ public void setFlag(Boolean flag) {
+ this.flag = flag;
+ }
+
+
+ public String getAncestors() {
+ return ancestors;
+ }
+
+ public void setAncestors(String ancestors) {
+ this.ancestors = ancestors;
+ }
+
+ public String getBuildName() {
+ return buildName;
+ }
+
+ public void setBuildName(String buildName) {
+ this.buildName = buildName;
+ }
+
+ public String getSubentryName() {
+ return subentryName;
+ }
+
+ public void setSubentryName(String subentryName) {
+ this.subentryName = subentryName;
+ }
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setMonitorId(String monitorId)
+ {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId()
+ {
+ return monitorId;
+ }
+ public void setMonitorName(String monitorName)
+ {
+ this.monitorName = monitorName;
+ }
+
+ public String getMonitorName()
+ {
+ return monitorName;
+ }
+ public void setMonitorAddr(String monitorAddr)
+ {
+ this.monitorAddr = monitorAddr;
+ }
+
+ public String getMonitorAddr()
+ {
+ return monitorAddr;
+ }
+ public void setMonitorType(Long monitorType)
+ {
+ this.monitorType = monitorType;
+ }
+
+ public Long getMonitorType()
+ {
+ return monitorType;
+ }
+ public void setMonitorStatus(Long monitorStatus)
+ {
+ this.monitorStatus = monitorStatus;
+ }
+
+ public Long getMonitorStatus()
+ {
+ return monitorStatus;
+ }
+ public void setCollectDeviceId(String collectDeviceId)
+ {
+ this.collectDeviceId = collectDeviceId;
+ }
+
+ public String getCollectDeviceId()
+ {
+ return collectDeviceId;
+ }
+ public void setGrade(Integer grade)
+ {
+ this.grade = grade;
+ }
+
+ public Integer getGrade()
+ {
+ return grade;
+ }
+ public void setBuildId(String buildObjid)
+ {
+ this.buildObjid = buildObjid;
+ }
+
+ public String getBuildId()
+ {
+ return buildObjid;
+ }
+ public void setSubentryId(String subentryId)
+ {
+ this.subentryId = subentryId;
+ }
+
+ public String getSubentryId()
+ {
+ return subentryId;
+ }
+ public void setBusinessId(String businessId)
+ {
+ this.businessId = businessId;
+ }
+
+ public String getBusinessId()
+ {
+ return businessId;
+ }
+ public void setMeterTypeId(String meterTypeId)
+ {
+ this.meterTypeId = meterTypeId;
+ }
+
+ public String getMeterTypeId()
+ {
+ return meterTypeId;
+ }
+ public void setMeterId(String meterId)
+ {
+ this.meterId = meterId;
+ }
+
+ public String getMeterId()
+ {
+ return meterId;
+ }
+ public void setCorrectValue(BigDecimal correctValue)
+ {
+ this.correctValue = correctValue;
+ }
+
+ public BigDecimal getCorrectValue()
+ {
+ return correctValue;
+ }
+ public void setPt(Long pt)
+ {
+ this.pt = pt;
+ }
+
+ public Long getPt()
+ {
+ return pt;
+ }
+ public void setCt(Long ct)
+ {
+ this.ct = ct;
+ }
+
+ public Long getCt()
+ {
+ return ct;
+ }
+ public void setIsAmmeter(String isAmmeter)
+ {
+ this.isAmmeter = isAmmeter;
+ }
+
+ public String getIsAmmeter()
+ {
+ return isAmmeter;
+ }
+ public void setIsKeyMonitor(Long isKeyMonitor)
+ {
+ this.isKeyMonitor = isKeyMonitor;
+ }
+
+ public Long getIsKeyMonitor()
+ {
+ return isKeyMonitor;
+ }
+ public void setIsCircuit(Long isCircuit)
+ {
+ this.isCircuit = isCircuit;
+ }
+
+ public Long getIsCircuit()
+ {
+ return isCircuit;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
+ public String getBusinessName() {
+ return businessName;
+ }
+
+ public void setBusinessName(String businessName) {
+ this.businessName = businessName;
+ }
+
+ public List getChildren() {
+ return children;
+ }
+
+ public void setChildren(List children) {
+ this.children = children;
+ }
+
+ public Integer getPublicShareType() {
+ return publicShareType;
+ }
+
+ public void setPublicShareType(Integer publicShareType) {
+ this.publicShareType = publicShareType;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("parentId", getParentId())
+ .append("monitorId", getMonitorId())
+ .append("monitorName", getMonitorName())
+ .append("monitorAddr", getMonitorAddr())
+ .append("monitorType", getMonitorType())
+ .append("monitorStatus", getMonitorStatus())
+ .append("collectDeviceId", getCollectDeviceId())
+ .append("ancestors", getAncestors())
+ .append("grade", getGrade())
+ .append("buildId", getBuildId())
+ .append("subentryId", getSubentryId())
+ .append("businessId", getBusinessId())
+ .append("meterTypeId", getMeterTypeId())
+ .append("meterId", getMeterId())
+ .append("correctValue", getCorrectValue())
+ .append("pt", getPt())
+ .append("ct", getCt())
+ .append("isAmmeter", getIsAmmeter())
+ .append("isKeyMonitor", getIsKeyMonitor())
+ .append("isCircuit", getIsCircuit())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMonitorPublic.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMonitorPublic.java
new file mode 100644
index 00000000..4b75f123
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseMonitorPublic.java
@@ -0,0 +1,61 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 公摊用户和具关系对象 base_monitor_public
+ *
+ * @author yangwl
+ * @date 2023-04-25
+ */
+public class BaseMonitorPublic extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** */
+ @Excel(name = "")
+ private String monitorId;
+
+ /** */
+ @Excel(name = "")
+ private Long publicShareId;
+ private Integer publicShareType;
+
+ public Integer getPublicShareType() {
+ return publicShareType;
+ }
+
+ public void setPublicShareType(Integer publicShareType) {
+ this.publicShareType = publicShareType;
+ }
+
+ public void setMonitorId(String monitorId)
+ {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId()
+ {
+ return monitorId;
+ }
+ public void setPublicShareId(Long publicShareId)
+ {
+ this.publicShareId = publicShareId;
+ }
+
+ public Long getPublicShareId()
+ {
+ return publicShareId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("monitorId", getMonitorId())
+ .append("publicShareId", getPublicShareId())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicManage.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicManage.java
new file mode 100644
index 00000000..c6df4bab
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicManage.java
@@ -0,0 +1,166 @@
+package com.hw.ems.api.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 公摊管理对象 base_public_manage
+ *
+ * @author ruoyi
+ * @date 2023-04-27
+ */
+public class BasePublicManage extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private Long id;
+
+ /** 公摊时间起 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "公摊时间起", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date beginTime;
+
+ /** 公摊时间止 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "公摊时间止", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date endTime;
+
+ /** 公摊类型 2:电 /3:水 */
+ private String publicShareType;
+
+ /** 公摊规则 */
+ @Excel(name = "公摊规则")
+ private String publicShareRule;
+
+ /** 公摊值 */
+ @Excel(name = "公摊值")
+ private Long publicShareValue;
+
+ /** */
+ @Excel(name = "")
+ private String other1;
+
+ /** */
+ @Excel(name = "")
+ private String other2;
+
+ /**
+ * 用户编号list
+ */
+ private String ids;
+
+ /**
+ * 公摊用户对象
+ */
+ private List basePublicUsers;
+
+ public String getIds() {
+ return ids;
+ }
+
+ public void setIds(String ids) {
+ this.ids = ids;
+ }
+
+ public List getBasePublicUsers() {
+ return basePublicUsers;
+ }
+
+ public void setBasePublicUsers(List basePublicUsers) {
+ this.basePublicUsers = basePublicUsers;
+ }
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+ public void setBeginTime(Date beginTime)
+ {
+ this.beginTime = beginTime;
+ }
+
+ public Date getBeginTime()
+ {
+ return beginTime;
+ }
+ public void setEndTime(Date endTime)
+ {
+ this.endTime = endTime;
+ }
+
+ public Date getEndTime()
+ {
+ return endTime;
+ }
+ public void setPublicShareType(String publicShareType)
+ {
+ this.publicShareType = publicShareType;
+ }
+
+ public String getPublicShareType()
+ {
+ return publicShareType;
+ }
+ public void setPublicShareRule(String publicShareRule)
+ {
+ this.publicShareRule = publicShareRule;
+ }
+
+ public String getPublicShareRule()
+ {
+ return publicShareRule;
+ }
+ public void setPublicShareValue(Long publicShareValue)
+ {
+ this.publicShareValue = publicShareValue;
+ }
+
+ public Long getPublicShareValue()
+ {
+ return publicShareValue;
+ }
+ public void setOther1(String other1)
+ {
+ this.other1 = other1;
+ }
+
+ public String getOther1()
+ {
+ return other1;
+ }
+ public void setOther2(String other2)
+ {
+ this.other2 = other2;
+ }
+
+ public String getOther2()
+ {
+ return other2;
+ }
+
+ @Override
+ public String toString() {
+ return "BasePublicManage{" +
+ "id=" + id +
+ ", beginTime=" + beginTime +
+ ", endTime=" + endTime +
+ ", publicShareType='" + publicShareType + '\'' +
+ ", publicShareRule='" + publicShareRule + '\'' +
+ ", publicShareValue=" + publicShareValue +
+ ", other1='" + other1 + '\'' +
+ ", other2='" + other2 + '\'' +
+ ", ids='" + ids + '\'' +
+ ", basePublicUsers=" + basePublicUsers +
+ '}';
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicUser.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicUser.java
new file mode 100644
index 00000000..26309ca2
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicUser.java
@@ -0,0 +1,176 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import com.hw.ems.api.domain.vo.MonitorVo;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 公摊用户对象 base_public_user
+ *
+ * @author yangwl
+ * @date 2023-04-24
+ */
+public class BasePublicUser extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private Long id;
+
+ /** 用户名称 */
+ @Excel(name = "用户名称")
+ private String userName;
+
+ /** 用户名称 */
+ @Excel(name = "面积")
+ private float area;
+
+ private String monitorId;
+
+ private List monitors;
+
+ private BigDecimal percentage;
+
+ /**
+ * 用户表能耗
+ */
+ private BigDecimal userExpend;
+
+ /**
+ * 公摊表能耗
+ */
+ private BigDecimal publicExpend;
+
+ /**
+ * 表具对应比率
+ */
+ private BigDecimal monitorRate;
+
+ /**
+ * 综合公摊对应比率
+ */
+ private BigDecimal publicRate;
+
+ public BigDecimal getPublicRate() {
+ return publicRate;
+ }
+
+ public void setPublicRate(BigDecimal publicRate) {
+ this.publicRate = publicRate;
+ }
+
+ public BigDecimal getMonitorRate() {
+ return monitorRate;
+ }
+
+ public void setMonitorRate(BigDecimal monitorRate) {
+ this.monitorRate = monitorRate;
+ }
+
+ public BigDecimal getPublicExpend() {
+ return publicExpend;
+ }
+
+ public void setPublicExpend(BigDecimal publicExpend) {
+ this.publicExpend = publicExpend;
+ }
+
+ public BigDecimal getUserExpend() {
+ return userExpend;
+ }
+
+ public void setUserExpend(BigDecimal userExpend) {
+ this.userExpend = userExpend;
+ }
+
+ public BigDecimal getPercentage() {
+ return percentage;
+ }
+
+ public void setPercentage(BigDecimal percentage) {
+ this.percentage = percentage;
+ }
+
+ public List getMonitors() {
+ return monitors;
+ }
+
+ public void setMonitors(List monitors) {
+ this.monitors = monitors;
+ }
+
+ /** 表具组 */
+ private String[] publicShareIds;
+
+ /** 公摊表具组 */
+ private String[] publicMonitorIds;
+
+ public String[] getPublicMonitorIds() {
+ return publicMonitorIds;
+ }
+
+ public void setPublicMonitorIds(String[] publicMonitorIds) {
+ this.publicMonitorIds = publicMonitorIds;
+ }
+
+ public String[] getPublicShareIds() {
+ return publicShareIds;
+ }
+
+ public String getMonitorId() {
+ return monitorId;
+ }
+
+ public void setMonitorId(String monitorId) {
+ this.monitorId = monitorId;
+ }
+
+ public void setPublicShareIds(String[] publicShareIds) {
+ this.publicShareIds = publicShareIds;
+ }
+
+ public float getArea() {
+ return area;
+ }
+
+ public void setArea(float area) {
+ this.area = area;
+ }
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+ public void setUserName(String userName)
+ {
+ this.userName = userName;
+ }
+
+ public String getUserName()
+ {
+ return userName;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("userName", getUserName())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("remark", getRemark())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicUserRecord.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicUserRecord.java
new file mode 100644
index 00000000..82e386b2
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BasePublicUserRecord.java
@@ -0,0 +1,252 @@
+package com.hw.ems.api.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 公摊用户数据记录对象 base_public_user_record
+ *
+ * @author YinQ
+ * @date 2023-06-25
+ */
+public class BasePublicUserRecord extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键标识 */
+ private Long objid;
+
+ /** 公摊编号 */
+ @Excel(name = "公摊编号")
+ private String publicShareId;
+
+ /** 公摊编号 */
+ @Excel(name = "用户名称")
+ private String publicUserName;
+
+ /** 用户编号 */
+// @Excel(name = "用户编号")
+ private Long publicUserId;
+
+ /** 公摊表编号 */
+ @Excel(name = "公摊表编号")
+ private String publicMonitorIds;
+
+ /** 公摊开始时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "公摊开始时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date startTime;
+
+ /** 公摊结束时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "公摊结束时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date endTime;
+
+ /** 分摊比例 */
+ @Excel(name = "分摊比例")
+ private BigDecimal allocationRatio;
+
+ /** 公摊规则 */
+ @Excel(name = "公摊规则")
+ private String publicShareRule;
+
+ /** 需公摊能耗 */
+ @Excel(name = "需公摊能耗")
+ private BigDecimal publicEnergyConsumption;
+
+ /** 业主表能耗 */
+ @Excel(name = "业主表能耗")
+ private BigDecimal ownerEnergyConsumption;
+
+ /** 能源类型 */
+ @Excel(name = "能源类型")
+ private Long energyType;
+
+ /** 是否启用 */
+ @Excel(name = "是否启用")
+ private Long delStatus;
+
+ /** 创建人 */
+ @Excel(name = "创建人")
+ private String createdBy;
+
+ /** 创建时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date createdTime;
+
+ /**
+ * 能耗合计
+ */
+ @Excel(name = "能耗合计")
+ private BigDecimal sumEnergyConsumption;
+
+ public BigDecimal getSumEnergyConsumption() {
+ return sumEnergyConsumption;
+ }
+
+ public void setSumEnergyConsumption(BigDecimal sumEnergyConsumption) {
+ this.sumEnergyConsumption = sumEnergyConsumption;
+ }
+
+ public String getPublicUserName() {
+ return publicUserName;
+ }
+
+ public void setPublicUserName(String publicUserName) {
+ this.publicUserName = publicUserName;
+ }
+
+ public String getPublicShareRule() {
+ return publicShareRule;
+ }
+
+ public void setPublicShareRule(String publicShareRule) {
+ this.publicShareRule = publicShareRule;
+ }
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setPublicShareId(String publicShareId)
+ {
+ this.publicShareId = publicShareId;
+ }
+
+ public String getPublicShareId()
+ {
+ return publicShareId;
+ }
+ public void setPublicUserId(Long publicUserId)
+ {
+ this.publicUserId = publicUserId;
+ }
+
+ public Long getPublicUserId()
+ {
+ return publicUserId;
+ }
+ public void setPublicMonitorIds(String publicMonitorIds)
+ {
+ this.publicMonitorIds = publicMonitorIds;
+ }
+
+ public String getPublicMonitorIds()
+ {
+ return publicMonitorIds;
+ }
+ public void setStartTime(Date startTime)
+ {
+ this.startTime = startTime;
+ }
+
+ public Date getStartTime()
+ {
+ return startTime;
+ }
+ public void setEndTime(Date endTime)
+ {
+ this.endTime = endTime;
+ }
+
+ public Date getEndTime()
+ {
+ return endTime;
+ }
+ public void setAllocationRatio(BigDecimal allocationRatio)
+ {
+ this.allocationRatio = allocationRatio;
+ }
+
+ public BigDecimal getAllocationRatio()
+ {
+ return allocationRatio;
+ }
+ public void setPublicEnergyConsumption(BigDecimal publicEnergyConsumption)
+ {
+ this.publicEnergyConsumption = publicEnergyConsumption;
+ }
+
+ public BigDecimal getPublicEnergyConsumption()
+ {
+ return publicEnergyConsumption;
+ }
+ public void setOwnerEnergyConsumption(BigDecimal ownerEnergyConsumption)
+ {
+ this.ownerEnergyConsumption = ownerEnergyConsumption;
+ }
+
+ public BigDecimal getOwnerEnergyConsumption()
+ {
+ return ownerEnergyConsumption;
+ }
+ public void setEnergyType(Long energyType)
+ {
+ this.energyType = energyType;
+ }
+
+ public Long getEnergyType()
+ {
+ return energyType;
+ }
+ public void setDelStatus(Long delStatus)
+ {
+ this.delStatus = delStatus;
+ }
+
+ public Long getDelStatus()
+ {
+ return delStatus;
+ }
+ public void setCreatedBy(String createdBy)
+ {
+ this.createdBy = createdBy;
+ }
+
+ public String getCreatedBy()
+ {
+ return createdBy;
+ }
+ public void setCreatedTime(Date createdTime)
+ {
+ this.createdTime = createdTime;
+ }
+
+ public Date getCreatedTime()
+ {
+ return createdTime;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("publicShareId", getPublicShareId())
+ .append("publicUserId", getPublicUserId())
+ .append("publicMonitorIds", getPublicMonitorIds())
+ .append("startTime", getStartTime())
+ .append("endTime", getEndTime())
+ .append("allocationRatio", getAllocationRatio())
+ .append("publicEnergyConsumption", getPublicEnergyConsumption())
+ .append("ownerEnergyConsumption", getOwnerEnergyConsumption())
+ .append("energyType", getEnergyType())
+ .append("delStatus", getDelStatus())
+ .append("createdBy", getCreatedBy())
+ .append("createdTime", getCreatedTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseSubentryType.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseSubentryType.java
new file mode 100644
index 00000000..40f9ce5a
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseSubentryType.java
@@ -0,0 +1,146 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 分项类型管理对象 base_subentry_type
+ *
+ * @author YinQ
+ * @date 2023-05-06
+ */
+public class BaseSubentryType extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 编号 */
+ private Long objid;
+ /** 父级编号 */
+ @Excel(name = "父级编号")
+ private Long parentId;
+ /** 祖级列表 */
+ @Excel(name = "祖级列表")
+ private String ancestors;
+ /** 子菜单 */
+ private List children = new ArrayList();
+ /** 分项类型编号 */
+ @Excel(name = "分项类型编号")
+ private String subentryId;
+
+ /** 分项类型名称 */
+ @Excel(name = "分项类型名称")
+ private String subentryName;
+
+ /** 状态 */
+ @Excel(name = "状态")
+ private Long subentryStatus;
+
+ /** 权限标识(部门) */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /** 权限标识(用户) */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public void setObjid(Long objid)
+ {
+ this.objid = objid;
+ }
+
+ public Long getObjid()
+ {
+ return objid;
+ }
+ public void setSubentryId(String subentryId)
+ {
+ this.subentryId = subentryId;
+ }
+
+ public String getSubentryId()
+ {
+ return subentryId;
+ }
+ public void setSubentryName(String subentryName)
+ {
+ this.subentryName = subentryName;
+ }
+
+ public String getSubentryName()
+ {
+ return subentryName;
+ }
+ public void setSubentryStatus(Long subentryStatus)
+ {
+ this.subentryStatus = subentryStatus;
+ }
+
+ public Long getSubentryStatus()
+ {
+ return subentryStatus;
+ }
+ public void setDeptId(Long deptId)
+ {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId()
+ {
+ return deptId;
+ }
+ public void setUserId(Long userId)
+ {
+ this.userId = userId;
+ }
+
+ public Long getUserId()
+ {
+ return userId;
+ }
+
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
+ public String getAncestors() {
+ return ancestors;
+ }
+
+ public void setAncestors(String ancestors) {
+ this.ancestors = ancestors;
+ }
+
+ public List getChildren() {
+ return children;
+ }
+
+ public void setChildren(List children) {
+ this.children = children;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("parentId", getParentId())
+ .append("subentryId", getSubentryId())
+ .append("subentryName", getSubentryName())
+ .append("subentryStatus", getSubentryStatus())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseTree.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseTree.java
new file mode 100644
index 00000000..09d9ba24
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseTree.java
@@ -0,0 +1,117 @@
+package com.hw.ems.api.domain;
+
+import java.io.Serializable;
+
+/**
+ * Ztree树结构实体类
+ *
+ * @author ruoyi
+ */
+public class BaseTree implements Serializable
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 节点ID */
+ private Long id;
+
+ /** 节点父ID */
+ private Long pId;
+
+ /** 节点名称 */
+ private String name;
+
+ /** 节点标题 */
+ private String title;
+
+ /** 计量设备编号 */
+ private String monitorId;
+
+
+ /** 是否勾选 */
+ private boolean checked = false;
+
+ /** 是否展开 */
+ private boolean open = false;
+
+ /** 是否能勾选 */
+ private boolean nocheck = false;
+
+ public String getMonitorId() {
+ return monitorId;
+ }
+
+ public void setMonitorId(String monitorId) {
+ this.monitorId = monitorId;
+ }
+
+ public Long getId()
+ {
+ return id;
+ }
+
+ public void setId(Long id)
+ {
+ this.id = id;
+ }
+
+ public Long getpId()
+ {
+ return pId;
+ }
+
+ public void setpId(Long pId)
+ {
+ this.pId = pId;
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+
+ public void setName(String name)
+ {
+ this.name = name;
+ }
+
+ public String getTitle()
+ {
+ return title;
+ }
+
+ public void setTitle(String title)
+ {
+ this.title = title;
+ }
+
+ public boolean isChecked()
+ {
+ return checked;
+ }
+
+ public void setChecked(boolean checked)
+ {
+ this.checked = checked;
+ }
+
+ public boolean isOpen()
+ {
+ return open;
+ }
+
+ public void setOpen(boolean open)
+ {
+ this.open = open;
+ }
+
+ public boolean isNocheck()
+ {
+ return nocheck;
+ }
+
+ public void setNocheck(boolean nocheck)
+ {
+ this.nocheck = nocheck;
+ }
+
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseTypeRelation.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseTypeRelation.java
new file mode 100644
index 00000000..0e73bff6
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseTypeRelation.java
@@ -0,0 +1,176 @@
+package com.hw.ems.api.domain;
+
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 计量与类型对应关系对象 base_type_relation
+ *
+ * @author YinQ
+ * @date 2023-04-07
+ */
+public class BaseTypeRelation extends BaseEntity
+{
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 自增标识
+ */
+ private Long objid;
+
+
+ /**
+ * 类型
+ */
+ @Excel(name = "类型", dictType = "statistical_unit")
+ private Long type;
+
+ /**
+ * 统计单元名称
+ */
+ @Excel(name = "类型对应名称")
+ private String unitName;
+
+ /**
+ * 类型对应关系
+ */
+// @Excel(name = "类型对应关系")
+ private Long relationId;
+
+ /**
+ * 类型对应关系List
+ */
+ private List relationIdList;
+
+ /**
+ * 计量设备编号
+ */
+ @Excel(name = "计量设备编号")
+ private String monitorId;
+
+ /**
+ * 计量设备名称
+ */
+ @Excel(name = "计量设备名称")
+ private String monitorName;
+
+ /**
+ * 能源类型
+ */
+ @Excel(name = "能源类型", dictType = "energy_type")
+ private Long monitorType;
+
+ /**
+ * 比率
+ */
+ @Excel(name = "比率")
+ private BigDecimal rate;
+
+ /**
+ * 计算方式
+ */
+ @Excel(name = "计算方式", dictType = "formulaMode")
+ private Integer formulaMode;
+
+ public List getRelationIdList() {
+ return relationIdList;
+ }
+
+ public void setRelationIdList(List relationIdList) {
+ this.relationIdList = relationIdList;
+ }
+
+ public BigDecimal getRate() {
+ return rate;
+ }
+
+ public void setRate(BigDecimal rate) {
+ this.rate = rate;
+ }
+
+ public Integer getFormulaMode() {
+ return formulaMode;
+ }
+
+ public void setFormulaMode(Integer formulaMode) {
+ this.formulaMode = formulaMode;
+ }
+
+ public String getMonitorName() {
+ return monitorName;
+ }
+
+ public void setMonitorName(String monitorName) {
+ this.monitorName = monitorName;
+ }
+
+ public String getUnitName() {
+ return unitName;
+ }
+
+ public void setUnitName(String unitName) {
+ this.unitName = unitName;
+ }
+
+ public Long getMonitorType() {
+ return monitorType;
+ }
+
+ public void setMonitorType(Long monitorType) {
+ this.monitorType = monitorType;
+ }
+
+ public void setObjid(Long objid) {
+ this.objid = objid;
+ }
+
+ public Long getObjid() {
+ return objid;
+ }
+
+ public void setMonitorId(String monitorId) {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId() {
+ return monitorId;
+ }
+
+ public void setType(Long type) {
+ this.type = type;
+ }
+
+ public Long getType() {
+ return type;
+ }
+
+ public void setRelationId(Long relationId) {
+ this.relationId = relationId;
+ }
+
+ public Long getRelationId() {
+ return relationId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("monitorId", getMonitorId())
+ .append("type", getType())
+ .append("relationId", getRelationId())
+ .append("remark", getRemark())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseWaterThreshold.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseWaterThreshold.java
new file mode 100644
index 00000000..f498bfdd
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/BaseWaterThreshold.java
@@ -0,0 +1,188 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.math.BigDecimal;
+
+/**
+ * 水阈值信息对象 base_water_threshold
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class BaseWaterThreshold extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 自增标识
+ */
+ private Long objid;
+
+ /**
+ * 计量设备编号
+ */
+ @Excel(name = "计量设备编号")
+ private String monitorId;
+
+ /**
+ * 计量设备名称
+ */
+ @Excel(name = "计量设备名称")
+ private String monitorName;
+
+ /**
+ * 最大瞬时流量
+ */
+ @Excel(name = "最大瞬时流量")
+ private BigDecimal maxTraffic;
+
+ /**
+ * 最小瞬时流量
+ */
+ @Excel(name = "最小瞬时流量")
+ private BigDecimal minTraffic;
+
+ /**
+ * 小时耗量
+ */
+ @Excel(name = "小时耗量")
+ private BigDecimal hourConsumption;
+
+ /**
+ * 天耗量
+ */
+ @Excel(name = "天耗量")
+ private BigDecimal dayConsumption;
+
+ /**
+ * 线损率(%)
+ */
+ @Excel(name = "线损率(%)")
+ private BigDecimal lineLossRate;
+
+ /**
+ * 阈值状态
+ */
+ @Excel(name = "阈值状态")
+ private Long thresholdStatus;
+
+ /**
+ * 权限标识(部门)
+ */
+ @Excel(name = "权限标识", readConverterExp = "部=门")
+ private Long deptId;
+
+ /**
+ * 权限标识(用户)
+ */
+ @Excel(name = "权限标识", readConverterExp = "用=户")
+ private Long userId;
+
+ public BigDecimal getMaxTraffic() {
+ return maxTraffic;
+ }
+
+ public void setMaxTraffic(BigDecimal maxTraffic) {
+ this.maxTraffic = maxTraffic;
+ }
+
+ public BigDecimal getMinTraffic() {
+ return minTraffic;
+ }
+
+ public void setMinTraffic(BigDecimal minTraffic) {
+ this.minTraffic = minTraffic;
+ }
+
+ public BigDecimal getHourConsumption() {
+ return hourConsumption;
+ }
+
+ public void setHourConsumption(BigDecimal hourConsumption) {
+ this.hourConsumption = hourConsumption;
+ }
+
+ public BigDecimal getDayConsumption() {
+ return dayConsumption;
+ }
+
+ public void setDayConsumption(BigDecimal dayConsumption) {
+ this.dayConsumption = dayConsumption;
+ }
+
+ public void setObjid(Long objid) {
+ this.objid = objid;
+ }
+
+ public Long getObjid() {
+ return objid;
+ }
+
+ public void setMonitorId(String monitorId) {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId() {
+ return monitorId;
+ }
+
+ public void setMonitorName(String monitorName) {
+ this.monitorName = monitorName;
+ }
+
+ public String getMonitorName() {
+ return monitorName;
+ }
+
+ public void setLineLossRate(BigDecimal lineLossRate) {
+ this.lineLossRate = lineLossRate;
+ }
+
+ public BigDecimal getLineLossRate() {
+ return lineLossRate;
+ }
+
+ public void setThresholdStatus(Long thresholdStatus) {
+ this.thresholdStatus = thresholdStatus;
+ }
+
+ public Long getThresholdStatus() {
+ return thresholdStatus;
+ }
+
+ public void setDeptId(Long deptId) {
+ this.deptId = deptId;
+ }
+
+ public Long getDeptId() {
+ return deptId;
+ }
+
+ public void setUserId(Long userId) {
+ this.userId = userId;
+ }
+
+ public Long getUserId() {
+ return userId;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+ .append("objid", getObjid())
+ .append("monitorId", getMonitorId())
+ .append("monitorName", getMonitorName())
+ .append("lineLossRate", getLineLossRate())
+ .append("thresholdStatus", getThresholdStatus())
+ .append("deptId", getDeptId())
+ .append("userId", getUserId())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/CbsMonitorReport.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/CbsMonitorReport.java
new file mode 100644
index 00000000..7e29e69c
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/CbsMonitorReport.java
@@ -0,0 +1,281 @@
+package com.hw.ems.api.domain;
+
+
+import com.alibaba.fastjson2.annotation.JSONField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * CBS抄报对象 cbs_monitor_report
+ *
+ * @author YinQ
+ * @date 2023-10-20
+ */
+public class CbsMonitorReport extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 自增标识 */
+ private Long objId;
+
+ /** 计量设备编号 */
+ @Excel(name = "计量设备编号")
+ private String monitorId;
+
+ /** 计量设备名称 */
+ @Excel(name = "计量设备名称")
+ private String monitorName;
+
+ /** 计量设备类型(2-电,3-水) */
+ @Excel(name = "计量设备类型", readConverterExp = "2=-电,3-水")
+ private String monitorType;
+
+ /** 表具类型(0-公共,1-单元,2-无) */
+ @Excel(name = "表具类型", readConverterExp = "0=-公共,1-单元,2-无")
+ private String publicShareType;
+
+ /** CBS房间编号 */
+ @Excel(name = "CBS房间编号")
+ private String roomCode;
+
+ /** CBS房间名称 */
+ @Excel(name = "CBS房间名称")
+ private String roomName;
+
+ /** CBS物理编号 */
+ @Excel(name = "CBS物理编号")
+ private String physicalCode;
+
+ /** 装表位置 */
+ @Excel(name = "装表位置")
+ private String loadingPosition;
+
+ /** 对应CBS楼栋编号 */
+ @Excel(name = "对应CBS楼栋编号")
+ @JSONField(serialize = false)
+ private String buildCode;
+
+ /** 对应CBS楼栋名称 */
+ @Excel(name = "对应CBS楼栋名称")
+ private String buildName;
+
+ /** 是否绑定 */
+ @Excel(name = "是否绑定")
+ private String isBind;
+
+ /** 上次抄表时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "上次抄表时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date lastMonitorTime;
+
+ /** 上次抄表读数 */
+ @Excel(name = "上次抄表读数")
+ private BigDecimal lastMonitorExpend;
+
+ /** 本次抄表时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "本次抄表时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date thisMonitorTime;
+
+ /** 本次抄表读数 */
+ @Excel(name = "本次抄表读数")
+ private BigDecimal thisMonitorExpend;
+
+ /** 上次抄表成功标识(0-成功,1-失败) */
+ @Excel(name = "上次抄表成功标识", readConverterExp = "0=-成功,1-失败")
+ private String lastFlag;
+
+ /** 本次抄表成功标识(0-成功,1-失败) */
+ @Excel(name = "本次抄表成功标识", readConverterExp = "0=-成功,1-失败")
+ private String thisFlag;
+
+ public String getLoadingPosition() {
+ return loadingPosition;
+ }
+
+ public void setLoadingPosition(String loadingPosition) {
+ this.loadingPosition = loadingPosition;
+ }
+
+ public String getPhysicalCode() {
+ return physicalCode;
+ }
+
+ public void setPhysicalCode(String physicalCode) {
+ this.physicalCode = physicalCode;
+ }
+
+ public void setObjId(Long objId)
+ {
+ this.objId = objId;
+ }
+
+ public Long getObjId()
+ {
+ return objId;
+ }
+ public void setMonitorId(String monitorId)
+ {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorId()
+ {
+ return monitorId;
+ }
+ public void setMonitorName(String monitorName)
+ {
+ this.monitorName = monitorName;
+ }
+
+ public String getMonitorName()
+ {
+ return monitorName;
+ }
+ public void setMonitorType(String monitorType)
+ {
+ this.monitorType = monitorType;
+ }
+
+ public String getMonitorType()
+ {
+ return monitorType;
+ }
+ public void setPublicShareType(String publicShareType)
+ {
+ this.publicShareType = publicShareType;
+ }
+
+ public String getPublicShareType()
+ {
+ return publicShareType;
+ }
+ public void setRoomCode(String roomCode)
+ {
+ this.roomCode = roomCode;
+ }
+
+ public String getRoomCode()
+ {
+ return roomCode;
+ }
+ public void setRoomName(String roomName)
+ {
+ this.roomName = roomName;
+ }
+
+ public String getRoomName()
+ {
+ return roomName;
+ }
+ public void setBuildCode(String buildCode)
+ {
+ this.buildCode = buildCode;
+ }
+
+ public String getBuildCode()
+ {
+ return buildCode;
+ }
+ public void setBuildName(String buildName)
+ {
+ this.buildName = buildName;
+ }
+
+ public String getBuildName()
+ {
+ return buildName;
+ }
+ public void setIsBind(String isBind)
+ {
+ this.isBind = isBind;
+ }
+
+ public String getIsBind()
+ {
+ return isBind;
+ }
+ public void setLastMonitorTime(Date lastMonitorTime)
+ {
+ this.lastMonitorTime = lastMonitorTime;
+ }
+
+ public Date getLastMonitorTime()
+ {
+ return lastMonitorTime;
+ }
+ public void setLastMonitorExpend(BigDecimal lastMonitorExpend)
+ {
+ this.lastMonitorExpend = lastMonitorExpend;
+ }
+
+ public BigDecimal getLastMonitorExpend()
+ {
+ return lastMonitorExpend;
+ }
+ public void setThisMonitorTime(Date thisMonitorTime)
+ {
+ this.thisMonitorTime = thisMonitorTime;
+ }
+
+ public Date getThisMonitorTime()
+ {
+ return thisMonitorTime;
+ }
+ public void setThisMonitorExpend(BigDecimal thisMonitorExpend)
+ {
+ this.thisMonitorExpend = thisMonitorExpend;
+ }
+
+ public BigDecimal getThisMonitorExpend()
+ {
+ return thisMonitorExpend;
+ }
+ public void setLastFlag(String lastFlag)
+ {
+ this.lastFlag = lastFlag;
+ }
+
+ public String getLastFlag()
+ {
+ return lastFlag;
+ }
+ public void setThisFlag(String thisFlag)
+ {
+ this.thisFlag = thisFlag;
+ }
+
+ public String getThisFlag()
+ {
+ return thisFlag;
+ }
+
+
+ @Override
+ public String toString() {
+ return "CbsMonitorReport{" +
+ "objId=" + objId +
+ ", monitorId='" + monitorId + '\'' +
+ ", monitorName='" + monitorName + '\'' +
+ ", monitorType='" + monitorType + '\'' +
+ ", publicShareType='" + publicShareType + '\'' +
+ ", roomCode='" + roomCode + '\'' +
+ ", roomName='" + roomName + '\'' +
+ ", physicalCode='" + physicalCode + '\'' +
+ ", loadingPosition='" + loadingPosition + '\'' +
+ ", buildCode='" + buildCode + '\'' +
+ ", buildName='" + buildName + '\'' +
+ ", isBind='" + isBind + '\'' +
+ ", lastMonitorTime=" + lastMonitorTime +
+ ", lastMonitorExpend=" + lastMonitorExpend +
+ ", thisMonitorTime=" + thisMonitorTime +
+ ", thisMonitorExpend=" + thisMonitorExpend +
+ ", lastFlag='" + lastFlag + '\'' +
+ ", thisFlag='" + thisFlag + '\'' +
+ '}';
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/SysDatasource.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/SysDatasource.java
new file mode 100644
index 00000000..3c1d7135
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/SysDatasource.java
@@ -0,0 +1,168 @@
+package com.hw.ems.api.domain;
+
+import com.hw.common.core.annotation.Excel;
+import com.hw.common.core.web.domain.BaseEntity;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 园区数据库对象 sys_datasource
+ *
+ * @author sf
+ * @date 2023-04-20
+ */
+public class SysDatasource extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 用户ID */
+ private String id;
+
+ /** 地址 */
+ @Excel(name = "地址")
+ private String url;
+
+ /** 用户名 */
+ @Excel(name = "用户名")
+ private String userName;
+
+ /** 密码 */
+ @Excel(name = "密码")
+ private String password;
+
+ /** 驱动 */
+ @Excel(name = "驱动")
+ private String driveClassName;
+
+ /** 数据源标识 */
+ @Excel(name = "数据源标识")
+ private String poolName;
+ private String parkName;
+
+ /** 帐号状态(0正常 */
+ @Excel(name = "帐号状态", readConverterExp = "帐号状态(0正常")
+ private String status;
+
+ /** 删除标志(0代表存在 */
+ private String delFlag;
+
+ private String cbsParkCode;
+
+ private String cbsParkName;
+
+ public String getCbsParkCode() {
+ return cbsParkCode;
+ }
+
+ public void setCbsParkCode(String cbsParkCode) {
+ this.cbsParkCode = cbsParkCode;
+ }
+
+ public String getCbsParkName() {
+ return cbsParkName;
+ }
+
+ public void setCbsParkName(String cbsParkName) {
+ this.cbsParkName = cbsParkName;
+ }
+
+ public void setId(String id)
+ {
+ this.id = id;
+ }
+
+ public String getId()
+ {
+ return id;
+ }
+ public void setUrl(String url)
+ {
+ this.url = url;
+ }
+
+ public String getUrl()
+ {
+ return url;
+ }
+ public void setUserName(String userName)
+ {
+ this.userName = userName;
+ }
+
+ public String getUserName()
+ {
+ return userName;
+ }
+ public void setPassword(String password)
+ {
+ this.password = password;
+ }
+
+ public String getPassword()
+ {
+ return password;
+ }
+ public void setDriveClassName(String driveClassName)
+ {
+ this.driveClassName = driveClassName;
+ }
+
+ public String getDriveClassName()
+ {
+ return driveClassName;
+ }
+ public void setPoolName(String poolName)
+ {
+ this.poolName = poolName;
+ }
+
+ public String getPoolName()
+ {
+ return poolName;
+ }
+ public void setStatus(String status)
+ {
+ this.status = status;
+ }
+
+ public String getStatus()
+ {
+ return status;
+ }
+ public void setDelFlag(String delFlag)
+ {
+ this.delFlag = delFlag;
+ }
+
+ public String getDelFlag()
+ {
+ return delFlag;
+ }
+
+ public String getParkName() {
+ return parkName;
+ }
+
+ public void setParkName(String parkName) {
+ this.parkName = parkName;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("url", getUrl())
+ .append("userName", getUserName())
+ .append("password", getPassword())
+ .append("driveClassName", getDriveClassName())
+ .append("poolName", getPoolName())
+ .append("status", getStatus())
+ .append("delFlag", getDelFlag())
+ .append("createBy", getCreateBy())
+ .append("createTime", getCreateTime())
+ .append("updateBy", getUpdateBy())
+ .append("updateTime", getUpdateTime())
+ .append("remark", getRemark())
+ .toString();
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/CbsMonitorReportVo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/CbsMonitorReportVo.java
new file mode 100644
index 00000000..282194f7
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/CbsMonitorReportVo.java
@@ -0,0 +1,151 @@
+package com.hw.ems.api.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.hw.common.core.annotation.Excel;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * CBS抄报对象 cbs_monitor_report
+ *
+ * @author YinQ
+ * @date 2023-10-20
+ */
+public class CbsMonitorReportVo
+{
+ private static final long serialVersionUID = 1L;
+
+
+ /** CBS房间编号 */
+ private String roomCode;
+
+ /** CBS房间名称 */
+ private String roomName;
+
+ /** CBS物理编号 */
+ private String physicalCode;
+
+ /** 装表位置 */
+ private String loadingPosition;
+
+
+ /** 计量设备类型(水表,电表) */
+ private String monitorType;
+
+ /** 表具类型(公共,单元,无) */
+ private String publicShareType;
+
+ /** 上次抄表时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date lastMonitorTime;
+
+ /** 上次抄表读数 */
+ @Excel(name = "上次抄表读数")
+ private BigDecimal lastMonitorExpend;
+
+ /** 本次抄表时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date thisMonitorTime;
+
+ /** 本次抄表读数 */
+ @Excel(name = "本次抄表读数")
+ private BigDecimal thisMonitorExpend;
+
+
+ public String getRoomCode() {
+ return roomCode;
+ }
+
+ public void setRoomCode(String roomCode) {
+ this.roomCode = roomCode;
+ }
+
+ public String getRoomName() {
+ return roomName;
+ }
+
+ public void setRoomName(String roomName) {
+ this.roomName = roomName;
+ }
+
+ public String getPhysicalCode() {
+ return physicalCode;
+ }
+
+ public void setPhysicalCode(String physicalCode) {
+ this.physicalCode = physicalCode;
+ }
+
+ public String getLoadingPosition() {
+ return loadingPosition;
+ }
+
+ public void setLoadingPosition(String loadingPosition) {
+ this.loadingPosition = loadingPosition;
+ }
+
+ public String getMonitorType() {
+ return monitorType;
+ }
+
+ public void setMonitorType(String monitorType) {
+ this.monitorType = monitorType;
+ }
+
+ public String getPublicShareType() {
+ return publicShareType;
+ }
+
+ public void setPublicShareType(String publicShareType) {
+ this.publicShareType = publicShareType;
+ }
+
+ public Date getLastMonitorTime() {
+ return lastMonitorTime;
+ }
+
+ public void setLastMonitorTime(Date lastMonitorTime) {
+ this.lastMonitorTime = lastMonitorTime;
+ }
+
+ public BigDecimal getLastMonitorExpend() {
+ return lastMonitorExpend;
+ }
+
+ public void setLastMonitorExpend(BigDecimal lastMonitorExpend) {
+ this.lastMonitorExpend = lastMonitorExpend;
+ }
+
+ public Date getThisMonitorTime() {
+ return thisMonitorTime;
+ }
+
+ public void setThisMonitorTime(Date thisMonitorTime) {
+ this.thisMonitorTime = thisMonitorTime;
+ }
+
+ public BigDecimal getThisMonitorExpend() {
+ return thisMonitorExpend;
+ }
+
+ public void setThisMonitorExpend(BigDecimal thisMonitorExpend) {
+ this.thisMonitorExpend = thisMonitorExpend;
+ }
+
+ @Override
+ public String toString() {
+ return "CbsMonitorReportVo{" +
+ "roomCode='" + roomCode + '\'' +
+ ", roomName='" + roomName + '\'' +
+ ", physicalCode='" + physicalCode + '\'' +
+ ", loadingPosition='" + loadingPosition + '\'' +
+ ", monitorType='" + monitorType + '\'' +
+ ", publicShareType='" + publicShareType + '\'' +
+ ", lastMonitorTime=" + lastMonitorTime +
+ ", lastMonitorExpend=" + lastMonitorExpend +
+ ", thisMonitorTime=" + thisMonitorTime +
+ ", thisMonitorExpend=" + thisMonitorExpend +
+ '}';
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/MetaVo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/MetaVo.java
new file mode 100644
index 00000000..c44a9c6f
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/MetaVo.java
@@ -0,0 +1,90 @@
+package com.hw.ems.api.domain.vo;
+
+import com.hw.common.core.utils.StringUtils;
+/**
+ * 路由显示信息
+ *
+ * @author sf
+ */
+public class MetaVo {
+ /**
+ * 设置该路由在侧边栏和面包屑中展示的名字
+ */
+ private String title;
+
+ /**
+ * 设置该路由的图标,对应路径src/assets/icons/svg
+ */
+ private String icon;
+
+ /**
+ * 设置为true,则不会被 缓存
+ */
+ private boolean noCache;
+
+ /**
+ * 内链地址(http(s)://开头)
+ */
+ private String link;
+
+ public MetaVo() {
+ }
+
+ public MetaVo(String title, String icon) {
+ this.title = title;
+ this.icon = icon;
+ }
+
+ public MetaVo(String title, String icon, boolean noCache) {
+ this.title = title;
+ this.icon = icon;
+ this.noCache = noCache;
+ }
+
+ public MetaVo(String title, String icon, String link) {
+ this.title = title;
+ this.icon = icon;
+ this.link = link;
+ }
+
+ public MetaVo(String title, String icon, boolean noCache, String link) {
+ this.title = title;
+ this.icon = icon;
+ this.noCache = noCache;
+ if (StringUtils.ishttp(link)) {
+ this.link = link;
+ }
+ }
+
+ public boolean isNoCache() {
+ return noCache;
+ }
+
+ public void setNoCache(boolean noCache) {
+ this.noCache = noCache;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public String getIcon() {
+ return icon;
+ }
+
+ public void setIcon(String icon) {
+ this.icon = icon;
+ }
+
+ public String getLink() {
+ return link;
+ }
+
+ public void setLink(String link) {
+ this.link = link;
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/MonitorVo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/MonitorVo.java
new file mode 100644
index 00000000..e2938431
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/MonitorVo.java
@@ -0,0 +1,78 @@
+package com.hw.ems.api.domain.vo;
+
+
+import java.math.BigDecimal;
+
+public class MonitorVo {
+ /** 计量设备编号 */
+ private String monitorId;
+ /** 计量设备名称 */
+ private String monitorName;
+
+ /** 公摊表类型 */
+ private Integer publicShareType;
+
+ /**
+ * 计量设备类型
+ */
+ private Integer monitorType;
+
+ /**
+ * 表耗量
+ */
+ private BigDecimal monitorExpend;
+
+
+ /**
+ * 用户表耗量比率
+ */
+ private BigDecimal monitorExpendRate;
+
+ public BigDecimal getMonitorExpendRate() {
+ return monitorExpendRate;
+ }
+
+ public void setMonitorExpendRate(BigDecimal monitorExpendRate) {
+ this.monitorExpendRate = monitorExpendRate;
+ }
+
+ public Integer getMonitorType() {
+ return monitorType;
+ }
+
+ public void setMonitorType(Integer monitorType) {
+ this.monitorType = monitorType;
+ }
+
+ public BigDecimal getMonitorExpend() {
+ return monitorExpend;
+ }
+
+ public void setMonitorExpend(BigDecimal monitorExpend) {
+ this.monitorExpend = monitorExpend;
+ }
+
+ public Integer getPublicShareType() {
+ return publicShareType;
+ }
+
+ public void setPublicShareType(Integer publicShareType) {
+ this.publicShareType = publicShareType;
+ }
+
+ public String getMonitorId() {
+ return monitorId;
+ }
+
+ public void setMonitorId(String monitorId) {
+ this.monitorId = monitorId;
+ }
+
+ public String getMonitorName() {
+ return monitorName;
+ }
+
+ public void setMonitorName(String monitorName) {
+ this.monitorName = monitorName;
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/PublicManageVo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/PublicManageVo.java
new file mode 100644
index 00000000..057dfdaa
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/PublicManageVo.java
@@ -0,0 +1,56 @@
+package com.hw.ems.api.domain.vo;
+
+
+public class PublicManageVo {
+ private String ids;
+ /**
+ * 能源类型
+ */
+ private Long shareType;
+ /**
+ * 公摊规则
+ */
+ private Long shareRule;
+ private String startTime;
+ private String endTime;
+
+ public String getStartTime() {
+ return startTime;
+ }
+
+ public void setStartTime(String startTime) {
+ this.startTime = startTime;
+ }
+
+ public String getEndTime() {
+ return endTime;
+ }
+
+ public void setEndTime(String endTime) {
+ this.endTime = endTime;
+ }
+
+ public String getIds() {
+ return ids;
+ }
+
+ public void setIds(String ids) {
+ this.ids = ids;
+ }
+
+ public Long getShareType() {
+ return shareType;
+ }
+
+ public void setShareType(Long shareType) {
+ this.shareType = shareType;
+ }
+
+ public Long getShareRule() {
+ return shareRule;
+ }
+
+ public void setShareRule(Long shareRule) {
+ this.shareRule = shareRule;
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/RouterVo.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/RouterVo.java
new file mode 100644
index 00000000..f5bad99e
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/RouterVo.java
@@ -0,0 +1,130 @@
+package com.hw.ems.api.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+
+import java.util.List;
+
+/**
+ * 路由配置信息
+ *
+ * @author sf
+ */
+@JsonInclude(JsonInclude.Include.NON_EMPTY)
+public class RouterVo {
+ /**
+ * 路由名字
+ */
+ private String name;
+
+ /**
+ * 路由地址
+ */
+ private String path;
+
+ /**
+ * 是否隐藏路由,当设置 true 的时候该路由不会再侧边栏出现
+ */
+ private boolean hidden;
+
+ /**
+ * 重定向地址,当设置 noRedirect 的时候该路由在面包屑导航中不可被点击
+ */
+ private String redirect;
+
+ /**
+ * 组件地址
+ */
+ private String component;
+
+ /**
+ * 路由参数:如 {"id": 1, "name": "ry"}
+ */
+ private String query;
+
+ /**
+ * 当你一个路由下面的 children 声明的路由大于1个时,自动会变成嵌套的模式--如组件页面
+ */
+ private Boolean alwaysShow;
+
+ /**
+ * 其他元素
+ */
+ private MetaVo meta;
+
+ /**
+ * 子路由
+ */
+ private List children;
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getPath() {
+ return path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ public boolean getHidden() {
+ return hidden;
+ }
+
+ public void setHidden(boolean hidden) {
+ this.hidden = hidden;
+ }
+
+ public String getRedirect() {
+ return redirect;
+ }
+
+ public void setRedirect(String redirect) {
+ this.redirect = redirect;
+ }
+
+ public String getComponent() {
+ return component;
+ }
+
+ public void setComponent(String component) {
+ this.component = component;
+ }
+
+ public String getQuery() {
+ return query;
+ }
+
+ public void setQuery(String query) {
+ this.query = query;
+ }
+
+ public Boolean getAlwaysShow() {
+ return alwaysShow;
+ }
+
+ public void setAlwaysShow(Boolean alwaysShow) {
+ this.alwaysShow = alwaysShow;
+ }
+
+ public MetaVo getMeta() {
+ return meta;
+ }
+
+ public void setMeta(MetaVo meta) {
+ this.meta = meta;
+ }
+
+ public List getChildren() {
+ return children;
+ }
+
+ public void setChildren(List children) {
+ this.children = children;
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/TreeSelect.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/TreeSelect.java
new file mode 100644
index 00000000..716e4f86
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/domain/vo/TreeSelect.java
@@ -0,0 +1,82 @@
+package com.hw.ems.api.domain.vo;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.hw.ems.api.domain.BaseBuildInfo;
+import com.hw.ems.api.domain.BaseBusinessType;
+import com.hw.ems.api.domain.BaseMonitorInfo;
+import com.hw.ems.api.domain.BaseSubentryType;
+
+import java.io.Serializable;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * Treeselect树结构实体类
+ *
+ * @author sf
+ */
+public class TreeSelect implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /** 节点ID */
+ private String id;
+
+ /** 节点名称 */
+ private String label;
+
+ /** 子节点 */
+ @JsonInclude(JsonInclude.Include.NON_EMPTY)
+ private List children;
+
+ public TreeSelect() {
+
+ }
+
+ public TreeSelect(BaseMonitorInfo baseMonitorInfo) {
+ this.id = baseMonitorInfo.getMonitorId();
+ this.label = baseMonitorInfo.getMonitorName();
+ this.children = baseMonitorInfo.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
+ }
+
+ public TreeSelect(BaseBuildInfo baseBuildInfo) {
+ this.id = baseBuildInfo.getObjid().toString();
+ this.label = baseBuildInfo.getBuildName();
+ this.children = baseBuildInfo.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
+ }
+
+ public TreeSelect(BaseSubentryType baseSubentryType) {
+ this.id = baseSubentryType.getObjid().toString();
+ this.label = baseSubentryType.getSubentryName();
+ this.children = baseSubentryType.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
+ }
+
+ public TreeSelect(BaseBusinessType baseBusinessType) {
+ this.id = baseBusinessType.getObjid().toString();
+ this.label = baseBusinessType.getBusinessName();
+ this.children = baseBusinessType.getChildren().stream().map(TreeSelect::new).collect(Collectors.toList());
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getLabel() {
+ return label;
+ }
+
+ public void setLabel(String label) {
+ this.label = label;
+ }
+
+ public List getChildren() {
+ return children;
+ }
+
+ public void setChildren(List children) {
+ this.children = children;
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/factory/RemoteEmsFallbackFactory.java b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/factory/RemoteEmsFallbackFactory.java
new file mode 100644
index 00000000..c3415f84
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/java/com/hw/ems/api/factory/RemoteEmsFallbackFactory.java
@@ -0,0 +1,36 @@
+package com.hw.ems.api.factory;
+
+import com.hw.common.core.domain.R;
+import com.hw.ems.api.RemoteEmsService;
+import org.springframework.cloud.openfeign.FallbackFactory;
+import org.springframework.stereotype.Component;
+
+/**
+ * @ClassName : RemoteEmsFallbackFactory
+ * @Description : zhouhy
+ * @Author :
+ * @Date: 2023-12-25 17:17
+ */
+@Component
+public class RemoteEmsFallbackFactory implements FallbackFactory {
+ @Override
+ public RemoteEmsService create(Throwable throwable) {
+ return new RemoteEmsService() {
+ @Override
+ public R> getDnbInstantByJob(String source) {
+ return R.fail("调用失败:" + throwable.getMessage());
+ }
+
+ @Override
+ public R> thresholdTimingTask(String source) {
+ return R.fail("调用失败:" + throwable.getMessage());
+
+ }
+
+ @Override
+ public R> deviceOfflineTimingTask(String source) {
+ return R.fail("调用失败:" + throwable.getMessage());
+ }
+ };
+ }
+}
diff --git a/hw-api/hw-api-ems/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/hw-api/hw-api-ems/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 00000000..f26ddbd7
--- /dev/null
+++ b/hw-api/hw-api-ems/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+com.hw.ems.api.factory.RemoteEmsFallbackFactory
diff --git a/hw-api/pom.xml b/hw-api/pom.xml
index 15acf085..5b4fd852 100644
--- a/hw-api/pom.xml
+++ b/hw-api/pom.xml
@@ -12,6 +12,7 @@
hw-api-system
hw-api-tdengine
hw-api-mes
+ hw-api-ems
hw-api
diff --git a/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/ServiceNameConstants.java b/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/ServiceNameConstants.java
index 79c14587..6723e8b1 100644
--- a/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/ServiceNameConstants.java
+++ b/hw-common/hw-common-core/src/main/java/com/hw/common/core/constant/ServiceNameConstants.java
@@ -31,4 +31,8 @@ public class ServiceNameConstants
* mes服务的serviceid
*/
public static final String MES_SERVICE = "hw-mes";
+ /**
+ * Ems服务的serviceid
+ * */
+ public static final String EMS_SERVICE = "hw-ems";
}
diff --git a/hw-modules/hw-job/pom.xml b/hw-modules/hw-job/pom.xml
index c486aae5..041726aa 100644
--- a/hw-modules/hw-job/pom.xml
+++ b/hw-modules/hw-job/pom.xml
@@ -16,38 +16,38 @@
-
+
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery
-
+
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-config
-
+
com.alibaba.cloud
spring-cloud-starter-alibaba-sentinel
-
+
org.springframework.boot
spring-boot-starter-actuator
-
+
io.springfox
springfox-swagger-ui
${swagger.fox.version}
-
+
org.quartz-scheduler
@@ -59,25 +59,31 @@
-
+
com.mysql
mysql-connector-j
-
+
com.hw
hw-common-log
-
+
com.hw
hw-common-swagger
-
+
+ com.hw
+ hw-api-ems
+ 3.6.3
+ compile
+
+
@@ -96,5 +102,5 @@
-
-
\ No newline at end of file
+
+
diff --git a/hw-modules/hw-job/src/main/java/com/hw/job/task/RyTask.java b/hw-modules/hw-job/src/main/java/com/hw/job/task/RyTask.java
index d1a78351..df1ad653 100644
--- a/hw-modules/hw-job/src/main/java/com/hw/job/task/RyTask.java
+++ b/hw-modules/hw-job/src/main/java/com/hw/job/task/RyTask.java
@@ -1,16 +1,21 @@
package com.hw.job.task;
+import com.hw.common.core.constant.SecurityConstants;
+import com.hw.ems.api.RemoteEmsService;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import com.hw.common.core.utils.StringUtils;
/**
* 定时任务调度测试
- *
+ *
* @author ruoyi
*/
@Component("ryTask")
public class RyTask
{
+ @Autowired
+ private RemoteEmsService remoteEmsService;
public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i)
{
System.out.println(StringUtils.format("执行多参方法: 字符串类型{},布尔类型{},长整型{},浮点型{},整形{}", s, b, l, d, i));
@@ -25,4 +30,19 @@ public class RyTask
{
System.out.println("执行无参方法");
}
+ public void deviceOfflineTimingTask(){
+ System.out.println("++设备离线告警+开始++deviceOfflineTimingTask+++++");
+ remoteEmsService.deviceOfflineTimingTask(SecurityConstants.INNER);
+ }
+
+ public void thresholdTimingTask(){
+ System.out.println("++计量设备阈值告警+开始++thresholdTimingTask+++++");
+ remoteEmsService.thresholdTimingTask(SecurityConstants.INNER);
+ }
+
+ public void getDnbInstantByJob(){
+ System.out.println("++电整点数据获取+开始++getDnbInstantByJob+++++");
+ remoteEmsService.getDnbInstantByJob(SecurityConstants.INNER);
+
+ }
}
diff --git a/hw-ui/src/utils/dateReportUtils.js b/hw-ui/src/utils/dateReportUtils.js
new file mode 100644
index 00000000..64851107
--- /dev/null
+++ b/hw-ui/src/utils/dateReportUtils.js
@@ -0,0 +1,63 @@
+export function getHoursBetween(startHourStr, endHourStr) {
+ const startHour = new Date(startHourStr)
+ let endHour = new Date(endHourStr)
+ let nowDate = new Date()
+ nowDate.setHours(nowDate.getHours() - 1);
+ if (endHour.getTime() > nowDate.getTime()) {
+ endHour = nowDate
+ }
+ const hours = []
+ while (startHour <= endHour) {
+ const hourString = `${startHour.getFullYear()}-${String(startHour.getMonth() + 1).padStart(2, '0')}-${String(startHour.getDate()).padStart(2, '0')} ${String(startHour.getHours()).padStart(2, '0')}:00:00`
+ hours.push(hourString)
+ startHour.setTime(startHour.getTime() + 60 * 60 * 1000)
+ }
+ // return hours;
+ return hours.sort((a, b) => new Date(b) - new Date(a))
+}
+
+export function getDatesBetween(startDateStr, endDateStr) {
+ const startDate = new Date(startDateStr)
+ let endDate = new Date(endDateStr)
+ let nowDate = new Date()
+ nowDate.setHours(nowDate.getHours() - 1);
+ if (endDate.getTime() > nowDate.getTime()) {
+ endDate = nowDate
+ }
+ const dates = []
+ while (startDate <= endDate) {
+ dates.push(`${startDate.getFullYear()}-${String(startDate.getMonth() + 1).padStart(2, '0')}-${String(startDate.getDate()).padStart(2, '0')}`)
+ startDate.setDate(startDate.getDate() + 1)
+ }
+ // return dates;
+ return dates.sort((a, b) => new Date(b) - new Date(a))
+}
+
+export function getMonthsBetween(startMonthStr, endMonthStr) {
+ const result = []
+ const startDate = new Date(startMonthStr + '-01')
+ let endDate = new Date(endMonthStr + '-01')
+ const currentDate = new Date(startDate)
+ let nowDate = new Date()
+ nowDate.setHours(nowDate.getHours() - 1);
+ if (endDate.getTime() > nowDate.getTime()) {
+ endDate = nowDate
+ }
+ while (currentDate <= endDate) {
+ const year = currentDate.getFullYear()
+ const month = String(currentDate.getMonth() + 1).padStart(2, '0')
+ result.push(`${year}-${month}`)
+ currentDate.setMonth(currentDate.getMonth() + 1)
+ }
+ return result.sort((a, b) => new Date(b) - new Date(a))
+}
+
+export function getYearsBetween(startYearStr, endYearStr) {
+ const result = []
+ const startYear = Number(startYearStr.substring(0, 4))
+ const endYear = Number(endYearStr.substring(0, 4))
+ for (let i = startYear; i <= endYear; i++) {
+ result.push(`${i}`)
+ }
+ return result.sort((a, b) => new Date(b) - new Date(a))
+}
diff --git a/pom.xml b/pom.xml
index 0228847e..dd1e67f9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -230,6 +230,7 @@
hw-modules
hw-api
hw-common
+ hw-api/hw-api-ems
pom