From 6b000d0c8b24f3cd65caeaedb0e7f44d638bf284 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Tue, 27 May 2025 17:28:38 +0800 Subject: [PATCH] refactor(mall): 重构取消收藏功能 --- src/main/java/cc/mrbird/febs/mall/service/impl/MallMemberCollectionServiceImpl.java | 36 ++++++++++++++++++++++++++++-------- 1 files changed, 28 insertions(+), 8 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 5d606cf..748f162 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,8 +1,10 @@ package cc.mrbird.febs.mall.service.impl; +import cc.mrbird.febs.common.entity.FebsResponse; 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.ApiColletDelDto; import cc.mrbird.febs.mall.dto.MemberCollectionListDto; import cc.mrbird.febs.mall.entity.MallGoods; import cc.mrbird.febs.mall.entity.MallMember; @@ -47,15 +49,12 @@ 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("商品已收藏"); + if (CollUtil.isEmpty(mallMemberCollections)) { + MallMemberCollection collection = new MallMemberCollection(); + collection.setMemberId(member.getId()); + collection.setGoodsId(addCollectionDto.getGoodsId()); + this.baseMapper.insert(collection); } - - MallMemberCollection collection = new MallMemberCollection(); - collection.setMemberId(member.getId()); - collection.setGoodsId(addCollectionDto.getGoodsId()); - - this.baseMapper.insert(collection); } @Override @@ -77,11 +76,17 @@ public void del(String ids) { MallMember member = LoginUserUtil.getLoginUser(); List<String> goodsIdList = StrUtil.split(ids, ','); + if (CollUtil.isEmpty(goodsIdList)) { + return; + } LambdaQueryWrapper<MallMemberCollection> query = new LambdaQueryWrapper<>(); query.in(MallMemberCollection::getGoodsId, goodsIdList); query.eq(MallMemberCollection::getMemberId, member.getId()); List<MallMemberCollection> collections = this.baseMapper.selectList(query); + if (CollUtil.isEmpty(collections)) { + return; + } List<Long> idsList = collections.stream().map(MallMemberCollection::getId).collect(Collectors.toList()); LambdaQueryWrapper<MallMemberCollection> delQuery = new LambdaQueryWrapper<>(); @@ -89,4 +94,19 @@ delQuery.eq(MallMemberCollection::getMemberId, member.getId()); this.baseMapper.delete(delQuery); } + + @Override + public FebsResponse delCollection(ApiColletDelDto dto) { + MallMember member = LoginUserUtil.getLoginUser(); + List<Long> ids = dto.getIds(); + if (CollUtil.isEmpty(ids)) { + return new FebsResponse().success().message("操作成功"); + } + + LambdaQueryWrapper<MallMemberCollection> delQuery = new LambdaQueryWrapper<>(); + delQuery.in(MallMemberCollection::getId, ids); + delQuery.eq(MallMemberCollection::getMemberId, member.getId()); + this.baseMapper.delete(delQuery); + return new FebsResponse().success().message("操作成功"); + } } -- Gitblit v1.9.1