[CHANGE] Reworked ExtendedBackgroundService.cs with State logic and actions

This commit is contained in:
max
2025-10-08 18:22:16 +02:00
parent b8d2573d78
commit 2f19d60be0
7 changed files with 230 additions and 86 deletions

View File

@@ -0,0 +1,24 @@
using Microsoft.EntityFrameworkCore;
namespace Manager.Data.Contexts;
public sealed class ApplicationContext : DbContext
{
public ApplicationContext(DbContextOptions<ApplicationContext> options) : base(options)
{
ChangeTracker.QueryTrackingBehavior = QueryTrackingBehavior.NoTracking;
ChangeTracker.LazyLoadingEnabled = false;
Database.EnsureCreated();
}
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.AddInterceptors(new DateInterceptor());
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
}
}

View File

@@ -0,0 +1,10 @@
namespace Manager.Data.Entities.ApplicationContext;
public class WorkItemEntity : DateTimeBase
{
public required Guid Id { get; set; }
public required string Name { get; set; }
public required string Description { get; set; }
public WorkStatus Status { get; set; } = WorkStatus.Pending;
public required string ClientId { get; set; }
}

View File

@@ -0,0 +1,10 @@
namespace Manager.Data.Entities.ApplicationContext;
public enum WorkStatus
{
Pending = 0,
InProgress = 1,
Paused = 2,
Completed = 3,
Faulted = 4,
}