using F9WebAiTest.Application.Dtos.SYS.Reports; using MediatR; namespace F9WebAiTest.Application.Interfaces.Reports; /// /// 报表数据提供者(对应 F9 的 IReportService): /// 报表配置 Config.DsName 指定查询名称,后端按名称解析到对应实现执行查询。 /// 实现类注册到 DI 后自动被发现(静态 ReportName 属性作为解析键)。 /// 查询实现应通过 MediatR 发送 CQRS Query,由 QueryHandler 组装 ReportDto_DataSource。 /// public interface IReportDataProvider { /// 查询名称(对应报表配置中的 DsName,如 "RepDt_Sys_Users") string ReportName { get; } /// /// 执行查询。pairs 为前端查询控件收集的键值对(键 = Config.Parms[].Name); /// 返回含记录集(Field_Data)与报表参数(Parameter_Data)的数据源。 /// Task GetData(Dictionary pairs, IMediator mediator); }