dao/src/main/java/com/sandu/ximon/dao/domain/LightReportData.java
@@ -6,22 +6,25 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.time.LocalDateTime; import com.fasterxml.jackson.annotation.JsonIgnore; import com.sandu.ximon.dao.utils.LocalDateStringConverter; import lombok.Data; /** * 灯上报数据表 * * @TableName light_report_data */ @TableName(value ="light_report_data") @TableName(value = "light_report_data") @Data public class LightReportData implements Serializable { /** * * */ @TableId(type = IdType.AUTO) @@ -109,14 +112,29 @@ /** * 创建时间 */ @ExcelProperty(value = "创建时间",converter = LocalDateStringConverter.class) private LocalDateTime createTime; @ExcelProperty(value = "创建时间", converter = LocalDateStringConverter.class) @JsonIgnore private LocalDateTime createTime1; /** * * */ @ExcelProperty(value = "更新时间",converter = LocalDateStringConverter.class) private LocalDateTime updateTime; @ExcelProperty(value = "更新时间", converter = LocalDateStringConverter.class) @JsonIgnore private LocalDateTime updateTime1; /** * 用于前段展示 */ @TableField(exist = false) private String updateTime; /** * 用于前段展示 */ @TableField(exist = false) private String createTime; @TableField(exist = false) @ExcelIgnore dao/src/main/resources/mapper/LightReportDataMapper.xml
@@ -19,8 +19,8 @@ <result property="totalLightSec" column="total_light_sec" jdbcType="BIGINT"/> <result property="recentlyUsingPower" column="recently_using_power" jdbcType="DOUBLE"/> <result property="totalUsingPower" column="total_using_power" jdbcType="DOUBLE"/> <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> <result property="createTime1" column="create_time" jdbcType="TIMESTAMP"/> <result property="updateTime1" column="update_time" jdbcType="TIMESTAMP"/> </resultMap> <resultMap id="listReportData" type="com.sandu.ximon.dao.bo.LightReportDataBo" extends="BaseResultMap"> ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/rrpc/enums/A5LightDataEnum.java
@@ -18,7 +18,7 @@ LightTimer("23"), // 清除单灯累计数据 LightReset("25"), LIGHT_HEART_BEAT("light_heart_beat/"); LIGHT_HEART_BEAT("LightReportData:light_heart_beat/"); A5LightDataEnum(String code) { this.code = code; ximon-admin/src/main/java/com/sandu/ximon/admin/manager/iot/rrpc/enums/AtmoFunctionCode.java
@@ -16,9 +16,9 @@ // 设置心跳包间隔 SettingHeartBeatTime("11"), // 大气设备心跳包存储(设备状态)) AIR_HEARTBEAT("air_heartbeat"), AIR_HEARTBEAT("air_heartbeat:air_heartbeat"), // 大气设备心跳包存储(设备状态))农耕 AIR_HEARTBEAT_NONG_GENG("air_heartbeat_nong_geng"); AIR_HEARTBEAT_NONG_GENG("air_heartbeat_nong_geng:air_heartbeat_nong_geng"); /** * 大气结束(希梦自研) */ ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightReportDataService.java
@@ -38,6 +38,7 @@ import java.sql.Wrapper; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.*; /** @@ -58,14 +59,22 @@ * @return 是否成功 */ public boolean saveReportData(String deviceName, A5LightHeartbeatReportInnerFrame.HeartBeatDataPackage heartBeatDataPackage) { LightReportData lightReportData = RedisUtils.getBean().get(A5LightDataEnum.LIGHT_HEART_BEAT.getCode() + deviceName, LightReportData.class); // LightReportData lightReportData = RedisUtils.getBean().get(A5LightDataEnum.LIGHT_HEART_BEAT.getCode() + deviceName, LightReportData.class); String format = LocalDateTime.now().format(DateTimeFormatter.ofPattern("YYYY-MM-dd HH:mm:ss")); LightReportData lightReportData = new LightReportData(); if (lightReportData == null) { lightReportData = new LightReportData(); lightReportData.setCreateTime(LocalDateTime.now()); lightReportData.setCreateTime(format); } //todo lightReportData.setCreateTime(format); BeanUtils.copyProperties(heartBeatDataPackage, lightReportData); lightReportData.setDeviceCode(deviceName); lightReportData.setUpdateTime(LocalDateTime.now()); lightReportData.setUpdateTime(format); //单灯数据保存到缓存里 RedisUtils.getBean().set(A5LightDataEnum.LIGHT_HEART_BEAT.getCode() + deviceName, lightReportData); @@ -92,7 +101,7 @@ List<LightReportDataBo> lightReportDataBos = new ArrayList<>(pageSize); CommonPage<String> stringCommonPage = SpringContextHolder.getBean(LightService.class).listDeviceCode(pageNo, pageSize,keyword, deviceCode); CommonPage<String> stringCommonPage = SpringContextHolder.getBean(LightService.class).listDeviceCode(pageNo, pageSize, keyword, deviceCode); List<String> macList = stringCommonPage.getList(); if (CollUtil.isEmpty(macList)) { return new CommonPage(); ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightService.java
@@ -117,7 +117,7 @@ ); for (LightReportData lightReportData : reportDataList) { if (StrUtil.equals(lightBo.getDeviceCode(), lightReportData.getDeviceCode())) { lightBo.setReportTime(lightReportData.getCreateTime()); lightBo.setReportTime(lightReportData.getCreateTime1()); break; } }