From 7043628d74a26cc09a3735c251567bf36f6219b6 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 24 Jun 2021 19:23:01 +0800
Subject: [PATCH] add goods details

---
 gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml |   70 +++++++++++++++++++++++++++++++++-
 1 files changed, 67 insertions(+), 3 deletions(-)

diff --git a/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml b/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml
index 46c2412..2eb9cab 100644
--- a/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml
+++ b/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml
@@ -11,9 +11,10 @@
         <if test="name != null and name != ''">
             and a.name like concat('%',#{name},'%')
         </if>
-        <if test="delFlag != null and delFlag != ''">
-            and a.del_flag = #{delFlag}
-        </if>
+<!--        <if test="delFlag == 0 or delFlag == 1">-->
+<!--            and a.del_flag = #{delFlag}-->
+<!--        </if>-->
+        and a.del_flag = 0
         order by a.CREATED_TIME desc
     </select>
 
@@ -34,4 +35,67 @@
         where id=#{id}
     </update>
 
+    <select id="selectXcxGoodsList" resultType="com.xzx.gc.shop.vo.XcxGoodsListVo">
+        select
+            a.*,
+            sum(b.quantity) quantity,
+            sum(b.stock) stock
+        from xzx_score_goods a
+        inner join xzx_score_goods_sku b on a.id=b.goods_id and b.del_flag=0
+        <where>
+            a.del_flag=0 and a.is_sale=1
+            <if test="record.name != null and record.name != ''">
+                and a.name like CONCAT(CONCAT(#{record.name}, "%"), "%")
+            </if>
+            <if test="record.id != null and record.id != ''">
+                and a.id=#{record.id}
+            </if>
+            <if test="record.cateId != null and record.cateId != ''">
+                and (a.category_id = #{record.cateId} or a.category in (select id from xzx_score_goods_category where parent_id=#{record.cateId}))
+            </if>
+        </where>
+        group by a.id
+        order by a.id desc
+    </select>
+
+    <resultMap id="goodsDetailsMap" type="com.xzx.gc.shop.vo.XcxGoodsDetailVo">
+        <result property="name" column="name" />
+        <result property="thumb" column="thumb" />
+        <result property="presentPrice" column="present_price" />
+        <result property="originalPrice" column="original_price" />
+        <result property="isSale" column="is_sale" />
+        <result property="isQg" column="is_qg" />
+        <result property="qgStartTime" column="qg_start_time" />
+        <result property="qgEndTime" column="qg_end_time" />
+        <result property="details" column="details" />
+        <collection property="styles" ofType="com.xzx.gc.shop.vo.XcxGoodsDetailStyleVo" >
+            <id property="id" column="s_id" />
+            <result property="name" column="s_name" />
+            <collection property="skus" ofType="com.xzx.gc.shop.vo.XcxGoodsDetailSkuVo">
+                <id property="id" column="sku_id" />
+                <result property="name" column="sku_name" />
+                <result property="originalPrice" column="sku_original_price" />
+                <result property="presentPrice" column="sku_present_price" />
+                <result property="stock" column="sku_stock" />
+                <result property="quantity" column="sku_quantity" />
+            </collection>
+        </collection>
+    </resultMap>
+
+    <select id="selectGoodsDetailsById" resultMap="goodsDetailsMap">
+        select
+            a.*,
+            b.id s_id,
+            b.name s_name,
+            c.id sku_id,
+            c.name sku_name,
+            c.original_price sku_original_price,
+            c.present_price sku_present_price,
+            c.stock sku_stock,
+            c.quantity sku_quantity
+        from xzx_score_goods a
+        inner join xzx_score_goods_style b on a.id = b.goods_id and b.del_flag = 0
+        inner join xzx_score_goods_sku c on a.id = c.goods_id and c.del_flag = 0
+        where a.id=#{id}
+    </select>
 </mapper>

--
Gitblit v1.9.1