zhanghua
2022-12-12 d1c8038c4de521428e52d838efb106e46f41a997
视频算法接口修改
2个文件已修改
20 ■■■■■ 已修改文件
ycl-platform/src/main/java/com/ycl/dto/video/AlarmParam.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/dto/video/AlarmParam.java
@@ -28,5 +28,5 @@
     * 报警信息(通常行为类算法报警一次只会包含一个报警信息。纯单帧图片检测类分析服务有可能会出现同一张图,对应多个不同算法的检测结果的情况,从而上报多个报警信息)
     */
    @JsonProperty("AlarmData")
    private List<AlarmDataParam> alarmData;
    private AlarmDataParam alarmData;
}
ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
@@ -1,5 +1,6 @@
package com.ycl.service.video.impl;
import com.alibaba.druid.util.StringUtils;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.dto.video.AlarmDataParam;
@@ -49,10 +50,11 @@
    @Override
    public void save(AlarmParam alarmParam) {
        if (alarmParam != null && alarmParam.getAlarmData().size() > 0) {
        if (alarmParam != null && alarmParam.getAlarmData() != null) {
            CameraInfParam cameraInf = alarmParam.getCameraInf();
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX");
            String picData = "";
            if (!StringUtils.isEmpty(alarmParam.getPicData())) {
            String[] strings = alarmParam.getPicData().split(",");
            String extension = "jpg";
@@ -60,9 +62,13 @@
            InputStream inputStream = new ByteArrayInputStream(data);
            try {
                picData = mediaFileUtil.savePicture(inputStream, extension);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
                List<VideoAlarmReport> videoAlarmReports = new ArrayList<>();
                for (int i = 0; i < alarmParam.getAlarmData().size(); i++) {
                    AlarmDataParam alarmData = alarmParam.getAlarmData().get(i);
//                for (int i = 0; i < alarmParam.getAlarmData().size(); i++) {
            AlarmDataParam alarmData = alarmParam.getAlarmData();
                    /******************** 处理图片 **********************/
                    try {
                        Date date = sdf.parse(alarmData.getAlarmTime());
@@ -82,13 +88,11 @@
                    } catch (ParseException e) {
                        e.printStackTrace();
                    }
                }
//                }
                this.saveBatch(videoAlarmReports, videoAlarmReports.size());
                violationsService.saveFromVideo(videoAlarmReports);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
}