From ab3f6bbdb72c4a19c6269790671183fc6602b29b Mon Sep 17 00:00:00 2001 From: zhaotielin Date: Wed, 8 Jul 2026 04:40:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E7=8E=87=E6=8D=9F=E8=80=97=E6=8A=A5?= =?UTF-8?q?=E5=91=8A=E9=94=99=E8=AF=AF=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Report/ProfessionalReportGenerator.cs | 9 +++++---- SSPCTester.Logic/Report/ReportGenerator.cs | 8 ++++++-- SSPCTester.Logic/Report/WordReportGenerator.cs | 7 ++++--- SSPCTester.UI/Views/PowerTestView.xaml | 16 ++++++++++++++++ 4 files changed, 31 insertions(+), 9 deletions(-) diff --git a/SSPCTester.Logic/Report/ProfessionalReportGenerator.cs b/SSPCTester.Logic/Report/ProfessionalReportGenerator.cs index bc7e0d6..22a3495 100644 --- a/SSPCTester.Logic/Report/ProfessionalReportGenerator.cs +++ b/SSPCTester.Logic/Report/ProfessionalReportGenerator.cs @@ -375,13 +375,14 @@ public sealed class ReportGenerator }))); private static void PowerTable(IContainer container, Project p) => - DataTable(container, new[] { 0.62f, 0.9f, 0.9f, 0.9f, 0.9f, 0.9f, 0.9f, 0.76f }, - new[] { "通道", "输入电压\nV", "输入电流\nA", "输出电压\nV", "输出电流\nA", "功率损耗\nW", "效率\n%", "状态" }, + DataTable(container, new[] { 0.58f, 0.78f, 0.78f, 0.86f, 0.78f, 0.78f, 0.86f, 0.78f, 0.86f, 0.72f, 0.68f }, + new[] { "通道", "输入电压\nV", "输入电流\nA", "输入功率\nW", "输出电压\nV", "输出电流\nA", "输出功率\nW", "电压降\nV", "功率损耗\nW", "效率\n%", "状态" }, p.PowerResults.Select(r => new ReportRow(r.Status, new[] { $"CH{r.Channel:00}", Format(r.Vin, "F3"), Format(r.Iin, "F3"), - Format(r.Vout, "F3"), Format(r.Iout, "F3"), - Format(r.PowerLossW, "F3"), Format(r.EfficiencyPct, "F3"), StatusText(r.Status) + Format(r.PowerIn, "F3"), Format(r.Vout, "F3"), Format(r.Iout, "F3"), + Format(r.PowerOut, "F3"), Format(r.VoltageDrop, "F3"), Format(r.PowerLossW, "F3"), + Format(r.EfficiencyPct, "F1"), StatusText(r.Status) }))); private static void ProtectTable(IContainer container, Project p) => diff --git a/SSPCTester.Logic/Report/ReportGenerator.cs b/SSPCTester.Logic/Report/ReportGenerator.cs index 57f878b..dcbcba5 100644 --- a/SSPCTester.Logic/Report/ReportGenerator.cs +++ b/SSPCTester.Logic/Report/ReportGenerator.cs @@ -234,18 +234,22 @@ internal sealed class LegacyReportGenerator cd.ConstantColumn(50); cd.RelativeColumn(); cd.RelativeColumn(); cd.RelativeColumn(); cd.RelativeColumn(); cd.RelativeColumn(); cd.RelativeColumn(); + cd.RelativeColumn(); cd.RelativeColumn(); cd.RelativeColumn(); cd.ConstantColumn(60); }); - HeaderRow(t, "通道", "Vin(V)", "Iin(A)", "Vout(V)", "Iout(A)", "损耗(W)", "效率(%)", "状态"); + HeaderRow(t, "通道", "Vin(V)", "Iin(A)", "Pin(W)", "Vout(V)", "Iout(A)", "Pout(W)", "压降(V)", "损耗(W)", "效率(%)", "状态"); foreach (var r in p.PowerResults) { t.Cell().Padding(3).Text($"CH{r.Channel}"); t.Cell().Padding(3).Text(r.Vin.ToString("F3")); t.Cell().Padding(3).Text(r.Iin.ToString("F3")); + t.Cell().Padding(3).Text(r.PowerIn.ToString("F3")); t.Cell().Padding(3).Text(r.Vout.ToString("F3")); t.Cell().Padding(3).Text(r.Iout.ToString("F3")); + t.Cell().Padding(3).Text(r.PowerOut.ToString("F3")); + t.Cell().Padding(3).Text(r.VoltageDrop.ToString("F3")); t.Cell().Padding(3).Text(r.PowerLossW.ToString("F3")); - t.Cell().Padding(3).Text(r.EfficiencyPct.ToString("F3")); + t.Cell().Padding(3).Text(r.EfficiencyPct.ToString("F1")); t.Cell().Padding(3).Text(StatusText(r.Status)).FontColor(StatusColor(r.Status)); } }); diff --git a/SSPCTester.Logic/Report/WordReportGenerator.cs b/SSPCTester.Logic/Report/WordReportGenerator.cs index 0c7500d..5c075c6 100644 --- a/SSPCTester.Logic/Report/WordReportGenerator.cs +++ b/SSPCTester.Logic/Report/WordReportGenerator.cs @@ -158,12 +158,13 @@ public sealed class WordReportGenerator Section(body, section++, "功率损耗", "POWER LOSS"); if (p.PowerResults.Count > 0) body.Append(ResultTable( - new[] { "通道", "输入电压 V", "输入电流 A", "输出电压 V", "输出电流 A", "功率损耗 W", "效率 %", "状态" }, + new[] { "通道", "输入电压 V", "输入电流 A", "输入功率 W", "输出电压 V", "输出电流 A", "输出功率 W", "电压降 V", "功率损耗 W", "效率 %", "状态" }, p.PowerResults.Select(r => new[] { $"CH{r.Channel:00}", Format(r.Vin, "F3"), Format(r.Iin, "F3"), - Format(r.Vout, "F3"), Format(r.Iout, "F3"), - Format(r.PowerLossW, "F3"), Format(r.EfficiencyPct, "F3"), StatusText(r.Status) + Format(r.PowerIn, "F3"), Format(r.Vout, "F3"), Format(r.Iout, "F3"), + Format(r.PowerOut, "F3"), Format(r.VoltageDrop, "F3"), Format(r.PowerLossW, "F3"), + Format(r.EfficiencyPct, "F1"), StatusText(r.Status) }))); ManualNote(body, p.TestFunction?.Power); } diff --git a/SSPCTester.UI/Views/PowerTestView.xaml b/SSPCTester.UI/Views/PowerTestView.xaml index 1455c05..ab82bff 100644 --- a/SSPCTester.UI/Views/PowerTestView.xaml +++ b/SSPCTester.UI/Views/PowerTestView.xaml @@ -202,6 +202,14 @@