修复翻页未重置页码的问题

This commit is contained in:
lin
2025-11-18 12:16:20 +08:00
parent c6a7e07a14
commit 51a7ae056e
15 changed files with 116 additions and 71 deletions

View File

@@ -157,4 +157,9 @@ public interface StreamPushMapper {
"</foreach>" +
"</script>"})
int batchUpdate(List<StreamPush> streamPushItemForUpdate);
@Delete(" DELETE FROM wvp_stream_push st " +
" LEFT join wvp_device_channel wdc on wdc.data_type = 2 and st.id = wdc.data_device_id " +
" where wdc.id is null and st.server_id = #{id}")
void deleteWithoutGBId(String id);
}

View File

@@ -287,6 +287,7 @@ public class StreamPushServiceImpl implements IStreamPushService {
}
if (mediaServer != null) {
mediaServerService.closeStreams(mediaServer, streamPush.getApp(), streamPush.getStream());
mediaServerService.stopSendRtp(mediaServer, streamPush.getApp(), streamPush.getStream(), null);
}
streamPush.setPushing(false);
if (userSetting.getUsePushingAsStatus()) {
@@ -296,7 +297,6 @@ public class StreamPushServiceImpl implements IStreamPushService {
}
}
sendRtpServerService.deleteByStream(streamPush.getStream());
mediaServerService.stopSendRtp(mediaServer, streamPush.getApp(), streamPush.getStream(), null);
streamPush.setUpdateTime(DateUtil.getNow());
streamPushMapper.update(streamPush);
return true;
@@ -383,6 +383,12 @@ public class StreamPushServiceImpl implements IStreamPushService {
redisCatchStorage.removePushListItem(mediaInfo.getApp(), mediaInfo.getStream(), mediaServer.getId());
}
}
if (!pushItemMap.isEmpty()) {
for (StreamPush streamPush : pushItemMap.values()) {
// 如果没有国标编号,从数据库中删除
delete(streamPush.getId());
}
}
Collection<StreamAuthorityInfo> streamAuthorityInfos = streamAuthorityInfoInfoMap.values();
if (!streamAuthorityInfos.isEmpty()) {
@@ -402,11 +408,8 @@ public class StreamPushServiceImpl implements IStreamPushService {
stop(streamPushItem);
}
}
// // 移除没有GBId的推流
// streamPushMapper.deleteWithoutGBId(mediaServerId);
// // 其他的流设置未启用
// streamPushMapper.updateStatusByMediaServerId(mediaServerId, false);
// streamProxyMapper.updateStatusByMediaServerId(mediaServerId, false);
// 移除没有GBId的推流
streamPushMapper.deleteWithoutGBId(mediaServer.getId());
// 发送流停止消息
String type = "PUSH";
// 发送redis消息