Merge branch 'master' of ssh://git.kaiyili-lab.com:2022/huangsucan/ADP
This commit is contained in:
@@ -69,6 +69,13 @@ namespace ExportModule.ViewModels
|
||||
get => _totalCount;
|
||||
set => SetProperty(ref _totalCount, value);
|
||||
}
|
||||
|
||||
private TestReportModel? _selectedTestReport;
|
||||
public TestReportModel? SelectedTestReport
|
||||
{
|
||||
get => _selectedTestReport;
|
||||
set => SetProperty(ref _selectedTestReport, value);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 命令
|
||||
@@ -144,24 +151,21 @@ namespace ExportModule.ViewModels
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 导出 Excel(根据当前筛选条件导出完整实体数据)
|
||||
/// 导出 Excel:根据用户在表格中选中的 TestReportModel.TestRoundId 查询并导出完整步骤数据
|
||||
/// </summary>
|
||||
private async Task OnExport()
|
||||
{
|
||||
DateTime? queryEnd = EndTime;
|
||||
if (queryEnd.HasValue)
|
||||
if (SelectedTestReport == null)
|
||||
{
|
||||
queryEnd = queryEnd.Value.Date.AddDays(1).AddSeconds(-1);
|
||||
ShowErrorMessageBox("请先在列表中选择一条测试记录。", () => { });
|
||||
return;
|
||||
}
|
||||
|
||||
string? scope = SelectedScope == "全部" ? null : SelectedScope;
|
||||
|
||||
// 查询全量实体数据
|
||||
StatusMessage = "正在查询导出数据...";
|
||||
var entityResult = await _testReportService.GetEntitiesByFilter(StartTime, queryEnd, scope);
|
||||
var entityResult = await _testReportService.GetByTestRoundIdAsync(SelectedTestReport.TestRoundId);
|
||||
if (!entityResult.IsSuccess || entityResult.Data == null || entityResult.Data.Count == 0)
|
||||
{
|
||||
ShowErrorMessageBox("没有数据可导出,请先查询或调整筛选条件。", () => { });
|
||||
ShowErrorMessageBox("未找到该测试记录的详细步骤数据。", () => { });
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -169,15 +173,15 @@ namespace ExportModule.ViewModels
|
||||
{
|
||||
Filter = "Excel 工作簿 (*.xlsx)|*.xlsx|所有文件 (*.*)|*.*",
|
||||
DefaultExt = ".xlsx",
|
||||
FileName = $"测试报告_{DateTime.Now:yyyyMMdd_HHmmss}.xlsx"
|
||||
FileName = $"测试报告_{SelectedTestReport.Scope}_{SelectedTestReport.StartTime:yyyyMMdd_HHmmss}.xlsx"
|
||||
};
|
||||
|
||||
if (dialog.ShowDialog() != true) return;
|
||||
|
||||
var entities = entityResult.Data;
|
||||
StatusMessage = $"正在导出 {entities.Count} 条记录...";
|
||||
StatusMessage = $"正在导出 {entities.Count} 条步骤记录...";
|
||||
await Task.Run(() => ExportToExcel(dialog.FileName, entities));
|
||||
ShowInfoMessageBox($"导出完成,共 {entities.Count} 条记录,已保存至:{dialog.FileName}", () => { });
|
||||
ShowInfoMessageBox($"导出完成,共 {entities.Count} 条步骤记录,已保存至:{dialog.FileName}", () => { });
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
@@ -135,6 +135,7 @@
|
||||
Background="White"
|
||||
AlternatingRowBackground="#F5F7FA"
|
||||
SelectionMode="Single"
|
||||
SelectedItem="{Binding SelectedTestReport}"
|
||||
Margin="8">
|
||||
<DataGrid.Columns>
|
||||
<DataGridTextColumn Header="TestRoundId"
|
||||
|
||||
Reference in New Issue
Block a user