From d42a45cbc8f5caff3e0f83e3e4edd44ce423b380 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Mon, 28 Apr 2025 16:43:09 +0800 Subject: [PATCH] feat(pay): 为幸福活动订单项生成代码 --- src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java index a70cb57..5d606cf 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java @@ -1,11 +1,14 @@ package cc.mrbird.febs.mall.service.impl; +import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.LoginUserUtil; import cc.mrbird.febs.mall.dto.AddCollectionDto; import cc.mrbird.febs.mall.dto.MemberCollectionListDto; +import cc.mrbird.febs.mall.entity.MallGoods; import cc.mrbird.febs.mall.entity.MallMember; import cc.mrbird.febs.mall.entity.MallMemberCollection; import cc.mrbird.febs.mall.mapper.MallMemberCollectionMapper; +import cc.mrbird.febs.mall.service.IApiMallGoodsService; import cc.mrbird.febs.mall.service.IMallMemberCollectionService; import cc.mrbird.febs.mall.vo.AddCollectionVo; import cc.mrbird.febs.mall.vo.CollectionListVo; @@ -29,9 +32,24 @@ @RequiredArgsConstructor public class MallMemberCollectionServiceImpl extends ServiceImpl<MallMemberCollectionMapper, MallMemberCollection> implements IMallMemberCollectionService { + private final IApiMallGoodsService apiMallGoodsService; + @Override public void add(AddCollectionDto addCollectionDto) { MallMember member = LoginUserUtil.getLoginUser(); + + MallGoods mallgoods = apiMallGoodsService.getById(addCollectionDto.getGoodsId()); + if (mallgoods == null) { + throw new FebsException("商品不存在"); + } + + LambdaQueryWrapper<MallMemberCollection> queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(MallMemberCollection::getMemberId, member.getId()); + queryWrapper.eq(MallMemberCollection::getGoodsId, addCollectionDto.getGoodsId()); + List<MallMemberCollection> mallMemberCollections = this.baseMapper.selectList(queryWrapper); + if (CollUtil.isNotEmpty(mallMemberCollections)) { + throw new FebsException("商品已收藏"); + } MallMemberCollection collection = new MallMemberCollection(); collection.setMemberId(member.getId()); @@ -58,8 +76,14 @@ @Override public void del(String ids) { MallMember member = LoginUserUtil.getLoginUser(); - List<String> idsList = StrUtil.split(ids, ','); + List<String> goodsIdList = StrUtil.split(ids, ','); + LambdaQueryWrapper<MallMemberCollection> query = new LambdaQueryWrapper<>(); + query.in(MallMemberCollection::getGoodsId, goodsIdList); + query.eq(MallMemberCollection::getMemberId, member.getId()); + List<MallMemberCollection> collections = this.baseMapper.selectList(query); + + List<Long> idsList = collections.stream().map(MallMemberCollection::getId).collect(Collectors.toList()); LambdaQueryWrapper<MallMemberCollection> delQuery = new LambdaQueryWrapper<>(); delQuery.in(MallMemberCollection::getId, idsList); delQuery.eq(MallMemberCollection::getMemberId, member.getId()); -- Gitblit v1.9.1