From f0efc10af370936b4db47b8428eb1ca4686431f9 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 06 八月 2026 15:11:56 +0800
Subject: [PATCH] feat(home): 添加报表日期范围筛选功能并完善设备维护管理
---
src/main/resources/mapper/sales/SalesLedgerProductMapper.xml | 41 ++++++++++++++++++++++++++++++++++++++++-
1 files changed, 40 insertions(+), 1 deletions(-)
diff --git a/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml b/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
index f3fa32d..960e7f5 100644
--- a/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
+++ b/src/main/resources/mapper/sales/SalesLedgerProductMapper.xml
@@ -48,7 +48,8 @@
END as has_sufficient_stock,
(IFNULL(T1.quantity, 0) - IFNULL(t3.shipped_quantity, 0)) as no_quantity,
CASE
- WHEN (IFNULL(T1.quantity, 0) - IFNULL(t3.shipped_quantity, 0)) > 0 THEN '寰呭彂璐�'
+ WHEN IFNULL(t3.shipped_quantity, 0) = 0 THEN '寰呭彂璐�'
+ WHEN (IFNULL(T1.quantity, 0) - IFNULL(t3.shipped_quantity, 0)) > 0 THEN '閮ㄥ垎鍙戣揣'
ELSE '宸插彂璐�'
END as shippingStatus
FROM
@@ -62,6 +63,7 @@
SELECT sales_ledger_product_id, IFNULL(SUM(spd.quantity), 0) as shipped_quantity
FROM shipping_info si
LEFT JOIN shipping_product_detail spd ON si.id = spd.shipping_info_id
+ where si.status != '瀹℃牳鎷掔粷'
GROUP BY sales_ledger_product_id
) t3 ON t3.sales_ledger_product_id = T1.id
left join product_model pm ON T1.product_model_id = pm.id
@@ -238,6 +240,23 @@
LIMIT 5
</select>
+ <select id="selectProductSalesAnalysisByDate" resultType="java.util.Map">
+ SELECT
+ product_category as name,
+ SUM( tax_inclusive_total_price ) AS value
+ FROM
+ sales_ledger_product
+ WHERE
+ type = 1
+ AND register_date >= #{startDate}
+ AND register_date <= #{endDate}
+ GROUP BY
+ product_category
+ ORDER BY
+ value DESC
+ LIMIT 5
+ </select>
+
<select id="selectRawMaterialPurchaseAnalysis" resultType="java.util.Map">
SELECT
pr.product_name AS name,
@@ -256,6 +275,26 @@
LIMIT 5
</select>
+ <select id="selectRawMaterialPurchaseAnalysisByDate" resultType="java.util.Map">
+ SELECT
+ pr.product_name AS name,
+ SUM( slp.tax_inclusive_total_price ) AS value
+ FROM
+ sales_ledger_product slp
+ JOIN product pr ON slp.product_id = pr.id
+ WHERE
+ slp.type = 2
+ AND slp.register_date >= #{startDate}
+ AND slp.register_date <= #{endDate}
+ AND pr.parent_id = ( SELECT id FROM product WHERE product_name = '鍘熸潗鏂�' )
+ GROUP BY
+ pr.id,
+ pr.product_name
+ ORDER BY
+ value DESC
+ LIMIT 5
+ </select>
+
<select id="selectProductCountByTypeAndDate" resultType="int">
SELECT IFNULL(COUNT(*), 0)
FROM sales_ledger_product
--
Gitblit v1.9.3