swb
2024-08-26 d56ba0ec51cf2b0afa00bbf6ddb0c02ac16393fa
screen-manage/src/main/java/com/moral/api/service/impl/DeviceServiceImpl.java
@@ -191,7 +191,7 @@
        //设备信息存入redis
        setDeviceInfoToRedis(mac, deviceInfo);
        //刷新deviceInfo缓存
        CacheUtils.refreshDeviceAlarmInfo();
        CacheUtils.refreshDeviceAlarmInfo(mac);
        //操作日志记录
        HttpServletRequest request = ((ServletRequestAttributes) Objects.requireNonNull(RequestContextHolder.getRequestAttributes())).getRequest();
        StringBuilder content = new StringBuilder();
@@ -291,9 +291,10 @@
            queryWrapper.eq("monitor_point_id", mpId);
        }
        //设备名称或mac模糊查询
        if (name != null && mac != null) {
            queryWrapper.like("name", name).or().like("mac", mac);
            queryWrapper.eq("is_delete", Constants.NOT_DELETE).like("name", name).or().like("mac", mac);
        }
        //排序参数,默认create_time降序
@@ -306,7 +307,9 @@
        } else {
            queryWrapper.orderByDesc("create_time");
        }
        //过滤已删除的数据
        queryWrapper.eq("is_delete", Constants.NOT_DELETE);
        Page<Device> devicePage = new Page<>(page, size);
        deviceMapper.selectPage(devicePage, queryWrapper);
        List<Device> devices = devicePage.getRecords();
@@ -484,7 +487,6 @@
    }
    @Override
    @Transactional
    public void judgeDeviceState(Map<String, Object> deviceData) {
        String mac = deviceData.remove("mac").toString();
        Device device = (Device) redisTemplate.opsForHash().get(RedisConstants.DEVICE_INFO, mac);
@@ -520,9 +522,10 @@
            }
        }
        //修改设备状态
        UpdateWrapper<Device> updateWrapper = new UpdateWrapper<>();
        updateWrapper.eq("id", device.getId()).set("state", String.valueOf(state));
        deviceMapper.update(null, updateWrapper);
        Device device1 = new Device();
        device1.setId(device.getId());
        device1.setState(String.valueOf(state));
        deviceMapper.updateById(device1);
    }
    @Override
@@ -629,8 +632,9 @@
    public void setRedisDevice() {
        List<Device> list = lambdaQuery().eq(Device::getIsDelete,0).list();
        for(Device d : list){
           Map<String, Object> deviceInfo = selectDeviceInfoById(d.getId());
           setDeviceInfoToRedis(d.getMac(), deviceInfo);
            redisTemplate.opsForHash().delete(RedisConstants.DEVICE, d.getMac());
            Map<String, Object> deviceInfo = selectDeviceInfoById(d.getId());
            setDeviceInfoToRedis(d.getMac(), deviceInfo);
        }
    }
}