优化了接口响应速度

This commit is contained in:
2025-08-19 15:50:13 +08:00
parent f7150d5dfc
commit 6544da8394
4 changed files with 13 additions and 4 deletions

View File

@ -85,7 +85,8 @@ public class ProjectCommissionController {
public BaseResponse<List<ProjectCommissionVO>> queryProjectCommission(HttpServletRequest request) { public BaseResponse<List<ProjectCommissionVO>> queryProjectCommission(HttpServletRequest request) {
Long userId = (Long) request.getAttribute("userId"); Long userId = (Long) request.getAttribute("userId");
List<ProjectCommission> projectCommissionList = commonService.findByFieldEqTargetField(ProjectCommission::getUserId, userId, projectCommissionService); List<ProjectCommission> projectCommissionList = commonService.findByFieldEqTargetField(ProjectCommission::getUserId, userId, projectCommissionService);
List<ProjectDetail> projectDetailList = commonService.findByFieldInTargetField(projectCommissionList, projectDetailService, ProjectCommission::getProjectDetailId, ProjectDetail::getId); List<ProjectDetail> projectDetailList = commonService.findByFieldInTargetFieldWithSpecificFields(projectCommissionList, projectDetailService, ProjectCommission::getProjectDetailId, ProjectDetail::getId,
List.of(ProjectDetail::getId, ProjectDetail::getProjectDetailName, ProjectDetail::getMaxCommissionRate));
// 封装Map集合项目明细id项目明细名称 // 封装Map集合项目明细id项目明细名称
Map<Long, String> projectDetailMap = new HashMap<>(); Map<Long, String> projectDetailMap = new HashMap<>();
// 封装Map集合项目明细id项目明细最大抽佣比例 // 封装Map集合项目明细id项目明细最大抽佣比例
@ -213,7 +214,8 @@ public class ProjectCommissionController {
lambdaQueryWrapper.eq(SubUserProjectCommission::getUserId, userId); lambdaQueryWrapper.eq(SubUserProjectCommission::getUserId, userId);
List<SubUserProjectCommission> subUserProjectCommissionList = subUserProjectCommissionService.list(lambdaQueryWrapper); List<SubUserProjectCommission> subUserProjectCommissionList = subUserProjectCommissionService.list(lambdaQueryWrapper);
List<ProjectDetail> projectDetailList = commonService.findByFieldInTargetField(subUserProjectCommissionList, projectDetailService, SubUserProjectCommission::getProjectDetailId, ProjectDetail::getId); List<ProjectDetail> projectDetailList = commonService.findByFieldInTargetFieldWithSpecificFields(subUserProjectCommissionList, projectDetailService, SubUserProjectCommission::getProjectDetailId, ProjectDetail::getId,
List.of(ProjectDetail::getId, ProjectDetail::getProjectDetailName, ProjectDetail::getMaxCommissionRate));
// 封装Map集合项目明细id项目明细名称 // 封装Map集合项目明细id项目明细名称
Map<Long, String> projectDetailMap = new HashMap<>(); Map<Long, String> projectDetailMap = new HashMap<>();
// 封装Map集合项目明细id项目明细最大抽佣比例 // 封装Map集合项目明细id项目明细最大抽佣比例
@ -253,6 +255,7 @@ public class ProjectCommissionController {
// 封装下级用户项目抽佣列表 // 封装下级用户项目抽佣列表
LambdaQueryWrapper<UserInfo> userInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<UserInfo> userInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
userInfoLambdaQueryWrapper.eq(UserInfo::getParentUserId, userId); userInfoLambdaQueryWrapper.eq(UserInfo::getParentUserId, userId);
userInfoLambdaQueryWrapper.select(UserInfo::getId, UserInfo::getNickName);
List<UserInfo> userInfoList = userInfoService.list(userInfoLambdaQueryWrapper); List<UserInfo> userInfoList = userInfoService.list(userInfoLambdaQueryWrapper);
List<SubUserProjectCommissionVO> subUserProjectCommissionVOList = new ArrayList<>(); List<SubUserProjectCommissionVO> subUserProjectCommissionVOList = new ArrayList<>();
for (UserInfo userInfo : userInfoList) { for (UserInfo userInfo : userInfoList) {

View File

@ -71,8 +71,10 @@ public class UserMainInfoController {
Long userId = (Long) request.getAttribute("userId"); Long userId = (Long) request.getAttribute("userId");
LambdaQueryWrapper<UserInfo> userInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<UserInfo> userInfoLambdaQueryWrapper = new LambdaQueryWrapper<>();
userInfoLambdaQueryWrapper.eq(UserInfo::getParentUserId, userId); userInfoLambdaQueryWrapper.eq(UserInfo::getParentUserId, userId);
userInfoLambdaQueryWrapper.select(UserInfo::getId, UserInfo::getNickName, UserInfo::getPhoneNumber, UserInfo::getCreateTime);
List<UserInfo> userInfoList = userInfoService.list(userInfoLambdaQueryWrapper); List<UserInfo> userInfoList = userInfoService.list(userInfoLambdaQueryWrapper);
List<UserMainInfo> userMainInfoList = commonService.findByFieldInTargetField(userInfoList, userMainInfoService, UserInfo::getId, UserMainInfo::getUserId); List<UserMainInfo> userMainInfoList = commonService.findByFieldInTargetFieldWithSpecificFields(userInfoList, userMainInfoService, UserInfo::getId, UserMainInfo::getUserId,
List.of(UserMainInfo::getUserId, UserMainInfo::getTeamSize, UserMainInfo::getParentEarnings));
// 封装Map集合用户id用户信息 // 封装Map集合用户id用户信息
Map<Long, UserInfo> userInfoMap = new HashMap<>(); Map<Long, UserInfo> userInfoMap = new HashMap<>();
for (UserInfo userInfo : userInfoList) { for (UserInfo userInfo : userInfoList) {

View File

@ -256,9 +256,11 @@ public class ProjectCommissionServiceImpl extends ServiceImpl<ProjectCommissionM
LambdaQueryWrapper<ProjectCommission> projectCommissionLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<ProjectCommission> projectCommissionLambdaQueryWrapper = new LambdaQueryWrapper<>();
projectCommissionLambdaQueryWrapper.eq(ProjectCommission::getUserId, userId); projectCommissionLambdaQueryWrapper.eq(ProjectCommission::getUserId, userId);
projectCommissionLambdaQueryWrapper.select(ProjectCommission::getProjectDetailId);
List<ProjectCommission> projectCommissionList = this.list(projectCommissionLambdaQueryWrapper); List<ProjectCommission> projectCommissionList = this.list(projectCommissionLambdaQueryWrapper);
List<ProjectDetail> projectDetailList = commonService.findByFieldInTargetField(projectCommissionList, projectDetailService, ProjectCommission::getProjectDetailId, ProjectDetail::getId); List<ProjectDetail> projectDetailList = commonService.findByFieldInTargetFieldWithSpecificFields(projectCommissionList, projectDetailService, ProjectCommission::getProjectDetailId, ProjectDetail::getId,
List.of(ProjectDetail::getId, ProjectDetail::getMaxCommissionRate, ProjectDetail::getProjectMinSettlementPrice));
// 封装map集合项目明细id, 值:项目明细最大抽佣比例) // 封装map集合项目明细id, 值:项目明细最大抽佣比例)
Map<Long, BigDecimal> map = new HashMap<>(); Map<Long, BigDecimal> map = new HashMap<>();
Map<Long, BigDecimal> minPriceMap = new HashMap<>(); Map<Long, BigDecimal> minPriceMap = new HashMap<>();
@ -285,6 +287,7 @@ public class ProjectCommissionServiceImpl extends ServiceImpl<ProjectCommissionM
// 修改下级用户的项目明细抽佣比例 // 修改下级用户的项目明细抽佣比例
LambdaQueryWrapper<SubUserProjectCommission> subUserProjectCommissionLambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<SubUserProjectCommission> subUserProjectCommissionLambdaQueryWrapper = new LambdaQueryWrapper<>();
subUserProjectCommissionLambdaQueryWrapper.eq(SubUserProjectCommission::getUserId, userId); subUserProjectCommissionLambdaQueryWrapper.eq(SubUserProjectCommission::getUserId, userId);
subUserProjectCommissionLambdaQueryWrapper.select(SubUserProjectCommission::getProjectDetailId);
List<SubUserProjectCommission> subUserProjectCommissionList = subUserProjectCommissionService.list(subUserProjectCommissionLambdaQueryWrapper); List<SubUserProjectCommission> subUserProjectCommissionList = subUserProjectCommissionService.list(subUserProjectCommissionLambdaQueryWrapper);
for (SubUserProjectCommission subUserProjectCommission : subUserProjectCommissionList) { for (SubUserProjectCommission subUserProjectCommission : subUserProjectCommissionList) {
Long projectDetailId = subUserProjectCommission.getProjectDetailId(); Long projectDetailId = subUserProjectCommission.getProjectDetailId();

View File

@ -30,6 +30,7 @@ public class PromoCodeServiceImpl extends ServiceImpl<PromoCodeMapper, PromoCode
List<Long> ids = commonBatchRequest.getIds(); List<Long> ids = commonBatchRequest.getIds();
LambdaQueryWrapper<PromoCode> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<PromoCode> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(PromoCode::getId, ids).eq(PromoCode::getPromoCodeStatus, true); lambdaQueryWrapper.in(PromoCode::getId, ids).eq(PromoCode::getPromoCodeStatus, true);
lambdaQueryWrapper.select(PromoCode::getId);
List<PromoCode> promoCodeList = this.list(lambdaQueryWrapper); List<PromoCode> promoCodeList = this.list(lambdaQueryWrapper);
ThrowUtils.throwIf(promoCodeList.size() > 0, ErrorCode.OPERATION_ERROR, "当前推广码正在使用中,无法删除"); ThrowUtils.throwIf(promoCodeList.size() > 0, ErrorCode.OPERATION_ERROR, "当前推广码正在使用中,无法删除");
this.removeByIds(ids); this.removeByIds(ids);