From 3ce2963dec8600b6c7be58015ff6469ab62d2a6f Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期一, 13 三月 2023 22:08:44 +0800 Subject: [PATCH] 获取图片 --- ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 54 insertions(+), 5 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java b/ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java index 00f1924..536a3b1 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java @@ -1,17 +1,24 @@ package com.ycl.controller.platformApi; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.ycl.api.CommonResult; import com.ycl.dto.video.AlarmParam; import com.ycl.enums.common.ResultCode; import com.ycl.service.video.IVideoAlarmReportService; +import com.ycl.util.VideoUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import lombok.SneakyThrows; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.HttpURLConnection; +import java.net.URL; /** * @author admin @@ -21,7 +28,11 @@ @RequestMapping("/API") public class AlarmController { + private IVideoAlarmReportService videoAlarmReportService; + + @Autowired + private VideoUtil videoUtil; @Autowired public void setVideoAlarmReportService(IVideoAlarmReportService videoAlarmReportService) { @@ -35,4 +46,42 @@ return new CommonResult(ResultCode.SUCCESS.getCode(), ResultCode.SUCCESS.getMessage()); } -} + @GetMapping("/Video/{code}/{subType}") + @ApiOperation(value = "璁惧鑾峰彇鐩戞帶鍦板潃") + @SneakyThrows + public CommonResult getMonitorAddress(@PathVariable String code, @PathVariable Integer subType, + @RequestParam(required = false) String scheme) { + + if (subType == null) { + subType = 1; + } + if (!StringUtils.isNotBlank(scheme)) { + scheme = "RTSP"; + } + return CommonResult.successApi(videoUtil.getVideo(code, scheme, subType)); + } + + + @ApiOperation(value = "鑾峰彇鍥剧墖") + @GetMapping(value = "/img", produces = MediaType.IMAGE_PNG_VALUE) + @ResponseBody + public byte[] getImages(HttpServletResponse response, @RequestParam String fileUrl) { + try { + URL url = new URL(fileUrl); + HttpURLConnection conn = (HttpURLConnection) url.openConnection(); + conn.setRequestMethod("GET"); + conn.setConnectTimeout(5 * 1000); + InputStream inputStream = conn.getInputStream();// 閫氳繃杈撳叆娴佽幏鍙栧浘鐗囨暟鎹� + + byte[] bytes = new byte[inputStream.available()]; + inputStream.read(bytes, 0, inputStream.available()); + + return bytes; + + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + +} \ No newline at end of file -- Gitblit v1.8.0