huminmin
昨天 554738e1e277a9aafda4c20d420cba252d5f528f
src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
@@ -7,24 +7,26 @@
    <select id="selectSalesLedgerProductList" resultType="com.ruoyi.sales.pojo.SalesLedgerProduct">
        SELECT
        T1.*,
        T3.material_code,
        CASE
        WHEN t2.qualitity > T1.quantity THEN 1
        WHEN (IFNULL(t2.qualitity, 0) - IFNULL(t2.locked_quantity, 0)) >= IFNULL(T1.quantity, 0) THEN 1
        ELSE 0
        END as has_sufficient_stock
        FROM
        sales_ledger_product T1
        LEFT JOIN stock_inventory t2 ON T1.product_model_id = t2.product_model_id
        LEFT JOIN product_model T3 ON T1.product_model_id = T3.id
        <where>
            1=1
            <if test="salesLedgerProduct.salesLedgerId != null and salesLedgerProduct.salesLedgerId != '' ">
            <if test="salesLedgerProduct.salesLedgerId != null">
                AND T1.sales_ledger_id = #{salesLedgerProduct.salesLedgerId}
            </if>
            <if test="salesLedgerProduct.type != null and salesLedgerProduct.type != '' ">
            <if test="salesLedgerProduct.type != null">
                AND T1.type = #{salesLedgerProduct.type}
            </if>
        </where>
        ORDER BY T1.register_date DESC
    </select>
    <select id="selectSalesLedgerProductByMainId" resultType="com.ruoyi.sales.pojo.SalesLedgerProduct">
        select slp.*
        from quality_inspect qi
@@ -97,7 +99,7 @@
                AND slp.product_category like concat('%',#{req.productCategory},'%')
            </if>
            <if test="req.status != null and req.status ">
                AND slp.pending_invoice_total &gt; 0
                AND slp.pending_tickets_total &gt; 0
            </if>
        </where>
        order by slp.register_date desc
@@ -108,6 +110,7 @@
        slp.product_category AS productCategory,
        slp.specification_model AS specificationModel,
        sl.supplier_name AS supplierName,
        pm.material_code AS materialCode,
        SUM(slp.quantity) AS purchaseNum,
        SUM(slp.tax_inclusive_total_price) AS purchaseAmount,
        COUNT(DISTINCT slp.sales_ledger_id) AS purchaseTimes,
@@ -118,6 +121,9 @@
        FROM sales_ledger_product slp
        <!-- 关联台账主表:获取录入日期entry_date -->
        LEFT JOIN purchase_ledger sl ON slp.sales_ledger_id = sl.id
        <!-- 关联产品型号表:获取料号material_code -->
        LEFT JOIN product_model pm ON pm.id = slp.product_model_id
        <!-- 采购日期筛选:可选条件 -->
        WHERE slp.type = 2 <!-- 固定筛选:采购台账(type=2) -->
        <!-- 采购日期筛选:可选条件 -->
        <if test="req.entryDateStart != null and req.entryDateEnd != null">
@@ -196,11 +202,15 @@
    </select>
    <select id="selectProductCountByTypeAndDate" resultType="int">
        SELECT COUNT(*)
        SELECT IFNULL(COUNT(*), 0)
        FROM sales_ledger_product
        WHERE type = #{type}
        AND register_date &gt;= #{startDate}
        AND register_date &lt;= #{endDate}
        <if test="startDate != null">
            AND register_date &gt;= #{startDate}
        </if>
        <if test="endDate != null">
            AND register_date &lt;= #{endDate}
        </if>
    </select>
    <select id="selectRawMaterialExpense" resultType="java.math.BigDecimal">