From 3f847215a4875a7855b830013b337b6c082f4649 Mon Sep 17 00:00:00 2001 From: Hentua <wangdoubleone@gmail.com> Date: Thu, 24 Aug 2023 22:10:58 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 34 ++++++++++++++++++++++++++++++++++ 1 files changed, 34 insertions(+), 0 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java index 6547937..0fb793c 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java @@ -593,6 +593,40 @@ mallMember.setLevel(AgentLevelEnum.ZERO_LEVEL.name()); mallMember.setOpenId(openId); mallMember.setSessionKey(sessionKey); + + if (StrUtil.isNotBlank(apiXcxLoginDto.getInviteId())) { + MallMember member = this.baseMapper.selectInfoByInviteId(apiXcxLoginDto.getInviteId()); + 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.insert(mallMember); mallMember = this.baseMapper.selectMemberByOpenId(openId); -- Gitblit v1.9.1