refactor: save current workspace state including FinlyticAnalyzer fixes, FinlyticApp trade route alignment, and DTO audit documentation

This commit is contained in:
2026-08-12 18:30:42 +02:00
parent a9553e9fbf
commit 3d8af3940b
163 changed files with 3421 additions and 1751 deletions
+18 -7
View File
@@ -39,11 +39,15 @@ public class SettingsDbService : ISettingsDbService
var settings = await _context.Settings.AsNoTracking().FirstOrDefaultAsync();
if (settings == null)
{
settings = new AnalyzerSettingsEntity { Id = Guid.NewGuid() };
settings = new AnalyzerSettingsEntity { Id = Guid.NewGuid(), UpdatedAt = DateTime.UtcNow };
_context.Settings.Add(settings);
await _context.SaveChangesAsync();
_context.ChangeTracker.Clear();
}
// Synchronize in-memory static filter values on get
SyncLogFilters(settings);
return settings;
}
@@ -52,10 +56,13 @@ public class SettingsDbService : ISettingsDbService
/// </summary>
public async Task<AnalyzerSettingsEntity> SaveSettingsAsync(AnalyzerSettingsEntity settings)
{
var existing = await _context.Settings.FirstOrDefaultAsync();
var existing = await _context.Settings.FirstOrDefaultAsync(s => s.Id == settings.Id)
?? await _context.Settings.FirstOrDefaultAsync();
if (existing == null)
{
if (settings.Id == Guid.Empty) settings.Id = Guid.NewGuid();
settings.UpdatedAt = DateTime.UtcNow;
_context.Settings.Add(settings);
}
else
@@ -67,19 +74,23 @@ public class SettingsDbService : ISettingsDbService
existing.EnableLogAnalyzerAuto = settings.EnableLogAnalyzerAuto;
existing.EnableLogAnalyzerManual = settings.EnableLogAnalyzerManual;
existing.EnableLogDatabaseOps = settings.EnableLogDatabaseOps;
existing.UpdatedAt = settings.UpdatedAt;
_context.Settings.Update(existing);
existing.UpdatedAt = DateTime.UtcNow;
}
await _context.SaveChangesAsync();
// Synchronize in-memory static filter values
SyncLogFilters(settings);
return settings;
}
private static void SyncLogFilters(AnalyzerSettingsEntity settings)
{
LogCategoryFilter.EnableLogMqttHealthPing = settings.EnableLogMqttHealthPing;
LogCategoryFilter.EnableLogMqttGeneral = settings.EnableLogMqttGeneral;
LogCategoryFilter.EnableLogAnalyzerAuto = settings.EnableLogAnalyzerAuto;
LogCategoryFilter.EnableLogAnalyzerManual = settings.EnableLogAnalyzerManual;
LogCategoryFilter.EnableLogDatabaseOps = settings.EnableLogDatabaseOps;
return settings;
}
/// <summary>