Browse Source

查询同类商品平台上架状态过滤业务功能处理

multiwx
dy-hu 11 months ago
parent
commit
09c424e89a
  1. 2
      cereshop-app/src/main/java/com/shop/cereshop/app/dao/product/CereShopProductDAO.java
  2. 4
      cereshop-app/src/main/java/com/shop/cereshop/app/service/product/impl/CereShopProductServiceImpl.java
  3. 8
      cereshop-app/src/main/resources/mybatis/mapper/product/CereShopProductDAO.xml

2
cereshop-app/src/main/java/com/shop/cereshop/app/dao/product/CereShopProductDAO.java

@ -61,7 +61,7 @@ public interface CereShopProductDAO extends BaseMapper<CereShopProduct> {
List<Classify> findChildsClassify(@Param("project")String project);
List<Product> findSimilarProducts(@Param("classifyId") Long classifyId);
List<Product> findSimilarProducts(@Param("project") String project, @Param("classifyId") Long classifyId);
void deleteAllSearch(@Param("buyerUserId") Long buyerUserId);

4
cereshop-app/src/main/java/com/shop/cereshop/app/service/product/impl/CereShopProductServiceImpl.java

@ -410,7 +410,7 @@ public class CereShopProductServiceImpl implements CereShopProductService {
}
detail.setCouponSplicing(couponSplicing);
//查询同类商品
List<Product> similarProducts = cereShopProductDAO.findSimilarProducts(detail.getClassifyId());
List<Product> similarProducts = cereShopProductDAO.findSimilarProducts(ContextUtil.getProject(), detail.getClassifyId());
detail.setSimilarProducts(similarProducts);
//查询仓库设置限购数量
@ -1135,7 +1135,7 @@ public class CereShopProductServiceImpl implements CereShopProductService {
@Override
public List<Product> findSimilarProducts(Long classifyId) {
return cereShopProductDAO.findSimilarProducts(classifyId);
return cereShopProductDAO.findSimilarProducts(ContextUtil.getProject(), classifyId);
}
@Override

8
cereshop-app/src/main/resources/mybatis/mapper/product/CereShopProductDAO.xml

@ -830,7 +830,13 @@
LEFT JOIN (SELECT IF(SUM(number) IS NULL,0,SUM(number)) number,sku_id,order_id from cere_order_product GROUP BY sku_id) f ON b.sku_id=f.sku_id
LEFT JOIN (SELECT COUNT(a.buyer_user_id) users,a.product_id FROM (SELECT b.buyer_user_id,a.product_id FROM cere_order_product a,cere_shop_order b
where a.order_id=b.order_id and b.state in (2,3,4) GROUP BY a.product_id,b.buyer_user_id) a GROUP BY a.product_id) g ON a.product_id=g.product_id
where d.state=1 and a.shelve_state=1
where d.state=1
<if test="project == 0">
and a.plat_shelve_state=1
</if>
<if test="project!=0 and project != ''">
and a.shelve_state=1
</if>
<if test="classifyId!=null">
and (a.classify_id=#{classifyId} OR a.classify_business_id=#{classifyId})
</if>

Loading…
Cancel
Save