using Marco.Pms.Model.Master;
using Marco.Pms.Model.TenantModels.MongoDBModel;
using Marco.Pms.Model.ViewModels.Activities;

namespace Marco.Pms.Model.ViewModels.Tenant
{
    public class TenantDetailsVM
    {
        public Guid Id { get; set; }
        public string Name { get; set; } = string.Empty;
        public string Email { get; set; } = string.Empty;
        public string? Description { get; set; }
        public string? DomainName { get; set; }
        public string ContactName { get; set; } = string.Empty;
        public string ContactNumber { get; set; } = string.Empty;
        public string? OfficeNumber { get; set; }
        public string BillingAddress { get; set; } = string.Empty;
        public string? TaxId { get; set; }
        public string? logoImage { get; set; }   // Base64
        public DateTime OnBoardingDate { get; set; }
        public string? OrganizationSize { get; set; }
        public Industry? Industry { get; set; }
        public TenantStatus? TenantStatus { get; set; }
        public string Reference { get; set; } = string.Empty;
        public bool IsActive { get; set; } = true;
        public bool IsSuperTenant { get; set; } = false;
        public int SeatsAvailable { get; set; }
        public int ActiveEmployees { get; set; }
        public int InActiveEmployees { get; set; }
        public int? ActiveProjects { get; set; }
        public int? InProgressProjects { get; set; }
        public int? OnHoldProjects { get; set; }
        public int? InActiveProjects { get; set; }
        public int? CompletedProjects { get; set; }
        public DateTime? ExpiryDate { get; set; }
        public DateTime? NextBillingDate { get; set; }
        public BasicEmployeeVM? CreatedBy { get; set; }
        public List<SubscriptionPlanDetailsVM>? SubscriptionHistery { get; set; }
        public SubscriptionPlanDetailsVM? CurrentPlan { get; set; }
        public FeatureDetails? CurrentPlanFeatures { get; set; }

    }
}
