From 970e58a0ceb0bfcd52affad3f08c53d30c29ab8d Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 29 五月 2021 18:14:43 +0800 Subject: [PATCH] 礼金创建优化 --- service-lijin/src/main/java/com/ks/lijin/service/manager/LiJinProviderTaoKeAccountManager.java | 31 +++++++++++++++++++++++++------ 1 files changed, 25 insertions(+), 6 deletions(-) diff --git a/service-lijin/src/main/java/com/ks/lijin/service/manager/LiJinProviderTaoKeAccountManager.java b/service-lijin/src/main/java/com/ks/lijin/service/manager/LiJinProviderTaoKeAccountManager.java index d5846e7..dfd0b80 100644 --- a/service-lijin/src/main/java/com/ks/lijin/service/manager/LiJinProviderTaoKeAccountManager.java +++ b/service-lijin/src/main/java/com/ks/lijin/service/manager/LiJinProviderTaoKeAccountManager.java @@ -32,30 +32,49 @@ @Transactional(rollbackFor = Exception.class) public void createLijinSuccess(Long accountId, Long auctionId, BigDecimal money, Date createTime) { String day = TimeUtil.getGernalTime(createTime.getTime(), "yyyyMMdd"); - String goodsKeyPrefix = String.format("lijingoodsnum-%s-%s-", day, accountId); - String goodsKey = goodsKeyPrefix + auctionId; + String goodsKey = String.format("lijingoodsnum-%s-%s", day, accountId); String accountMoneyKey = String.format("lijinaccountmoney-%s-%s", day, accountId); //淇濆瓨璐﹀彿褰撴棩鐨勫晢鍝佹暟閲忔秷鑰� - redisTemplate.opsForValue().increment(goodsKey, 1); + redisTemplate.opsForSet().add(goodsKey, auctionId); //淇濆瓨褰撴棩璐﹀彿鐨勮祫閲戞秷鑰� redisTemplate.opsForValue().increment(accountMoneyKey, money.multiply(new BigDecimal(100)).intValue()); //鑾峰彇璐﹀彿褰撴棩鐨勫晢鍝佹暟閲� - int goodsNum = redisTemplate.keys(goodsKeyPrefix + "*").size(); + long goodsNum = redisTemplate.opsForSet().size(goodsKey); //鑾峰彇璐﹀彿褰撴棩鐨勮祫閲戞秷鑰� Long todayMoney = Long.parseLong(redisTemplate.opsForValue().get(accountMoneyKey) + ""); //鍚屾鍒版暟鎹簱 - LiJinProviderTaoKeAccount account = liJinProviderAccountMapper.selectByPrimaryKeyForUpdate(accountId); if (account != null) { LiJinProviderTaoKeAccount update = new LiJinProviderTaoKeAccount(); + update.setId(account.getId()); update.setTodayConsumeMoney(new BigDecimal(todayMoney).divide(new BigDecimal(100), 2, RoundingMode.FLOOR)); - update.setTodayConsumeNumber(goodsNum); + update.setTodayConsumeNumber((int) goodsNum); update.setUpdateTime(new Date()); + update.setErrorCode(LiJinProviderTaoKeAccount.ERROR_CODE_NORMAL); liJinProviderAccountMapper.updateByPrimaryKeySelective(update); } } + /** + * 鍒濆鍖栧綋澶╃殑鏁版嵁 + * + * @param accountId + */ + public void initTodayData(Long accountId) { + createLijinSuccess(accountId, 1L, new BigDecimal(0), new Date()); + } + + + //鍒犻櫎redis涓殑淇℃伅 + public void deleteInfoInRedis(Date date) { + String day = TimeUtil.getGernalTime(date.getTime(), "yyyyMMdd"); + String goodsKey = String.format("lijingoodsnum-%s-*", day); + String accountMoneyKey = String.format("lijinaccountmoney-%s-%s", day); + redisTemplate.delete(goodsKey); + redisTemplate.delete(accountMoneyKey); + } + } -- Gitblit v1.8.0