Commit 76d8aa5377d3f60500f97200be99f31c0c385203
1 parent
b88f213e
修正设备在线离线判断的错误
Showing
1 changed file
with
24 additions
and
4 deletions
src/main/java/com/genersoft/iot/vmp/storager/redis/VideoManagerRedisStoragerImpl.java
| ... | ... | @@ -276,6 +276,7 @@ public class VideoManagerRedisStoragerImpl implements IVideoManagerStorager { |
| 276 | 276 | PageResult pageResult = new PageResult<Device>(); |
| 277 | 277 | pageResult.setPage(page); |
| 278 | 278 | pageResult.setCount(count); |
| 279 | + Device device = null; | |
| 279 | 280 | |
| 280 | 281 | if (deviceIds == null || deviceIds.length == 0) { |
| 281 | 282 | |
| ... | ... | @@ -284,11 +285,21 @@ public class VideoManagerRedisStoragerImpl implements IVideoManagerStorager { |
| 284 | 285 | pageResult.setTotal(deviceIdList.size()); |
| 285 | 286 | int maxCount = (page + 1)* count; |
| 286 | 287 | for (int i = page * count; i < (pageResult.getTotal() > maxCount ? maxCount : pageResult.getTotal() ); i++) { |
| 287 | - devices.add((Device)redis.get((String)deviceIdList.get(i))); | |
| 288 | + // devices.add((Device)redis.get((String)deviceIdList.get(i))); | |
| 289 | + device =(Device)redis.get((String)deviceIdList.get(i)); | |
| 290 | + if (redis.scan(VideoManagerConstants.KEEPLIVEKEY_PREFIX+device.getDeviceId()).size() == 0){ | |
| 291 | + outline(device.getDeviceId()); | |
| 292 | + } | |
| 293 | + devices.add(device); | |
| 288 | 294 | } |
| 289 | 295 | } else { |
| 290 | 296 | for (int i = 0; i < deviceIds.length; i++) { |
| 291 | - devices.add((Device)redis.get(VideoManagerConstants.DEVICE_PREFIX+deviceIds[i])); | |
| 297 | + // devices.add((Device)redis.get(VideoManagerConstants.DEVICE_PREFIX+deviceIds[i])); | |
| 298 | + device = (Device)redis.get(VideoManagerConstants.DEVICE_PREFIX+deviceIds[i]); | |
| 299 | + if (redis.scan(VideoManagerConstants.KEEPLIVEKEY_PREFIX+device.getDeviceId()).size() == 0){ | |
| 300 | + outline(device.getDeviceId()); | |
| 301 | + } | |
| 302 | + devices.add(device); | |
| 292 | 303 | } |
| 293 | 304 | } |
| 294 | 305 | pageResult.setData(devices); |
| ... | ... | @@ -304,16 +315,25 @@ public class VideoManagerRedisStoragerImpl implements IVideoManagerStorager { |
| 304 | 315 | @Override |
| 305 | 316 | public List<Device> queryVideoDeviceList(String[] deviceIds) { |
| 306 | 317 | List<Device> devices = new ArrayList<>(); |
| 318 | + Device device = null; | |
| 307 | 319 | |
| 308 | 320 | if (deviceIds == null || deviceIds.length == 0) { |
| 309 | 321 | // List<Object> deviceIdList = redis.keys(VideoManagerConstants.DEVICE_PREFIX+"*"); |
| 310 | 322 | List<Object> deviceIdList = redis.scan(VideoManagerConstants.DEVICE_PREFIX+"*"); |
| 311 | 323 | for (int i = 0; i < deviceIdList.size(); i++) { |
| 312 | - devices.add((Device)redis.get((String)deviceIdList.get(i))); | |
| 324 | + device =(Device)redis.get((String)deviceIdList.get(i)); | |
| 325 | + if (redis.scan(VideoManagerConstants.KEEPLIVEKEY_PREFIX+device.getDeviceId()).size() == 0){ | |
| 326 | + outline(device.getDeviceId()); | |
| 327 | + } | |
| 328 | + devices.add(device); | |
| 313 | 329 | } |
| 314 | 330 | } else { |
| 315 | 331 | for (int i = 0; i < deviceIds.length; i++) { |
| 316 | - devices.add((Device)redis.get(VideoManagerConstants.DEVICE_PREFIX+deviceIds[i])); | |
| 332 | + device = (Device)redis.get(VideoManagerConstants.DEVICE_PREFIX+deviceIds[i]); | |
| 333 | + if (redis.scan(VideoManagerConstants.KEEPLIVEKEY_PREFIX+device.getDeviceId()).size() == 0){ | |
| 334 | + outline(device.getDeviceId()); | |
| 335 | + } | |
| 336 | + devices.add(device); | |
| 317 | 337 | } |
| 318 | 338 | } |
| 319 | 339 | return devices; | ... | ... |