From e63f08bb358dd2d53a1bece9fb7654ff196c113b Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Thu, 09 Jan 2025 18:03:58 +0800
Subject: [PATCH] refactor(mall): 优化 BigDecimal 的舍入方式
---
src/main/java/cc/mrbird/febs/mall/service/impl/AsyncServiceImpl.java | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AsyncServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AsyncServiceImpl.java
index bef028b..9063f79 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/AsyncServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AsyncServiceImpl.java
@@ -16,6 +16,7 @@
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
+import java.math.RoundingMode;
@Slf4j
@Service
@@ -40,4 +41,26 @@
);
}
+
+ @Override
+ public void releaseNodeCoin(BigDecimal amount, BigDecimal percent, Long memberId) {
+ //实际节点助力的碳币
+ BigDecimal multiply = amount.multiply(percent).setScale(2,RoundingMode.DOWN);
+ if(BigDecimal.ZERO.compareTo(multiply) >=0){
+ return;
+ }
+ walletService.addCommission(multiply,memberId);
+ String orderNo = MallUtils.getOrderNum("JD");
+ mallMoneyFlowService.runVipMoneyFlowAdd(
+ memberId,
+ memberId,
+ orderNo,
+ FlowTypeEnum.COMMISSION.getValue(),
+ RunVipMoneyFlowTypeEnum.NODE_COMMISSION.getValue(),
+ multiply,
+ StrUtil.format(RunVipMoneyFlowTypeEnum.NODE_COMMISSION.getDescription(),multiply),
+ YesOrNoEnum.YES.getValue()
+ );
+
+ }
}
--
Gitblit v1.9.1