|
|
@@ -265,18 +265,6 @@
|
|
|
ORDER BY p.`sold_num` DESC, p.`update_time` DESC
|
|
|
</select>
|
|
|
|
|
|
- <!--
|
|
|
- 注意:此查询的分页未生效是因为MyBatis Plus分页插件未能正确应用。
|
|
|
- 可能的原因:
|
|
|
- 1. Page对象未正确传递到Mapper方法
|
|
|
- 2. MyBatis Plus分页拦截器配置问题
|
|
|
- 3. SQL查询结构导致分页拦截器无法正确添加LIMIT子句
|
|
|
-
|
|
|
- 解决方案:
|
|
|
- 1. 确保Service层正确传递Page对象
|
|
|
- 2. 检查MyBatis Plus配置中的分页拦截器
|
|
|
- 3. 如果问题仍然存在,可考虑手动添加LIMIT子句
|
|
|
- -->
|
|
|
<select id="getSearchProdDtoPageByProdName" resultType="com.yami.shop.bean.dto.SearchProdDto">
|
|
|
SELECT
|
|
|
p.prod_id,
|
|
|
@@ -286,9 +274,8 @@
|
|
|
SUM(ss.shop_sku_stocks) AS stocks,
|
|
|
MIN(cp.channel_prod_price) AS price
|
|
|
FROM tz_prod p
|
|
|
- INNER JOIN tz_shop_sku ss ON ss.spu_id = p.prod_id AND ss.shop_id =2 AND ss.is_delete = 0
|
|
|
+ INNER JOIN tz_shop_sku ss ON ss.spu_id = p.prod_id AND ss.shop_id = #{searchParam.shopId} AND ss.is_delete = 0
|
|
|
INNER JOIN tz_channel_prod cp ON ss.sku_id = cp.sku_id AND cp.shop_id = #{searchParam.shopId} AND cp.channel_id = #{searchParam.channelId} AND cp.is_delete = 0
|
|
|
-
|
|
|
WHERE p.status = 1
|
|
|
<if test="searchParam.prodName != null">
|
|
|
and p.prod_name LIKE CONCAT('%',#{searchParam.prodName},'%')
|
|
|
@@ -829,17 +816,18 @@
|
|
|
COALESCE (sales_data.sales_volume, 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.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
|
|
|
+ LEFT JOIN tz_shop_sku tss ON tss.spu_id = tp.prod_id
|
|
|
AND tss.shop_id = #{prodByCategoryIdAndShopIdDTO.shopId}
|
|
|
- INNER JOIN tz_channel_prod cp ON cp.shop_id = tcp.shop_id
|
|
|
+ INNER JOIN tz_channel_prod cp ON cp.shop_id = #{prodByCategoryIdAndShopIdDTO.shopId}
|
|
|
+ and cp.channel_id = #{prodByCategoryIdAndShopIdDTO.channelId}
|
|
|
AND cp.sku_id = tss.sku_id
|
|
|
AND cp.is_delete = 0
|
|
|
AND cp.channel_prod_price IS NOT NULL
|
|
|
LEFT JOIN (
|
|
|
- SELECT
|
|
|
+ SELECT
|
|
|
oi.prod_id,
|
|
|
SUM(oi.prod_count) AS sales_volume
|
|
|
FROM tz_order_item oi
|
|
|
@@ -849,14 +837,8 @@
|
|
|
AND o.delete_status = 0
|
|
|
GROUP BY oi.prod_id
|
|
|
) sales_data ON sales_data.prod_id = tp.prod_id
|
|
|
- <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>
|
|
|
WHERE tp.STATUS = 1 AND tp.is_delete = 0
|
|
|
- GROUP BY tp.prod_id
|
|
|
+ GROUP BY tp.prod_id, tp.prod_name, tcp.shop_id, cp.channel_prod_price, tp.pic, tss.shop_sku_stocks, sales_data.sales_volume
|
|
|
ORDER BY sales_volume DESC, price ASC
|
|
|
</select>
|
|
|
|