From 1cad14bca191807e18705c3a5526eda8151be439 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期一, 14 四月 2025 23:10:22 +0800
Subject: [PATCH] 批量审核和图片保存bug

---
 ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java |   71 ++++++++++++++++++++++-------------
 1 files changed, 44 insertions(+), 27 deletions(-)

diff --git a/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
index cd69ba3..dfc786e 100644
--- a/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java
@@ -26,6 +26,7 @@
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.time.Instant;
+import java.time.LocalDateTime;
 import java.time.ZoneId;
 import java.util.ArrayList;
 import java.util.Date;
@@ -147,37 +148,38 @@
                 InputStream inputStream = new ByteArrayInputStream(data);
                 try {
 //                    濡傛灉List<AlarmDataParam>鍚堢悊
-                    if (alarmParam.getAlarmData()!=null && alarmParam.getAlarmData().size()!=0) {
+                    if (alarmParam.getAlarmData() != null && alarmParam.getAlarmData().size() != 0) {
 
-                            BufferedImage image = ImageIO.read(inputStream);
-                            Graphics2D g2 = (Graphics2D) image.getGraphics();
-                            g2.setColor(Color.RED);
-                            g2.setStroke(new BasicStroke(3.0f));
+                        BufferedImage image = ImageIO.read(inputStream);
+                        Graphics2D g2 = (Graphics2D) image.getGraphics();
+                        g2.setColor(Color.RED);
+                        g2.setStroke(new BasicStroke(3.0f));
 
-                            List<AlarmDataParam> alarmData = alarmParam.getAlarmData();
+                        List<AlarmDataParam> alarmData = alarmParam.getAlarmData();
 
-                            alarmData.forEach(new Consumer<AlarmDataParam>() {
-                                @Override
-                                public void accept(AlarmDataParam alarmDataParam) {
-                                    List<AlarmObject> alarmObject = alarmDataParam.getAlarmObject();
-                                    alarmObject.forEach(new Consumer<AlarmObject>() {
-                                        @Override
-                                        public void accept(AlarmObject alarmObject) {
-                                            ObjectRect rect = alarmObject.getObjectRect();
-                                            g2.drawRect(rect.getX(), rect.getY(), rect.getW(), rect.getH());
-                                        }
-                                    });
-                                }
-                            });
+                        alarmData.forEach(new Consumer<AlarmDataParam>() {
+                            @Override
+                            public void accept(AlarmDataParam alarmDataParam) {
+                                List<AlarmObject> alarmObject = alarmDataParam.getAlarmObject();
+                                alarmObject.forEach(new Consumer<AlarmObject>() {
+                                    @Override
+                                    public void accept(AlarmObject alarmObject) {
+                                        ObjectRect rect = alarmObject.getObjectRect();
+                                        g2.drawRect(rect.getX(), rect.getY(), rect.getW(), rect.getH());
+                                    }
+                                });
+                            }
+                        });
 
-                            ByteArrayOutputStream os = new ByteArrayOutputStream();
-                            ImageIO.write(image, extension, os);
-                            ByteArrayInputStream inputStream1 = new ByteArrayInputStream(os.toByteArray());
+                        ByteArrayOutputStream os = new ByteArrayOutputStream();
+                        ImageIO.write(image, extension, os);
+                        inputStream = new ByteArrayInputStream(os.toByteArray());
 
                     }
-                    picData = ossService.uploadImages(inputStream, extension);
+                    picData = ossService.uploadImages(inputStream, extension,0);
                 } catch (Exception e) {
-                    e.printStackTrace();
+                    System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触---鍥剧墖涓婁紶澶辫触锛�" + e.getMessage());
+//                    e.printStackTrace();
                 }
             }
             List<VideoAlarmReport> videoAlarmReports = new ArrayList<>();
@@ -211,14 +213,29 @@
                         this.updateById(videoAlarmReport);
                     }
                 } catch (ParseException e) {
-                    e.printStackTrace();
+                    System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触锛�" + e.getMessage());
+//                    e.printStackTrace();
                 }
             }
-
-
         }
     }
 
+    @Override
+    public void saveFromHK(HKAlarmParam alarmParam) {
+        if (alarmParam != null) {
+            violationsService.saveFromHKVideo(alarmParam);
+        }
+    }
+
+    @Override
+    public List<VideoAlarmReport> findByChannelAndAlarmNameAndTime(String channel, String alarmName, LocalDateTime alarmTime) {
+
+        LambdaQueryWrapper<VideoAlarmReport> queryWrapper = new LambdaQueryWrapper<VideoAlarmReport>()
+                .eq(VideoAlarmReport::getChannel, channel).eq(VideoAlarmReport::getAlarmName, alarmName)
+                .between(VideoAlarmReport::getAlarmTime, alarmTime.plusMinutes(-3), alarmTime.plusMinutes(3));
+        return this.list(queryWrapper);
+    }
+
     private List<VideoAlarmReport> getByAlarmId(String alarmId) {
         LambdaQueryWrapper<VideoAlarmReport> queryWrapper = new LambdaQueryWrapper<VideoAlarmReport>().eq(VideoAlarmReport::getAlarmId, alarmId);
         return this.list(queryWrapper);

--
Gitblit v1.8.0