From e89d76539cc91bd13acabbf25a12312d2f8bba56 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期二, 16 十二月 2025 21:27:06 +0800
Subject: [PATCH] 超过17点不接受报警
---
ycl-platform/src/main/java/com/ycl/service/caseHandler/impl/ViolationsServiceImpl.java | 61 ++++++++++++++++++++++++++++--
1 files changed, 57 insertions(+), 4 deletions(-)
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 b97fd39..27af299 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
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.BeanUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.hikvision.artemis.sdk.util.HttpUtils;
import com.ycl.common.util.UtilNumber;
import com.ycl.dto.video.HKAlarmParam;
import com.ycl.entity.caseHandler.BaseCase;
@@ -21,15 +22,23 @@
import com.ycl.service.caseHandler.IBaseCaseService;
import com.ycl.service.caseHandler.IViolationsService;
import com.ycl.service.dict.IDataDictionaryService;
+import com.ycl.service.oss.OssService;
import com.ycl.service.region.ISccgRegionService;
import com.ycl.service.resources.IImageResourcesService;
import com.ycl.service.video.IVideoAlarmReportService;
import com.ycl.service.video.impl.IVideoPointService;
import com.ycl.vo.cockpit.enforcementEvents.VideoAndAreaVO;
+import net.coobird.thumbnailator.Thumbnails;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
import java.time.Instant;
import java.time.LocalDateTime;
import java.time.ZoneId;
@@ -54,6 +63,8 @@
private IImageResourcesService imageResourcesService;
private ISccgRegionService regionService;
private IVideoAlarmReportService videoAlarmReportService;
+ @Autowired
+ private OssService ossService;
@Resource
BaseCaseMapper baseCaseMapper;
@@ -99,6 +110,12 @@
Violations violations = new Violations();
VideoPoint videoPoint = videoPointService.getByCode(videoAlarmReport.getPlatResourceId());
if (videoPoint != null) {
+
+ // 鏃堕棿瓒呰繃17鐐癸紝妗堜欢涓轰笉澶勭悊
+ if (videoAlarmReport.getAlarmTime().getHour() > 17) {
+ baseCase.setState(4);
+ }
+
baseCase.setLatitude(videoPoint.getLatitude());
baseCase.setLongitude(videoPoint.getLongitude());
baseCase.setStreetId(videoPoint.getStreetId());
@@ -128,7 +145,7 @@
imageResources.setCreateTime(LocalDateTime.now());
ImageResources imageResources1 = new ImageResources();
- BeanUtil.copyProperties(imageResources,imageResources1);
+ BeanUtil.copyProperties(imageResources, imageResources1);
imageResources1.setType("01");
imageResourcesService.save(imageResources1);
@@ -155,6 +172,11 @@
alarmTime(alarmTime).build();
Violations violations = new Violations();
+ // 鏃堕棿瓒呰繃17鐐癸紝妗堜欢涓轰笉澶勭悊
+ if (alarmTime.getHour() > 17) {
+ baseCase.setState(4);
+ }
+
baseCase.setLatitude(alarmParam.getLatitude());
baseCase.setLongitude(alarmParam.getLongitude());
if (region != null) {
@@ -180,8 +202,10 @@
VideoAlarmReport videoAlarmReport = new VideoAlarmReport();
videoAlarmReport.setPlatResourceId(alarmParam.getEventNumber());
+ String img0 = "";
if (imgs.length > 0) {
- videoAlarmReport.setPicData(imgs[0]);
+ img0 = saveOSS(imgs[0]);
+ videoAlarmReport.setPicData(img0);
}
videoAlarmReport.setAlarmTime(alarmTime);
videoAlarmReport.setAlarmId(alarmParam.getEventId());
@@ -197,11 +221,11 @@
ImageResources imageResources = new ImageResources();
imageResources.setType("04");
imageResources.setBelongToId(baseCase.getId());
- imageResources.setUrl(imgs[i]);
+ imageResources.setUrl(i == 0 ? img0 : saveOSS(imgs[i]));
imageResources.setCreateTime(LocalDateTime.now());
ImageResources imageResources1 = new ImageResources();
- BeanUtil.copyProperties(imageResources,imageResources1);
+ BeanUtil.copyProperties(imageResources, imageResources1);
imageResources1.setType("01");
imageResourcesService.save(imageResources1);
@@ -213,6 +237,35 @@
}
+ private String saveOSS(String hkUrl) {
+ InputStream inputStream = getImageStream(hkUrl);
+ if (inputStream != null) {
+ String picData = ossService.uploadImages(inputStream, "png", 0);
+ return picData;
+ } else return "";
+ }
+
+ private InputStream getImageStream(String url) {
+ try {
+ HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
+ connection.setReadTimeout(5000);
+ connection.setConnectTimeout(5000);
+ connection.setRequestMethod("GET");
+ if (connection.getResponseCode() == HttpURLConnection.HTTP_OK) {
+ InputStream inputStream = connection.getInputStream();
+ ByteArrayOutputStream outs = new ByteArrayOutputStream();
+ Thumbnails.of(inputStream).scale(0.6).outputQuality(1).toOutputStream(outs);
+ InputStream ins = new ByteArrayInputStream(outs.toByteArray());
+ return ins;
+ }
+ } catch (IOException e) {
+ System.out.println("鑾峰彇缃戠粶鍥剧墖鍑虹幇寮傚父锛屽浘鐗囪矾寰勪负锛�" + url);
+
+ e.printStackTrace();
+ }
+ return null;
+ }
+
@Override
public List<VideoAndAreaVO> selectType() {
return baseCaseMapper.selectType();
--
Gitblit v1.8.0