From 113f3a5d3b843fba68ce50a3ba3255c66ca1e15f Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 17 Jan 2023 20:13:57 +0800
Subject: [PATCH] 20221227 充值归集
---
src/main/java/cc/mrbird/febs/mall/quartz/OrderOvertimeJob.java | 18 +++++++++++++++---
1 files changed, 15 insertions(+), 3 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/quartz/OrderOvertimeJob.java b/src/main/java/cc/mrbird/febs/mall/quartz/OrderOvertimeJob.java
index 4c9a605..0828c17 100644
--- a/src/main/java/cc/mrbird/febs/mall/quartz/OrderOvertimeJob.java
+++ b/src/main/java/cc/mrbird/febs/mall/quartz/OrderOvertimeJob.java
@@ -101,9 +101,9 @@
DataDictionaryEnum.RETURN_PERCENT.getCode()
);
String returnPercentStr = returnPercentDic.getValue();
- BigDecimal returnPercent = new BigDecimal(returnPercentStr).multiply(new BigDecimal(0.01));
+ BigDecimal returnPercent = new BigDecimal(returnPercentStr).multiply(new BigDecimal(0.01)).setScale(2,BigDecimal.ROUND_DOWN);
//本次返还金额
- BigDecimal returnAmount = amount.multiply(returnPercent);
+ BigDecimal returnAmount = amount.multiply(returnPercent).setScale(2,BigDecimal.ROUND_DOWN);
/**
* 如果本次返还金额大于剩余返还总金额
*/
@@ -155,9 +155,16 @@
if(BigDecimal.ZERO.compareTo(avaAmount) >= 0){
mallMemberStarBuyMapper.updateStatusById(2,mallMemberStarBuy.getId());
List<MallMemberStarBuy> mallMemberStarBuysIng = mallMemberStarBuyMapper.selectByStatusAndMemberId(1,memberId);
- //如果没有其他生效中的记录,则更新用户的星级
+ //如果没有其他生效中的记录,则更新用户的星级为普通,更新会员代理等级为代理
if(CollUtil.isEmpty(mallMemberStarBuysIng)){
mallMemberMapper.updateAccountLevelById(MemberAccountLevelEnum.NORMAL.getName(), memberId);
+
+ //如果代理等级为手动设置,则跳过该会员
+ int levelStatus = ObjectUtil.isEmpty(mallMember.getLevelStatus()) ? 0 : 1;
+ if(1 == levelStatus){
+ continue;
+ }
+ mallMemberMapper.updateLevelById(MemberAgentLevelEnum.AGENT.getName(),mallMember.getId());
}
}
}
@@ -206,6 +213,11 @@
List<MallMember> agentLevelList = mallMemberMapper.selectByAccountLevel(levelSelf);
if(CollUtil.isNotEmpty(agentLevelList)){
for(MallMember mallMember : agentLevelList){
+ //如果代理等级为手动设置,则跳过该会员
+ int levelStatus = ObjectUtil.isEmpty(mallMember.getLevelStatus()) ? 0 : 1;
+ if(1 == levelStatus){
+ continue;
+ }
//有星级的直推
Integer directCnt = mallMemberMapper.selectByRefererIdAndAccountLevel(mallMember.getInviteId(),MemberAccountLevelEnum.NORMAL.getName());
//团队中星级会员数量
--
Gitblit v1.9.1