Testing und interfaces

This commit is contained in:
Meik
2026-02-13 09:06:36 +01:00
parent abbce22aa9
commit 352dc42ae7
8 changed files with 846 additions and 166 deletions

View File

@@ -0,0 +1,43 @@
using System;
using System.Diagnostics;
using C4IT.FASD.Base;
namespace FasdDesktopUi.Basics.Services.Models
{
internal interface ITicketOverviewSettingsProvider
{
int GetPollingMinutes(TileScope scope);
}
internal sealed class TicketOverviewSettingsProvider : ITicketOverviewSettingsProvider
{
public int GetPollingMinutes(TileScope scope)
{
int minutes = scope == TileScope.Role
? cF4sdTicketConfig.DefaultOverviewPollingRole
: cF4sdTicketConfig.DefaultOverviewPollingPersonal;
try
{
var ticketConfig = cFasdCockpitConfig.Instance?.Global?.TicketConfiguration;
if (ticketConfig != null)
{
minutes = scope == TileScope.Role
? ticketConfig.OverviewPollingRole
: ticketConfig.OverviewPollingPersonal;
}
}
catch (Exception ex)
{
Debug.WriteLine($"[TicketOverview] Settings fallback to defaults: {ex.Message}");
}
if (minutes < 1)
{
minutes = 1;
}
return minutes;
}
}
}