From 764d04b497356ba6bcbb75fd42b51eca750f7223 Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期三, 29 五月 2024 15:02:51 +0800 Subject: [PATCH] 调整上级观看消息的发送 --- src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java | 111 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 77 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java old mode 100644 new mode 100755 index a2fcf15..e65a579 --- a/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java +++ b/src/main/java/com/genersoft/iot/vmp/vmanager/gb28181/gbStream/GbStreamController.java @@ -1,21 +1,28 @@ package com.genersoft.iot.vmp.vmanager.gb28181.gbStream; +import com.genersoft.iot.vmp.conf.exception.ControllerException; +import com.genersoft.iot.vmp.conf.security.JwtUtils; import com.genersoft.iot.vmp.gb28181.bean.GbStream; -import com.genersoft.iot.vmp.storager.IVideoManagerStorager; -import com.genersoft.iot.vmp.vmanager.gb28181.gbStream.bean.GbStreamParam; import com.genersoft.iot.vmp.service.IGbStreamService; +import com.genersoft.iot.vmp.service.IPlatformService; +import com.genersoft.iot.vmp.service.IStreamPushService; +import com.genersoft.iot.vmp.vmanager.bean.ErrorCode; +import com.genersoft.iot.vmp.vmanager.gb28181.gbStream.bean.GbStreamParam; import com.github.pagehelper.PageInfo; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; -import io.swagger.annotations.ApiOperation; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.security.SecurityRequirement; +import io.swagger.v3.oas.annotations.tags.Tag; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.ObjectUtils; import org.springframework.web.bind.annotation.*; -@Api(tags = "瑙嗛娴佸叧鑱斿埌绾ц仈骞冲彴") -@CrossOrigin +import java.util.List; + +@Tag(name = "瑙嗛娴佸叧鑱斿埌绾ц仈骞冲彴") + @RestController @RequestMapping("/api/gbStream") public class GbStreamController { @@ -26,26 +33,47 @@ private IGbStreamService gbStreamService; @Autowired - private IVideoManagerStorager storager; + private IStreamPushService service; + + @Autowired + private IPlatformService platformService; /** * 鏌ヨ鍥芥爣閫氶亾 * @param page 褰撳墠椤� * @param count 姣忛〉鏉℃暟 + * @param platformId 骞冲彴ID * @return */ - @ApiOperation("鏌ヨ鍥芥爣閫氶亾") - @ApiImplicitParams({ - @ApiImplicitParam(name = "page", value = "褰撳墠椤�", required = true , dataTypeClass = Integer.class), - @ApiImplicitParam(name = "count", value = "姣忛〉鏉℃暟", required = true , dataTypeClass = Integer.class), - }) + @Operation(summary = "鏌ヨ鍥芥爣閫氶亾", security = @SecurityRequirement(name = JwtUtils.HEADER)) + @Parameter(name = "page", description = "褰撳墠椤�", required = true) + @Parameter(name = "count", description = "姣忛〉鏉℃暟", required = true) + @Parameter(name = "platformId", description = "骞冲彴ID", required = true) + @Parameter(name = "catalogId", description = "鐩綍ID") + @Parameter(name = "query", description = "鏌ヨ鍐呭") + @Parameter(name = "mediaServerId", description = "娴佸獟浣揑D") @GetMapping(value = "/list") @ResponseBody - public PageInfo<GbStream> list(@RequestParam(required = false)Integer page, - @RequestParam(required = false)Integer count){ + public PageInfo<GbStream> list(@RequestParam(required = true)Integer page, + @RequestParam(required = true)Integer count, + @RequestParam(required = true)String platformId, + @RequestParam(required = false)String catalogId, + @RequestParam(required = false)String query, + @RequestParam(required = false)String mediaServerId){ + if (ObjectUtils.isEmpty(catalogId)) { + catalogId = null; + } + if (ObjectUtils.isEmpty(query)) { + query = null; + } + if (ObjectUtils.isEmpty(mediaServerId)) { + mediaServerId = null; + } - return gbStreamService.getAll(page, count); + // catalogId 涓簄ull 鏌ヨ鏈湪骞冲彴涓嬪垎閰嶇殑鏁版嵁 + // catalogId 涓嶄负null 鏌ヨ骞冲彴涓嬭繖涓紝鐩綍涓嬬殑閫氶亾 + return gbStreamService.getAll(page, count, platformId, catalogId, query, mediaServerId); } @@ -54,18 +82,17 @@ * @param gbStreamParam * @return */ - @ApiOperation("绉婚櫎鍥芥爣鍏宠仈") - @ApiImplicitParams({ - @ApiImplicitParam(name = "gbStreamParam", value = "GbStreamParam", required = true, - dataTypeClass = GbStreamParam.class), - }) + @Operation(summary = "绉婚櫎鍥芥爣鍏宠仈", security = @SecurityRequirement(name = JwtUtils.HEADER)) @DeleteMapping(value = "/del") @ResponseBody - public Object del(@RequestBody GbStreamParam gbStreamParam){ - if (gbStreamService.delPlatformInfo(gbStreamParam.getPlatformId(), gbStreamParam.getGbStreams())) { - return "success"; + public void del(@RequestBody GbStreamParam gbStreamParam){ + + if (gbStreamParam.getGbStreams() == null || gbStreamParam.getGbStreams().isEmpty()) { + if (gbStreamParam.isAll()) { + gbStreamService.delAllPlatformInfo(gbStreamParam.getPlatformId(), gbStreamParam.getCatalogId()); + } }else { - return "fail"; + gbStreamService.delPlatformInfo(gbStreamParam.getPlatformId(), gbStreamParam.getGbStreams()); } } @@ -75,17 +102,33 @@ * @param gbStreamParam * @return */ - @ApiOperation("淇濆瓨鍥芥爣鍏宠仈") - @ApiImplicitParams({ - @ApiImplicitParam(name = "gbStreamParam", value = "GbStreamParam", required = true, dataTypeClass = GbStreamParam.class), - }) + @Operation(summary = "淇濆瓨鍥芥爣鍏宠仈", security = @SecurityRequirement(name = JwtUtils.HEADER)) @PostMapping(value = "/add") @ResponseBody - public Object add(@RequestBody GbStreamParam gbStreamParam){ - if (gbStreamService.addPlatformInfo(gbStreamParam.getGbStreams(), gbStreamParam.getPlatformId(), gbStreamParam.getCatalogId())) { - return "success"; + public void add(@RequestBody GbStreamParam gbStreamParam){ + if (gbStreamParam.getGbStreams() == null || gbStreamParam.getGbStreams().isEmpty()) { + if (gbStreamParam.isAll()) { + List<GbStream> allGBChannels = gbStreamService.getAllGBChannels(gbStreamParam.getPlatformId()); + gbStreamService.addPlatformInfo(allGBChannels, gbStreamParam.getPlatformId(), gbStreamParam.getCatalogId()); + } }else { - return "fail"; + gbStreamService.addPlatformInfo(gbStreamParam.getGbStreams(), gbStreamParam.getPlatformId(), gbStreamParam.getCatalogId()); } } + + /** + * 淇濆瓨鍥芥爣鍏宠仈 + * @param gbId + * @return + */ + @Operation(summary = "淇濆瓨鍥芥爣鍏宠仈", security = @SecurityRequirement(name = JwtUtils.HEADER)) + @GetMapping(value = "/addWithGbid") + @ResponseBody + public void add(String gbId, String platformGbId, @RequestParam(required = false) String catalogGbId){ + List<GbStream> gbStreams = gbStreamService.getGbChannelWithGbid(gbId); + if (gbStreams.isEmpty()) { + throw new ControllerException(ErrorCode.ERROR100.getCode(), "gbId鐨勪俊鎭湭鎵惧埌"); + } + gbStreamService.addPlatformInfo(gbStreams, platformGbId, catalogGbId); + } } -- Gitblit v1.8.0