3
0
Fork 0

Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
sangelxiu1 2025-08-21 10:23:22 +08:00
commit aa42aa0263
2 changed files with 11 additions and 24 deletions

View File

@ -1605,12 +1605,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService {
if (null == gradeDTO) {
gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData();
}
if (gradeDTO.getGradeValue() >= EGrade.VIP.getValue()) {
// 会员等级大于等于 博羚店主推荐人如果也是博羚店主需要升级为高级店主
CuMember parentMember = iCuMemberService.getShopkeeperMember(cuMember.getPkParent(), EGrade.VIP.getValue());
if (gradeDTO.getGradeValue() >= EGrade.REGION.getValue()) {
// 会员等级大于等于 区域代理推荐人如果也是区域代理需要升级为董事代理
CuMember parentMember = iCuMemberService.getShopkeeperMember(cuMember.getPkParent(), EGrade.REGION.getValue());
if (null != parentMember) {
// 记录升级历史
GradeDTO upgradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), cuMember.getPkSettleCountry()).getData();
GradeDTO upgradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.DIRECTOR.getValue(), cuMember.getPkSettleCountry()).getData();
CuMemberLevel cuMemberLevel = CuMemberLevel.builder()
.pkMember(parentMember.getPkId())
.upType(EUpgradeType.AUTO_UPGRADE.getValue())
@ -1630,12 +1630,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService {
updateWrapper.set(CuMember::getModifiedTime, new Date());
iCuMemberService.update(updateWrapper);
}
} else if (gradeDTO.getGradeValue() >= EGrade.REGION.getValue()) {
// 会员等级大于等于 区域代理推荐人如果也是区域代理需要升级为董事代理
CuMember parentMember = iCuMemberService.getShopkeeperMember(cuMember.getPkParent(), EGrade.REGION.getValue());
} else if (gradeDTO.getGradeValue() >= EGrade.VIP.getValue()) {
// 会员等级大于等于 博羚店主推荐人如果也是博羚店主需要升级为高级店主
CuMember parentMember = iCuMemberService.getShopkeeperMember(cuMember.getPkParent(), EGrade.VIP.getValue());
if (null != parentMember) {
// 记录升级历史
GradeDTO upgradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.DIRECTOR.getValue(), cuMember.getPkSettleCountry()).getData();
GradeDTO upgradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), cuMember.getPkSettleCountry()).getData();
CuMemberLevel cuMemberLevel = CuMemberLevel.builder()
.pkMember(parentMember.getPkId())
.upType(EUpgradeType.AUTO_UPGRADE.getValue())

View File

@ -2201,23 +2201,10 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
.max(Comparator.comparingInt(BdGrade::getGradeValue)).get();
} else {
// 非注册处理
// if (checkUpgrade) {
// // 当前等级大于等于V3 盒数商品为0则直接返回当前等级
// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0
// || boxTotal == 0) {
// return memberGrade;
// }
// } else {
// // 当前等级大于V3 盒数商品为0则直接返回当前等级
// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) > 0
// || boxTotal == 0) {
// return memberGrade;
// }
// }
// 查询等级比现在当前等级大的 并且 排除高级店主然后倒序排序再查询 购买盒数 <= 等级盒数 的第一个等级就是当前升级的等级
Optional<BdGrade> gradeOptional = gradeList.stream()
.filter(tmpGrade -> tmpGrade.getGradeValue() != EGrade.S_VIP.getValue() && tmpGrade.getGradeValue() > memberGrade.getGradeValue())
.filter(tmpGrade -> tmpGrade.getGradeValue() != EGrade.S_VIP.getValue() && tmpGrade.getGradeValue() != EGrade.DIRECTOR.getValue()
&& tmpGrade.getGradeValue() > memberGrade.getGradeValue())
.sorted(Comparator.comparingInt(BdGrade::getGradeValue).reversed())
.filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(BigDecimal.ZERO) > 0)
.filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0).findFirst();
@ -2238,7 +2225,7 @@ public class SaOrderServiceImpl extends ServiceImpl<SaOrderMapper, SaOrder> impl
*/
@Override
public BigDecimal handleBaseBoxNum(CuMember cuMember, BdGrade memberGrade, List<BdGrade> gradeList, List<String> boxWaresList,
Integer systemType) {
Integer systemType) {
// 升级盒数基数
BigDecimal baseBoxNum = BigDecimal.ZERO;
// 会员所有升级记录