/* Options: Date: 2025-04-04 18:08:41 SwiftVersion: 5.0 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.clubmanagercentral.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: MemberService.GetMembersForAccessControlRequest.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/api/Member/GetMembersForAccessControl", "POST,GET") public class GetMembersForAccessControlRequest : IReturn, Codable { public typealias Return = AccessControlMembers public var memberId:Int? public var date:Date? required public init(){} } public class AccessControlMembers : Codable { public var members:[AccessControlMember] = [] public var schedules:[Schedule] = [] public var branch:Branch? required public init(){} } public enum ExternalStatus : String, Codable { case Off case Active case Pending case CancelledInsideContract case CancelledOutsideContract case WithDebtRecovery case Suspended } public enum MembershipState : String, Codable { case Prospect case Active case Expired case Cancelled case PaymentRequired case Suspended } public class AccessControlMember : Codable { public var memberId:Int? public var enrolmentId:Int? public var branchId:Int? public var membershipState:MembershipState? public var membershipNumber:String? public var cardNumber:String? public var forenames:String? public var surname:String? public var multiSiteAccess:Bool? public var useExternalStatus:Bool? public var externalStatus:ExternalStatus? public var membershipTypeName:String? public var startDate:Date? public var endDate:Date? public var scheduleId:Int? public var sessionsRemaining:Int? public var lastAttendance:Date? public var memberAccess:MemberAccess? required public init(){} } public class Schedule : Codable { public var scheduleId:Int? public var name:String? public var Description:String? @TimeSpan public var mondayFrom:TimeInterval? @TimeSpan public var mondayTo:TimeInterval? @TimeSpan public var tuesdayFrom:TimeInterval? @TimeSpan public var tuesdayTo:TimeInterval? @TimeSpan public var wednesdayFrom:TimeInterval? @TimeSpan public var wednesdayTo:TimeInterval? @TimeSpan public var thursdayFrom:TimeInterval? @TimeSpan public var thursdayTo:TimeInterval? @TimeSpan public var fridayFrom:TimeInterval? @TimeSpan public var fridayTo:TimeInterval? @TimeSpan public var saturdayFrom:TimeInterval? @TimeSpan public var saturdayTo:TimeInterval? @TimeSpan public var sundayFrom:TimeInterval? @TimeSpan public var sundayTo:TimeInterval? public var scheduleType:Int? public var branchId:Int? public var deleted:Bool? public var demo:Bool? public var monday:Bool? public var tuesday:Bool? public var wednesday:Bool? public var thursday:Bool? public var friday:Bool? public var saturday:Bool? public var sunday:Bool? @TimeSpan public var mondayTotalTime:TimeInterval? @TimeSpan public var tuesdayTotalTime:TimeInterval? @TimeSpan public var wednesdayTotalTime:TimeInterval? @TimeSpan public var thursdayTotalTime:TimeInterval? @TimeSpan public var fridayTotalTime:TimeInterval? @TimeSpan public var saturdayTotalTime:TimeInterval? @TimeSpan public var sundayTotalTime:TimeInterval? @TimeSpan public var totalTime:TimeInterval? required public init(){} } public enum MemberAccess : Int, Codable { case AccessAllowed = 1 case NoAccess = 2 case NoMultiSiteAccess = 3 case NoSessions = 4 case NoScheduleAccess = 5 case NoAccessTimeLimitExceeded = 6 case Suspended = 7 } public class Branch : Codable { public var branchId:Int? public var branchType:BranchType? public var name:String? public var `prefix`:String? public var companyName:String? public var companyAddress:String? public var companyOfficialName:String? public var directDebitReference:String? public var fastDDReference:String? public var fastDDPlatinumRef:String? public var style:String? public var publicKey:String? public var privateKey:String? public var trialStart:Date? public var trialEnd:Date? public var paymentStartDate:Date? public var inTrial:Bool? public var useFreeText:Bool? public var freeTextTitle:String? public var useMembershipTypes:Bool? public var ddUserName:String? public var ddPassword:String? public var ddServiceUser:String? public var dfcUserName:String? public var dfcPassword:String? public var dfcClubNumber:String? public var companyEmail:String? public var smsOriginator:String? public var languageId:Int? public var vatRate:Double? public var swipeAction:Int? public var modules:Module? public var useCreditBalance:Bool? public var allowNegativeBalance:Bool? public var defaultCreditLimit:Double? public var applicationType:ApplicationType? public var externalProviderWarning:String? public var domain:String? public var mobileDomain:String? public var onlineBookingTimetableLimit:Int? public var onlineBookingCancellationLimit:Int? public var onlineBookingLimit:Int? public var feature:Feature? public var timeZone:String? public var culture:String? public var country:String? public var iso3166Country:Iso3166Country? public var currencyCulture:String? public var showGoCardlessAd:Bool? public var goCardlessSaving:Double? public var sroAddress:String? public var mcaClubNo:String? public var mcaClubRef:String? public var twilioNumber:String? public var telephone:String? public var transferred:Bool? public var onlineBookingAllowNonActives:Bool? public var memberLimit:Int? public var sortCode:String? public var accountNumber:String? public var website:String? public var sendSMSAppointmentRemindersDefault:Bool? public var sendSMSBookingReminders:Bool? public var giftAid:Bool? @TimeSpan public var globalBookingStartTime:TimeInterval? @TimeSpan public var globalBookingEndTime:TimeInterval? public var bookingMinuteIncrements:Int? public var cancelReason:String? public var cancelFurther:String? public var cancelDate:Date? public var directDebitFee:Double? public var creditCardFee:Double? public var smsPriceAdjustment:Double? public var bookingsPayLinkOnTrack:Bool? public var accessControlTimeLimit:Int? public var minimiser:BranchMinimiser? public var autoGenerateLicenses:Bool? public var terms:String? public var fingerprintThreshold:Int? public var fingerprintMatcherThreshold:Int? public var autoShutoff:Bool? public var primaryColors:String? public var hasColors:Bool? public var primaryColor:String? public var secondaryColor:String? public var backgroundColor:String? public var headerTopColor:String? public var headerBottomColor:String? public var sideLeftColor:String? public var sideRightColor:String? public var sideFontColor:String? public var sideFontActiveColor:String? public var extWebBackgroundColor:String? public var extWebTextColor:String? public var extWebTintBackColor:String? public var extWebHighlightBackColor:String? public var extWebTabBackColor:String? public var headingColor:String? public var reportFormat:ReportFormat? public var fixPayments:Bool? public var fixPaymentSchedle:String? public var appFeature:AppFeature? public var signInScreenFeature:SignInScreenFeature? public var appOptions:String? public var companyDescription:String? public var capacity:Int? public var monthlySalesTarget:Int? public var bookingAccessTimeLimit:Int? public var facebook:String? public var twitter:String? public var instagram:String? public var youTube:String? public var tikTok:String? public var shopify:String? public var minimumMemberAge:Int? public var termsAndConditionsVersionDate:Date? public var termsAndConditionsAcceptedDate:Date? public var termsAndConditionsAccepted:Bool? public var siteUrl:String? public var isUsingSmartDebit:Bool? public var isUsingDfc:Bool? public var isSouthAfrica:Bool? public var smartDebitConfigured:Bool? public var dfcConfigured:Bool? public var usingPaymentMethods:Bool? public var smsPrefix:String? public var logo:String? public var logoThumbnail:String? public var logoHash:String? public var sendMarketingInviteWhenMemberAdded:Bool? public var sendMarketingInviteWhenMemberJoinedOnline:Bool? public var marketingComplianceManagedExternally:Bool? public var onlineBookingAllowWaitingList:Bool? public var onlineMultiSiteEnabled:Bool? public var canBookOnline:Bool? public var publicMembershipTypes:Int? public var trustedBranches:Int? public var isAddingProspects:Bool? public var isSellingMemberships:Bool? public var isCreatingTasks:Bool? public var isCreatingAppointments:Bool? public var isBookingClasses:Bool? public var isRegisteringAttendance:Bool? public var isSellingProducts:Bool? public var isSendingEmails:Bool? public var isSendingSMS:Bool? public var isUsingAutomation:Bool? public var deductSessionsOnBooking:Bool? public var showTrustedBranchBookings:Bool? public var score:Int? public var applicationId:String? public var iOSAppLink:String? public var androidAppLink:String? required public init(){} }