From 6609637e38d2a7a37fcd068cf49340018051262e Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Fri, 25 Aug 2023 17:48:47 +0800
Subject: [PATCH] Merge branch 'blnka' of http://120.27.238.55:7000/r/xc-mall into blnka

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java |   49 +++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 43 insertions(+), 6 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..b369f4a 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
@@ -253,14 +253,16 @@
             mallMemberVo.setHasPayment(1);
         }
 
-        LambdaQueryWrapper<MallMemberCollection> collectionQuery = new LambdaQueryWrapper<>();
-        collectionQuery.eq(MallMemberCollection::getMemberId, id);
-        List<MallMemberCollection> collectionList = mallMemberCollectionService.list(collectionQuery);
+        MemberCollectionListDto memberCollectionListDto = new MemberCollectionListDto();
+        memberCollectionListDto.setPageNow(1);
+        memberCollectionListDto.setPageSize(10);
+        List<CollectionListVo> collectionList = mallMemberCollectionService.findMemberCollectionList(memberCollectionListDto);
         mallMemberVo.setCollectionCnt(CollUtil.isNotEmpty(collectionList) ? collectionList.size() : 0);
 
-        LambdaQueryWrapper<MallMemberFootprint> footprintQuery = new LambdaQueryWrapper<>();
-        footprintQuery.eq(MallMemberFootprint::getMemberId, id);
-        List<MallMemberFootprint> footprintList = mallMemberFootprintService.list(footprintQuery);
+        MemberFootprintListDto memberFootprintListDto = new MemberFootprintListDto();
+        memberFootprintListDto.setPageNow(1);
+        memberFootprintListDto.setPageSize(10);
+        List<FootprintListVo> footprintList = mallMemberFootprintService.findMemberFootprintList(memberFootprintListDto);
         mallMemberVo.setFootprintCnt(CollUtil.isNotEmpty(footprintList) ? footprintList.size() : 0);
 
         List<MallMember> mallMembers = this.baseMapper.selectByRefererId(mallMember.getInviteId());
@@ -564,6 +566,7 @@
 
     @Override
     public FebsResponse xcxLogin(ApiXcxLoginDto apiXcxLoginDto) throws IOException {
+        log.info("登录请求参数:{}", JSONObject.toJSONString(apiXcxLoginDto));
         FebsResponse febsResponse = new FebsResponse();
         String code = apiXcxLoginDto.getCode();
         log.info("code:" + code);
@@ -593,6 +596,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