From bef419a6add516ac7e4ea8ba21d2ca9c573e69a3 Mon Sep 17 00:00:00 2001
From: 648540858 <18010473990@163.com>
Date: 星期三, 04 八月 2021 18:12:13 +0800
Subject: [PATCH] 添加sql脚本

---
 src/test/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImplTest.java |  122 ++++++++++++++++++++++++++++++++++++++++
 sql/mysql.sql                                                                    |   16 +++++
 2 files changed, 138 insertions(+), 0 deletions(-)

diff --git a/sql/mysql.sql b/sql/mysql.sql
index 6668554..d5a84c3 100644
--- a/sql/mysql.sql
+++ b/sql/mysql.sql
@@ -60,6 +60,22 @@
     primary key (channelId, deviceId)
 );
 
+create table device_alarm
+(
+    id                int auto_increment
+        primary key,
+    deviceId          varchar(50) not null,
+    alarmPriority     varchar(50) not null,
+    alarmMethod       varchar(50),
+    alarmTime         varchar(50) not null,
+    alarmDescription  varchar(255),
+    longitude         double null,
+    latitude          double null,
+    alarmType         varchar(50)
+);
+
+
+
 create table device_mobile_position
 (
     deviceId       varchar(50)  not null,
diff --git a/src/test/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImplTest.java b/src/test/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImplTest.java
new file mode 100644
index 0000000..3cb9aa5
--- /dev/null
+++ b/src/test/java/com/genersoft/iot/vmp/service/impl/DeviceAlarmServiceImplTest.java
@@ -0,0 +1,122 @@
+package com.genersoft.iot.vmp.service.impl;
+
+import com.genersoft.iot.vmp.gb28181.bean.DeviceAlarm;
+import com.genersoft.iot.vmp.service.IDeviceAlarmService;
+import org.junit.runner.RunWith;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+
+@SpringBootTest
+@RunWith(SpringRunner.class)
+class DeviceAlarmServiceImplTest {
+
+    @Resource
+    private IDeviceAlarmService deviceAlarmService;
+
+    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+    @org.junit.jupiter.api.Test
+    void getAllAlarm() {
+//        deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111",null,null,null, null, null);
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, null, null, null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", null, null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", "1", null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", "2", null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", "3", null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", "4", null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", "5", null, null,
+//                null, null).getSize());
+//
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", null, "1", null,
+//                null, null).getSize());
+
+//        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", null, "1", null,
+//                null, null).getSize());
+
+        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", null, null, null,
+                "2021-01-01 00:00:00", null).getSize());
+
+        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", null, null, null,
+                null, "2021-04-01 09:00:00").getSize());
+
+        System.out.println(deviceAlarmService.getAllAlarm(0, 10000, "11111111111111111111", null, null, null,
+                "2021-02-01 01:00:00", "2021-04-01 04:00:00").getSize());
+    }
+
+
+    @org.junit.jupiter.api.Test
+    void add() {
+        for (int i = 0; i < 1000; i++) {
+            DeviceAlarm deviceAlarm = new DeviceAlarm();
+            deviceAlarm.setDeviceId("11111111111111111111");
+            deviceAlarm.setAlarmDescription("test_" + i);
+
+            /**
+             * 鎶ヨ鏂瑰紡 , 1涓虹數璇濇姤璀�, 2涓鸿澶囨姤璀�, 3涓虹煭淇℃姤璀�, 4涓� GPS鎶ヨ, 5涓鸿棰戞姤璀�, 6涓鸿澶囨晠闅滄姤璀�,
+             * 	 * 7鍏朵粬鎶ヨ;鍙互涓虹洿鎺ョ粍鍚堝12涓虹數璇濇姤璀︽垨 璁惧鎶ヨ-
+             */
+            deviceAlarm.setAlarmMethod((int)(Math.random()*7 + 1) + "");
+            Date date = randomDate("2021-01-01 00:00:00", "2021-06-01 00:00:00");
+            deviceAlarm.setAlarmTime(format.format(date));
+            /**
+             * 鎶ヨ绾у埆, 1涓轰竴绾ц鎯�, 2涓轰簩绾ц鎯�, 3涓轰笁绾ц鎯�, 4涓哄洓绾� 璀︽儏-
+             */
+            deviceAlarm.setAlarmPriority((int)(Math.random()*4 + 1) + "");
+            deviceAlarm.setLongitude(116.325);
+            deviceAlarm.setLatitude(39.562);
+            deviceAlarmService.add(deviceAlarm);
+        }
+
+    }
+
+    @org.junit.jupiter.api.Test
+    void clearAlarmBeforeTime() {
+        deviceAlarmService.clearAlarmBeforeTime(null,null, null);
+    }
+
+
+
+
+    private Date randomDate(String beginDate, String endDate) {
+        try {
+
+            Date start = format.parse(beginDate);//鏋勯�犲紑濮嬫棩鏈�
+            Date end = format.parse(endDate);//鏋勯�犵粨鏉熸棩鏈�
+            //getTime()琛ㄧず杩斿洖鑷� 1970 骞� 1 鏈� 1 鏃� 00:00:00 GMT 浠ユ潵姝� Date 瀵硅薄琛ㄧず鐨勬绉掓暟銆�
+            if (start.getTime() >= end.getTime()) {
+                return null;
+            }
+            long date = random(start.getTime(), end.getTime());
+            return new Date(date);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    private static long random(long begin, long end) {
+        long rtn = begin + (long) (Math.random() * (end - begin));
+        //濡傛灉杩斿洖鐨勬槸寮�濮嬫椂闂村拰缁撴潫鏃堕棿锛屽垯閫掑綊璋冪敤鏈嚱鏁版煡鎵鹃殢鏈哄��
+        if (rtn == begin || rtn == end) {
+            return random(begin, end);
+        }
+        return rtn;
+    }
+}
\ No newline at end of file

--
Gitblit v1.8.0