|
|
@@ -815,77 +815,85 @@
|
|
|
p.create_time DESC
|
|
|
</select>
|
|
|
|
|
|
- <select id="listProdByCIdAndSId" parameterType="com.yami.shop.bean.dto.ProdByCategoryIdAndShopIdDTO" resultType="com.yami.shop.bean.model.Product">
|
|
|
+ <select id="listProdByCIdAndSId" parameterType="com.yami.shop.bean.dto.ProdByCategoryIdAndShopIdDTO" resultType="com.yami.shop.bean.param.CategoryProductParam" >
|
|
|
|
|
|
SELECT
|
|
|
- tp.prod_id,
|
|
|
- tp.prod_name,
|
|
|
- tcp.shop_id,
|
|
|
- tp.brand_id,
|
|
|
- tp.brand_name,
|
|
|
- tp.ori_price,
|
|
|
- MIN(cp.channel_prod_price) AS price,
|
|
|
- tp.score_price,
|
|
|
- tp.brief,
|
|
|
- tp.video,
|
|
|
- tp.pic,
|
|
|
- tp.content,
|
|
|
- tp.imgs,
|
|
|
- tp.status,
|
|
|
- tp.is_delete,
|
|
|
- tp.shop_category_id,
|
|
|
- tp.category_id,
|
|
|
- tp.hb_front_category_id,
|
|
|
- tp.sold_num,
|
|
|
- COALESCE(SUM(tss.shop_sku_stocks), 0) AS total_stocks,
|
|
|
- tp.delivery_mode,
|
|
|
- tp.delivery_template_id,
|
|
|
- tp.create_time,
|
|
|
- tp.update_time,
|
|
|
- tp.putaway_time,
|
|
|
- tp.version,
|
|
|
- tp.prod_type,
|
|
|
- tp.activity_id,
|
|
|
- tp.sup_id,
|
|
|
- tp.hb_spu_id,
|
|
|
- tp.hb_status,
|
|
|
-
|
|
|
- COALESCE ((
|
|
|
- SELECT
|
|
|
- SUM( oi2.prod_count )
|
|
|
- FROM
|
|
|
- tz_order_item oi2
|
|
|
- INNER JOIN tz_order o2 ON o2.order_number = oi2.order_number
|
|
|
- WHERE
|
|
|
- oi2.shop_id = #{prodByCategoryIdAndShopIdDTO.shopId}
|
|
|
- AND oi2.prod_id = tp.prod_id
|
|
|
- AND o2.hb_order_status IN ( 20, 30, 40, 70, 80 )
|
|
|
- AND o2.delete_status = 0
|
|
|
- ),
|
|
|
- 0
|
|
|
- ) AS salesVolume
|
|
|
+ tp.prod_id,
|
|
|
+ tp.prod_name,
|
|
|
+ tcp.shop_id,
|
|
|
+ MIN(cp.channel_prod_price) AS price,
|
|
|
+ tp.pic,
|
|
|
+ tss.shop_sku_stocks AS total_stocks,
|
|
|
+
|
|
|
+ COALESCE ((
|
|
|
+ SELECT
|
|
|
+ SUM( oi2.prod_count )
|
|
|
+ FROM
|
|
|
+ tz_order_item oi2
|
|
|
+ INNER JOIN tz_order o2 ON o2.order_number = oi2.order_number
|
|
|
+ WHERE
|
|
|
+ oi2.shop_id = #{prodByCategoryIdAndShopIdDTO.shopId}
|
|
|
+ AND oi2.prod_id = tp.prod_id
|
|
|
+ AND o2.hb_order_status IN ( 20, 30, 40, 70, 80 )
|
|
|
+ AND o2.delete_status = 0
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ ) AS sales_volume
|
|
|
|
|
|
FROM tz_prod tp
|
|
|
- INNER JOIN tz_category_prod tcp ON tp.prod_id = tcp.prod_id
|
|
|
- AND tcp.is_delete = 0 AND tcp.shop_id = #{prodByCategoryIdAndShopIdDTO.shopId}
|
|
|
- and tcp.category_id = #{prodByCategoryIdAndShopIdDTO.categoryId}
|
|
|
- LEFT JOIN tz_shop_sku tss ON tss.spu_id = tp.prod_id
|
|
|
- JOIN tz_channel_prod cp ON cp.shop_id = tcp.shop_id
|
|
|
- AND cp.sku_id = tss.sku_id
|
|
|
- AND cp.is_delete = 0
|
|
|
+ INNER JOIN tz_category_prod tcp ON tp.prod_id = tcp.prod_id
|
|
|
+ AND tcp.is_delete = 0 AND tcp.shop_id = #{prodByCategoryIdAndShopIdDTO.shopId}
|
|
|
+ and tcp.category_id = #{prodByCategoryIdAndShopIdDTO.categoryId}
|
|
|
+ LEFT JOIN tz_shop_sku tss ON tss.spu_id = tp.prod_id and tss.shop_id = 1
|
|
|
+ INNER JOIN tz_channel_prod cp ON cp.shop_id = tcp.shop_id
|
|
|
+ AND cp.sku_id = tss.sku_id
|
|
|
+ AND cp.is_delete = 0
|
|
|
<if test="prodByCategoryIdAndShopIdDTO.channelId == null or prodByCategoryIdAndShopIdDTO.channelId == 0">
|
|
|
and cp.channel_id = 1
|
|
|
</if>
|
|
|
<if test="prodByCategoryIdAndShopIdDTO.channelId != null and prodByCategoryIdAndShopIdDTO.channelId != 0">
|
|
|
and cp.channel_id = #{prodByCategoryIdAndShopIdDTO.channelId}
|
|
|
</if>
|
|
|
- AND cp.channel_prod_price IS NOT NULL
|
|
|
+ AND cp.channel_prod_price IS NOT NULL
|
|
|
WHERE tp.STATUS = 1
|
|
|
- AND tp.`is_delete` = 0
|
|
|
+ AND tp.`is_delete` = 0
|
|
|
GROUP BY tp.prod_id
|
|
|
ORDER BY MAX(tp.create_time) DESC
|
|
|
</select>
|
|
|
|
|
|
+<!-- <resultMap id="listProdByCIdAndSIdMap" type="com.yami.shop.bean.param.CategoryProductParam">-->
|
|
|
+<!-- <id property="prodId" column="prod_id"/>-->
|
|
|
+<!-- <result property="prodName" column="prod_name"/>-->
|
|
|
+<!-- <result property="shopId" column="shop_id"/>-->
|
|
|
+<!-- <result property="price" column="price"/>-->
|
|
|
+<!-- <result property="pic" column="pic"/>-->
|
|
|
+<!-- <result property="salesVolume" column="sales_volume"/>-->
|
|
|
+<!-- <result property="totalStocks" column="total_stocks"/>-->
|
|
|
+<!-- <collection property="skuList" javaType="list" ofType="com.yami.shop.bean.model.Sku">-->
|
|
|
+<!-- <id column="sku_id" jdbcType="BIGINT" property="skuId" />-->
|
|
|
+<!-- <result column="prod_id" jdbcType="BIGINT" property="prodId" />-->
|
|
|
+<!-- <result column="properties" jdbcType="VARCHAR" property="properties" />-->
|
|
|
+<!-- <result column="sku_prod_name" jdbcType="VARCHAR" property="prodName" />-->
|
|
|
+<!-- <result column="sku_ori_price" jdbcType="DECIMAL" property="oriPrice" />-->
|
|
|
+<!-- <result column="sku_price" jdbcType="DECIMAL" property="price" />-->
|
|
|
+<!-- <result column="weight" jdbcType="DECIMAL" property="weight" />-->
|
|
|
+<!-- <result column="volume" jdbcType="DECIMAL" property="volume" />-->
|
|
|
+<!-- <result column="stocks" jdbcType="INTEGER" property="stocks" />-->
|
|
|
+<!-- <result column="sku_score" jdbcType="INTEGER" property="skuScore" />-->
|
|
|
+<!-- <result column="actual_stocks" jdbcType="INTEGER" property="actualStocks" />-->
|
|
|
+<!-- <result column="status" jdbcType="TINYINT" property="status" />-->
|
|
|
+<!-- <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />-->
|
|
|
+<!-- <result column="rec_time" jdbcType="TIMESTAMP" property="recTime" />-->
|
|
|
+<!-- <result column="party_code" jdbcType="VARCHAR" property="partyCode" />-->
|
|
|
+<!-- <result column="model_id" jdbcType="VARCHAR" property="modelId" />-->
|
|
|
+<!-- <result column="sku_pic" jdbcType="VARCHAR" property="pic" />-->
|
|
|
+<!-- <result column="sku_name" jdbcType="VARCHAR" property="skuName" />-->
|
|
|
+<!-- <result column="is_delete" jdbcType="INTEGER" property="isDelete"/>-->
|
|
|
+<!-- </collection>-->
|
|
|
+
|
|
|
+<!-- </resultMap>-->
|
|
|
+
|
|
|
+
|
|
|
<select id="listProdByCategoryIdAndShopId2" parameterType="com.yami.shop.bean.dto.ProdByCategoryIdAndShopIdDTO" resultType="com.yami.shop.bean.model.Product">
|
|
|
select t.*,t1.salesVolume from (
|
|
|
SELECT
|
|
|
@@ -993,7 +1001,7 @@
|
|
|
FROM tz_category_prod cp
|
|
|
INNER JOIN tz_prod p on p.prod_id = cp.prod_id
|
|
|
LEFT JOIN tz_shop_sku ss on ss.spu_id = cp.prod_id and ss.is_delete = 0
|
|
|
- INNER JOIN tz_channel_prod cha on cha.sku_id = ss.sku_id and cha.is_delete = 0
|
|
|
+ INNER JOIN tz_channel_prod cha on cha.sku_id = ss.sku_id and cha.is_delete = 0 and cha.channel_id = #{channelId}
|
|
|
LEFT JOIN tz_basket b ON b.prod_id = p.prod_id AND b.user_id = COALESCE(NULLIF(#{userId}, ''), '0')
|
|
|
where p.is_delete = 0 and
|
|
|
<if test="channelId == null">cha.channel_id = 1</if>
|
|
|
@@ -1015,7 +1023,7 @@
|
|
|
FROM tz_channel_prod base_cha
|
|
|
INNER JOIN tz_shop_sku base_ss ON base_cha.sku_id = base_ss.sku_id
|
|
|
WHERE base_ss.spu_id = #{prodId}
|
|
|
- AND base_cha.channel_id = 1
|
|
|
+ AND base_cha.channel_id = #{channelId}
|
|
|
AND base_cha.is_delete = 0
|
|
|
AND base_ss.is_delete = 0
|
|
|
AND cha.channel_prod_price BETWEEN
|