From 259b76217c491e7c00257e985aa70bc68dd2e757 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期四, 30 三月 2023 21:43:36 +0800
Subject: [PATCH] 获取图片改成多次获取
---
ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java | 4 +-
ycl-platform/src/main/java/com/ycl/controller/platformApi/AlarmController.java | 41 ++++++++++++--------
ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java | 4 +
ycl-platform/src/main/java/com/ycl/service/video/impl/VideoAlarmReportServiceImpl.java | 50 +++++++++++++------------
4 files changed, 55 insertions(+), 44 deletions(-)
diff --git a/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
index 6d3e490..a9ce685 100644
--- a/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
+++ b/ycl-common/src/main/java/com/ycl/service/oss/impl/OssServiceImpl.java
@@ -47,7 +47,7 @@
ossClient.shutdown();
// 鎶婁笂浼犵殑鏂囦欢璺緞杩斿洖 锛堟墜鍔ㄦ嫾鎺ワ級
// 杩欓噷璁剧疆鍥剧墖鏈夋晥鏃堕棿 鎴戣缃簡30骞�
- Date expiration = new Date(System.currentTimeMillis() + 946080000 * 1000);
+ Date expiration = new Date(System.currentTimeMillis() + (long) 946080000 * 1000);
String url = ossClient.generatePresignedUrl(bucketName, fileName, expiration).toString();
return url;
@@ -118,7 +118,7 @@
ossClient.shutdown();
// 鎶婁笂浼犵殑鏂囦欢璺緞杩斿洖 锛堟墜鍔ㄦ嫾鎺ワ級
// 杩欓噷璁剧疆鍥剧墖鏈夋晥鏃堕棿 鎴戣缃簡30骞�
- Date expiration = new Date(System.currentTimeMillis() + 946080000 * 1000);
+ Date expiration = new Date(System.currentTimeMillis() + (long) 946080000 * 1000);
String url = ossClient.generatePresignedUrl(bucketName, fileName, expiration).toString();
System.out.println("oss涓婁紶鎴愬姛锛�" + url);
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 d848cee..276ce3a 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
@@ -31,6 +31,8 @@
public class AlarmController {
private IVideoAlarmReportService videoAlarmReportService;
+ private static Integer index = 0;
+
@Autowired
private VideoUtil videoUtil;
@@ -67,28 +69,33 @@
// @GetMapping(value = "/img")
@ResponseBody
public byte[] getImages(HttpServletResponse response, @RequestParam String fileUrl, @RequestParam String OSSAccessKeyId, @RequestParam String Signature) {
+
+ index = 0;
+ return getBytes(fileUrl, OSSAccessKeyId, Signature);
+
+ }
+
+ private byte[] getBytes(String fileUrl, String OSSAccessKeyId, String Signature) {
try {
+ if (index < 10) {
+ index++;
+ System.out.println("getImages鑾峰彇鍥剧墖鍦板潃锛�" + fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
+ URL url = new URL(fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
+ HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+ conn.setRequestMethod("GET");
+ conn.setConnectTimeout(10 * 1000);
+ conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
- System.out.println("getImages鑾峰彇鍥剧墖鍦板潃锛�" + fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
- URL url = new URL(fileUrl + "&OSSAccessKeyId=" + OSSAccessKeyId + "&Signature=" + Signature);
- HttpURLConnection conn = (HttpURLConnection) url.openConnection();
- conn.setRequestMethod("GET");
- conn.setConnectTimeout(10 * 1000);
- conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
+ InputStream inputStream = conn.getInputStream();// 閫氳繃杈撳叆娴佽幏鍙栧浘鐗囨暟鎹�
- InputStream inputStream = conn.getInputStream();// 閫氳繃杈撳叆娴佽幏鍙栧浘鐗囨暟鎹�
+ byte[] data = readInputStream(inputStream);
+ System.out.println("getImages鑾峰彇鍥剧墖鎴愬姛");
-
- byte[] data = readInputStream(inputStream);
- System.out.println("getImages鑾峰彇鍥剧墖鎴愬姛");
-
-
- System.out.println("getImages -鍥剧墖64");
- System.out.println(Base64.getEncoder().encodeToString(data));
- return data;
-
+ return data;
+ }
} catch (Exception e) {
- System.out.println("getImages鑾峰彇鍥剧墖澶辫触锛�" + e.getMessage());
+ System.out.println(index + "getImages鑾峰彇鍥剧墖澶辫触锛�" + e.getMessage());
+ getBytes(fileUrl, OSSAccessKeyId, Signature);
// e.printStackTrace();
}
return null;
diff --git a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java
index 6c5b489..8794a56 100644
--- a/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java
+++ b/ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java
@@ -61,7 +61,9 @@
public void saveFromVideo(List<VideoAlarmReport> videoAlarmReports) {
for (VideoAlarmReport videoAlarmReport : videoAlarmReports) {
VideoPoint videoPoint = null;
- LambdaQueryWrapper<VideoPoint> queryWrapper = new LambdaQueryWrapper<VideoPoint>().eq(VideoPoint::getPlatResourceId, videoAlarmReport.getPlatResourceId());
+ LambdaQueryWrapper<VideoPoint> queryWrapper = new LambdaQueryWrapper<VideoPoint>()
+ .eq(VideoPoint::getPlatResourceId, videoAlarmReport.getPlatResourceId())
+ .or().eq(VideoPoint::getCode, videoAlarmReport.getPlatResourceId());
List<VideoPoint> pointList = videoPointService.list(queryWrapper);
if (pointList.size() > 0) {
videoPoint = pointList.get(0);
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 e7f2d55..5873897 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
@@ -147,37 +147,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);
- inputStream = new ByteArrayInputStream(os.toByteArray());
+ ByteArrayOutputStream os = new ByteArrayOutputStream();
+ ImageIO.write(image, extension, os);
+ inputStream = new ByteArrayInputStream(os.toByteArray());
}
picData = ossService.uploadImages(inputStream, extension);
} catch (Exception e) {
- e.printStackTrace();
+ System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触---鍥剧墖涓婁紶澶辫触锛�" + e.getMessage());
+// e.printStackTrace();
}
}
List<VideoAlarmReport> videoAlarmReports = new ArrayList<>();
@@ -211,7 +212,8 @@
this.updateById(videoAlarmReport);
}
} catch (ParseException e) {
- e.printStackTrace();
+ System.out.println("淇濆瓨鎶ヨ鏁版嵁澶辫触锛�" + e.getMessage());
+// e.printStackTrace();
}
}
}
--
Gitblit v1.8.0