49 lines
1.8 KiB
C#
49 lines
1.8 KiB
C#
namespace PlotLine.Models;
|
|
|
|
public sealed class SubscriptionLevel
|
|
{
|
|
public int SubscriptionLevelID { get; set; }
|
|
public string Name { get; set; } = string.Empty;
|
|
public string DisplayName { get; set; } = string.Empty;
|
|
public string? Description { get; set; }
|
|
public int MaxBooks { get; set; }
|
|
public int MaxChaptersPerBook { get; set; }
|
|
public int MaxScenesPerBook { get; set; }
|
|
public int MaxCharactersPerProject { get; set; }
|
|
public int MaxStorageMB { get; set; }
|
|
public int MaxCollaborators { get; set; }
|
|
public bool IsActive { get; set; }
|
|
public int SortOrder { get; set; }
|
|
public DateTime CreatedDateUTC { get; set; }
|
|
public DateTime ModifiedDateUTC { get; set; }
|
|
}
|
|
|
|
public class UserSubscription
|
|
{
|
|
public int UserSubscriptionID { get; set; }
|
|
public int UserID { get; set; }
|
|
public int SubscriptionLevelID { get; set; }
|
|
public DateTime StartDateUTC { get; set; }
|
|
public DateTime? EndDateUTC { get; set; }
|
|
public bool IsActive { get; set; }
|
|
public bool IsTrial { get; set; }
|
|
public DateTime? TrialExpiryDateUTC { get; set; }
|
|
public DateTime CreatedDateUTC { get; set; }
|
|
public DateTime ModifiedDateUTC { get; set; }
|
|
}
|
|
|
|
public sealed class UserSubscriptionDetail : UserSubscription
|
|
{
|
|
public string Name { get; set; } = string.Empty;
|
|
public string DisplayName { get; set; } = string.Empty;
|
|
public string? Description { get; set; }
|
|
public int MaxBooks { get; set; }
|
|
public int MaxChaptersPerBook { get; set; }
|
|
public int MaxScenesPerBook { get; set; }
|
|
public int MaxCharactersPerProject { get; set; }
|
|
public int MaxStorageMB { get; set; }
|
|
public int MaxCollaborators { get; set; }
|
|
public bool SubscriptionLevelIsActive { get; set; }
|
|
public int SortOrder { get; set; }
|
|
}
|