我修复了项目状态如果不是运行中的话无法申请推广码

This commit is contained in:
2025-06-29 17:02:27 +08:00
parent f51d42230c
commit 78403af455

View File

@ -9,6 +9,7 @@ import com.greenorange.promotion.common.BaseResponse;
import com.greenorange.promotion.common.ErrorCode;
import com.greenorange.promotion.common.ResultUtils;
import com.greenorange.promotion.constant.UserConstant;
import com.greenorange.promotion.exception.BusinessException;
import com.greenorange.promotion.exception.ThrowUtils;
import com.greenorange.promotion.model.dto.CommonBatchRequest;
import com.greenorange.promotion.model.dto.promoCodeApply.PromoCodeApplyAddRequest;
@ -82,6 +83,12 @@ public class PromoCodeApplyController {
Long userId = (Long) request.getAttribute("userId");
// 取出当前项目的推广码
Long projectId = promoCodeApplyRequest.getProjectId();
//项目状态如果不是运行中的话无法申请推广码
LambdaQueryWrapper<Project> projectLambdaQueryWrapper = new LambdaQueryWrapper<>();
projectLambdaQueryWrapper.eq(Project::getId, projectId);
Project project2 = projectService.getOne(projectLambdaQueryWrapper);
String projectStatus = project2.getProjectStatus();
if(!projectStatus.equals("running")) throw new BusinessException(ErrorCode.OPERATION_ERROR,"该项目未处于运行状态,无法申请推广码");
String phoneNumber = promoCodeApplyRequest.getSalespersonPhone();
// 判断是否重复绑定了手机号
Map<SFunction<PromoCodeApply, ?>, Object> applyConditions = Map.of(PromoCodeApply::getUserId, userId, PromoCodeApply::getProjectId, projectId, PromoCodeApply::getSalespersonPhone, phoneNumber);
@ -100,6 +107,9 @@ public class PromoCodeApplyController {
String promoCodeImage = promoCode.getPromoCodeImage();
// 获取项目的参数信息
Project project = projectService.getById(projectId);
// 检查项目是否处于运行中
// String projectStatus = project.getProjectStatus();
// ThrowUtils.throwIf(!projectStatus.equals("running"), ErrorCode.OPERATION_ERROR, "该项目未处于运行状态,无法申请推广码");
// 更新项目的推广人数
Map<SFunction<UserProject, ?>, Object> projectConditions = Map.of(UserProject::getProjectId, projectId, UserProject::getUserId, userId);
@ -110,6 +120,8 @@ public class PromoCodeApplyController {
String projectName = project.getProjectName();
String projectImage = project.getProjectImage();
Integer projectSettlementCycle = project.getProjectSettlementCycle();
//判断项目推广人数是否满了
// 获取业务员信息
String salespersonName = promoCodeApplyRequest.getSalespersonName();
String salespersonPhone = promoCodeApplyRequest.getSalespersonPhone();