From e970047c7a4537810b17db3ee3c5d0a7ab4a87df Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Mon, 24 Apr 2023 10:50:19 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/mall/service/impl/MemberProfitServiceImpl.java | 11 ++++++++++-
1 files changed, 10 insertions(+), 1 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 5dc6e1f..c755ee4 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
@@ -58,6 +58,7 @@
* @param orderId
*/
@Override
+ @Transactional(rollbackFor = Exception.class)
public void directProfit(Long orderId) {
log.info("######直推奖励, 订单ID:{}######", orderId);
MallOrderInfo orderInfo = mallOrderInfoMapper.selectById(orderId);
@@ -72,6 +73,10 @@
// 父级会员
MallMember parentMember = mallMemberMapper.selectInfoByInviteId(member.getReferrerId());
+ if (parentMember == null) {
+ return;
+ }
+
if (parentMember.getAccountLevel() == 0 || MemberLevelEnum.ZERO_LEVEL.getType().equals(parentMember.getLevel())) {
log.info("上级:{}未购买会员套餐,无返利", parentMember.getInviteId());
return;
@@ -117,7 +122,7 @@
isSameLevel = 1;
// 非代理推代理/非股东推股东
} else {
- profitPer = BigDecimal.valueOf(0.1);
+ profitPer = BigDecimal.valueOf(10);
isSameLevel = 2;
}
}
@@ -139,6 +144,10 @@
// 非代理推代理
if (isSameLevel == 2) {
+ if (StrUtil.isBlank(parentMember.getReferrerIds())) {
+ continue;
+ }
+
List<MallMember> mallMembers = mallMemberMapper.selectParentMemberList(StrUtil.split(parentMember.getReferrerIds(), ','), parentMember.getReferrerId(), 2);
if (CollUtil.isEmpty(mallMembers)) {
continue;
--
Gitblit v1.9.1