Selaa lähdekoodia

"药食同源"功能

cgp 9 tuntia sitten
vanhempi
commit
16ec5ed2f8

+ 10 - 0
fs-company/src/main/java/com/fs/hisStore/controller/FsStoreProductScrmController.java

@@ -69,6 +69,16 @@ public class FsStoreProductScrmController extends BaseController
         return getDataTable(list);
     }
 
+    /**
+     * 获取药食同源商品列表(固定类目201及其子类)
+     */
+    @GetMapping("/getStoreProductFoodAsMedicineList")
+    public TableDataInfo getStoreProductFoodAsMedicineList(FsProductAttrValueParam param) {
+        startPage();
+        List<FsStoreProductAttrValueVO> list = attrValueService.selectFsStoreProductFoodAsMedicineList(param);
+        return getDataTable(list);
+    }
+
     @GetMapping("/getProductMedicineFlagByOrderCode/{orderCode}")
     public R getProductMedicineFlagByOrderCode(@PathVariable("orderCode") String orderCode)
     {

+ 7 - 0
fs-service/src/main/java/com/fs/hisStore/service/IFsStoreProductAttrValueScrmService.java

@@ -77,4 +77,11 @@ public interface IFsStoreProductAttrValueScrmService
     List<FsStoreTuiProductAttrValueVO> selectStoreTuiProductAttrValueVOList(FsStoreTuiProductAttrValueParam param);
 
     List<FsStoreProductAttrValueScrm> getFsStoreProductAttrValueListInProductId(List<Long> storeProductIds);
+
+    /**
+     * 获取药食同源商品列表(分页)
+     * @param param 查询参数
+     * @return 商品VO列表
+     */
+    List<FsStoreProductAttrValueVO> selectFsStoreProductFoodAsMedicineList(FsProductAttrValueParam param);
 }

+ 4 - 2
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreProductAttrValueScrmServiceImpl.java

@@ -132,6 +132,8 @@ public class FsStoreProductAttrValueScrmServiceImpl implements IFsStoreProductAt
     public List<FsStoreProductAttrValueScrm> getFsStoreProductAttrValueListInProductId(List<Long> productIds) {
         return fsStoreProductAttrValueMapper.getFsStoreProductAttrValueListInProductId(productIds);
     }
-
-
+    @Override
+    public List<FsStoreProductAttrValueVO> selectFsStoreProductFoodAsMedicineList(FsProductAttrValueParam param) {
+        return fsStoreProductAttrValueMapper.selectFsStoreProductFoodAsMedicineList(param);
+    }
 }

+ 50 - 0
fs-service/src/main/resources/mapper/hisStore/FsStoreProductAttrValueScrmMapper.xml

@@ -139,4 +139,54 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach>
     </delete>
 
+    <!-- 查询药食同源商品列表(固定类目 201 及其子类) -->
+    <select id="selectFsStoreProductFoodAsMedicineList"
+            parameterType="com.fs.hisStore.param.FsProductAttrValueParam"
+            resultType="com.fs.hisStore.vo.FsStoreProductAttrValueVO">
+        WITH RECURSIVE cate_cte AS (
+        SELECT cate_id FROM fs_store_product_category_scrm WHERE cate_id = 201
+        UNION ALL
+        SELECT c.cate_id
+        FROM fs_store_product_category_scrm c
+        INNER JOIN cate_cte ct ON c.pid = ct.cate_id
+        )
+        SELECT
+        v.id,
+        v.product_id,
+        v.sku,
+        v.stock,
+        v.sales,
+        v.price,
+        v.image,
+        v.cost,
+        v.agent_price,
+        v.bar_code,
+        v.group_bar_code,
+        v.ot_price,
+        v.weight,
+        v.volume,
+        v.brokerage,
+        v.brokerage_two,
+        v.brokerage_three,
+        v.integral,
+        p.product_name AS productName,
+        p.product_type AS productType,
+        c.cate_name AS cateName
+        FROM fs_store_product_attr_value_scrm v
+        INNER JOIN fs_store_product_scrm p ON p.product_id = v.product_id
+        LEFT JOIN fs_store_product_category_scrm c ON c.cate_id = p.cate_id
+        WHERE v.bar_code IS NOT NULL
+        AND p.cate_id IN (SELECT cate_id FROM cate_cte)
+        <if test="productName != null and productName != ''">
+            AND p.product_name LIKE CONCAT('%', #{productName}, '%')
+        </if>
+        <if test="erpType != null">
+            AND p.erp_type = #{erpType}
+        </if>
+        <if test="isGift != null">
+            AND p.is_gift = #{isGift}
+        </if>
+        ORDER BY v.id DESC
+    </select>
+
 </mapper>