From d89e13e25b8beb1f4992ad4119f61e4515754739 Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期二, 03 二月 2026 10:11:52 +0800
Subject: [PATCH] feat(product-process): 添加产品工序导入验证功能
---
src/main/resources/mapper/production/ProductOrderMapper.xml | 33 +++++++++++++++++++++++++++++++--
1 files changed, 31 insertions(+), 2 deletions(-)
diff --git a/src/main/resources/mapper/production/ProductOrderMapper.xml b/src/main/resources/mapper/production/ProductOrderMapper.xml
index 70ce815..4837e64 100644
--- a/src/main/resources/mapper/production/ProductOrderMapper.xml
+++ b/src/main/resources/mapper/production/ProductOrderMapper.xml
@@ -22,10 +22,23 @@
ppr.process_route_code,
pb.bom_no,
ROUND(po.complete_quantity / po.quantity * 100, 2) AS completionStatus,
- DATEDIFF(sl.delivery_date, CURDATE()) AS delivery_days_diff
+ DATEDIFF(sl.delivery_date, CURDATE()) AS delivery_days_diff,
+ sl.delivery_date,
+ CASE
+ WHEN shipping_status_counts.total_count = 0 THEN false
+ WHEN shipping_status_counts.unshipped_count = 0 THEN true
+ ELSE false
+ END AS is_fh
from product_order po
left join sales_ledger sl on po.sales_ledger_id = sl.id
- left join sales_ledger_product slp on po.product_model_id = slp.id
+ LEFT JOIN (
+ SELECT sales_ledger_id,
+ COUNT(*) as total_count,
+ SUM(CASE WHEN status != '宸插彂璐�' THEN 1 ELSE 0 END) as unshipped_count
+ FROM shipping_info
+ GROUP BY sales_ledger_id
+ ) shipping_status_counts ON sl.id = shipping_status_counts.sales_ledger_id
+ left join sales_ledger_product slp on po.sale_ledger_product_id = slp.id
left join product_process_route ppr on po.id = ppr.product_order_id
left join product_bom pb on pb.id = ppr.bom_id
<where>
@@ -90,4 +103,20 @@
</select>
+ <select id="countCreated" resultType="java.lang.Integer">
+ SELECT count(1) FROM product_order
+ WHERE create_time >= #{startDate} AND create_time <= #{endDate}
+ </select>
+
+ <select id="countCompleted" resultType="java.lang.Integer">
+ SELECT count(1) FROM product_order
+ WHERE end_time >= #{startDate} AND end_time <= #{endDate}
+ AND complete_quantity >= quantity
+ </select>
+
+ <select id="countPending" resultType="java.lang.Integer">
+ SELECT count(1) FROM product_order
+ WHERE create_time >= #{startDate} AND create_time <= #{endDate}
+ AND complete_quantity < quantity
+ </select>
</mapper>
--
Gitblit v1.9.3