zhanghua
2023-12-11 a9674f2fdd767d37a920e08535d8ab7d88746796
ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java
@@ -23,6 +23,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.bind.DatatypeConverter;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
@@ -71,7 +72,7 @@
    @PostMapping("/HK/alarmReport")
    @LogSave(operationType = "报警管理", contain = "海康视频报警推送")
    public CommonResult hkAlarmReport(@RequestBody @Validated HKAlarmParam alarmParam) {
//        System.out.println("保存报警数据:" + JSONObject.toJSONString(alarmParam));
        System.out.println("海康视频报警推送API:" + JSONObject.toJSONString(alarmParam));
        videoAlarmReportService.saveFromHK(alarmParam);
        return new CommonResult(ResultCode.SUCCESS.getCode(), ResultCode.SUCCESS.getMessage());
    }
@@ -120,12 +121,28 @@
    public byte[] getImages(HttpServletRequest request, HttpServletResponse response,
                            @RequestParam String fileUrl, @RequestParam(required = false) String OSSAccessKeyId,
                            @RequestParam(required = false) String Signature) {
        String sessionId = request.getSession().getId();
        sessionDic.put(sessionId, 0);
        return getBytes(fileUrl, OSSAccessKeyId, Signature, sessionId);
        if (StringUtils.isNotBlank(fileUrl)) {
            String sessionId = request.getSession().getId();
            sessionDic.put(sessionId, 0);
            return getBytes(fileUrl, OSSAccessKeyId, Signature, sessionId);
        } else {
            return null;
        }
    }
    @ApiOperation(value = "获取图片")
    @GetMapping(value = "/img/base64")
//    @GetMapping(value = "/img")
    @ResponseBody
    public String getImagesBase64(HttpServletRequest request, HttpServletResponse response,
                                  @RequestParam String fileUrl, @RequestParam(required = false) String OSSAccessKeyId,
                                  @RequestParam(required = false) String Signature) {
        String sessionId = request.getSession().getId();
        sessionDic.put(sessionId, 0);
        byte[] bytes = getBytes(fileUrl, OSSAccessKeyId, Signature, sessionId);
        String base64 = DatatypeConverter.printBase64Binary(bytes);
        return base64;
    }
    @GetMapping(value = "/index")
    @ResponseBody
@@ -141,7 +158,12 @@
                sessionDic.remove(sessionId);
                fileUrl = fileUrl.replace("Expires", "v");
                System.out.println("getImages获取图片地址:" + fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
                URL url = new URL(fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
                URL url = null;
                if (StringUtils.isNotBlank(OSSAccessKeyId) && StringUtils.isNotBlank(Signature)) {
                    url = new URL(fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
                } else {
                    url = new URL(fileUrl);
                }
                HttpURLConnection conn = (HttpURLConnection) url.openConnection();
                conn.setRequestMethod("GET");
                conn.setConnectTimeout(10 * 1000);