Commit dd0a234c051c451143137ebb5bfbd2d789a6d2f5

Authored by Lawrence
1 parent 5a3a346c

进一步优化录像列表获取算法

src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java
@@ -342,7 +342,7 @@ public class MessageRequestProcessor extends SIPRequestAbstractProcessor { @@ -342,7 +342,7 @@ public class MessageRequestProcessor extends SIPRequestAbstractProcessor {
342 try { 342 try {
343 // 回复200 OK 343 // 回复200 OK
344 responseAck(evt); 344 responseAck(evt);
345 - String seqNo = String.valueOf(System.currentTimeMillis()); 345 + String uuid = UUID.randomUUID().toString().replace("-", "");
346 RecordInfo recordInfo = new RecordInfo(); 346 RecordInfo recordInfo = new RecordInfo();
347 Element rootElement = getRootElement(evt); 347 Element rootElement = getRootElement(evt);
348 Element deviceIdElement = rootElement.element("DeviceID"); 348 Element deviceIdElement = rootElement.element("DeviceID");
@@ -398,7 +398,7 @@ public class MessageRequestProcessor extends SIPRequestAbstractProcessor { @@ -398,7 +398,7 @@ public class MessageRequestProcessor extends SIPRequestAbstractProcessor {
398 // 为防止连续请求该设备的录像数据,返回数据错乱,特增加sn进行区分 398 // 为防止连续请求该设备的录像数据,返回数据错乱,特增加sn进行区分
399 String cacheKey = CACHE_RECORDINFO_KEY + deviceId + sn; 399 String cacheKey = CACHE_RECORDINFO_KEY + deviceId + sn;
400 400
401 - redis.set(cacheKey + "_" + seqNo, recordList, 90); 401 + redis.set(cacheKey + "_" + uuid, recordList, 90);
402 List<Object> cacheKeys = redis.scan(cacheKey + "_*"); 402 List<Object> cacheKeys = redis.scan(cacheKey + "_*");
403 List<RecordItem> totalRecordList = new ArrayList<RecordItem>(); 403 List<RecordItem> totalRecordList = new ArrayList<RecordItem>();
404 for (int i = 0; i < cacheKeys.size(); i++) { 404 for (int i = 0; i < cacheKeys.size(); i++) {