/* Options: Date: 2024-05-11 18:49:49 Version: 6.50 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://www.clubready.com/api/current //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: ClassRosterRequest.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using ClubReady.Web.Api; using ClubReady.Core.Api.Models; using ClubReady.Core.Api.Models.Enums; using ClubReady.Web.Api.Scheduling.Model; namespace ClubReady.Core.Api.Models { public partial class ApiDtoBase { public virtual string ApiKey { get; set; } public virtual int? StoreId { get; set; } public virtual int? ChainId { get; set; } } public partial class ApiResponseBase { public virtual bool Success { get; set; } public virtual string Message { get; set; } } public partial class ClassRosterItem { public virtual int BookingId { get; set; } public virtual int UserId { get; set; } public virtual string FirstName { get; set; } public virtual string LastName { get; set; } public virtual string Email { get; set; } public virtual string Phone { get; set; } public virtual DateTime BookingMade { get; set; } public virtual bool FirstTimeBooking { get; set; } public virtual string PackageName { get; set; } public virtual int? PackageId { get; set; } public virtual string LeadTypeName { get; set; } public virtual int? LeadTypeId { get; set; } public virtual bool IsMember { get; set; } public virtual DateTime? MemberExpiration { get; set; } public virtual ClassRosterCreditType CreditType { get; set; } public virtual int CreditsRemaining { get; set; } public virtual DateTime? NextCreditExpiration { get; set; } public virtual short? BookingStatusId { get; set; } public virtual string BookingStatusDescription { get; set; } } public partial class ClassRosterRequestDto : ApiDtoBase { public virtual int ClassScheduleId { get; set; } } public partial class ClassRosterResponseDto : ApiResponseBase { public ClassRosterResponseDto() { ClassRoster = new List{}; WaitList = new List{}; } public virtual List ClassRoster { get; set; } public virtual List WaitList { get; set; } } } namespace ClubReady.Core.Api.Models.Enums { public enum ClassRosterCreditType { Uninitialized = 0, PaidCredit = 1, FreeCredit = 2, AmenityCredit = 3, MembershipTypeCredit = 4, ClassPassCredit = 5, Error = -1, } } namespace ClubReady.Web.Api { public partial interface IApiKeyEndpoint { string ApiKey { get; set; } } public partial interface IRestrictedApiRequest : IApiKeyEndpoint { int? RestrictedId { get; set; } RestrictedResourceType RestrictedResourceType { get; set; } } public enum RestrictedResourceType { Store, Chain, User, Undefined, } } namespace ClubReady.Web.Api.Scheduling.Model { [Route("/scheduling/class-roster", "GET")] public partial class ClassRosterRequest : ClassRosterRequestDto, IReturn, IRestrictedApiRequest { /// ///Api Key - grants access to resources /// [ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query")] public virtual string ApiKey { get; set; } /// ///Store Id or Chain Id is required /// [ApiMember(DataType="integer", Description="Store Id or Chain Id is required", Name="StoreId", ParameterType="query")] public virtual int? StoreId { get; set; } /// ///Store Id or Chain Id is required /// [ApiMember(DataType="integer", Description="Store Id or Chain Id is required", Name="ChainId", ParameterType="query")] public virtual int? ChainId { get; set; } /// ///Class Schedule ID /// [ApiMember(DataType="integer", Description="Class Schedule ID", IsRequired=true, Name="ClassScheduleId", ParameterType="query")] public virtual int ClassScheduleId { get; set; } public virtual int? RestrictedId { get; set; } public virtual RestrictedResourceType RestrictedResourceType { get; set; } } public partial class ClassRosterResponse : ClassRosterResponseDto { public ClassRosterResponse() { ClassRoster = new List{}; WaitList = new List{}; } public virtual bool Success { get; set; } public virtual string Message { get; set; } public virtual DateTime ClassDate { get; set; } public virtual int FreeSpots { get; set; } public virtual int MaxSpots { get; set; } public virtual int TotalBooked { get; set; } public virtual string LocationType { get; set; } public virtual string VirtualLink { get; set; } public virtual List ClassRoster { get; set; } public virtual List WaitList { get; set; } } }