From 2ae7d73e29010a1f1b43c3b71f6789c16c2c3128 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 19 May 2025 14:39:09 +0800 Subject: [PATCH] fix(mall): 修复完善信息赠送新人礼逻辑 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiSaleServiceImpl.java | 45 +++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 43 insertions(+), 2 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiSaleServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiSaleServiceImpl.java index d008859..277e185 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiSaleServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiSaleServiceImpl.java @@ -8,10 +8,13 @@ import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.ApiSaleService; +import cc.mrbird.febs.mall.vo.memberLevel.ApiMemberLevelListInfoVo; import cc.mrbird.febs.mall.vo.sale.*; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -30,6 +33,7 @@ public class ApiSaleServiceImpl extends ServiceImpl<MallMemberMapper, MallMember> implements ApiSaleService { private final HappySaleLevelMapper happySaleLevelMapper; + private final HappyMemberLevelMapper happyMemberLevelMapper; private final MallAchieveRecordMapper mallAchieveRecordMapper; private final MallMemberWalletMapper mallMemberWalletMapper; @Override @@ -69,7 +73,8 @@ List<MallMember> mallMembers = this.baseMapper.selectAllChildAgentListByInviteId(mallMember.getInviteId()); apiSaleInfoVo.setTotalCnt(CollUtil.isNotEmpty(mallMembers) ? mallMembers.size() : 0); - // todo 提现部分暂无 + MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(id); + apiSaleInfoVo.setAvaAmount(mallMemberWallet.getCommission()); return new FebsResponse().success().data(apiSaleInfoVo); } @@ -142,6 +147,10 @@ public FebsResponse levelInfoList() { ArrayList<ApiLevelListInfoVo> apiLevelListInfoVos = new ArrayList<>(); + // 获取当前登录用户的ID + Long memberId = LoginUserUtil.getLoginUser().getId(); + MallMember mallMember = this.baseMapper.selectById(memberId); + List<HappySaleLevel> happySaleLevels = happySaleLevelMapper.selectList( new LambdaQueryWrapper<HappySaleLevel>() .orderByAsc(HappySaleLevel::getCode) @@ -150,9 +159,10 @@ happySaleLevels.forEach(happySaleLevel -> { ApiLevelListInfoVo apiLevelListInfoVo = new ApiLevelListInfoVo(); apiLevelListInfoVo.setName(happySaleLevel.getName()); + apiLevelListInfoVo.setMemberCode(mallMember.getStoreMaster()); apiLevelListInfoVo.setCode(happySaleLevel.getCode()); apiLevelListInfoVo.setContent(happySaleLevel.getContent()); - apiLevelListInfoVo.setIconPng(happySaleLevel.getIconPng()); + apiLevelListInfoVo.setHeaderPng(happySaleLevel.getIconPng()); apiLevelListInfoVos.add(apiLevelListInfoVo); }); } @@ -262,6 +272,37 @@ return new FebsResponse().success().data(apiSaleRecordInfoVo); } + @Override + public FebsResponse memberLevelList() { + ArrayList<ApiMemberLevelListInfoVo> apiLevelListInfoVos = new ArrayList<>(); + + // 获取当前登录用户的ID + Long memberId = LoginUserUtil.getLoginUser().getId(); + MallMember mallMember = this.baseMapper.selectById(memberId); + MallMemberWallet mallMemberWallet = mallMemberWalletMapper.selectWalletByMemberId(memberId); + + List<HappyMemberLevel> happyMemberLevels = happyMemberLevelMapper.selectList( + new LambdaQueryWrapper<HappyMemberLevel>() + .orderByAsc(HappyMemberLevel::getCode) + ); + //Stream 操作 happyMemberLevels,返回一个Map<code,HappyMemberLevel> + Map<Integer, HappyMemberLevel> happyMemberLevelMap = happyMemberLevels.stream() + .collect(Collectors.toMap(HappyMemberLevel::getCode, happyMemberLevel -> happyMemberLevel)); + if (CollUtil.isNotEmpty(happyMemberLevels)) { + happyMemberLevels.forEach(happyMemberLevel -> { + ApiMemberLevelListInfoVo vo = new ApiMemberLevelListInfoVo(); + BeanUtil.copyProperties(happyMemberLevel, vo); + vo.setMemberCode(mallMember.getDirector()); + vo.setMemberScore(mallMemberWallet.getScore()); + vo.setUpgradeScore( + ObjectUtil.isEmpty(happyMemberLevelMap.get(happyMemberLevel.getCode() + 1)) ? + 0 : happyMemberLevelMap.get(happyMemberLevel.getCode() + 1).getUpgradeScore() + ); + apiLevelListInfoVos.add(vo); + }); + } + return new FebsResponse().success().data(apiLevelListInfoVos); + } } -- Gitblit v1.9.1