diff --git a/src/main/java/com/greenorange/promotion/controller/project/PromoCodeApplyController.java b/src/main/java/com/greenorange/promotion/controller/project/PromoCodeApplyController.java index 849fa30..e883b18 100644 --- a/src/main/java/com/greenorange/promotion/controller/project/PromoCodeApplyController.java +++ b/src/main/java/com/greenorange/promotion/controller/project/PromoCodeApplyController.java @@ -91,6 +91,9 @@ public class PromoCodeApplyController { String promoCodeLink = promoCode.getPromoCodeLink(); // 获取项目的参数信息 Project project = projectService.getById(projectId); + // 更新项目的推广人数 + project.setCurrentPromotionCount(project.getCurrentPromotionCount() + 1); + projectService.updateById(project); String projectName = project.getProjectName(); String projectImage = project.getProjectImage(); Integer projectSettlementCycle = project.getProjectSettlementCycle(); diff --git a/src/main/java/com/greenorange/promotion/service/userInfo/impl/UserInfoServiceImpl.java b/src/main/java/com/greenorange/promotion/service/userInfo/impl/UserInfoServiceImpl.java index 2f6a9d8..2838712 100644 --- a/src/main/java/com/greenorange/promotion/service/userInfo/impl/UserInfoServiceImpl.java +++ b/src/main/java/com/greenorange/promotion/service/userInfo/impl/UserInfoServiceImpl.java @@ -166,23 +166,27 @@ public class UserInfoServiceImpl extends ServiceImpl } userMainInfoService.save(userMainInfo); - - List subUserProjectCommissionList = commonService.findByFieldEqTargetField(SubUserProjectCommission::getSubUserId, parentUserInfo.getId(), subUserProjectCommissionService); - List projectCommissionList = new ArrayList<>(); - for (SubUserProjectCommission subUserProjectCommission : subUserProjectCommissionList) { - // 插入下级用户项目明细抽佣记录 + // 查询上级用户的项目抽佣记录 + List projectCommissionList = commonService.findByFieldEqTargetField(ProjectCommission::getUserId, parentUserInfo.getId(), projectCommissionService); + // 插入当前用户的项目抽佣记录 + for (ProjectCommission projectCommission : projectCommissionList) { + ProjectCommission currentUserProjectCommission = commonService.copyProperties(projectCommission, ProjectCommission.class); + currentUserProjectCommission.setId(null); + currentUserProjectCommission.setMyUnitPrice(projectCommission.getMyUnitPrice().multiply(BigDecimal.ONE.subtract(projectCommission.getCurrentCommissionRate()))); + currentUserProjectCommission.setCurrentCommissionRate(BigDecimal.ZERO); + currentUserProjectCommission.setUserId(myUserInfo.getId()); + } + projectCommissionService.saveBatch(projectCommissionList); + // 插入下级用户的项目明细抽佣记录 + List proCommissionList = commonService.findByFieldEqTargetField(ProjectCommission::getUserId, parentUserInfo.getId(), projectCommissionService); + List subUserProjectCommissionList = new ArrayList<>(); + for (ProjectCommission projectCommission : proCommissionList) { + SubUserProjectCommission subUserProjectCommission = commonService.copyProperties(projectCommission, SubUserProjectCommission.class); subUserProjectCommission.setId(null); - subUserProjectCommission.setUserId(parentUserInfo.getId()); subUserProjectCommission.setSubUserId(myUserInfo.getId()); - subUserProjectCommission.setMyUnitPrice(subUserProjectCommission.getMyUnitPrice().multiply(BigDecimal.ONE.subtract(subUserProjectCommission.getCurrentCommissionRate()))); - // 插入用户项目明细抽佣记录 - ProjectCommission projectCommission = commonService.copyProperties(subUserProjectCommission, ProjectCommission.class); - projectCommission.setId(null); - projectCommission.setCurrentCommissionRate(BigDecimal.ZERO); - projectCommission.setUserId(myUserInfo.getId()); + subUserProjectCommissionList.add(subUserProjectCommission); } subUserProjectCommissionService.saveBatch(subUserProjectCommissionList); - projectCommissionService.saveBatch(projectCommissionList); } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 9689193..a17ec4c 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,4 +1,4 @@ spring: profiles: - active: test-caozhe + active: test