DataSourceAdapter-Pattern + SiteExportService schlanker + Page-Services Scoped

- IDataSourceAdapter mit 3 Implementierungen (HANA, SAP_GATEWAY, MANUAL_EXCEL)
  und DataSourceAdapterResolver ersetzen das if/else auf ConnectionKind.
- SiteExportService von 338 auf 187 Zeilen reduziert: Pipeline
  Resolve -> Fetch -> Transform -> Excel -> Central -> SharePoint.
- Page-Services auf Scoped (per Blazor-Circuit); Orchestrator bleibt Singleton
  fuer geteilten Export-Status.
This commit is contained in:
Claude
2026-04-17 12:11:35 +00:00
parent 2a56ba53ba
commit 82ac7df0ec
11 changed files with 431 additions and 231 deletions
@@ -0,0 +1,11 @@
namespace TrafagSalesExporter.Services.DataSources;
public interface IDataSourceAdapter
{
/// <summary>
/// Der Wert aus <see cref="Models.SourceSystemConnectionKinds"/>, den dieser Adapter behandelt.
/// </summary>
string ConnectionKind { get; }
Task<DataSourceFetchResult> FetchAsync(DataSourceFetchContext context);
}