Bläddra i källkod

下发数据时排除掉全量更新导致的更新数据

xiari 11 månader sedan
förälder
incheckning
f24580c066

+ 5 - 1
ruoyi-modules/ruoyi-backstage/src/main/java/org/dromara/backstage/payment/service/impl/PtUserAccountServiceImpl.java

@@ -62,6 +62,8 @@ import java.text.MessageFormat;
 import java.util.*;
 import java.util.stream.Collectors;
 
+import static org.dromara.common.core.constant.DefaultConstants.FULL_SYNC_ADMIN;
+
 /**
  * 一卡通账户Service业务层处理
  *
@@ -680,7 +682,9 @@ public class PtUserAccountServiceImpl implements IPtUserAccountService {
         // 获取指定天数内有更新账户信息的
         // 人脸的
         Date date = new Date();
-        LambdaQueryWrapper<PtUserAccount> between = Wrappers.lambdaQuery(PtUserAccount.class).between(PtUserAccount::getUpdateTime, startDate, date);
+        //排除 全量同步的数据
+        LambdaQueryWrapper<PtUserAccount> between = Wrappers.lambdaQuery(PtUserAccount.class).ne(PtUserAccount::getUpdateBy, FULL_SYNC_ADMIN)
+            .between(PtUserAccount::getUpdateTime, startDate, date);
         List<PtUserAccountVo> userAccountVos = baseMapper.selectVoList(between);
         List<PtUserAccountVo> updatePhotos = userAccountVos.stream().filter(e -> StringUtils.isNotBlank(e.getPhoto())).toList();
         updatePhotos.forEach(e -> e.setFacePicUrl(photoPrefix+e.getPhoto()));

+ 4 - 4
ruoyi-server/ruoyi-server-hik/src/main/java/org/dromara/server/hik/event/handler/HeatBeatHandler.java

@@ -62,8 +62,8 @@ public class HeatBeatHandler implements HikEventHandler {
             LocalDateTime minus = localDate.minus(1, ChronoUnit.DAYS);
             // LocalDateTime 转 date
             Date date = Date.from(minus.atZone(ZoneId.systemDefault()).toInstant());
-            System.err.println("minus: " + minus);
-            System.err.println("date: " + date);
+//            System.err.println("minus: " + minus);
+//            System.err.println("date: " + date);
             sendDeviceService.upLoadEmpToDevice(macAddress,date,true);
 
             RedisUtils.setCacheObject(CacheNames.XF_TERM_IP + ipAddress, date.getTime());
@@ -74,8 +74,8 @@ public class HeatBeatHandler implements HikEventHandler {
             // 舍弃时分秒,只保留日期部分
             LocalDate nowDate = now.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
             LocalDate lastDate = last.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
-            System.err.println("nowDate: " + nowDate);
-            System.err.println("lastDate: " + lastDate);
+//            System.err.println("nowDate: " + nowDate);
+//            System.err.println("lastDate: " + lastDate);
             // 计算两个日期之间的天数差
             long daysBetween = ChronoUnit.DAYS.between(lastDate, nowDate);