src/main/java/cc/mrbird/febs/mall/dto/ApiXcxLoginDto.java
@@ -9,4 +9,6 @@ private String code; private String inviteId; } src/main/java/cc/mrbird/febs/mall/dto/ApiXcxSaveInfoDto.java
@@ -20,4 +20,6 @@ @ApiModelProperty(value = "性别" ) private Integer gender; @ApiModelProperty(value = "邀请码") private String inviteId; } src/main/java/cc/mrbird/febs/mall/entity/MallMember.java
@@ -154,4 +154,5 @@ @TableField(exist = false) private String salesmansName; private String inviteImg; } 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); src/main/java/cc/mrbird/febs/pay/model/WxGenerateQrCodeDto.java
@@ -17,7 +17,7 @@ @ApiModelProperty(value = "参数 订单id 例如 15") private String scene; @ApiModelProperty(value = "1:商品分享 2:团长分享") @ApiModelProperty(value = "1:商品分享 2:团长分享 3-会员邀请码") private Integer type; @ApiModelProperty(value = "商品分享传商品ID,团长分享放图章特征码") src/main/java/cc/mrbird/febs/pay/service/impl/XcxPayServiceImpl.java
@@ -319,6 +319,17 @@ } } if (type == 3) { String inviteId = wxGenerateQrCodeDto.getTypeParam(); MallMember member = mallMemberMapper.selectInfoByInviteId(inviteId); if(ObjectUtil.isNotNull(member)){ String wxCodeImg = member.getInviteImg(); if(StrUtil.isNotBlank(wxCodeImg)){ return new FebsResponse().success().data(wxCodeImg); } } } String randomNum = MallUtils.getRandomNum(5); String imgName="/user_" + randomNum + "_acode_1.jpg"; String codeImgPath = generateAcode(wxGenerateQrCodeDto.getScene(), wxGenerateQrCodeDto.getPage(), imgName, "400px", null); @@ -334,6 +345,15 @@ mallTeamLeader.setWxCodeImg(codeImgPath); mallTeamLeaderMapper.updateById(mallTeamLeader); } if (type == 3) { String inviteId = wxGenerateQrCodeDto.getTypeParam(); MallMember member = mallMemberMapper.selectInfoByInviteId(inviteId); if(ObjectUtil.isNotNull(member)){ member.setInviteImg(codeImgPath); mallMemberMapper.updateById(member); } } return new FebsResponse().success().data(codeImgPath); } src/main/resources/mapper/modules/MallMemberCollectionMapper.xml
@@ -10,7 +10,7 @@ ,goods.present_price ,goods.is_sale from mall_member_collection collection inner join mall_goods goods on collection.goods_id=goods.ID inner join mall_goods goods on collection.goods_id=goods.ID and goods.is_sale = 1 <where> <if test="record != null"> <if test="record.memberId != null"> src/main/resources/mapper/modules/MallMemberFootprintMapper.xml
@@ -10,7 +10,7 @@ ,goods.present_price ,goods.is_sale from mall_member_footprint footprint inner join mall_goods goods on footprint.goods_id=goods.ID inner join mall_goods goods on footprint.goods_id=goods.ID and goods.is_sale = 1 <where> <if test="record != null"> <if test="record.memberId != null">