Add users & migrations

This commit is contained in:
lumijiez
2025-06-06 19:15:50 +03:00
parent 8a2cb322fc
commit 27a59d7049
10 changed files with 1513 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
namespace Imprink.Domain.Entities.Users;
public class Role
{
public Guid Id { get; set; }
public string RoleName { get; set; } = null!;
public virtual ICollection<UserRole> UserRoles { get; set; } = new List<UserRole>();
}

View File

@@ -0,0 +1,20 @@
namespace Imprink.Domain.Entities.Users;
public class User : EntityBase
{
public new string Id { get; set; } = null!;
public required string Email { get; set; }
public required string FirstName { get; set; }
public required string LastName { get; set; }
public string? PhoneNumber { get; set; }
public DateTime? DateOfBirth { get; set; }
public required bool IsActive { get; set; }
public DateTime? LastLoginAt { get; set; }
public virtual ICollection<Address> Addresses { get; set; } = new List<Address>();
public virtual ICollection<UserRole> UserRoles { get; set; } = new List<UserRole>();
public string FullName => $"{FirstName} {LastName}";
public Address? DefaultAddress => Addresses.FirstOrDefault(a => a.IsDefault && a.IsActive);
public IEnumerable<Role> Roles => UserRoles.Select(ur => ur.Role);
}

View File

@@ -0,0 +1,9 @@
namespace Imprink.Domain.Entities.Users;
public class UserRole
{
public string UserId { get; set; } = null!;
public Guid RoleId { get; set; }
public virtual Role Role { get; set; } = null!;
}