Convert TrafagSalesExporter from console app to Blazor Server app with MudBlazor UI

- Replaced console app with .NET 8 Blazor Server architecture
- Added EF Core SQLite database (trafag_exporter.db) with auto-seed data
- Models: HanaServer, Site, SharePointConfig, ExportSettings, ExportLog, SalesRecord
- Services: HanaQueryService (with configurable dateFilter), ExcelExportService,
  SharePointUploadService, ExportOrchestrationService (with live status events),
  TimerBackgroundService (scheduled daily export)
- MudBlazor UI pages: Dashboard (export status + manual trigger), Standorte
  (HANA server + site CRUD), Settings (SharePoint + timer config), Logs (filtered view)
- SAP HANA queries unchanged (INV + CRN with exact SAP B1 table joins)
- SharePoint upload via Microsoft Graph with app registration auth

https://claude.ai/code/session_012heAXNMbbyxqYf2S2HrKLj
This commit is contained in:
Claude
2026-04-09 14:00:44 +00:00
parent 2f56082adc
commit 8524631508
23 changed files with 1327 additions and 154 deletions
+5 -27
View File
@@ -1,30 +1,8 @@
{
"HanaServers": {
"Internal": {
"Host": "travtrp0",
"Port": 30015,
"Username": "",
"Password": ""
},
"India": {
"Host": "20.197.20.60",
"Port": 30015,
"Username": "",
"Password": ""
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"Sites": [
{ "Schema": "fr01_p", "Server": "Internal", "TSC": "TRFR", "Land": "Frankreich" },
{ "Schema": "it01_p", "Server": "Internal", "TSC": "TRIT", "Land": "Italien" },
{ "Schema": "us01_p", "Server": "Internal", "TSC": "TRUS", "Land": "USA" },
{ "Schema": "TRAFAG_LIVE", "Server": "India", "TSC": "TRIN", "Land": "Indien" }
],
"SharePoint": {
"SiteUrl": "https://trafagag.sharepoint.com/sites/WorldwideBIPlatform",
"ExportFolder": "/Shared Documents/Exports/",
"TenantId": "",
"ClientId": "",
"ClientSecret": ""
},
"DateFilter": "2025-01-01"
}
}