| | |
| | | pl.approve_user_ids, |
| | | sm.is_white, |
| | | pl.approval_status, |
| | | pl.stock_status, |
| | | IFNULL(ps.product_stock_status, 0) AS product_stock_status, |
| | | pl.payment_method, |
| | | pl.remarks |
| | | FROM purchase_ledger pl |
| | |
| | | GROUP BY purchase_ledger_id |
| | | ) tr_sum ON pl.id = tr_sum.purchase_ledger_id |
| | | LEFT JOIN supplier_manage sm ON pl.supplier_id = sm.id |
| | | LEFT JOIN ( |
| | | SELECT |
| | | sales_ledger_id, |
| | | CASE |
| | | WHEN COUNT(1) = 0 THEN 0 |
| | | WHEN SUM(CASE WHEN IFNULL(product_stock_status, 0) = 2 THEN 1 ELSE 0 END) = COUNT(1) THEN 2 |
| | | WHEN SUM(CASE WHEN IFNULL(product_stock_status, 0) > 0 THEN 1 ELSE 0 END) > 0 THEN 1 |
| | | ELSE 0 |
| | | END AS product_stock_status |
| | | FROM sales_ledger_product |
| | | WHERE type = 2 |
| | | GROUP BY sales_ledger_id |
| | | ) ps ON pl.id = ps.sales_ledger_id |
| | | <where> |
| | | <if test="c.purchaseContractNumber != null and c.purchaseContractNumber != ''"> |
| | | AND pl.purchase_contract_number LIKE CONCAT('%', #{c.purchaseContractNumber}, '%') |
| | |
| | | <if test="c.entryDateEnd != null and c.entryDateEnd != ''"> |
| | | AND pl.entry_date <= #{c.entryDateEnd} |
| | | </if> |
| | | <if test="c.supplierId != null"> |
| | | AND pl.supplier_id = #{c.supplierId} |
| | | </if> |
| | | <if test="c.approvalStatus != null"> |
| | | AND pl.approval_status = #{c.approvalStatus} |
| | | </if> |
| | | </where> |
| | | ORDER BY pl.entry_date DESC |
| | | </select> |