Commit 590358c31381c5fedad14b0c91f3aa64ce29e728
1 parent
78fac69c
修复国标级联录像查询 #485
Showing
1 changed file
with
9 additions
and
1 deletions
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 | 70 | |
| 71 | 71 | rootElement = getRootElement(evt, device.getCharset()); |
| 72 | 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 | 77 | String sumNumStr = getText(rootElement, "SumNum"); |
| 75 | 78 | int sumNum = 0; |
| 76 | 79 | if (!StringUtils.isEmpty(sumNumStr)) { |
| 77 | 80 | sumNum = Integer.parseInt(sumNumStr); |
| 78 | 81 | } |
| 82 | + recordInfo.setSumNum(sumNum); | |
| 79 | 83 | Element recordListElement = rootElement.element("RecordList"); |
| 80 | 84 | if (recordListElement == null || sumNum == 0) { |
| 81 | 85 | logger.info("无录像数据"); |
| 86 | + eventPublisher.recordEndEventPush(recordInfo); | |
| 82 | 87 | recordDataCatch.put(device.getDeviceId(), sn, sumNum, new ArrayList<>()); |
| 83 | 88 | releaseRequest(device.getDeviceId(), sn); |
| 84 | 89 | } else { |
| ... | ... | @@ -112,6 +117,9 @@ public class RecordInfoResponseMessageHandler extends SIPRequestProcessorParent |
| 112 | 117 | record.setRecorderId(getText(itemRecord, "RecorderID")); |
| 113 | 118 | recordList.add(record); |
| 114 | 119 | } |
| 120 | + recordInfo.setRecordList(recordList); | |
| 121 | + // 发送消息,如果是上级查询此录像,则会通过这里通知给上级 | |
| 122 | + eventPublisher.recordEndEventPush(recordInfo); | |
| 115 | 123 | int count = recordDataCatch.put(device.getDeviceId(), sn, sumNum, recordList); |
| 116 | 124 | logger.info("[国标录像], {}->{}: {}/{}", device.getDeviceId(), sn, count, sumNum); |
| 117 | 125 | } | ... | ... |