From 77386bfbb0beaee772a4079c295dcdfd79b6c589 Mon Sep 17 00:00:00 2001 From: wyw <373811525@qq.com> Date: Fri, 16 Aug 2024 03:26:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AE=BE=E5=A4=87=E5=9C=A8?= =?UTF-8?q?=E7=BA=BF=E7=8A=B6=E6=80=81=E8=8E=B7=E5=8F=96=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iot/service/impl/DeviceServiceImpl.java | 24 +++++++------- .../java/com/fastbee/iot/timer/QxtrTask.java | 32 ++++++++++++++++++- 2 files changed, 43 insertions(+), 13 deletions(-) diff --git a/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/service/impl/DeviceServiceImpl.java b/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/service/impl/DeviceServiceImpl.java index cff4818..70252d9 100644 --- a/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/service/impl/DeviceServiceImpl.java +++ b/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/service/impl/DeviceServiceImpl.java @@ -1608,18 +1608,18 @@ public class DeviceServiceImpl implements IDeviceService { devices.setProductId(136L); List deviceList = selectDeviceList(devices); for (Device device : deviceList) { - MaWatereleRecord maWatereleRecord = new MaWatereleRecord(); - maWatereleRecord.setDevSn(device.getSerialNumber()); - TableDataInfo tableDataInfo = watereleRecordService.selectMaWatereleRecordList(maWatereleRecord); - List list = (List) tableDataInfo.getRows(); - int status = 4; - if(list.size() > 0){ - MaWatereleRecord record = list.get(0); - if(new Date().getTime() - record.getCreateTime().getTime() < 3600000){ - status = 3; - } - } - device.setStatus(status); +// MaWatereleRecord maWatereleRecord = new MaWatereleRecord(); +// maWatereleRecord.setDevSn(device.getSerialNumber()); +// TableDataInfo tableDataInfo = watereleRecordService.selectMaWatereleRecordList(maWatereleRecord); +// List list = (List) tableDataInfo.getRows(); +// int status = 4; +// if(list.size() > 0){ +// MaWatereleRecord record = list.get(0); +// if(new Date().getTime() - record.getCreateTime().getTime() < 3600000){ +// status = 3; +// } +// } +// device.setStatus(status); HashMap itemMap = new HashMap<>(); resultList.add(itemMap); Integer integer = 0; diff --git a/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/timer/QxtrTask.java b/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/timer/QxtrTask.java index ce6051c..50cb57f 100644 --- a/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/timer/QxtrTask.java +++ b/fastbee-service/fastbee-iot-service/src/main/java/com/fastbee/iot/timer/QxtrTask.java @@ -1,5 +1,6 @@ package com.fastbee.iot.timer;//package com.fastbee.farming; +import com.fastbee.common.core.page.TableDataInfo; import com.fastbee.common.core.redis.RedisCache; import com.fastbee.common.core.redis.RedisKeyBuilder; import com.fastbee.common.utils.DateUtils; @@ -17,6 +18,8 @@ import com.fastbee.iot.model.haiwei.HaiWeiPropertyVo; import com.fastbee.iot.service.IDeviceService; import com.fastbee.iot.tdengine.service.ILogService; import com.fastbee.iot.tdengine.service.model.TdLogDto; +import com.fastbee.waterele.domain.MaWatereleRecord; +import com.fastbee.waterele.service.IMaWatereleRecordService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -43,7 +46,8 @@ public class QxtrTask { private ILogService iLogService; @Resource RedisCache redisCache; - + @Resource + private IMaWatereleRecordService watereleRecordService; private static Pattern pattern = Pattern.compile("[-+]?[0-9]+(\\.[0-9]+)?$"); /** @@ -57,6 +61,32 @@ public class QxtrTask { getDeviceInfo(Long.valueOf(SOLAR_DEVICE.getType()), devices); } + /** + * 定时任务 更新设备在线状态 + */ + public void updateDeviceStatus() throws Exception { + log.info("定时任务,更新设备在线状态"); + Device device = new Device(); + ArrayList> resultList = new ArrayList<>(); + device.setProductId(136L); + List deviceList = iDeviceService.selectDeviceList(device); + for (Device item : deviceList) { + MaWatereleRecord maWatereleRecord = new MaWatereleRecord(); + maWatereleRecord.setDevSn(item.getSerialNumber()); + TableDataInfo tableDataInfo = watereleRecordService.selectMaWatereleRecordList(maWatereleRecord); + List list = (List) tableDataInfo.getRows(); + int status = 4; + if(list.size() > 0){ + MaWatereleRecord record = list.get(0); + if(new Date().getTime() - record.getCreateTime().getTime() < 3600000){ + status = 3; + } + } + item.setStatus(status); + iDeviceService.updateDevice(item); + } + } + /** * 定时任务 流量计设备 */