From c7a9e0e2dce79c1edaab846ef359ff4405edfdc0 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Thu, 09 Jun 2022 18:24:54 +0800 Subject: [PATCH] fix redis expire --- src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java index a1d13b9..0b8503c 100644 --- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java @@ -15,6 +15,9 @@ import cc.mrbird.febs.dapp.vo.SlipSettingVo; import cc.mrbird.febs.rabbit.producer.ChainProducer; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUnit; +import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; @@ -108,13 +111,17 @@ ContractChainService instance = ChainService.getInstance(ChainEnum.BSC_TFC.name()); BigDecimal balance = instance.balanceOf(member.getAddress()); + Object o = redisUtils.get(AppContants.REDIS_KEY_COIN_REMAIN + member.getAddress()); BigDecimal coinTotal = balance.multiply(BigDecimal.valueOf(0.3)).setScale(instance.decimals(), RoundingMode.HALF_DOWN); BigDecimal remain; if (o == null) { + DateTime tomorrow = DateUtil.beginOfDay(DateUtil.tomorrow()); + long time = DateUtil.between(new Date(), tomorrow, DateUnit.SECOND, true); + remain = coinTotal; - redisUtils.set(AppContants.REDIS_KEY_COIN_REMAIN + member.getAddress(), remain); + redisUtils.set(AppContants.REDIS_KEY_COIN_REMAIN + member.getAddress(), remain, time); } else { remain = (BigDecimal) o; } -- Gitblit v1.9.1