From 77a2e8442dd8cd7224dacc152fb15e8922c517dc Mon Sep 17 00:00:00 2001
From: guoshengxiong <1923636941@qq.com>
Date: Tue, 23 Jul 2024 22:17:39 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BA=BA=E5=91=98=E8=BD=A6=E8=BE=86=E4=B8=8B?=
=?UTF-8?q?=E5=8F=91=E9=87=8D=E5=88=B6=E6=9C=BA=E5=88=B6=EF=BC=8C=E4=B8=80?=
=?UTF-8?q?=E4=B8=AA=E5=B0=8F=E6=97=B6=E5=86=85=EF=BC=8C=E5=8D=81=E5=88=86?=
=?UTF-8?q?=E9=92=9F=E9=87=8D=E8=AF=95=E4=B8=80=E6=AC=A1=EF=BC=8C=E4=B8=80?=
=?UTF-8?q?=E4=B8=AA=E5=B0=8F=E6=97=B6=E5=90=8E=EF=BC=8C=E6=AF=8F=E5=B0=8F?=
=?UTF-8?q?=E6=97=B6=E9=87=8D=E5=A4=8D=E4=B8=80=E6=AC=A1=EF=BC=8C=E4=B8=80?=
=?UTF-8?q?=E5=A4=A9=E5=86=85=EF=BC=8C=E8=B6=85=E8=BF=8724=E5=B0=8F?=
=?UTF-8?q?=E6=97=B6=E5=90=8E=EF=BC=8C=E5=81=9C=E6=AD=A2=E9=87=8D=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../xz/mapper/xml/XzHikvisionSyncMapper.xml | 6 ++++
.../com/zhgd/xmgl/task/HikvisionTask.java | 33 ++++++++++++++++---
2 files changed, 35 insertions(+), 4 deletions(-)
diff --git a/src/main/java/com/zhgd/xmgl/modules/xz/mapper/xml/XzHikvisionSyncMapper.xml b/src/main/java/com/zhgd/xmgl/modules/xz/mapper/xml/XzHikvisionSyncMapper.xml
index 24f61836d..170ebd9dd 100644
--- a/src/main/java/com/zhgd/xmgl/modules/xz/mapper/xml/XzHikvisionSyncMapper.xml
+++ b/src/main/java/com/zhgd/xmgl/modules/xz/mapper/xml/XzHikvisionSyncMapper.xml
@@ -16,6 +16,12 @@
and create_date >= #{createDateBegin}
+
+ and create_date <= DATE_FORMAT(DATE_SUB(now(), interval 10 minute), '%Y-%m-%d %H:%i:%S')
+
+
+ and create_date <= DATE_FORMAT(DATE_SUB(now(), interval 1 hour), '%Y-%m-%d %H:%i:%S')
+
group by who_id
) t2 on t1.who_id=t2.who_id
left join uface_dev ud on t1.device_sn = ud.dev_sn
diff --git a/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java b/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java
index fee215265..f3330b3d5 100644
--- a/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java
+++ b/src/main/java/com/zhgd/xmgl/task/HikvisionTask.java
@@ -126,15 +126,40 @@ public class HikvisionTask {
}
/**
- * 定时重试失败的记录
+ * 定时重试失败的记录,十分钟一次
*/
- @SchedulerLock(name = "retrySyncHikvision", lockAtMostFor = 1000 * 30, lockAtLeastFor = 1000 * 30)
+ @SchedulerLock(name = "retrySyncHikvisionTenMin", lockAtMostFor = 1000 * 30, lockAtLeastFor = 1000 * 30)
@Scheduled(cron = "0 */10 * * * ?")
- @RequestMapping("retrySyncHikvision")
- public void retrySyncHikvision() throws Exception {
+ @RequestMapping("retrySyncHikvisionTenMin")
+ public void retrySyncHikvisionTenMin() throws Exception {
HashMap newListMap = new HashMap<>(16);
newListMap.put("isSuccess", 0);
newListMap.put("createDateBegin", DateUtil.formatDateTime(DateUtil.offsetHour(new Date(), -1)));
+ newListMap.put("geBeforeTenMin", 1);
+ List newestList = xzHikvisionSyncService.getNewestList(newListMap);
+ for (XzHikvisionSync xzHikvisionSync : newestList) {
+ log.info("海康同步的定时重试失败的记录,id:{}", xzHikvisionSync.getId());
+ HashMap retryMap = new HashMap<>(16);
+ retryMap.put("id", xzHikvisionSync.getId());
+ try {
+ xzHikvisionSyncService.retry(retryMap);
+ } catch (Exception e) {
+ log.error("海康同步的定时重试失败的记录:error:", e);
+ }
+ }
+ }
+
+ /**
+ * 定时重试失败的记录,一小时一次
+ */
+ @SchedulerLock(name = "retrySyncHikvisionHourly", lockAtMostFor = 1000 * 30, lockAtLeastFor = 1000 * 30)
+ @Scheduled(cron = "0 */10 * * * ?")
+ @RequestMapping("retrySyncHikvisionHourly")
+ public void retrySyncHikvisionHourly() throws Exception {
+ HashMap newListMap = new HashMap<>(16);
+ newListMap.put("isSuccess", 0);
+ newListMap.put("createDateBegin", DateUtil.formatDateTime(DateUtil.offsetDay(new Date(), -1)));
+ newListMap.put("geBeforeHour", 1);
List newestList = xzHikvisionSyncService.getNewestList(newListMap);
for (XzHikvisionSync xzHikvisionSync : newestList) {
log.info("海康同步的定时重试失败的记录,id:{}", xzHikvisionSync.getId());