/* Options: Date: 2025-04-04 17:57:32 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.clubmanagercentral.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: MemberService.GetMemberByKeyRequest.* //ExcludeTypes: //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,net.servicestack.client.* */ import java.math.* import java.util.* import net.servicestack.client.* @Route(Path="/api/Member/GetMemberByKey", Verbs="POST,GET") open class GetMemberByKeyRequest : IReturn { var MemberKey:UUID? = null companion object { private val responseType = Member::class.java } override fun getResponseType(): Any? = GetMemberByKeyRequest.responseType } open class Member { var MemberId:Int? = null var BranchId:Int? = null var MembershipNumber:String? = null var JoinedDate:Date? = null var CardNumber:String? = null var CompanyName:String? = null var Gender:Gender? = null var GenderName:String? = null var FullName:String? = null var Title:String? = null var Forenames:String? = null var Surname:String? = null var Address1:String? = null var Address2:String? = null var County:String? = null var City:String? = null var HomePhone:String? = null var MobilePhone:String? = null var EmailAddress:String? = null var ExternalReference:String? = null var Country:String? = null var EmailOptOut:Boolean? = null var SmsOptOut:Boolean? = null var PhoneOptOut:Boolean? = null var LetterOptOut:Boolean? = null var UseExternalStatus:Boolean? = null var ExternalStatus:ExternalStatus? = null var DateOfBirth:Date? = null var Postcode:String? = null var Notes:String? = null var StartDate:Date? = null var Expires:Date? = null var SessionsRemaining:Int? = null var ContractEndDate:Date? = null var DaysRemaining:Int? = null var MembershipType:String? = null var LastAttendance:Date? = null var Attendance:Int? = null var MemberType:MemberType? = null var RecurringPayments:Int? = null var OverduePayments:Int? = null var AttendanceThisWeek:Int? = null var retentionMetric:BigDecimal? = null var MonthlyAttendanceFrequency:BigDecimal? = null var TotalProductSpend:BigDecimal? = null var JournalEntry:String? = null var Balance:BigDecimal? = null var CreditLimit:BigDecimal? = null var guid:UUID? = null var MembershipState:MembershipState? = null var BookingsAttended:Int? = null var DateOfLastBooking:Date? = null var PhotoModifiedDate:Date? = null var CreatedDate:Date? = null var ModifiedDate:Date? = null var DeletedDate:Date? = null var MemberKey:UUID? = null var CreatedByUserId:Int? = null var AssignedToUserId:Int? = null var DeletedByUserId:Int? = null var GiftAidPermission:Boolean? = null var FirstAidPermission:Boolean? = null var PhotoPermission:Boolean? = null var EmergencyContact:String? = null var WonOrLost:Int? = null var WonOrLostDate:Date? = null var WonOrLostByUserId:Int? = null var LicenseReference:String? = null var LicenseStartDate:Date? = null var LicenseRenewalDate:Date? = null var AgreedToTerms:Date? = null var OnlineBookingBanned:Boolean? = null var ChildBranchId:Int? = null var ChildBranch:String? = null var ProspectingPoints:Int? = null var AchievementPoints:Int? = null var ParentForenames:String? = null var ParentSurname:String? = null var GradingReadiness:Int? = null var DirectDebitAccountHolder:String? = null var DirectDebitAccountNumber:String? = null var DirectDebitSortCode:String? = null var DirectDebitBankAddress:String? = null var InvitedDate:Date? = null var Grade:String? = null var ColourLeft:String? = null var ColourRight:String? = null var SessionsToComplete:Int? = null var UniqueId:String? = null var PreferenceLink:String? = null var MarketingAllLink:String? = null var MarketingNoneLink:String? = null var AppRegistrationId:String? = null var AppRegistrationLink:String? = null var AppQrImageLink:String? = null var CardNumberQrImageLink:String? = null var PhotoThumbnailLink:String? = null var ContentTypesOptIn:MessageTemplateContentType? = null var TemplateTypesOptIn:MessageTemplateType? = null var CanEmail:Boolean? = null var CanDirectMail:Boolean? = null var CanSMS:Boolean? = null var CanTelephone:Boolean? = null var NoMarketingConsent:Boolean? = null var CanSendInvite:Boolean? = null var BranchKey:UUID? = null var SageLink:String? = null var SageLastPaymentDate:Date? = null var SageFirstPaymentDate:Date? = null var SageLastPaymentAmount:BigDecimal? = null var SageFirstPaymentAmount:BigDecimal? = null var SageTotalPaid:BigDecimal? = null } enum class Gender { Unknown, Male, Female, Other, PreferNotToSay, } enum class ExternalStatus { Off, Active, Pending, CancelledInsideContract, CancelledOutsideContract, WithDebtRecovery, Suspended, } enum class MemberType { Prospect, Active, Cancelled, Expired, Suspended, ClubCancelled, DropOut, } enum class MembershipState { Prospect, Active, Expired, Cancelled, PaymentRequired, Suspended, } @Flags() enum class MessageTemplateContentType(val value:Int) { @SerializedName("1") Transactional(1), @SerializedName("2") Marketing(2), @SerializedName("1048576") None(1048576), } @Flags() enum class MessageTemplateType(val value:Int) { @SerializedName("1") Sms(1), @SerializedName("2") Email(2), @SerializedName("4") Telephone(4), @SerializedName("8") DirectMail(8), @SerializedName("16") Notification(16), @SerializedName("32") Page(32), @SerializedName("1048576") None(1048576), @SerializedName("2097152") NoConsent(2097152), }