Sfoglia il codice sorgente

refactor(消费服务): 初始化卡片限制信息并优化缓存更新逻辑

1.增加了调试日志
autumnal_wind 11 mesi fa
parent
commit
e1832eabdb

+ 9 - 0
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/business/InitBusiness.java

@@ -293,6 +293,15 @@ public class InitBusiness {
         if (CollUtil.isNotEmpty(list)) {
             RedisUtils.deleteKeys(CacheNames.T_XF_CARD_LIMITED);
             list.forEach(p -> {
+                // p.setDayCount(0L);
+                // p.setDayMoney(BigDecimal.ZERO);
+                // p.setMealCount(0L);
+                // p.setMealMoney(BigDecimal.ZERO);
+                // p.setDayDiscountCount(0L);
+                // p.setMealDiscountCount(0L);
+                // p.setLastPay(new Date());
+                // p.setLastMeal(1L);
+
                 RedisUtils.setCacheMapValue(CacheNames.T_XF_CARD_LIMITED, p.getCardNo().toString(), p);
             });
             RedisUtils.expire(CacheNames.T_XF_CARD_LIMITED, Duration.ofHours(5));

+ 1 - 2
ruoyi-server/ruoyi-server-consume/src/main/java/org/dromara/server/consume/check/CardConsumeValidationContext.java

@@ -138,9 +138,8 @@ public class CardConsumeValidationContext {
         if (ObjectUtil.isEmpty(context.cardLimitedVo)) {
             context.cardLimitedVo = initXfCardLimited(context.cardNo, context.consumeDate, context.lastMeal);
         }
-        log.info("缓存获取到的卡限制数据:{}", JSONUtil.toJsonStr(context.cardLimitedVo));
-
         LocalDateTime lastPayLimitLocalDt = CardDateUtils.toLocalDateTime(context.cardLimitedVo.getLastPay());
+        log.info("limit-last-pay:{},consumeDate:{}", context.cardLimitedVo.getLastPay(), context.lastPayTime.toLocalDate());
         if (!lastPayLimitLocalDt.toLocalDate().isEqual(context.lastPayTime.toLocalDate())) {
             // 如果和消费时间不是同天,初始化为当天
             initCardDayLimitedData(context.cardLimitedVo, Long.valueOf(context.lastMeal), context.consumeDate);