From b2001a7042d511cea1c1b2000edca57253d992ad Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期六, 20 十二月 2025 16:21:51 +0800
Subject: [PATCH] 时间控制修改
---
ycl-platform/src/main/java/com/dahua/netsdk/lib/callback/impl/AnalyzerDataCB.java | 337 +++++++++++++++++++++++++++++++++++--------------------
1 files changed, 213 insertions(+), 124 deletions(-)
diff --git a/ycl-platform/src/main/java/com/dahua/netsdk/lib/callback/impl/AnalyzerDataCB.java b/ycl-platform/src/main/java/com/dahua/netsdk/lib/callback/impl/AnalyzerDataCB.java
index f1b14bc..c436f9e 100644
--- a/ycl-platform/src/main/java/com/dahua/netsdk/lib/callback/impl/AnalyzerDataCB.java
+++ b/ycl-platform/src/main/java/com/dahua/netsdk/lib/callback/impl/AnalyzerDataCB.java
@@ -3,8 +3,12 @@
import java.io.ByteArrayInputStream;
import java.io.File;
import java.nio.charset.Charset;
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
import java.util.Objects;
+import com.alibaba.druid.util.StringUtils;
import com.alibaba.fastjson.JSON;
import com.dahua.netsdk.lib.Utils;
import com.dahua.netsdk.lib.enumeration.EM_EVENT_IVS_TYPE;
@@ -12,23 +16,33 @@
import com.sun.jna.Pointer;
import com.dahua.netsdk.lib.NetSDKLib;
import com.dahua.netsdk.lib.ToolKits;
+import com.ycl.common.constant.GlobalQueue;
import com.ycl.entity.video.VideoAlarmReport;
+import com.ycl.entity.video.VideoPoint;
+import com.ycl.service.caseHandler.IViolationsService;
+import com.ycl.service.caseHandler.impl.ViolationsServiceImpl;
import com.ycl.service.oss.OssService;
+import com.ycl.service.oss.impl.OssServiceImpl;
+import com.ycl.service.redis.RedisService;
+import com.ycl.service.video.IVideoAlarmReportService;
+import com.ycl.service.video.impl.IVideoPointService;
+import com.ycl.service.video.impl.VideoAlarmReportServiceImpl;
+import com.ycl.service.video.impl.VideoPointServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
/**
* 鏅鸿兘鎶ヨ浜嬩欢鍥炶皟
*/
+@Component
public class AnalyzerDataCB implements NetSDKLib.fAnalyzerDataCallBack {
-
-
- @Autowired
- private OssService ossService;
private final File picturePath;
private static AnalyzerDataCB instance;
- private AnalyzerDataCB() {
+ public AnalyzerDataCB() {
picturePath = new File("./AnalyzerPicture/");
if (!picturePath.exists()) {
picturePath.mkdirs();
@@ -84,7 +98,7 @@
ToolKits.GetPointerData(pAlarmInfo, msg);
String Picture = picturePath + "\\" + System.currentTimeMillis() + ".jpg";
ToolKits.savePicture(pBuffer, 0, dwBufSize, Picture);
- System.out.println(" 鏂楁浜嬩欢 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID);
+// System.out.println(" 鏂楁浜嬩欢 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID);
break;
}
case EVENT_IVS_RIOTERDETECTION: // 鑱氫紬浜嬩欢
@@ -101,115 +115,179 @@
{
NetSDKLib.DEV_EVENT_MANNUM_DETECTION_INFO msg = new NetSDKLib.DEV_EVENT_MANNUM_DETECTION_INFO();
ToolKits.GetPointerData(pAlarmInfo, msg);
- System.out.println(" 绔嬩綋瑙嗚鍖哄煙鍐呬汉鏁扮粺璁′簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + " 鍖哄煙浜哄憳鍒楄〃鏁伴噺:"
- + msg.nManListCount + " 浜哄憳韬珮:" + msg.stuManList[0].nStature);
+// System.out.println(" 绔嬩綋瑙嗚鍖哄煙鍐呬汉鏁扮粺璁′簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + " 鍖哄煙浜哄憳鍒楄〃鏁伴噺:"
+// + msg.nManListCount + " 浜哄憳韬珮:" + msg.stuManList[0].nStature);
break;
}
case EVENT_IVS_CROWDDETECTION: /// < 浜虹兢瀵嗗害妫�娴嬩簨浠�
{
NetSDKLib.DEV_EVENT_CROWD_DETECTION_INFO msg = new NetSDKLib.DEV_EVENT_CROWD_DETECTION_INFO();
ToolKits.GetPointerData(pAlarmInfo, msg);
- System.out.println(" 浜虹兢瀵嗗害妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID);
+// System.out.println(" 浜虹兢瀵嗗害妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID);
break;
}
case EVENT_IVS_CITY_MOTORPARKING: /// 1 鍩庡競鏈哄姩杞﹁繚鍋滀簨浠�
{
- NetSDKLib.DEV_EVENT_CITY_MOTORPARKING_INFO msg = new NetSDKLib.DEV_EVENT_CITY_MOTORPARKING_INFO();
- ToolKits.GetPointerData(pAlarmInfo, msg);
- stuFileInfo = msg.stuFileInfo;
- System.out.println(" 鍩庡競鏈哄姩杞﹁繚鍋滀簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "杩濆仠鎸佺画鏃堕暱(鍗曚綅绉�)锛�"
- + msg.nParkingDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�:" + msg.nObjectNum);
- System.out.println("stuEventInfoEx = " + msg.stuEventInfoEx.toString());
- System.out.println("byVehicleHeadDirection = " + msg.byVehicleHeadDirection);
- if (stuFileInfo != null) { // 淇濆瓨鍥剧墖
- String bigPicture = picturePath + File.separator
- + String.format("Big_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
- stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
- stuFileInfo.bFileType, stuFileInfo.nGroupId);
- ToolKits.savePicture(pBuffer, 0, dwBufSize, bigPicture);
- if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
- String smallPicture = picturePath + File.separator
- + String.format("Small_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
- stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
- stuFileInfo.bFileType, stuFileInfo.nGroupId);
- ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
- }
- }
- if (msg.nImageInfoNum > 0) {
- System.out.println("Picture Arr got, number +" + msg.nImageInfoNum);
- NET_IMAGE_INFO_EX2[] pstuImageInfo = new NET_IMAGE_INFO_EX2[msg.nImageInfoNum];
- for (int i = 0; i < msg.nImageInfoNum; i++) {
- pstuImageInfo[i] = new NET_IMAGE_INFO_EX2();
- }
- ToolKits.GetPointerDataToStructArr(msg.pstuImageInfo, pstuImageInfo);
- for (int i = 0; i < msg.nImageInfoNum; i++) {
- System.out.println("pstuImageInfo[" + i + "].nOffset:" + pstuImageInfo[i].nOffset);
- System.out.println("pstuImageInfo[" + i + "].nLength:" + pstuImageInfo[i].nLength);
- if (pstuImageInfo != null && pstuImageInfo[i].nLength > 0) {
- System.out.println("pstuImageInfo[" + i + "] picture received!");
- String bigPicture = picturePath + "\\" + System.currentTimeMillis()
- + "related_MOTORPARKING_pstuImageInfo_" + i + ".jpg";
- ToolKits.savePicture(pBuffer, pstuImageInfo[i].nOffset, pstuImageInfo[i].nLength, bigPicture);
- }
- }
+ NetSDKLib.DEV_EVENT_CITY_MOTORPARKING_INFO info = new NetSDKLib.DEV_EVENT_CITY_MOTORPARKING_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
- }
+ // videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("鏈哄姩杞︿贡鍋滄斁");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(" 鍩庡競鏈哄姩杞﹁繚鍋滀簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "杩濆仠鎸佺画鏃堕暱(鍗曚綅绉�)锛�"
+// + info.nParkingDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�:" + info.nObjectNum);
+
+// if (stuFileInfo != null) { // 淇濆瓨鍥剧墖
+// String bigPicture = picturePath + File.separator
+// + String.format("Big_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
+// stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
+// stuFileInfo.bFileType, stuFileInfo.nGroupId);
+// ToolKits.savePicture(pBuffer, 0, dwBufSize, bigPicture);
+// if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
+// String smallPicture = picturePath + File.separator
+// + String.format("Small_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
+// stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
+// stuFileInfo.bFileType, stuFileInfo.nGroupId);
+// ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
+// }
+// }
+// if (msg.nImageInfoNum > 0) {
+// System.out.println("Picture Arr got, number +" + msg.nImageInfoNum);
+// NET_IMAGE_INFO_EX2[] pstuImageInfo = new NET_IMAGE_INFO_EX2[msg.nImageInfoNum];
+// for (int i = 0; i < msg.nImageInfoNum; i++) {
+// pstuImageInfo[i] = new NET_IMAGE_INFO_EX2();
+// }
+// ToolKits.GetPointerDataToStructArr(msg.pstuImageInfo, pstuImageInfo);
+// for (int i = 0; i < msg.nImageInfoNum; i++) {
+// System.out.println("pstuImageInfo[" + i + "].nOffset:" + pstuImageInfo[i].nOffset);
+// System.out.println("pstuImageInfo[" + i + "].nLength:" + pstuImageInfo[i].nLength);
+// if (pstuImageInfo != null && pstuImageInfo[i].nLength > 0) {
+// System.out.println("pstuImageInfo[" + i + "] picture received!");
+// String bigPicture = picturePath + "\\" + System.currentTimeMillis()
+// + "related_MOTORPARKING_pstuImageInfo_" + i + ".jpg";
+// ToolKits.savePicture(pBuffer, pstuImageInfo[i].nOffset, pstuImageInfo[i].nLength, bigPicture);
+// }
+// }
+//
+// }
break;
}
case EVENT_IVS_CITY_NONMOTORPARKING: /// 2 鍩庡競闈炴満鍔ㄨ溅杩濆仠浜嬩欢
{
- NetSDKLib.DEV_EVENT_CITY_NONMOTORPARKING_INFO msg = new NetSDKLib.DEV_EVENT_CITY_NONMOTORPARKING_INFO();
- ToolKits.GetPointerData(pAlarmInfo, msg);
- stuFileInfo = msg.stuFileInfo;
- System.out.println(
- " 鍩庡競闈炴満鍔ㄨ溅杩濆仠浜嬩欢 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "妫�娴嬪埌鐨勭墿浣撲釜鏁�:" + msg.nObjectNum);
+ NetSDKLib.DEV_EVENT_CITY_NONMOTORPARKING_INFO info = new NetSDKLib.DEV_EVENT_CITY_NONMOTORPARKING_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
+
+// System.out.println(JSON.toJSONString(info));
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("闈炴満鍔ㄨ溅涔卞仠鏀�");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(
+// " 鍩庡競闈炴満鍔ㄨ溅杩濆仠浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "妫�娴嬪埌鐨勭墿浣撲釜鏁�:" + info.nObjectNum);
break;
}
case EVENT_IVS_HOLD_UMBRELLA: /// 6 杩濊鎾戜紴妫�娴嬩簨浠�
{
- NetSDKLib.DEV_EVENT_HOLD_UMBRELLA_INFO msg = new NetSDKLib.DEV_EVENT_HOLD_UMBRELLA_INFO();
- ToolKits.GetPointerData(pAlarmInfo, msg);
- stuFileInfo = msg.stuFileInfo;
- System.out.println(
- " 杩濊鎾戜紴妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)" + msg.nViolationDuration);
+ NetSDKLib.DEV_EVENT_HOLD_UMBRELLA_INFO info = new NetSDKLib.DEV_EVENT_HOLD_UMBRELLA_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
+
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("杩濊鎾戜紴");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(
+// " 杩濊鎾戜紴妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)" + info.nViolationDuration);
break;
}
case EVENT_IVS_SHOPPRESENCE: /// 7 鍗犻亾缁忚惀
{
- NetSDKLib.DEV_EVENT_SHOPPRESENCE_INFO msg = new NetSDKLib.DEV_EVENT_SHOPPRESENCE_INFO();
- ToolKits.GetPointerData(pAlarmInfo, msg);
+ NetSDKLib.DEV_EVENT_SHOPPRESENCE_INFO info = new NetSDKLib.DEV_EVENT_SHOPPRESENCE_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("鍗犻亾缁忚惀");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(" 鍗犻亾缁忚惀妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
+// + info.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + info.nObjectNum);
+ break;
}
case EVENT_IVS_DUSTBIN_OVER_FLOW: /// 9 鍨冨溇妗舵弧婧㈡娴嬩簨浠�
{
- NetSDKLib.DEV_EVENT_DUSTBIN_OVER_FLOW_INFO msg = new NetSDKLib.DEV_EVENT_DUSTBIN_OVER_FLOW_INFO();
- ToolKits.GetPointerData(pAlarmInfo, msg);
- stuFileInfo = msg.stuFileInfo;
- System.out.println(" 鍨冨溇妗舵弧婧㈡娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
- + msg.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + msg.nObjectNum);
+ NetSDKLib.DEV_EVENT_DUSTBIN_OVER_FLOW_INFO info = new NetSDKLib.DEV_EVENT_DUSTBIN_OVER_FLOW_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
+
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("鍨冨溇绠辨弧婧�");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(" 鍨冨溇妗舵弧婧㈡娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
+// + info.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + info.nObjectNum);
break;
}
case EVENT_IVS_GARBAGE_PLASTICBAG: /// 10 鎵撳寘鍨冨溇
{
+ NetSDKLib.DEV_EVENT_GARBAGE_EXPOSURE_INFO info = new NetSDKLib.DEV_EVENT_GARBAGE_EXPOSURE_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("鎵撳寘鍨冨溇");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(" 鎵撳寘鍨冨溇妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
+// + info.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + info.nObjectNum);
+ break;
}
case EVENT_IVS_DOOR_FRONT_DIRTY: /// < 闂ㄥ墠鑴忎贡妫�娴嬩簨浠�
{
NetSDKLib.DEV_EVENT_DOOR_FRONT_DIRTY_INFO msg = new NetSDKLib.DEV_EVENT_DOOR_FRONT_DIRTY_INFO();
ToolKits.GetPointerData(pAlarmInfo, msg);
stuFileInfo = msg.stuFileInfo;
- System.out.println(" 闂ㄥ墠鑴忎贡妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
- + msg.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + msg.nObjectNum);
+// System.out.println(" 闂ㄥ墠鑴忎贡妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
+// + msg.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + msg.nObjectNum);
break;
}
case EVENT_IVS_GARBAGE_EXPOSURE: /// 11 鍨冨溇鏆撮湶妫�娴嬩簨浠�
{
- NetSDKLib.DEV_EVENT_GARBAGE_EXPOSURE_INFO msg = new NetSDKLib.DEV_EVENT_GARBAGE_EXPOSURE_INFO();
- ToolKits.GetPointerData(pAlarmInfo, msg);
- stuFileInfo = msg.stuFileInfo;
- System.out.println(" 鍨冨溇鏆撮湶妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
- + msg.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + msg.nObjectNum);
+ NetSDKLib.DEV_EVENT_GARBAGE_EXPOSURE_INFO info = new NetSDKLib.DEV_EVENT_GARBAGE_EXPOSURE_INFO();
+ ToolKits.GetPointerData(pAlarmInfo, info);
+
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("鏆撮湶鍨冨溇");
+
+ stuFileInfo = info.stuFileInfo;
+// System.out.println(" 鍨冨溇鏆撮湶妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + "杩濇硶鎸佺画鏃堕暱(鍗曚綅绉�)"
+// + info.nViolationDuration + "妫�娴嬪埌鐨勭墿浣撲釜鏁�" + info.nObjectNum);
break;
}
case EVENT_IVS_VIOLENT_THROW_DETECTION: /// < 鏆村姏鎶涚墿浜嬩欢浜嬩欢
@@ -221,8 +299,8 @@
ToolKits.savePicture(pBuffer, msg.stuSceneImage.nOffSet, msg.stuSceneImage.nLength, bigPicture);
}
stuFileInfo = msg.stuFileInfo;
- System.out.println(" 鏆村姏鎶涚墿浜嬩欢浜嬩欢 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "鏆村姏鎶涚墿妫�娴嬪尯鍩熷悕绉�"
- + new String(msg.szRegionName, Charset.forName(Utils.getPlatformEncode())));
+// System.out.println(" 鏆村姏鎶涚墿浜嬩欢浜嬩欢 鏃堕棿(UTC)锛�" + msg.UTC + " 閫氶亾鍙�:" + msg.nChannelID + "鏆村姏鎶涚墿妫�娴嬪尯鍩熷悕绉�"
+// + new String(msg.szRegionName, Charset.forName(Utils.getPlatformEncode())));
break;
}
case EVENT_IVS_SHOP_WINDOW_POST:// 姗辩獥寮犺创浜嬩欢
@@ -230,9 +308,9 @@
DEV_EVENT_SHOP_WINDOW_POST_INFO info = new DEV_EVENT_SHOP_WINDOW_POST_INFO();
ToolKits.GetPointerData(pAlarmInfo, info);
stuFileInfo = info.stuFileInfo;
- System.out.println(" 姗辩獥寮犺创浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 鍟嗛摵鍦板潃: "
- + new String(info.szShopAddress, Charset.forName(Utils.getPlatformEncode())).trim() + " 杩濇硶鎸佺画鏃堕棿: "
- + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
+// System.out.println(" 姗辩獥寮犺创浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 鍟嗛摵鍦板潃: "
+// + new String(info.szShopAddress, Charset.forName(Utils.getPlatformEncode())).trim() + " 杩濇硶鎸佺画鏃堕棿: "
+// + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
for (int i = 0; i < info.nObjectNum; i++) {
stPicInfo = info.stuObjects[i].stPicInfo;
if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
@@ -250,57 +328,63 @@
{
DEV_EVENT_STREET_SUNCURE_INFO info = new DEV_EVENT_STREET_SUNCURE_INFO();
ToolKits.GetPointerData(pAlarmInfo, info);
+
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("娌胯鏅炬寕");
+
stuFileInfo = info.stuFileInfo;
- System.out.println(" 娌胯鏅炬檼浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 杩濇硶鎸佺画鏃堕棿: "
- + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
- for (int i = 0; i < info.nObjectNum; i++) {
- stPicInfo = info.stuObjects[i].stPicInfo;
- if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
- String smallPicture = picturePath + File.separator
- + String.format("Small_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
- stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
- stuFileInfo.bFileType, stuFileInfo.nGroupId);
- ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
- }
- }
+// System.out.println(" 娌胯鏅炬檼浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 杩濇硶鎸佺画鏃堕棿: "
+// + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
+
break;
}
case EVENT_IVS_OUTDOOR_ADVERTISEMENT: // 14 鎴峰骞垮憡浜嬩欢
{
DEV_EVENT_OUTDOOR_ADVERTISEMENT_INFO info = new DEV_EVENT_OUTDOOR_ADVERTISEMENT_INFO();
ToolKits.GetPointerData(pAlarmInfo, info);
+
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("杩濊鎴峰骞垮憡");
+
stuFileInfo = info.stuFileInfo;
- System.out.println(" 鎴峰骞垮憡浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 杩濇硶鎸佺画鏃堕棿: "
- + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
- for (int i = 0; i < info.nObjectNum; i++) {
- stPicInfo = info.stuObjects[i].stPicInfo;
- if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
- String smallPicture = picturePath + File.separator
- + String.format("Small_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
- stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
- stuFileInfo.bFileType, stuFileInfo.nGroupId);
- ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
- }
- }
+// System.out.println(" 鎴峰骞垮憡浜嬩欢 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 杩濇硶鎸佺画鏃堕棿: "
+// + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
+
+
break;
}
- case EVENT_IVS_HUDDLE_MATERIAL:// 13 涔卞爢鐗╂枡妫�娴嬩簨浠� id 648
+ case EVENT_IVS_HUDDLE_MATERIAL:// 13 涔卞爢鐗╂枡妫�娴嬩簨浠� id 648 涔卞爢鐗╂枡
{
DEV_EVENT_HUDDLE_MATERIAL_INFO info = new DEV_EVENT_HUDDLE_MATERIAL_INFO();
ToolKits.GetPointerData(pAlarmInfo, info);
+// videoAlarmReport.setAlarmObj(JSON.toJSONString(info));
+ videoAlarmReport.setAlarmTime(LocalDateTime.of(info.UTC.dwYear, info.UTC.dwMonth, info.UTC.dwDay, info.UTC.dwHour, info.UTC.dwMinute, info.UTC.dwSecond));
+
+ videoAlarmReport.setChannel(String.valueOf(info.nChannelID));
+ videoAlarmReport.setAlarmId(String.valueOf(info.nEventID));
+ videoAlarmReport.setAlarmName("涔卞爢鐗╂枡");
+
stuFileInfo = info.stuFileInfo;
- System.out.println(" 涔卞爢鐗╂枡妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 杩濇硶鎸佺画鏃堕棿: "
- + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
- for (int i = 0; i < info.nObjectNum; i++) {
- stPicInfo = info.stuObjects[i].stPicInfo;
- if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
- String smallPicture = picturePath + File.separator
- + String.format("Small_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
- stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
- stuFileInfo.bFileType, stuFileInfo.nGroupId);
- ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
- }
- }
+// System.out.println(" 涔卞爢鐗╂枡妫�娴嬩簨浠� 鏃堕棿(UTC)锛�" + info.UTC + " 閫氶亾鍙�:" + info.nChannelID + " 杩濇硶鎸佺画鏃堕棿: "
+// + info.nViolationDuration + " 妫�娴嬪埌鐨勭墿浣撴暟閲�: " + info.nObjectNum);
+// for (int i = 0; i < info.nObjectNum; i++) {
+// stPicInfo = info.stuObjects[i].stPicInfo;
+// if (stPicInfo != null && stPicInfo.dwFileLenth > 0) {
+// String smallPicture = picturePath + File.separator
+// + String.format("Small_%d_%s_%d_%d_%d_%d.jpg", dwAlarmType,
+// stuFileInfo.stuFileTime.toStringTitle(), stuFileInfo.bCount, stuFileInfo.bIndex,
+// stuFileInfo.bFileType, stuFileInfo.nGroupId);
+// ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
+// }
+// }
break;
}
case EVENT_IVS_TRASH_WITHOUT_COVER_DETECTION: //鍨冨溇妗舵湭鐩栫洊瀛愭娴嬩簨浠�
@@ -312,17 +396,17 @@
ToolKits.GetPointerDataToStruct(pAlarmInfo, 0, trashEvent);
String date = trashEvent.UTC.toStringTime();
- System.out.println("nChannelID = " + trashEvent.nChannelID);
- System.out.println("szName(GBK) = " + new String(trashEvent.szName, Charset.forName("GBK")));
- System.out.println("szName(UTF-8) = " + new String(trashEvent.szName, Charset.forName("UTF-8")));
- System.out.println("nImageInfoNum = " + trashEvent.nImageInfoNum);
- System.out.println("UTC = " + trashEvent.UTC.toStringTime());
+// System.out.println("nChannelID = " + trashEvent.nChannelID);
+// System.out.println("szName(GBK) = " + new String(trashEvent.szName, Charset.forName("GBK")));
+// System.out.println("szName(UTF-8) = " + new String(trashEvent.szName, Charset.forName("UTF-8")));
+// System.out.println("nImageInfoNum = " + trashEvent.nImageInfoNum);
+// System.out.println("UTC = " + trashEvent.UTC.toStringTime());
// save the picture
String imageName = "trashEvent_" + trashEvent.UTC.toStringTitle() + ".jpg";
String savePath = picturePath + "/" + imageName;
ToolKits.savePicture(pBuffer, dwBufSize, savePath);
- System.out.println("save picture to " + savePath);
+// System.out.println("save picture to " + savePath);
break;
}
@@ -344,11 +428,16 @@
// stuFileInfo.bFileType, stuFileInfo.nGroupId);
// ToolKits.savePicture(pBuffer, stPicInfo.dwOffSet, stPicInfo.dwFileLenth, smallPicture);
// }
- String extension = "jpg";
- String picData = ossService.uploadImages(new ByteArrayInputStream(pBuffer.getByteArray(stPicInfo.dwOffSet, dwBufSize)), extension);
- videoAlarmReport.setPicData(picData);
+// try {
+ byte[] bytes = pBuffer.getByteArray(0, dwBufSize);
+ videoAlarmReport.setPicByte(bytes);
+// } catch (Exception ex) {
+// System.out.println("淇濆瓨鍥剧墖閿欒锛�");
+// System.out.println(ex);
+// }
}
-
+ if (!StringUtils.isEmpty(videoAlarmReport.getAlarmName()))
+ GlobalQueue.add(videoAlarmReport);
return 0;
}
--
Gitblit v1.8.0