浏览代码

联合丽格

huangzhiguo 2 年之前
父节点
当前提交
5a7892b4a7

+ 6 - 1
src/main/java/com/caimei365/commodity/mapper/MallOrganizeMapper.java

@@ -86,7 +86,12 @@ public interface MallOrganizeMapper {
      * @return
      */
     MallActiveVo getActiveById(@Param("organizeId") Integer organizeId, @Param("activeId") Integer activeId);
-
+    /**
+     * 活动商品列表
+     * @param imageId
+     * @return
+     */
+    List<MallOrganizeProductVo> getActiveProduct(@Param("imageId") Integer imageId);
     /**
      * 获取活动宣传图
      * @param activeId

+ 11 - 4
src/main/java/com/caimei365/commodity/service/impl/MallOrganizeServiceImpl.java

@@ -84,10 +84,17 @@ public class MallOrganizeServiceImpl implements MallOrganizeService {
         // 菜单跳转活动
         if (null != activeId) {
             MallActiveVo active = mallOrganizeMapper.getActiveById(organizeId, activeId);
-            // 活动宣传图
-            List<MallActiveImageVo> imageList = mallOrganizeMapper.getActiveImageById(activeId);
-
-            active.setActiveImageVos(imageList);
+            if (null != active) {
+                if ("1".equals(active.getActiveType())) {
+                    // 商品列表
+                    List<MallOrganizeProductVo> activeProduct = mallOrganizeMapper.getActiveProduct(activeId);
+                    active.setProducts(activeProduct);
+                } else {
+                    // 活动宣传图
+                    List<MallActiveImageVo> imageList = mallOrganizeMapper.getActiveImageById(activeId);
+                    active.setActiveImageVos(imageList);
+                }
+            }
             map.put("active", active);
         } else {
             return ResponseJson.error(-1,"该活动不存在,请联系维护人员",null);

+ 19 - 1
src/main/resources/mapper/MallOrganizeMapper.xml

@@ -138,6 +138,24 @@
             </if>
         </where>
     </select>
+    <select id="getActiveProduct" resultType="com.caimei365.commodity.model.vo.MallOrganizeProductVo">
+        SELECT
+            cmap.imageId AS imageId,
+            cmop.productID AS productId,
+            cmop.normalPrice,
+            cmop.costPrice,
+            (SELECT price FROM cm_mall_product_sku WHERE productID=p.productID ORDER BY price ASC LIMIT 1) AS price,
+            cmop.ladderPriceFlag,
+            cmop.retailPrice,
+            cmop.minBuyNumber,
+            cmop.validFlag,
+            p.name,
+            p.mainImage
+        FROM cm_mall_active_product cmap
+                 LEFT JOIN cm_mall_organize_products cmop ON cmop.id = cmap.productId
+                 LEFT JOIN product p ON cmop.productId = p.productId
+        WHERE cmap.activeId = 1
+    </select>
     <select id="getActiveImageById" resultType="com.caimei365.commodity.model.vo.MallActiveImageVo">
         select id, activeId, topic, image
         from cm_mall_active_image
@@ -178,7 +196,7 @@
             p.name,
             p.mainImage
         FROM cm_mall_active_product cmap
-                 LEFT JOIN cm_mall_organize_products cmop ON cmop.productId = cmap.productId
+                 LEFT JOIN cm_mall_organize_products cmop ON cmop.id = cmap.productId
                  LEFT JOIN product p ON cmop.productId = p.productId
             where cmap.imageId = #{imageId}
     </select>

+ 1 - 1
src/main/resources/mapper/PriceMapper.xml

@@ -229,7 +229,7 @@
                cmps.cmPercent
         FROM cm_sku cs
                  LEFT JOIN cm_mall_product_sku cmps ON cs.skuId = cmps.skuId
-        WHERE cmps.productId = #{productId}
+        WHERE cmps.productId = #{productId} OR cmps.mallProductId = #{productId}
         ORDER BY cmps.price ASC
     </select>
     <select id="findLowPrice" resultType="com.caimei365.commodity.model.vo.ProductItemVo">

+ 5 - 0
src/main/resources/mapper/ShopMapper.xml

@@ -578,6 +578,11 @@
         select productImageID as id, productID as productId, shopId, addTime, image, mainFlag, sortIndex
         from productimage
         where productID = #{productId}
+        UNION
+        SELECT p.productImageID AS id, p.productID AS productId, p.shopId, p.ADDTIME, p.image, p.mainFlag, p.sortIndex
+        FROM productimage p
+        LEFT JOIN cm_mall_organize_products cmop ON p.productId = cmop.productId
+        WHERE cmop.id = #{productId}
         order by mainFlag desc
     </select>
     <select id="getProductDetailInfo" resultType="com.caimei365.commodity.model.po.ProductDetailInfoPo">