src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/dto/ApiSetInviteDto.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | ●●●●● patch | view | raw | blame | history |
src/main/java/cc/mrbird/febs/mall/controller/ApiMallMemberController.java
@@ -202,6 +202,15 @@ return iApiMallAgentService.agentApply(apiAgentApplyDto); } /** * 绑定默认推荐人 */ @ApiOperation(value = "绑定默认推荐人") @PostMapping(value = "/setInvite") public FebsResponse setInvite(@RequestBody @Validated ApiSetInviteDto apiSetInviteDto) { return memberService.setInvite(apiSetInviteDto); } @ApiOperation(value = "代理申请信息") @GetMapping(value = "/agentApplyInfo") public FebsResponse agentApplyInfo() { src/main/java/cc/mrbird/febs/mall/dto/ApiSetInviteDto.java
New file @@ -0,0 +1,18 @@ package cc.mrbird.febs.mall.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import javax.validation.constraints.NotBlank; @Data @ApiModel(value = "ApiSetInviteDto", description = "申请代理") public class ApiSetInviteDto { //邀请码 @NotBlank(message = "邀请码不能为空") @ApiModelProperty(value = "邀请码") private String inviteId; } src/main/java/cc/mrbird/febs/mall/service/IApiMallMemberService.java
@@ -89,4 +89,6 @@ FebsResponse memberCoupon(MallMemberCouponDto mallMemberCouponDto); FebsResponse couponDetails(Long id); FebsResponse setInvite(ApiSetInviteDto apiSetInviteDto); } src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java
@@ -937,6 +937,48 @@ return new FebsResponse().success().data(mallMemberCouponVo); } @Override public FebsResponse setInvite(ApiSetInviteDto apiSetInviteDto) { Long memberId = LoginUserUtil.getLoginUser().getId(); MallMember mallMember = this.baseMapper.selectById(memberId); if(ObjectUtil.isNotEmpty(mallMember.getReferrerId())){ throw new FebsException("已绑定"); } String inviteId = apiSetInviteDto.getInviteId(); MallMember member = this.baseMapper.selectInfoByInviteId(inviteId); if (member != null) { mallMember.setReferrerId(member.getInviteId()); //推荐人和推荐人链 boolean flag = false; String parentId = mallMember.getReferrerId(); if (StrUtil.isBlank(parentId)) { flag = true; } String ids = ""; while (!flag) { if (StrUtil.isBlank(ids)) { ids += parentId; } else { ids += ("," + parentId); } MallMember parentMember = this.baseMapper.selectInfoByInviteId(parentId); if (parentMember == null) { break; } parentId = parentMember.getReferrerId(); if (StrUtil.isBlank(parentMember.getReferrerId())) { flag = true; } } if (StrUtil.isNotBlank(ids)) { mallMember.setReferrerIds(ids); } this.baseMapper.updateById(mallMember); } return new FebsResponse().success(); } private String getXcxLoginUrl(String code) { String wechatLoginUrl =xcxProperties.getWecharLoginUrl(); return String.format(wechatLoginUrl, xcxProperties.getXcxAppid(), xcxProperties.getXcxSecret(), code); src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -226,9 +226,13 @@ orderItem.setGoodsName(sku.getGoodsName()); orderItem.setSkuId(sku.getId()); orderItem.setState(1); if(ObjectUtil.isNotEmpty(member.getReferrerId())){ orderItem.setMemberInviteId(member.getReferrerId()); } if(ObjectUtil.isNotEmpty(addOrderDto.getMemberInviteId())){ orderItem.setMemberInviteId(addOrderDto.getMemberInviteId()); } orderItem.setStyleName(sku.getStyleName()); orderItem.setSkuName(sku.getSkuName()); orderItem.setSkuImage(sku.getSkuImage());