zhijiezhao 1 hónapja
szülő
commit
321796f4b7

+ 7 - 0
src/main/java/com/caimei365/manager/controller/caimei/page/WebPageApi.java

@@ -92,6 +92,13 @@ public class WebPageApi {
         return newPageZoneService.selectProductList(id, productId, shopName, productName, pageNum, pageSize);
     }
 
+    @GetMapping("/select/recommendProductList")
+    public ResponseJson<PaginationVo<Product>> recommendProductList(Integer productId, String shopName, String productName,
+                                                                    @RequestParam(value = "pageNum", defaultValue = "1") int pageNum,
+                                                                    @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
+        return newPageZoneService.recommendProductList(productId, shopName, productName, pageNum, pageSize);
+    }
+
     @GetMapping("/delZoneProduct")
     public ResponseJson delZoneProduct(Integer id, String ids) {
         return newPageZoneService.delZoneProduct(id, ids);

+ 2 - 0
src/main/java/com/caimei365/manager/dao/page/NewPageZoneDao.java

@@ -85,4 +85,6 @@ public interface NewPageZoneDao {
     NewPageTopAdvertisementImage getTopAdvertisementForm(Integer id);
 
     List<Product> selectProductList(@Param("id") Integer id, @Param("productId") Integer productId, @Param("shopName") String shopName, @Param("productName") String productName);
+
+    List<Product> recommendProductList(@Param("productId") Integer productId, @Param("shopName") String shopName, @Param("productName") String productName);
 }

+ 2 - 0
src/main/java/com/caimei365/manager/service/caimei/page/NewPageZoneService.java

@@ -77,4 +77,6 @@ public interface NewPageZoneService {
     ResponseJson<NewPageTopAdvertisementImage> topAdvertisementForm(Integer id);
 
     ResponseJson<PaginationVo<Product>> selectProductList(Integer id, Integer productId, String shopName, String productName, int pageNum, int pageSize);
+
+    ResponseJson<PaginationVo<Product>> recommendProductList(Integer productId, String shopName, String productName, int pageNum, int pageSize);
 }

+ 8 - 0
src/main/java/com/caimei365/manager/service/caimei/page/impl/NewPageZoneServiceImpl.java

@@ -318,6 +318,14 @@ public class NewPageZoneServiceImpl implements NewPageZoneService {
         return ResponseJson.success(page);
     }
 
+    @Override
+    public ResponseJson<PaginationVo<Product>> recommendProductList(Integer productId, String shopName, String productName, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        List<Product> products = zoneDao.recommendProductList(productId, shopName, productName);
+        PaginationVo<Product> page = new PaginationVo<>(products);
+        return ResponseJson.success(page);
+    }
+
     public void cleanRedisCache() {
         //首页缓存
         redisService.removePattern("getHomeCommodityData*");

+ 20 - 0
src/main/resources/mapper/page/NewPageZoneDao.xml

@@ -389,4 +389,24 @@
         GROUP BY p.productID
         ORDER BY p.productID desc
     </select>
+
+    <select id="recommendProductList" resultType="com.caimei365.manager.entity.caimei.product.Product">
+        SELECT p.mainImage, p.name, p.productId, s.name AS shopName
+        FROM product p
+        LEFT JOIN shop s ON p.shopId = s.shopId
+        LEFT JOIN cm_page_recommend_product prp ON prp.productId = p.productID
+        WHERE p.productCategory = 1
+        and prp.productId is null
+        <if test="shopName !=''">
+            AND s.name like concat('%',#{shopName},'%')
+        </if>
+        <if test="shopName !=''">
+            AND p.name like concat('%',#{productName},'%')
+        </if>
+        <if test="productId != null">
+            AND p.productId = #{productId}
+        </if>
+        GROUP BY p.productID
+        ORDER BY p.productID desc
+    </select>
 </mapper>