From 2afce3afa1b9a111b20d2d372fb9867751a50ad2 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 01 Mar 2024 14:18:35 +0800
Subject: [PATCH] 抽奖
---
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
index 392321b..a042cff 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java
@@ -66,6 +66,7 @@
private final MallProductSellRecordMapper mallProductSellRecordMapper;
private final MallMemberAmountMapper mallMemberAmountMapper;
private final IMallMoneyFlowService iMallMoneyFlowService;
+ private final MallProductNftMapper mallProductNftMapper;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -1262,9 +1263,17 @@
BigDecimal nftCntTotalBuy = mallProductBuyRecords.stream().map(MallProductBuyRecord::getPickNftCnt).reduce(BigDecimal.ZERO, BigDecimal::add);
MallProductBuy mallProductBuy = mallProductBuyMapper.selectById(buyId);
if(nftCntTotalBuy.compareTo(mallProductBuy.getNftTotal()) >= 0){
+
+ Long productNftId = mallProductBuy.getProductNftId();
+ MallProductNft mallProductNft = mallProductNftMapper.selectById(productNftId);
+ BigDecimal perkTime = mallProductNft.getPerkTime();
+ BigDecimal totalPerk = perkTime.multiply(mallProductBuy.getNftTotal()).setScale(2, BigDecimal.ROUND_DOWN);
+
+ mallProductBuy.setTotalPerk(totalPerk);
mallProductBuy.setState(ProductEnum.PRODUCT_BUY_SUCCESS.getValue());
mallProductBuy.setPayTime(DateUtil.date());
mallProductBuyMapper.updateById(mallProductBuy);
+
}
}
}
--
Gitblit v1.9.1