Commit 4a22611320f7016d98a37dda57ef1ca4ea9489ec

Authored by 648540858
1 parent 98d12ecd

优化目录订阅时父节点的更新

src/main/java/com/genersoft/iot/vmp/gb28181/event/SipSubscribe.java
@@ -30,7 +30,7 @@ public class SipSubscribe { @@ -30,7 +30,7 @@ public class SipSubscribe {
30 // @Scheduled(fixedRate= 100 * 60 * 60 ) 30 // @Scheduled(fixedRate= 100 * 60 * 60 )
31 @Scheduled(cron="0 0/5 * * * ?") //每5分钟执行一次 31 @Scheduled(cron="0 0/5 * * * ?") //每5分钟执行一次
32 public void execute(){ 32 public void execute(){
33 - logger.info("[定时任务] 清理过期的订阅信息"); 33 + logger.info("[定时任务] 清理过期的SIP订阅信息");
34 Calendar calendar = Calendar.getInstance(); 34 Calendar calendar = Calendar.getInstance();
35 calendar.setTime(new Date()); 35 calendar.setTime(new Date());
36 calendar.set(Calendar.MINUTE, calendar.get(Calendar.MINUTE) - 5); 36 calendar.set(Calendar.MINUTE, calendar.get(Calendar.MINUTE) - 5);
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/NotifyRequestProcessor.java
@@ -233,7 +233,6 @@ public class NotifyRequestProcessor extends SIPRequestProcessorParent implements @@ -233,7 +233,6 @@ public class NotifyRequestProcessor extends SIPRequestProcessorParent implements
233 */ 233 */
234 private void processNotifyCatalogList(RequestEvent evt) { 234 private void processNotifyCatalogList(RequestEvent evt) {
235 try { 235 try {
236 - System.out.println(343434);  
237 FromHeader fromHeader = (FromHeader) evt.getRequest().getHeader(FromHeader.NAME); 236 FromHeader fromHeader = (FromHeader) evt.getRequest().getHeader(FromHeader.NAME);
238 String deviceId = SipUtils.getUserIdFromFromHeader(fromHeader); 237 String deviceId = SipUtils.getUserIdFromFromHeader(fromHeader);
239 238
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/MessageRequestProcessor.java
@@ -67,9 +67,6 @@ public class MessageRequestProcessor extends SIPRequestProcessorParent implement @@ -67,9 +67,6 @@ public class MessageRequestProcessor extends SIPRequestProcessorParent implement
67 // 查询设备是否存在 67 // 查询设备是否存在
68 CSeqHeader cseqHeader = (CSeqHeader) evt.getRequest().getHeader(CSeqHeader.NAME); 68 CSeqHeader cseqHeader = (CSeqHeader) evt.getRequest().getHeader(CSeqHeader.NAME);
69 String method = cseqHeader.getMethod(); 69 String method = cseqHeader.getMethod();
70 - if (method.equals("MESSAGE")) {  
71 - System.out.println();  
72 - }  
73 Device device = redisCatchStorage.getDevice(deviceId); 70 Device device = redisCatchStorage.getDevice(deviceId);
74 // 查询上级平台是否存在 71 // 查询上级平台是否存在
75 ParentPlatform parentPlatform = storage.queryParentPlatByServerGBId(deviceId); 72 ParentPlatform parentPlatform = storage.queryParentPlatByServerGBId(deviceId);
src/main/java/com/genersoft/iot/vmp/storager/dao/DeviceChannelMapper.java
@@ -247,4 +247,13 @@ public interface DeviceChannelMapper { @@ -247,4 +247,13 @@ public interface DeviceChannelMapper {
247 "<foreach collection='channels' item='item' open='(' separator=',' close=')' > #{item.channelId}</foreach>" + 247 "<foreach collection='channels' item='item' open='(' separator=',' close=')' > #{item.channelId}</foreach>" +
248 " </script>"}) 248 " </script>"})
249 int cleanChannelsNotInList(String deviceId, List<DeviceChannel> channels); 249 int cleanChannelsNotInList(String deviceId, List<DeviceChannel> channels);
  250 +
  251 + @Update(" update device_channel" +
  252 + " set subCount = (select *" +
  253 + " from (select count(0)" +
  254 + " from device_channel" +
  255 + " where deviceId = #{deviceId} and parentId = #{channelId}) as temp)" +
  256 + " where deviceId = #{deviceId} " +
  257 + " and channelId = #{channelId}")
  258 + int updateChannelSubCount(String deviceId, String channelId);
250 } 259 }
src/main/java/com/genersoft/iot/vmp/storager/impl/VideoManagerStoragerImpl.java
@@ -42,7 +42,7 @@ import java.util.*; @@ -42,7 +42,7 @@ import java.util.*;
42 @Component 42 @Component
43 public class VideoManagerStoragerImpl implements IVideoManagerStorager { 43 public class VideoManagerStoragerImpl implements IVideoManagerStorager {
44 44
45 - private Logger logger = LoggerFactory.getLogger(VideoManagerStoragerImpl.class); 45 + private final Logger logger = LoggerFactory.getLogger(VideoManagerStoragerImpl.class);
46 46
47 @Autowired 47 @Autowired
48 EventPublisher eventPublisher; 48 EventPublisher eventPublisher;
@@ -171,6 +171,7 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager { @@ -171,6 +171,7 @@ public class VideoManagerStoragerImpl implements IVideoManagerStorager {
171 }else { 171 }else {
172 deviceChannelMapper.update(channel); 172 deviceChannelMapper.update(channel);
173 } 173 }
  174 + deviceChannelMapper.updateChannelSubCount(deviceId,channel.getParentId());
174 } 175 }
175 176
176 @Override 177 @Override