From 392b42c4891cf2e6beda57ab32c51598f290f4b7 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期五, 14 三月 2025 20:56:27 +0800
Subject: [PATCH] bug修改

---
 ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java |   56 ++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 46 insertions(+), 10 deletions(-)

diff --git a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java
index b1d02d9..f434c3e 100644
--- a/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java
+++ b/ruoyi-modules/ruoyi-article/src/main/java/com/ruoyi/article/service/impl/MemberArticleCollectionServiceImpl.java
@@ -4,21 +4,26 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.article.domain.Article;
-import com.ruoyi.article.domain.MemberArticleCollection;
 import com.ruoyi.article.controller.forepart.dto.ArticleDTO;
 import com.ruoyi.article.controller.forepart.dto.MemberArticleCollectionDTO;
+import com.ruoyi.article.controller.forepart.vo.MemberArticleCollectionVO;
+import com.ruoyi.article.domain.Article;
+import com.ruoyi.article.domain.MemberArticleCollection;
 import com.ruoyi.article.mapper.ArticleMapper;
 import com.ruoyi.article.mapper.MemberArticleCollectionMapper;
 import com.ruoyi.article.service.IMemberArticleCollectionService;
-import com.ruoyi.article.controller.forepart.vo.MemberArticleCollectionVO;
 import com.ruoyi.common.core.constant.SecurityConstants;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.system.api.domain.Member;
 import com.ruoyi.system.api.feignClient.MemberClient;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+import java.util.stream.Collectors;
 import javax.annotation.Resource;
 import org.springframework.stereotype.Service;
 
@@ -41,10 +46,10 @@
 
     @Override
     public void saveMemberArticleCollection(MemberArticleCollectionDTO memberArticleCollectionDTO) {
-        if (memberArticleCollectionDTO.getMemberId()!=null) {
+        if (memberArticleCollectionDTO.getMemberId()==null) {
             throw new ServiceException("用户ID不能为空");
         }
-        if (memberArticleCollectionDTO.getState()!=null) {
+        if (memberArticleCollectionDTO.getState()==null) {
             throw new ServiceException("类型不能为空");
         }
 
@@ -81,23 +86,54 @@
 
     @Override
     public PageDTO<MemberArticleCollectionVO> getMemberArticleCollection(ArticleDTO articleDTO) {
+        Set<Long> goodsSkuIdList = null;
+        if (StringUtils.isNotEmpty(articleDTO.getGoodsSkuName())) {
+            LambdaQueryWrapper<Article> wrapper= Wrappers.lambdaQuery();
+            wrapper.like(Article::getTitle,articleDTO.getGoodsSkuName());
+            wrapper.eq(Article::getDelFlag,0);
+            List<Article> page1 = articleMapper.selectList(wrapper);
+            goodsSkuIdList = page1.stream().map(Article::getId)
+                    .collect(Collectors.toSet());
+        }
         Page<MemberArticleCollection> page = new Page<>(articleDTO.getPageCurr(), articleDTO.getPageSize());
-        LambdaQueryWrapper< MemberArticleCollection> wrapper= Wrappers.lambdaQuery();
+        LambdaQueryWrapper<MemberArticleCollection> wrapper= Wrappers.lambdaQuery();
         wrapper.eq(MemberArticleCollection::getMemberId,articleDTO.getMemberId());
+        if (StringUtils.isNotEmpty(articleDTO.getGoodsSkuName())){
+            if (goodsSkuIdList.size()>0){
+                wrapper.in(MemberArticleCollection::getTargetId,goodsSkuIdList);
+            }else{
+                Set<Long> goodsSkuIdList1 = new HashSet<>();
+                goodsSkuIdList1.add(0L);
+                wrapper.in(MemberArticleCollection::getTargetId,goodsSkuIdList1);
+            }
+        }
+        wrapper.eq(MemberArticleCollection::getDelFlag,0);
+        wrapper.orderByDesc(MemberArticleCollection::getCreateTime);
         Page<MemberArticleCollection> page1 = this.page(page, wrapper);
         PageDTO<MemberArticleCollectionVO> articleCommentsVOPageDTO = PageDTO.of(page1, MemberArticleCollectionVO.class);
         List<MemberArticleCollectionVO> list2 = articleCommentsVOPageDTO.getList();
         for (MemberArticleCollectionVO memberArticleCollectionVO:list2){
             Article byId = articleMapper.selectById(memberArticleCollectionVO.getTargetId());
+            if (Objects.isNull(byId)) {
+                continue;
+            }
             memberArticleCollectionVO.setContent(byId.getContent());
             memberArticleCollectionVO.setImages(byId.getImages());
             memberArticleCollectionVO.setTitle(byId.getTitle());
-
-            R<Member> membeOne = memberClient.getMembeOne(memberArticleCollectionVO.getMemberId(),
+            memberArticleCollectionVO.setCreateTime(byId.getCreateTime());
+            memberArticleCollectionVO.setId(byId.getId());
+            R<Member> membeOne = memberClient.getMembeOne(byId.getMemberId(),
                     SecurityConstants.INNER);
             Member data = membeOne.getData();
-            memberArticleCollectionVO.setMemberNickname(data.getNickname());
-            memberArticleCollectionVO.setIsCollect(1);
+            if (data!=null){
+                memberArticleCollectionVO.setMemberNickname(data.getNickname());
+                memberArticleCollectionVO.setMemberAvatar(data.getAvatar());
+            }else{
+                memberArticleCollectionVO.setMemberNickname("平台发布");
+                memberArticleCollectionVO.setMemberAvatar("https://jyzx-obs.obs.cn-sccd1.ctyun.cn/d41508d822cb4b7896aaa1bb56e6167f.png");
+            }
+
+            memberArticleCollectionVO.setIsCollect(2);
 
         }
         return articleCommentsVOPageDTO;

--
Gitblit v1.7.1