feat random bullshit GO!

This commit is contained in:
elar1s
2025-09-29 21:46:30 +03:00
parent 02934b1fd9
commit 63c89c48d5
71 changed files with 1976 additions and 1196 deletions

View File

@@ -0,0 +1,37 @@
using Microsoft.AspNetCore.Identity;
namespace LctMonolith.Domain.Entities;
/// <summary>
/// Application user (candidate or employee) participating in gamification.
/// Extends IdentityUser with Guid primary key.
/// </summary>
public class AppUser : IdentityUser<Guid>
{
/// <summary>User given (first) name.</summary>
public string? FirstName { get; set; }
/// <summary>User family (last) name.</summary>
public string? LastName { get; set; }
/// <summary>Date of birth.</summary>
public DateOnly? BirthDate { get; set; }
/// <summary>Current accumulated experience points.</summary>
public int Experience { get; set; }
/// <summary>Current mana (in-game currency).</summary>
public int Mana { get; set; }
/// <summary>Current rank reference.</summary>
public Guid? RankId { get; set; }
public Rank? Rank { get; set; }
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
public DateTime UpdatedAt { get; set; } = DateTime.UtcNow;
public ICollection<UserCompetency> Competencies { get; set; } = new List<UserCompetency>();
public ICollection<UserMission> Missions { get; set; } = new List<UserMission>();
public ICollection<UserInventoryItem> Inventory { get; set; } = new List<UserInventoryItem>();
public ICollection<Transaction> Transactions { get; set; } = new List<Transaction>();
public ICollection<RefreshToken> RefreshTokens { get; set; } = new List<RefreshToken>();
public ICollection<EventLog> Events { get; set; } = new List<EventLog>();
public ICollection<Notification> Notifications { get; set; } = new List<Notification>();
}