SF-74: Domain/Application — UserPreferences DTO, interface, Sender role constant

This commit is contained in:
2026-09-03 14:57:21 +02:00
parent 7fc2c14f9c
commit 0fdfe991ea
3 changed files with 23 additions and 5 deletions

View File

@@ -3,7 +3,7 @@ namespace EnvelopeGenerator.Application.Common.Dto;
/// <summary>
/// Represents a user's UI preferences stored in the distributed cache (dbo.TBDD_CACHE).
/// </summary>
public sealed class UserPreferencesDto
public sealed record UserPreferencesDto
{
/// <summary>
/// The active DevExpress theme name.
@@ -23,4 +23,17 @@ public sealed class UserPreferencesDto
/// Values are opaque JSON strings produced by DxGrid.SaveLayoutAsync().
/// </summary>
public Dictionary<string, string> GridLayouts { get; set; } = new();
/// <summary>
/// The authenticated user's display name ("{GivenName} {Surname}").
/// Populated by the server on GET responses from JWT claims.
/// NOT persisted in cache — injected at read time by UserPreferencesController.
/// Ignored on PUT requests.
/// </summary>
public string? DisplayName { get; set; }
/// <summary>
///
/// </summary>
public static UserPreferencesDto Default { get; } = new UserPreferencesDto();
}