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());