| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void modifyReferer(MallMember member) { |
| | | MallMember referer = this.baseMapper.selectInfoByInviteId(member.getReferrerId()); |
| | | if(StrUtil.isEmpty(member.getReferrerId())){ |
| | | this.baseMapper.updateReferrerId(member.getId()); |
| | | return; |
| | | } |
| | | String referrerId = member.getReferrerId();//新的推荐人邀请码 |
| | | //获取新推荐人信息 |
| | | MallMember referer = this.baseMapper.selectInfoByInviteId(referrerId); |
| | | if (referer == null) { |
| | | throw new FebsException("推荐人不存在"); |
| | | } |
| | | String refererId = member.getReferrerId(); |
| | | member = this.baseMapper.selectById(member.getId());//修改的用户 |
| | | |
| | | member = this.baseMapper.selectById(member.getId()); |
| | | |
| | | String beforeReferer = member.getReferrerId(); |
| | | member.setReferrerId(refererId); |
| | | if(member.getInviteId().equals(referrerId)){ |
| | | throw new FebsException("自己不能推荐自己"); |
| | | } |
| | | String refererId = referer.getInviteId();//新推荐人的邀请码 |
| | | if(StrUtil.isNotEmpty(referer.getReferrerIds())){ |
| | | if (referer.getReferrerIds().contains(member.getInviteId())) { |
| | | throw new FebsException("修改的推荐关系不符合规则"); |
| | | } |
| | | } |
| | | // String beforeReferer = member.getReferrerId(); |
| | | member.setReferrerId(refererId);//更新用户的上级推荐人为新推荐人的邀请码refererId |
| | | String refererIds = refererIds(refererId); |
| | | member.setReferrerIds(refererIds); |
| | | this.baseMapper.updateById(member); |