From 8654ec54f22fec61a996e024ba4d0105aa7ba3f9 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 15 Jun 2022 11:12:32 +0800
Subject: [PATCH] add static profit
---
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java | 12 ++++++++++--
1 files changed, 10 insertions(+), 2 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 e1c333f..ab73e32 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
@@ -62,7 +62,7 @@
}
DataDictionaryCustom dic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(DataDictionaryEnum.STATIC_BONUS.getType(), DataDictionaryEnum.STATIC_BONUS.getCode());
- BigDecimal perProfit = totalIncome.divide(new BigDecimal(dic.getValue()), 2, RoundingMode.HALF_UP).divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP);
+ BigDecimal perProfit = totalIncome.multiply(new BigDecimal(dic.getValue()).divide(BigDecimal.valueOf(100), 2, RoundingMode.HALF_UP));
for (MallMember member : members) {
List<MallGoods> goodsList = mallGoodsMapper.selectOrderGoodsList(member.getId(), profitDate);
@@ -72,6 +72,10 @@
}
for (MallGoods goods : goodsList) {
+ if (goods.getIsNormal() == 1) {
+ continue;
+ }
+
BigDecimal goodsProfit = goods.getStaticProp().multiply(perProfit);
int reduce = walletService.reduce(goodsProfit, member.getId(), "score");
@@ -129,7 +133,7 @@
// =======直推返利== start =====
// 直接奖励收益
- BigDecimal dynamicProfit = amount.divide(new BigDecimal(dic.getValue()), 2, RoundingMode.HALF_UP);
+ BigDecimal dynamicProfit = amount.multiply(new BigDecimal(dic.getValue()).divide(new BigDecimal(100), 2, RoundingMode.HALF_UP));
if (dynamicProfit.compareTo(BigDecimal.ZERO) < 1) {
continue;
@@ -308,6 +312,10 @@
}
BigDecimal reduceProfit = income.multiply(prop);
+ if (reduceProfit.compareTo(BigDecimal.ZERO) > 0) {
+ continue;
+ }
+
int reduce = walletService.reduce(reduceProfit.negate(), mallMember.getId(), "commission");
if (reduce == 2) {
continue;
--
Gitblit v1.9.1