فهرست منبع

app端店铺商品列表新增活动信息返回

codingliang 2 سال پیش
والد
کامیت
8b57a2efd7
2فایلهای تغییر یافته به همراه22 افزوده شده و 1 حذف شده
  1. 4 0
      src/main/java/com/sqx/modules/goods/entity/Goods.java
  2. 18 1
      src/main/resources/mapper/goods/GoodsMapper.xml

+ 4 - 0
src/main/java/com/sqx/modules/goods/entity/Goods.java

@@ -111,6 +111,10 @@ public class Goods implements Serializable {
     @TableField(exist = false)
     private GoodsShop goodsShop;
 
+    @ApiModelProperty("参与活动列表")
+    @TableField(exist = false)
+    private String activityList;
+
     private Integer sort;
 
 }

+ 18 - 1
src/main/resources/mapper/goods/GoodsMapper.xml

@@ -77,9 +77,24 @@
     </insert>
 
     <select id="selectGoodsByClassify" resultType="com.sqx.modules.goods.entity.Goods">
-        select g.*, gsr.sales as sales, gsr.inventory as inventory
+        select g.*, gsr.sales as sales, gsr.inventory as inventory, ga.activityList
         from goods_shop_relevancy gsr
                  left join goods g on gsr.goods_id = g.goods_id
+                 left join (
+                    select
+                           tmp.goods_id, group_concat(a.title) as activityList
+                    from
+                        (
+                            select t.activity_shop_id, substring_index(substring_index(t.goods_ids, ',', n.n), ',', -1) goods_id
+                            from
+                                    (select 1 as n union select 2 union select 3 union select 4) n
+                                        inner join activity_goods t on char_length(t.goods_ids)-char_length(replace(t.goods_ids, ',', ''))>=n.n-1
+                            order by n.n
+                        ) tmp
+                            left join activity_shop ach on ach.id = tmp.activity_shop_id
+                            left join activity a on ach.activity_id = a.id
+                    group by tmp.goods_id
+                ) ga on ga.goods_id = g.goods_id
         where gsr.shop_id = #{shopId}
           and g.classify_id = #{classifyId}
           and g.status = 0
@@ -102,6 +117,8 @@
         and status=0 order by sort asc,sales_volume desc limit 3
     </select>
 
+
+
     <select id="selectGoodsBySalesAndGoodsNameAndShopIds" resultType="com.sqx.modules.goods.entity.Goods">
         SELECT x.*
         FROM (SELECT g.*,