From bd4d6ee6e9e303e6fdbf05fede63dc3cd50263c3 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 30 Dec 2024 17:33:30 +0800
Subject: [PATCH] feat(mall): 添加节点业绩累计功能

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AsyncServiceImpl.java |   27 +++++++++++++++++++++++++++
 1 files changed, 27 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..c3585fd 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,30 @@
         );
 
     }
+
+    @Override
+    public void releaseNodeCoin(BigDecimal amount, BigDecimal percent, BigDecimal balanceToCoin, Long memberId) {
+        //实际节点助力的碳币
+        BigDecimal multiply = amount.multiply(percent);
+        if(BigDecimal.ZERO.compareTo(multiply) >=0){
+            return;
+        }
+        BigDecimal divide = multiply.divide(balanceToCoin, 2, RoundingMode.DOWN);
+        if(BigDecimal.ZERO.compareTo(divide) >=0){
+            return;
+        }
+        walletService.addBalance(divide,memberId);
+        String orderNo = MallUtils.getOrderNum("JD");
+        mallMoneyFlowService.runVipMoneyFlowAdd(
+                memberId,
+                memberId,
+                orderNo,
+                FlowTypeEnum.BALANCE.getValue(),
+                RunVipMoneyFlowTypeEnum.NODE_BALANCE.getValue(),
+                divide,
+                StrUtil.format(RunVipMoneyFlowTypeEnum.NODE_BALANCE.getDescription(),divide),
+                YesOrNoEnum.YES.getValue()
+        );
+
+    }
 }

--
Gitblit v1.9.1