27 lines
627 B
C#
27 lines
627 B
C#
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace MealPlan.Api.Models;
|
|
|
|
[Table("RefreshTokens")]
|
|
public class RefreshTokenEntity
|
|
{
|
|
[Column("Token")]
|
|
public string Token { get; set; } = string.Empty;
|
|
|
|
[Column("UserId")]
|
|
public Guid UserId { get; set; }
|
|
|
|
[Column("ExpiresAtUtc")]
|
|
public DateTime ExpiresAtUtc { get; set; }
|
|
|
|
[Column("CreatedAtUtc")]
|
|
public DateTime CreatedAtUtc { get; set; }
|
|
|
|
[Column("IsRevoked")]
|
|
public bool IsRevoked { get; set; }
|
|
|
|
public bool IsActive => !IsRevoked && DateTime.UtcNow < ExpiresAtUtc;
|
|
|
|
public ApplicationUser? User { get; set; }
|
|
}
|