32 lines
832 B
C#
32 lines
832 B
C#
using System.ComponentModel.DataAnnotations;
|
|
|
|
namespace ASTRAIN.Shared.Models;
|
|
|
|
/// <summary>
|
|
/// Represents an application user identified by an 8-character key.
|
|
/// </summary>
|
|
public class User
|
|
{
|
|
/// <summary>
|
|
/// Gets or sets the unique 8-character user identifier.
|
|
/// </summary>
|
|
[Key]
|
|
[MaxLength(8)]
|
|
public string Id { get; set; } = string.Empty;
|
|
|
|
/// <summary>
|
|
/// Gets or sets the creation timestamp in UTC.
|
|
/// </summary>
|
|
public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
|
|
|
|
/// <summary>
|
|
/// Gets or sets the exercises owned by this user.
|
|
/// </summary>
|
|
public List<Exercise> Exercises { get; set; } = new();
|
|
|
|
/// <summary>
|
|
/// Gets or sets the routines owned by this user.
|
|
/// </summary>
|
|
public List<Routine> Routines { get; set; } = new();
|
|
}
|