forked from angelo/java-retail-app
## 升级专区不能直接升级到董事代理,只能升级到区域代理;
This commit is contained in:
parent
bc16275050
commit
9ed8555c10
|
@ -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;
|
||||
// 会员所有升级记录
|
||||
|
|
Loading…
Reference in New Issue