Commit 590358c31381c5fedad14b0c91f3aa64ce29e728

Authored by 648540858
1 parent 78fac69c

修复国标级联录像查询 #485

src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/RecordInfoResponseMessageHandler.java
@@ -70,15 +70,20 @@ public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent @@ -70,15 +70,20 @@ public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent
70 70
71 rootElement = getRootElement(evt, device.getCharset()); 71 rootElement = getRootElement(evt, device.getCharset());
72 String sn = getText(rootElement, "SN"); 72 String sn = getText(rootElement, "SN");
73 - 73 + RecordInfo recordInfo = new RecordInfo();
  74 + recordInfo.setDeviceId(device.getDeviceId());
  75 + recordInfo.setSn(sn);
  76 + recordInfo.setName(getText(rootElement, "Name"));
74 String sumNumStr = getText(rootElement, "SumNum"); 77 String sumNumStr = getText(rootElement, "SumNum");
75 int sumNum = 0; 78 int sumNum = 0;
76 if (!StringUtils.isEmpty(sumNumStr)) { 79 if (!StringUtils.isEmpty(sumNumStr)) {
77 sumNum = Integer.parseInt(sumNumStr); 80 sumNum = Integer.parseInt(sumNumStr);
78 } 81 }
  82 + recordInfo.setSumNum(sumNum);
79 Element recordListElement = rootElement.element("RecordList"); 83 Element recordListElement = rootElement.element("RecordList");
80 if (recordListElement == null || sumNum == 0) { 84 if (recordListElement == null || sumNum == 0) {
81 logger.info("无录像数据"); 85 logger.info("无录像数据");
  86 + eventPublisher.recordEndEventPush(recordInfo);
82 recordDataCatch.put(device.getDeviceId(), sn, sumNum, new ArrayList<>()); 87 recordDataCatch.put(device.getDeviceId(), sn, sumNum, new ArrayList<>());
83 releaseRequest(device.getDeviceId(), sn); 88 releaseRequest(device.getDeviceId(), sn);
84 } else { 89 } else {
@@ -112,6 +117,9 @@ public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent @@ -112,6 +117,9 @@ public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent
112 record.setRecorderId(getText(itemRecord, "RecorderID")); 117 record.setRecorderId(getText(itemRecord, "RecorderID"));
113 recordList.add(record); 118 recordList.add(record);
114 } 119 }
  120 + recordInfo.setRecordList(recordList);
  121 + // 发送消息,如果是上级查询此录像,则会通过这里通知给上级
  122 + eventPublisher.recordEndEventPush(recordInfo);
115 int count = recordDataCatch.put(device.getDeviceId(), sn, sumNum, recordList); 123 int count = recordDataCatch.put(device.getDeviceId(), sn, sumNum, recordList);
116 logger.info("[国标录像], {}->{}: {}/{}", device.getDeviceId(), sn, count, sumNum); 124 logger.info("[国标录像], {}->{}: {}/{}", device.getDeviceId(), sn, count, sumNum);
117 } 125 }