<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.xzx.gc.shop.mapper.ScoreGoodsMapper">
|
|
<select id="queryGoodsList" resultType="com.xzx.gc.shop.vo.QueryGoodsListVo">
|
SELECT
|
a.*,
|
a.CREATED_TIME createTime
|
FROM
|
xzx_score_goods a
|
WHERE 1 = 1
|
<if test="name != null and name != ''">
|
and a.name like concat('%',#{name},'%')
|
</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>
|
|
|
|
<select id="selectById" resultType="com.xzx.gc.entity.ScoreGoods">
|
SELECT
|
*
|
FROM
|
xzx_score_goods a
|
WHERE 1 = 1
|
and id = #{id}
|
</select>
|
|
|
<update id="updateDelFlagById">
|
update xzx_score_goods set del_flag=#{delFlag}
|
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.isQg != null and record.isQg != ''">
|
and a.is_qg=#{record.isQg} and a.qg_end_time > now()
|
</if>
|
<if test="record.cateId != null and 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>
|
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>
|