|
|
@@ -95,7 +95,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
public List<RelationalVo> relationalQuery(String id) {
|
|
|
List<RelationalVo> list = new ArrayList<>();
|
|
|
|
|
|
- Integer grade = baseMapper.selectGradeIntMin(id);
|
|
|
+ Integer grade = baseMapper.selectGradeMin(id);
|
|
|
List<RelationalVo> partnerUsers = baseMapper.selectByUserId(id,grade);
|
|
|
if (1 < grade){
|
|
|
querySuperiors(list, grade,partnerUsers);
|
|
|
@@ -173,6 +173,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
|
|
|
@Override
|
|
|
public HttpResult submitLiftingRecord(UserGradeParam userGradeParam) {
|
|
|
+ userGradeParam.setGrade(String.valueOf(Integer.valueOf(userGradeParam.getGrade()) + 1));
|
|
|
if (StringUtils.equals("1",userGradeParam.getGrade())){
|
|
|
return HttpResult.error("当前用户无法升级");
|
|
|
}
|
|
|
@@ -390,7 +391,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
BigDecimal p = ruleService.getInviteData(userId, grade, period);
|
|
|
BigDecimal ownBf = baseMapper.selectOwnSumPremium(userId, period);
|
|
|
List<PartnerAttribute> requirement = partnerRuleEntity.getRequirement();
|
|
|
- return getAttribute(partnerRuleEntity, new BigDecimal(362), new BigDecimal(1), new BigDecimal(159), requirement);
|
|
|
+ return getAttribute(partnerRuleEntity,bf, p, ownBf, requirement);
|
|
|
}
|
|
|
|
|
|
private HttpResult getAttribute(PartnerRuleEntity partnerRuleEntity, BigDecimal bf, BigDecimal p, BigDecimal ownBf, List<PartnerAttribute> requirement) {
|
|
|
@@ -407,7 +408,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
return HttpResult.error("等级不存在");
|
|
|
}
|
|
|
partnerRuleEntity.setRequirement(null);
|
|
|
- CommissionValidityPeriod period = baseMapper.selectAssessmentCycleTime(userId, Integer.valueOf(grade));
|
|
|
+ CommissionValidityPeriod period = baseMapper.selectUpgradeCycleStartTime(userId, Integer.valueOf(grade));
|
|
|
period.setEndDate(SpringUtil.getBean(ExpiredCommissionUtils.class).generateDowngradeTime(grade,period.getStartDate()));
|
|
|
partnerRuleEntity.setAssessmentEndDate(period.getEndDate().split(" ")[0]);
|
|
|
BigDecimal bf = baseMapper.selectTotalSumPremium(userId, grade, period);
|
|
|
@@ -423,11 +424,11 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
if (partnerRules == null || userId == null || userMap == null) {
|
|
|
return list; // 输入参数校验
|
|
|
}
|
|
|
-
|
|
|
for (PartnerRule rule : partnerRules) {
|
|
|
Integer grade = rule.getGrade();
|
|
|
PartnerUser partnerUser = userMap.get(grade);
|
|
|
MyUserLevel level = new MyUserLevel();
|
|
|
+ level.setFallAmount(rule.getFallAmount());
|
|
|
level.setRatio(getProportion(grade));
|
|
|
level.setGrade(grade);
|
|
|
level.setGradeName(rule.getGradeName());
|
|
|
@@ -435,10 +436,22 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
if (partnerUser == null) {
|
|
|
level.setLockingState("0");
|
|
|
level.setProgressBar(0);
|
|
|
+ if (1 != grade){
|
|
|
+ boolean verified = ruleService.verifyUpgradeConditions(userId, String.valueOf(grade + 1));
|
|
|
+ if (verified) {
|
|
|
+ level.setUpgrade(true);
|
|
|
+ level.setProgressBar(2);
|
|
|
+ }else {
|
|
|
+ level.setProgressBar(1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ Long count = liftingRecordService.selectDowngradeRecord(userId,grade,0);
|
|
|
+ if (count > 0){
|
|
|
+ level.setUpgradeStatus(true);
|
|
|
+ }
|
|
|
} else {
|
|
|
level.setUserId(userId);
|
|
|
level.setUserName(partnerUser.getName());
|
|
|
-
|
|
|
if (partnerUser.isIdentityStatus()) {
|
|
|
level.setLockingState("2");
|
|
|
level.setLockCommission(accountMapper.selectCashFee(partnerUser.getUserId(), partnerUser.getGrade()));
|
|
|
@@ -447,21 +460,18 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
.atZone(ZoneId.systemDefault()).toLocalDate();
|
|
|
level.setZeroDays(ChronoUnit.DAYS.between(LocalDate.now(), upgradeCycleStartDate));
|
|
|
}
|
|
|
+ boolean verified = ruleService.verifyUpgradeConditions(partnerUser.getUserId(), String.valueOf(partnerUser.getGrade() + 1));
|
|
|
+ if (verified) {
|
|
|
+ level.setUpgrade(true);
|
|
|
+ }
|
|
|
+ Long count = liftingRecordService.selectDowngradeRecord(partnerUser.getUserId(),partnerUser.getGrade() + 1,1);
|
|
|
+ if (count > 0){
|
|
|
+ level.setUpgradeStatus(true);
|
|
|
+ }
|
|
|
} else {
|
|
|
level.setLockingState("1");
|
|
|
}
|
|
|
-
|
|
|
level.setProgressBar(2);
|
|
|
-
|
|
|
- if (grade != null && grade != 1) {
|
|
|
- boolean verified = partnerUser.isIdentityStatus()
|
|
|
- ? ruleService.verifyDowngradeUpgradeConditions(userId, String.valueOf(grade))
|
|
|
- : ruleService.verifyUpgradeConditions(userId, String.valueOf(grade));
|
|
|
- if (verified) {
|
|
|
- level.setProgressBar(1);
|
|
|
- }
|
|
|
- level.setUpgrade(verified);
|
|
|
- }
|
|
|
}
|
|
|
list.add(level);
|
|
|
}
|
|
|
@@ -648,10 +658,9 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
}
|
|
|
|
|
|
private void getRule(List<PartnerRuleEntity> partnerRuleEntities, ExpiredCommissionUtils commissionUtils, TeamOverviewVo overviewVo, PartnerUser partnerUser) {
|
|
|
- PartnerRuleEntity ruleEntity = commissionUtils.getRule(String.valueOf(partnerUser.getGrade()), partnerRuleEntities);
|
|
|
- boolean checked = commissionUtils.checkUpgradeConditions(partnerUser, ruleEntity.getAppraise(), ruleEntity.getStrategyArray());
|
|
|
+ boolean checked = commissionUtils.checkUpgradeConditions(partnerUser);
|
|
|
overviewVo.setUpgradeStatus(checked ? 1 : 0);
|
|
|
- Long count = liftingRecordService.selectDowngradeRecord(partnerUser.getUserId(), partnerUser.getGrade());
|
|
|
+ Long count = liftingRecordService.selectDowngradeRecord(partnerUser.getUserId(), partnerUser.getGrade(),1);
|
|
|
if (count > 0){
|
|
|
overviewVo.setUpgradeStatus(2);
|
|
|
}
|
|
|
@@ -891,7 +900,7 @@ public class PartnerUserServiceImpl extends ServiceImpl<PartnerUserMapper, Partn
|
|
|
String userId = BaseController.getUserId();
|
|
|
AppUserInfoVo appUserInfoVo = sysUserMapper.queryByUserId(userId);
|
|
|
Integer min = baseMapper.selectGradeIntMin(userId);
|
|
|
- appUserInfoVo.setGrade(min);
|
|
|
+ appUserInfoVo.setGrade(null == min ? 4 : min);
|
|
|
PartnerUser partnerUser = baseMapper.selectOne(new LambdaQueryWrapper<>(PartnerUser.class)
|
|
|
.eq(PartnerUser::getUserId, userId)
|
|
|
.eq(PartnerUser::getGrade, min));
|