From 7e9bfaef8b802ea74de2693e7606d058e957daa1 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Tue, 22 Jul 2025 10:38:14 +0800
Subject: [PATCH] feat(mall): 添加取消收藏功能

---
 src/main/java/cc/mrbird/febs/mall/service/ApiClothesSocialService.java               |    3 +++
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java      |   18 ++++++++++++++++++
 src/main/java/cc/mrbird/febs/mall/controller/clothes/ApiClothesSocialController.java |    8 ++++++++
 3 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/controller/clothes/ApiClothesSocialController.java b/src/main/java/cc/mrbird/febs/mall/controller/clothes/ApiClothesSocialController.java
index 67a32bd..71a4277 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/clothes/ApiClothesSocialController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/clothes/ApiClothesSocialController.java
@@ -1,6 +1,7 @@
 package cc.mrbird.febs.mall.controller.clothes;
 
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.mall.dto.ApiColletDelDto;
 import cc.mrbird.febs.mall.dto.clothes.*;
 import cc.mrbird.febs.mall.service.ApiClothesOrderService;
 import cc.mrbird.febs.mall.service.ApiClothesSocialService;
@@ -103,6 +104,13 @@
         return apiClothesSocialService.myCollect(dto);
     }
 
+
+    @ApiOperation(value = "取消收藏")
+    @PostMapping(value = "/del")
+    public FebsResponse delCollection(@RequestBody ApiColletDelDto dto) {
+        return apiClothesSocialService.delCollection(dto);
+    }
+
     @ApiOperation(value = "我的灵感-跳转到开始设计", notes = "我的灵感-跳转到开始设计")
     @ApiResponses({
             @ApiResponse(code = 200, message = "success", response = ApiClothesSocialMuseVo.class)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/ApiClothesSocialService.java b/src/main/java/cc/mrbird/febs/mall/service/ApiClothesSocialService.java
index f8a38f2..25fc93a 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/ApiClothesSocialService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/ApiClothesSocialService.java
@@ -1,6 +1,7 @@
 package cc.mrbird.febs.mall.service;
 
 import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.mall.dto.ApiColletDelDto;
 import cc.mrbird.febs.mall.dto.clothes.*;
 import cc.mrbird.febs.mall.entity.ClothesSocial;
 import com.baomidou.mybatisplus.extension.service.IService;
@@ -29,4 +30,6 @@
     FebsResponse comment(ApiClothesSocialCommentDto dto);
 
     FebsResponse allComment(ApiAllCommentDto dto);
+
+    FebsResponse delCollection(ApiColletDelDto dto);
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java
index 6f61c90..527c37e 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiClothesSocialServiceImpl.java
@@ -4,6 +4,7 @@
 import cc.mrbird.febs.common.enumerates.*;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.LoginUserUtil;
+import cc.mrbird.febs.mall.dto.ApiColletDelDto;
 import cc.mrbird.febs.mall.dto.clothes.*;
 import cc.mrbird.febs.mall.entity.*;
 import cc.mrbird.febs.mall.mapper.*;
@@ -651,6 +652,23 @@
         return new FebsResponse().success().data(voPage);
     }
 
+    @Override
+    public FebsResponse delCollection(ApiColletDelDto dto) {
+        Long memberId = LoginUserUtil.getLoginUser().getId();
+        List<Long> ids = dto.getIds();
+        if (CollUtil.isEmpty(ids)) {
+            return new FebsResponse().success().message("操作成功");
+        }
+
+        LambdaQueryWrapper<ClothesSocialFollow> delQuery = new LambdaQueryWrapper<>();
+        delQuery.eq(ClothesSocialFollow::getMemberId, memberId);
+        delQuery.eq(ClothesSocialFollow::getSourceType, SocialSourceTypeEnum.SOCIAL.getValue());
+        delQuery.in(ClothesSocialFollow::getSourceId, ids);
+        delQuery.eq(ClothesSocialFollow::getType, SocialTypeEnum.COLLECT.getValue());
+        clothesSocialFollowMapper.delete(delQuery);
+        return new FebsResponse().success().message("操作成功");
+    }
+
     public static void main(String[] args) {
         JSONObject jsonObject = new JSONObject();
         jsonObject.putByPath("text", "123");

--
Gitblit v1.9.1