diff --git a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/controller/StationVideoTypeController.java b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/controller/StationVideoTypeController.java index 95b2651..5f7c323 100644 --- a/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/controller/StationVideoTypeController.java +++ b/hzims-service/operational/src/main/java/com/hnac/hzims/operational/station/controller/StationVideoTypeController.java @@ -53,172 +53,186 @@ import java.util.Optional; @Api(value = "站点视频类型配置", tags = "站点视频类型配置") public class StationVideoTypeController extends BladeController { - private final IStationVideoTypeService stationVideoTypeService; - - private final ISysClient sysClient; - - private final IStationService stationService; - - /**秘钥appKey**/ - @Value("${hzims.videoProperties.appKey}") - private String appKey; - /**代理API网关nginx服务器ip端口**/ - @Value("${hzims.videoProperties.videoHost}") - private String videoHost; - /**秘钥appSecret**/ - @Value("${hzims.videoProperties.appSecret}") - private String appSecret; - - /** - * 分页 代码自定义代号 - */ - @ApiLog - @RequestMapping(value = "/list", method = {RequestMethod.GET, RequestMethod.POST}) - @ApiOperationSupport(order = 10) - @ApiOperation(value = "分页", notes = "传入stationVideoType") - @OperationAnnotation( - moduleName = "站点管理", - title = "视频配置",operatorType = OperatorType.MOBILE,businessType = BusinessType.GENCODE, - action = "分页查询") - public R> list(StationVideoTypeEntity entity, Query query) { - LambdaQueryWrapper queryWrapper = Condition.getQueryWrapper(new StationVideoTypeEntity(),entity); - queryWrapper.orderByAsc(StationVideoTypeEntity::getStationId).orderByAsc(StationVideoTypeEntity::getSort); - IPage pages = stationVideoTypeService.page(Condition.getPage(query), queryWrapper); - IPage vos = StationVideoTypeWrapper.builder().pageVO(pages); - List records = vos.getRecords(); - records.forEach(stationVideoTypeVO -> { - R deptR = sysClient.getDept(stationVideoTypeVO.getDeptId()); - if(deptR.isSuccess()){ - stationVideoTypeVO.setDeptName(Optional.ofNullable(deptR.getData()).map(Dept::getDeptName).orElse(null)); - } - }); - return R.data(vos); - } - - /** - * 新增 - */ - @PostMapping("/save") - @ApiOperationSupport(order = 20) - @ApiOperation(value = "新增") - public R save(@Valid @RequestBody StationVideoTypeEntity req) { - List list = stationVideoTypeService.list(Wrappers.lambdaQuery() - .eq(StationVideoTypeEntity::getStationId,req.getStationId()) - .eq(StationVideoTypeEntity::getName,req.getName()) - ); - StationVO stationVO = stationService.getStationByCode(req.getStationId()); - if(ObjectUtil.isNotEmpty(stationVO)){ - req.setCreateDept(stationVO.getRefDept()); - } - req.setAppKey(appKey); - req.setVideoHost(videoHost); - req.setAppSecret(appSecret); - return list.size()>0 ? R.fail(400,"该名称已录入数据,请找到相应记录做修改处理") : R.status(stationVideoTypeService.save(req)); - } - - /** - * 修改 代码自定义代号 - */ - @PostMapping("/update") - @ApiOperationSupport(order = 30) - @ApiOperation(value = "修改", notes = "传入stationVideoType") - public R update(@Valid @RequestBody StationVideoTypeEntity req) { - List list = stationVideoTypeService.list(Wrappers.lambdaQuery() - .eq(StationVideoTypeEntity::getStationId,req.getStationId()) - .eq(StationVideoTypeEntity::getName,req.getName()) - .ne(StationVideoTypeEntity::getId,req.getId()) - ); - return list.size()>0 ? R.fail(400,"该名称/视频源已录入数据,请找到相应记录做修改处理") : R.status(stationVideoTypeService.updateById(req)); - } - - /** - * 删除 代码自定义代号 - */ - @PostMapping("/remove") - @ApiOperationSupport(order = 40) - @ApiOperation(value = "逻辑删除", notes = "传入ids") - public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { - return R.status(stationVideoTypeService.deleteLogic(Func.toLongList(ids))); - } - - @ApiLog - @RequestMapping(value = "/getVideoMonitor", method = {RequestMethod.GET, RequestMethod.POST}) - @ApiOperationSupport(order = 50) - @ApiOperation(value = "获取视频监测列表", notes = "获取视频监测列表") - @OperationAnnotation(moduleName = "视频监控",title = "视频监控",operatorType = OperatorType.APPSYSTEMS,businessType = - BusinessType.GENCODE, - action = "获取视频监测列表") - public R> getVideoMonitor(){ - List result = stationVideoTypeService.getVideoMonitor(); - return R.data(result); - } - - @ApiLog - @RequestMapping(value = "/getById", method = {RequestMethod.GET, RequestMethod.POST}) - @ApiOperationSupport(order = 60) - @OperationAnnotation(moduleName = "视频监控",title = "视频监控",operatorType = OperatorType.APPSYSTEMS,businessType = BusinessType.GENCODE, - action = "获取视频监测对象") - @ApiOperation(value = "获取视频监测对象", notes = "获取视频监测对象") - public R getById(@RequestParam Long id,@RequestParam int streamType){ - return R.data(stationVideoTypeService.getById(id,streamType)); - } - @ApiLog - @RequestMapping(value = "/getHikVideo", method = {RequestMethod.GET, RequestMethod.POST}) - public R getHikVideo(){ - return R.data(stationVideoTypeService.getHikVideo()); - } - @ApiLog - @RequestMapping(value = "/getStationsByVideo", method = {RequestMethod.GET, RequestMethod.POST}) - @ApiOperationSupport(order = 70) - @ApiOperation(value = "获取视频对应站点", notes = "获取视频对应站点") - public R> getStationsByVideo() { - return R.data(stationVideoTypeService.getStationsByVideo()); - } - @ApiLog - @GetMapping("/getStationVideoOrderBySort") - @ApiOperationSupport(order = 80) - @ApiOperation(value = "根据站点、视频排序获取视频列表", notes = "根据站点、视频排序获取视频列表") - public R getStationVideoOrderBySort(StationVideoTypeDTO stationVideoTypeDTO,Query query) { - return R.data(stationVideoTypeService.getStationVideoOrderBySort(stationVideoTypeDTO,query)); - } - @ApiLog - @RequestMapping(value = "/getVideoByIdsAndType", method = {RequestMethod.GET, RequestMethod.POST}) - @ApiOperationSupport(order = 90) - @ApiOperation(value = "根据视频ID、视频流类型获取视频地址", notes = "根据视频ID、视频流类型获取视频地址") - public R> getVideoByIdsAndType(@RequestParam String ids, @RequestParam String type) { - return R.data(stationVideoTypeService.getVideoByIdsAndType(ids,type)); - } - @ApiLog - @GetMapping("/getVideoByIds") - @ApiOperationSupport(order = 100) - @ApiOperation(value = "根据视频ID获取视频地址", notes = "根据视频ID获取视频地址") - public R> getVideoByIds(@RequestParam String ids,@RequestParam String randomCode) { - return R.data(stationVideoTypeService.getVideoByIds(ids,randomCode)); - } - @ApiLog - @RequestMapping(value = "/getVideoReviewerToken",method = {RequestMethod.GET, RequestMethod.POST}) - public R getVideoReviewerToken() { - return R.data(stationVideoTypeService.getVideoReviewerToken()); - } - @ApiLog - @GetMapping("/getVideoMonitorByAgency") - @ApiOperationSupport(order = 110) - @ApiOperation(value = "获取云服务站点(清污机类型)视频", notes = "根获取代运维站点(清污机类型)视频") - public R> getVideoMonitorByAgency(@RequestParam @ApiParam("视频分类") String type) { - return R.data(stationVideoTypeService.getVideoMonitor(type)); - } - @ApiLog - @GetMapping("/getHikVisionStations") - @ApiOperationSupport(order = 120) - @ApiOperation(value = "获取海康视频区域列表", notes = "获取海康视频区域列表") - public R> getHikVisionStations() { - return R.data(stationVideoTypeService.getHikVisionStations()); - } - @ApiLog - @GetMapping("/getMonitorsByStation") - @ApiOperationSupport(order = 130) - @ApiOperation(value = "获取海康威视站点下的检测点", notes = "获取海康威视站点下的检测点") - public R>> getMonitorsByStation(@RequestParam String stationId) { - return R.data(stationVideoTypeService.getMonitorsByStation(stationId)); - } + private final IStationVideoTypeService stationVideoTypeService; + + private final ISysClient sysClient; + + private final IStationService stationService; + + /** 秘钥appKey **/ + @Value("${hzims.videoProperties.appKey}") + private String appKey; + /** 代理API网关nginx服务器ip端口 **/ + @Value("${hzims.videoProperties.videoHost}") + private String videoHost; + /** 秘钥appSecret **/ + @Value("${hzims.videoProperties.appSecret}") + private String appSecret; + + /** + * 分页 代码自定义代号 + */ + @ApiLog + @RequestMapping(value = "/list", method = {RequestMethod.GET, RequestMethod.POST}) + @ApiOperationSupport(order = 10) + @ApiOperation(value = "分页", notes = "传入stationVideoType") + @OperationAnnotation( + moduleName = "站点管理", + title = "视频配置", operatorType = OperatorType.MOBILE, businessType = BusinessType.GENCODE, + action = "分页查询") + public R> list(StationVideoTypeEntity entity, Query query) { + LambdaQueryWrapper queryWrapper = Condition.getQueryWrapper(new StationVideoTypeEntity(), entity); + queryWrapper.orderByAsc(StationVideoTypeEntity::getStationId).orderByAsc(StationVideoTypeEntity::getSort); + IPage pages = stationVideoTypeService.page(Condition.getPage(query), queryWrapper); + IPage vos = StationVideoTypeWrapper.builder().pageVO(pages); + List records = vos.getRecords(); + records.forEach(stationVideoTypeVO -> { + R deptR = sysClient.getDept(stationVideoTypeVO.getDeptId()); + if (deptR.isSuccess()) { + stationVideoTypeVO.setDeptName(Optional.ofNullable(deptR.getData()).map(Dept::getDeptName).orElse(null)); + } + }); + return R.data(vos); + } + + /** + * 新增 + */ + @PostMapping("/save") + @ApiOperationSupport(order = 20) + @ApiOperation(value = "新增") + public R save(@Valid @RequestBody StationVideoTypeEntity req) { + List list = stationVideoTypeService.list(Wrappers.lambdaQuery() + .eq(StationVideoTypeEntity::getStationId, req.getStationId()) + .eq(StationVideoTypeEntity::getName, req.getName()) + ); + StationVO stationVO = stationService.getStationByCode(req.getStationId()); + if (ObjectUtil.isNotEmpty(stationVO)) { + req.setCreateDept(stationVO.getRefDept()); + } + req.setAppKey(appKey); + req.setVideoHost(videoHost); + req.setAppSecret(appSecret); + return list.size() > 0 ? R.fail(400, "该名称已录入数据,请找到相应记录做修改处理") : R.status(stationVideoTypeService.save(req)); + } + + /** + * 修改 代码自定义代号 + */ + @PostMapping("/update") + @ApiOperationSupport(order = 30) + @ApiOperation(value = "修改", notes = "传入stationVideoType") + public R update(@Valid @RequestBody StationVideoTypeEntity req) { + List list = stationVideoTypeService.list(Wrappers.lambdaQuery() + .eq(StationVideoTypeEntity::getStationId, req.getStationId()) + .eq(StationVideoTypeEntity::getName, req.getName()) + .ne(StationVideoTypeEntity::getId, req.getId()) + ); + return list.size() > 0 ? R.fail(400, "该名称/视频源已录入数据,请找到相应记录做修改处理") : R.status(stationVideoTypeService.updateById(req)); + } + + /** + * 删除 代码自定义代号 + */ + @PostMapping("/remove") + @ApiOperationSupport(order = 40) + @ApiOperation(value = "逻辑删除", notes = "传入ids") + public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { + return R.status(stationVideoTypeService.deleteLogic(Func.toLongList(ids))); + } + + @ApiLog + @RequestMapping(value = "/getVideoMonitor", method = {RequestMethod.GET, RequestMethod.POST}) + @ApiOperationSupport(order = 50) + @ApiOperation(value = "获取视频监测列表", notes = "获取视频监测列表") + public R> getVideoMonitor() { + List result = stationVideoTypeService.getVideoMonitor(); + return R.data(result); + } + + @ApiLog + @RequestMapping(value = "/getById", method = {RequestMethod.GET, RequestMethod.POST}) + @ApiOperationSupport(order = 60) + @ApiOperation(value = "获取视频监测对象", notes = "获取视频监测对象") + public R getById(@RequestParam Long id, @RequestParam int streamType) { + return R.data(stationVideoTypeService.getById(id, streamType)); + } + + @ApiLog + @RequestMapping(value = "/getHikVideo", method = {RequestMethod.GET, RequestMethod.POST}) + public R getHikVideo() { + return R.data(stationVideoTypeService.getHikVideo()); + } + + @ApiLog + @RequestMapping(value = "/getStationsByVideo", method = {RequestMethod.GET, RequestMethod.POST}) + @ApiOperationSupport(order = 70) + @ApiOperation(value = "获取视频对应站点", notes = "获取视频对应站点") + public R> getStationsByVideo() { + return R.data(stationVideoTypeService.getStationsByVideo()); + } + + @ApiLog + @GetMapping("/getStationVideoOrderBySort") + @ApiOperationSupport(order = 80) + @ApiOperation(value = "根据站点、视频排序获取视频列表", notes = "根据站点、视频排序获取视频列表") + public R getStationVideoOrderBySort(StationVideoTypeDTO stationVideoTypeDTO, Query query) { + return R.data(stationVideoTypeService.getStationVideoOrderBySort(stationVideoTypeDTO, query)); + } + + @ApiLog + @RequestMapping(value = "/getVideoByIdsAndType", method = {RequestMethod.GET, RequestMethod.POST}) + @ApiOperationSupport(order = 90) + @ApiOperation(value = "根据视频ID、视频流类型获取视频地址", notes = "根据视频ID、视频流类型获取视频地址") + public R> getVideoByIdsAndType(@RequestParam String ids, @RequestParam String type) { + return R.data(stationVideoTypeService.getVideoByIdsAndType(ids, type)); + } + + @ApiLog + @GetMapping("/getVideoByIds") + @ApiOperationSupport(order = 100) + @ApiOperation(value = "根据视频ID获取视频地址", notes = "根据视频ID获取视频地址") + public R> getVideoByIds(@RequestParam String ids, @RequestParam String randomCode) { + return R.data(stationVideoTypeService.getVideoByIds(ids, randomCode)); + } + + @ApiLog + @RequestMapping(value = "/getVideoReviewerToken", method = {RequestMethod.GET, RequestMethod.POST}) + public R getVideoReviewerToken() { + return R.data(stationVideoTypeService.getVideoReviewerToken()); + } + + @ApiLog + @GetMapping("/getVideoMonitorByAgency") + @ApiOperationSupport(order = 110) + @ApiOperation(value = "获取云服务站点(清污机类型)视频", notes = "根获取代运维站点(清污机类型)视频") + public R> getVideoMonitorByAgency(@RequestParam @ApiParam("视频分类") String type) { + return R.data(stationVideoTypeService.getVideoMonitor(type)); + } + + @ApiLog + @GetMapping("/getHikVisionStations") + @ApiOperationSupport(order = 120) + @ApiOperation(value = "获取海康视频区域列表", notes = "获取海康视频区域列表") + public R> getHikVisionStations() { + return R.data(stationVideoTypeService.getHikVisionStations()); + } + + @ApiLog + @GetMapping("/getMonitorsByStation") + @ApiOperationSupport(order = 130) + @ApiOperation(value = "获取海康威视站点下的检测点", notes = "获取海康威视站点下的检测点") + public R>> getMonitorsByStation(@RequestParam String stationId) { + return R.data(stationVideoTypeService.getMonitorsByStation(stationId)); + } + + + @OperationAnnotation(moduleName = "视频监控", title = "视频监控", operatorType = OperatorType.APPSYSTEMS, businessType = + BusinessType.GENCODE, + action = "获取视频监测列表") + @GetMapping("/videoimages") + public R videoimages() { + return R.success("视频监控处理成功"); + } + }