From 88eb8391a9367a624d3ea783c7c38b1d0530657e Mon Sep 17 00:00:00 2001 From: haoliang <821644@qq.com> Date: Fri, 15 May 2026 23:25:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20GetTodayProduction/GetProd?= =?UTF-8?q?uctionTrend=20=E6=96=B9=E6=B3=95=20=E2=80=94=20=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E6=96=B0=E5=AD=97=E6=AE=B5=20end=5Ftotal=5Fcount/base?= =?UTF-8?q?=5Ftotal=5Fcount=20=E6=9B=BF=E4=BB=A3=E6=97=A7=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=20total=5Fquantity/total=5Frun=5Ftime=EF=BC=8C?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E5=AF=B9=E5=B7=B2=E5=BA=9F=E5=BC=83=20cnc=5F?= =?UTF-8?q?production=5Fsegment=20=E8=A1=A8=E7=9A=84=E9=99=8D=E7=BA=A7?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/CncRepository/Impl/MachineRepository.cs | 39 ++++----------------- 1 file changed, 7 insertions(+), 32 deletions(-) diff --git a/src/CncRepository/Impl/MachineRepository.cs b/src/CncRepository/Impl/MachineRepository.cs index 0ff4846..04314de 100644 --- a/src/CncRepository/Impl/MachineRepository.cs +++ b/src/CncRepository/Impl/MachineRepository.cs @@ -232,23 +232,11 @@ namespace CncRepository.Impl { using (var conn = CreateConnection()) { - // 优先从已汇总的日产量表取 - string dpSql = @"SELECT program_name AS ProgramName, CAST(total_quantity AS SIGNED) AS Quantity, - total_run_time AS RunTime, total_cutting_time AS CuttingTime - FROM cnc_daily_production - WHERE machine_id = @MachineId AND production_date = CURDATE()"; - var dpItems = conn.Query(dpSql, new { MachineId = machineId }).AsList(); - if (dpItems.Count > 0) return dpItems; - - // 没有汇总数据则从分段表实时计算 - string segSql = @"SELECT seg.program_name AS ProgramName, - CAST(SUM(CASE WHEN seg.is_settled=1 THEN seg.quantity - ELSE COALESCE(seg.end_part_count, seg.start_part_count) - seg.start_part_count END) AS SIGNED) AS Quantity, - NULL AS RunTime, NULL AS CuttingTime - FROM cnc_production_segment seg - WHERE seg.machine_id = @MachineId AND seg.production_date = CURDATE() - GROUP BY seg.program_name"; - return conn.Query(segSql, new { MachineId = machineId }).AsList(); + string sql = @"SELECT dp.program_name AS ProgramName, + (dp.end_total_count - dp.base_total_count) AS Quantity + FROM cnc_daily_production dp + WHERE dp.machine_id = @MachineId AND dp.production_date = CURDATE()"; + return conn.Query(sql, new { MachineId = machineId }).AsList(); } } @@ -257,27 +245,14 @@ namespace CncRepository.Impl { using (var conn = CreateConnection()) { - // 优先从日产量表取近N天数据 string sql = @"SELECT DATE_FORMAT(dp.production_date, '%Y-%m-%d') AS Date, - CAST(SUM(dp.total_quantity) AS SIGNED) AS Quantity + CAST(SUM(dp.end_total_count - dp.base_total_count) AS SIGNED) AS Quantity FROM cnc_daily_production dp WHERE dp.machine_id = @MachineId AND dp.production_date >= DATE_SUB(CURDATE(), INTERVAL @Days DAY) GROUP BY dp.production_date ORDER BY dp.production_date"; - var items = conn.Query(sql, new { MachineId = machineId, Days = days - 1 }).AsList(); - if (items.Count > 0) return items; - - // 没有汇总数据则从分段表实时计算 - string segSql = @"SELECT DATE_FORMAT(seg.production_date, '%Y-%m-%d') AS Date, - CAST(SUM(CASE WHEN seg.is_settled=1 THEN seg.quantity - ELSE COALESCE(seg.end_part_count, seg.start_part_count) - seg.start_part_count END) AS SIGNED) AS Quantity - FROM cnc_production_segment seg - WHERE seg.machine_id = @MachineId - AND seg.production_date >= DATE_SUB(CURDATE(), INTERVAL @Days DAY) - GROUP BY seg.production_date - ORDER BY seg.production_date"; - return conn.Query(segSql, new { MachineId = machineId, Days = days - 1 }).AsList(); + return conn.Query(sql, new { MachineId = machineId, Days = days - 1 }).AsList(); } }