diff --git a/TrafagSalesExporter/Components/Pages/Standorte.razor b/TrafagSalesExporter/Components/Pages/Standorte.razor index bfb9569..1b173d2 100644 --- a/TrafagSalesExporter/Components/Pages/Standorte.razor +++ b/TrafagSalesExporter/Components/Pages/Standorte.razor @@ -690,9 +690,16 @@ if (result != true) return; - await StandortePageService.DeleteSiteAsync(site); - await LoadDataAsync(); - Snackbar.Add("Standort gelöscht", Severity.Info); + try + { + await StandortePageService.DeleteSiteAsync(site); + await LoadDataAsync(); + Snackbar.Add("Standort geloescht", Severity.Info); + } + catch (Exception ex) + { + Snackbar.Add($"Standort konnte nicht geloescht werden: {ex.Message}", Severity.Error); + } } private static string GetServerNode(HanaServer? server) diff --git a/TrafagSalesExporter/Services/StandortePageService.cs b/TrafagSalesExporter/Services/StandortePageService.cs index c18b408..ec8cc2d 100644 --- a/TrafagSalesExporter/Services/StandortePageService.cs +++ b/TrafagSalesExporter/Services/StandortePageService.cs @@ -235,11 +235,15 @@ public sealed class StandortePageService : IStandortePageService var mappings = await db.SapFieldMappings.Where(m => m.SiteId == site.Id).ToListAsync(); var manualMappings = await db.ManualExcelColumnMappings.Where(m => m.SiteId == site.Id).ToListAsync(); var centralRows = await db.CentralSalesRecords.Where(r => r.SiteId == site.Id).ToListAsync(); + var exportLogs = await db.ExportLogs.Where(l => l.SiteId == site.Id).ToListAsync(); + var appEventLogs = await db.AppEventLogs.Where(l => l.SiteId == site.Id).ToListAsync(); if (sources.Count > 0) db.SapSourceDefinitions.RemoveRange(sources); if (joins.Count > 0) db.SapJoinDefinitions.RemoveRange(joins); if (mappings.Count > 0) db.SapFieldMappings.RemoveRange(mappings); if (manualMappings.Count > 0) db.ManualExcelColumnMappings.RemoveRange(manualMappings); if (centralRows.Count > 0) db.CentralSalesRecords.RemoveRange(centralRows); + if (exportLogs.Count > 0) db.ExportLogs.RemoveRange(exportLogs); + if (appEventLogs.Count > 0) db.AppEventLogs.RemoveRange(appEventLogs); db.Sites.Remove(entity); await db.SaveChangesAsync(); }