From 610211fb6ca69e66276ccf99c30f1814e4e2bc4a Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 27 May 2022 14:46:40 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 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 7fab9d0..d9ca15a 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
@@ -134,22 +134,26 @@
                     continue;
                 }
 
+                if (direct.compareTo(BigDecimal.ONE) < 1) {
+                    break;
+                }
+
                 int reduce =  walletService.reduce(direct, parentMember.getId(), "score");
                 if (reduce == 2) {
                     continue;
                 }
 
                 walletService.add(direct, parentMember.getId(), "commission");
-
                 moneyFlowService.addMoneyFlow(parentMember.getId(), direct, MoneyFlowTypeEnum.RECOMMEND_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.COMMISSION.getValue());
                 moneyFlowService.addMoneyFlow(parentMember.getId(), direct.negate(), MoneyFlowTypeEnum.RECOMMEND_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue());
 
-                if (direct.compareTo(BigDecimal.ONE) < 1) {
-                    break;
-                }
                 direct = direct.divide(indrectDicProp, 2, RoundingMode.HALF_UP);
             }
 
+            if (dynamicProfit.compareTo(BigDecimal.ZERO) < 1) {
+                continue;
+            }
+
             int reduce = walletService.reduce(dynamicProfit, member.getId(), "score");
             if (reduce == 2) {
                 continue;

--
Gitblit v1.9.1