From 8a92698c7c686c6fff93420e78d45cdab4f175e0 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Wed, 23 Aug 2023 22:53:59 +0800
Subject: [PATCH] fix

---
 src/main/resources/mapper/modules/MallGoodsMapper.xml                       |    8 ++++++--
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java |    5 +++++
 src/main/java/cc/mrbird/febs/mall/dto/MallGoodsQueryDto.java                |    3 +++
 3 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsQueryDto.java b/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsQueryDto.java
index 93b29a8..dde8bdf 100644
--- a/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsQueryDto.java
+++ b/src/main/java/cc/mrbird/febs/mall/dto/MallGoodsQueryDto.java
@@ -40,4 +40,7 @@
 
     @ApiModelProperty(value = "1-付费商品 2-积分商品")
     private Integer goodsType;
+
+    @ApiModelProperty(hidden = true)
+    private Long memberId;
 }
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java
index cc9f184..ab411fd 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallGoodsServiceImpl.java
@@ -3,6 +3,7 @@
 import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.AppContants;
+import cc.mrbird.febs.common.utils.LoginUserUtil;
 import cc.mrbird.febs.mall.conversion.MallGoodsConversion;
 import cc.mrbird.febs.mall.conversion.MallMemberConversion;
 import cc.mrbird.febs.mall.dto.ApiMallGoodsCommentDto;
@@ -47,6 +48,10 @@
 
     @Override
     public IPage<MallGoodsListVo> findMallGoodsListInPage(MallGoodsQueryDto queryDto) {
+        MallMember loginUser = LoginUserUtil.getLoginUser();
+        if (loginUser != null) {
+            queryDto.setMemberId(loginUser.getId());
+        }
         Page<MallGoodsListVo> page = new Page<>(queryDto.getPageNow(), queryDto.getPageSize());
         return this.baseMapper.selectMallGoodsListQueryInPage(queryDto, page);
     }
diff --git a/src/main/resources/mapper/modules/MallGoodsMapper.xml b/src/main/resources/mapper/modules/MallGoodsMapper.xml
index 2f0e915..20c4977 100644
--- a/src/main/resources/mapper/modules/MallGoodsMapper.xml
+++ b/src/main/resources/mapper/modules/MallGoodsMapper.xml
@@ -101,7 +101,9 @@
                 a.carriage_rule_id,
                 a.goods_weight,
                 a.order_number,
-                case when collection.id is null then 2 else 1 end hasCollect,
+                <if test="record.memberId != null">
+                    case when collection.id is null then 2 else 1 end hasCollect,
+                </if>
                 min(b.id) skuId,
                 min(b.present_price) price,
                 sum(b.stock) stock,
@@ -109,7 +111,9 @@
             from mall_goods a
                  left join mall_goods_sku b on a.id=b.goods_id
                  left join mall_goods_category c on a.category_id=c.id
-                 left join mall_member_collection collection on a.id=collection.goods_id
+                 <if test="record.memberId != null">
+                    left join mall_member_collection collection on a.id=collection.goods_id and collection.member_id=#{record.memberId}
+                 </if>
             <where>
                 a.is_sale=1
                 <if test="record != null">

--
Gitblit v1.9.1