| | |
| | | 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; |
| | |
| | | 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 |
| | |
| | | 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) |
| | |
| | | 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); |
| | | }); |
| | | } |
| | |
| | | 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); |
| | | } |
| | | |
| | | |
| | | } |