34 lines
1.5 KiB
C#
34 lines
1.5 KiB
C#
namespace Fitness_core_BE.DTOs.CustomerPlan
|
|
{
|
|
public class CustomerPlanDto
|
|
{
|
|
public Guid CustomerPlanId { get; set; }
|
|
public Guid FKClientId { get; set; }
|
|
public string? ClientName { get; set; }
|
|
public string? PlanName { get; set; }
|
|
public string? PlanDescription { get; set; }
|
|
public decimal PlanPrice { get; set; }
|
|
public bool HasOnboardingFee { get; set; }
|
|
public decimal OnboardingFeeAmount { get; set; }
|
|
public int DurationInDays { get; set; }
|
|
public string PlanScope { get; set; } = "Individual";
|
|
public int MemberLimit { get; set; } = 1;
|
|
public string DurationMode { get; set; } = "Rolling";
|
|
public DateTime? ValidFrom { get; set; }
|
|
public DateTime? ValidTo { get; set; }
|
|
public bool AllowSplitPayments { get; set; }
|
|
public int InstallmentCount { get; set; } = 1;
|
|
public int? SessionsPerCycle { get; set; }
|
|
public string SessionRolloverPolicy { get; set; } = "NoRollover";
|
|
public int RolloverGraceDays { get; set; }
|
|
public string BillingTiming { get; set; } = "Prepaid";
|
|
public bool IsActive { get; set; }
|
|
public DateTime CreatedAt { get; set; }
|
|
|
|
// Which Places this plan grants access to. Empty = unrestricted (reaches every
|
|
// active device) -- see AccessDeviceService's allowed-device resolution.
|
|
public List<Guid> PlaceIds { get; set; } = new();
|
|
public List<string> PlaceNames { get; set; } = new();
|
|
}
|
|
}
|