From 88b540b536aa4f4f8649b8748e3957ec77d6f3b7 Mon Sep 17 00:00:00 2001 From: weidong Date: Sun, 10 Dec 2023 11:24:23 +0800 Subject: [PATCH] =?UTF-8?q?bug=20fixed:=20=E8=8E=B7=E5=8F=96=E6=8E=A8?= =?UTF-8?q?=E9=80=81=E8=AE=B0=E5=BD=95=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/imdroid/sideslope/fwd/ForwardGnssTask.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/fwd/ForwardGnssTask.java b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/fwd/ForwardGnssTask.java index 3a0e496f..c765cd2c 100644 --- a/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/fwd/ForwardGnssTask.java +++ b/sec-beidou-rtcm/src/main/java/com/imdroid/sideslope/fwd/ForwardGnssTask.java @@ -45,9 +45,18 @@ public class ForwardGnssTask { */ @Scheduled(cron = "0 0/30 * * * ?") // 每30分钟执行一次 private void forwardGnss() { + // 1.按项目检索最近半小时的解算结果记录,推送Enable为true的记录 + // 2.如果某终端最近半小时没有数据,则记录本次时间为待补传时间 forwardGnssToXFZ(1); } + @Scheduled(cron = "0 0/30 * * * ?") // 每30分钟执行一次 + private void forwardHistoryGnss() { + // 1.从转发记录表里检索待补传记录时间表,含设备Id,时间段 + // 2.检索这个这个时间段的解算结果,如果有数据则单个终端转发,标志记录为已补传 + //forwardGnssToXFZ(1); + } + private void forwardGnssToXFZ(int tenantId) { LocalDateTime nowTime = LocalDateTime.now(); ConcurrentHashMap> projects = new ConcurrentHashMap<>(); @@ -69,6 +78,7 @@ public class ForwardGnssTask { QueryWrapper gnssQueryWrapper = new QueryWrapper<>(); gnssQueryWrapper.eq("deviceid",device.getDeviceid()); gnssQueryWrapper.orderByDesc("createtime"); + gnssQueryWrapper.last("limit 1"); GnssCalcData record = gnssDataMapper.selectOne(gnssQueryWrapper); if(record != null && record.getEnabled()){ if(nowTime.isBefore(record.getCreatetime().plusMinutes(40))) {