添加灌溉控制器设备在线状态数据库维护

This commit is contained in:
蒾酒 2025-01-02 09:58:33 +08:00
parent 27f5696673
commit 605e1d1499

View File

@ -396,17 +396,27 @@ public class DeviceOtherMsgConsumer {
/**
* 缓存更新设备在线状态
* 更新设备在线状态
*/
private void updateDeviceOnlineStatus(Long productId,String serialNumber){
try {
//判断
//缓存里面更新设备在线状态
if(Boolean.TRUE.equals(stringRedisTemplate.hasKey("neixiang_device_online_status:" + productId + ":" + serialNumber))){
//重新设置过期时间
stringRedisTemplate.expire("neixiang_device_online_status:"+productId+":"+serialNumber,360, TimeUnit.SECONDS);
return;
}
stringRedisTemplate.opsForValue().set("neixiang_device_online_status:"+productId+":"+serialNumber,"1",360, TimeUnit.SECONDS);
//数据库里面更新设备在线状态
boolean update = new LambdaUpdateChainWrapper<>(deviceReportInfoMapper)
.set(DeviceReportInfo::getOnLine, 1)
.eq(DeviceReportInfo::getSerialNumber, serialNumber)
.update();
if(!update){
log.error("=>数据库更新灌溉控制器设备在线状态失败!");
}
}catch (Exception e){
log.error("=>更新缓存设备在线状态出错",e);
}