From bdf266ec3535df672c2ca86c638ee60eb7e6ea93 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Thu, 18 Nov 2021 11:08:13 +0800
Subject: [PATCH] 20211108
---
gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml | 129 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 120 insertions(+), 9 deletions(-)
diff --git a/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml b/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml
index 776eeb4..b35247d 100644
--- a/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml
+++ b/gc-shop/src/main/resources/mapper/shop/ScoreGoodsMapper.xml
@@ -4,18 +4,65 @@
<select id="queryGoodsList" resultType="com.xzx.gc.shop.vo.QueryGoodsListVo">
SELECT
- *
+ a.*,
+ a.CREATED_TIME createTime,
+ (
+ SELECT
+ ifnull(sum(b.stock),0)
+ FROM
+ xzx_score_goods_sku b
+ WHERE 1 = 1
+ and b.goods_id = a.id
+ ) stock
FROM
xzx_score_goods a
+
WHERE 1 = 1
+ and a.del_flag = 0
<if test="name != null and name != ''">
- and a.name like concat('%',#{name},'%')
+ and (a.name like concat('%',#{name},'%') or a.goods_no like concat('%',#{name},'%'))
</if>
+
+ <if test="isQg != null and isQg != ''">
+ and a.is_qg= #{isQg}
+ </if>
+
+ <if test="isSale != null and isSale != ''">
+ and a.is_sale= #{isSale}
+ </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
+ order by
+ <if test="namePx != null and namePx != '' and namePx == 1">
+ a.qg_start_time
+ </if>
+ <if test="namePx != null and namePx != '' and namePx == 2">
+ a.qg_end_time
+ </if>
+ <if test="namePx != null and namePx != '' and namePx == 3">
+ a.is_sale
+ </if>
+ <if test="namePx != null and namePx != '' and namePx == 4">
+ a.present_price + 0
+ </if>
+ <if test="namePx != null and namePx != '' and namePx == 5">
+ a.original_price + 0
+ </if>
+ <if test="namePx != null and namePx != '' and namePx == 6">
+ stock
+ </if>
+ <if test="namePx != null and namePx != '' and namePx == 7">
+ a.CREATED_TIME
+ </if>
+
+ <if test="typePx != null and typePx != '' and typePx == 1">
+ asc
+ </if>
+ <if test="typePx != null and typePx != '' and typePx == 2">
+ desc
+ </if>
</select>
@@ -39,18 +86,82 @@
select
a.*,
sum(b.quantity) quantity,
- sum(b.stock) stock
+ sum(b.stock) stock,
+ min(b.present_price) minPrice
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
+ a.del_flag=0 and a.is_sale=1
+ <if test="record.minScore != null" >
+ and b.present_price >= #{record.minScore}
+ </if>
+ <if test="record.maxScore != null">
+ and #{record.maxScore} > b.present_price
+ </if>
<if test="record.name != null and record.name != ''">
- and a.name like CONCAT(CONCAT(#{record.name}, "%"), "%")
+ and a.name like concat('%',#{record.name},'%')
+ </if>
+ <if test="record.id != null and record.id != ''">
+ and a.id=#{record.id}
+ </if>
+ <if test="record.isQg != null and record.isQg != ''">
+ and a.is_qg=#{record.isQg} and a.qg_end_time > now() and a.qg_start_time < now()
</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}))
+ and (a.category_id = #{record.cateId} or a.category_id in (select id from xzx_score_goods_category where parent_id=#{record.cateId}))
</if>
</where>
- order by a.CREATED_TIME desc
+ group by a.id
+ <if test="record.sort == 1">
+ order by a.id desc
+ </if>
+ <if test="record.sort == 2">
+ order by quantity desc
+ </if>
+ <if test="record.sort == 3">
+ order by minPrice desc
+ </if>
+ </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" />
+ <result property="quotaTime" column="quota_time" />
+ <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 b.id = c.style_id and c.del_flag = 0
+ where a.id=#{id}
</select>
</mapper>
--
Gitblit v1.9.1