/* Options: Date: 2025-09-15 19:06:59 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.bookmore.com //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GDPRCustomerQuery.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* @Route(Path="/gdpr/customers/{CustomerId}", Verbs="GET") @ValidateRequest(Validator="IsAuthenticated") open class GDPRCustomerQuery : IReturn, ICompany { /** * Enter the company and id you want to see the information for a resource, if blank company id and you are an admin, your company id will be used. If blank id, all resources will be shown */ @ApiMember(Description="Enter the company and id you want to see the information for a resource, if blank company id and you are an admin, your company id will be used. If blank id, all resources will be shown ", IsRequired=true, ParameterType="query") override var CompanyId:UUID? = null /** * Id of the customer */ @ApiMember(Description="Id of the customer", IsRequired=true, ParameterType="path") open var CustomerId:UUID? = null companion object { private val responseType = GDPRCustomerQueryResponse::class.java } override fun getResponseType(): Any? = GDPRCustomerQuery.responseType } open class GDPRCustomerQueryResponse { /** * List of all bookings associated with the customer */ @ApiMember(Description="List of all bookings associated with the customer") open var Bookings:ArrayList? = null /** * List of all message logs associated with the customer */ @ApiMember(Description="List of all message logs associated with the customer") open var MessageLog:ArrayList? = null /** * The user profile information for the customer */ @ApiMember(Description="The user profile information for the customer") open var UserProfile:UserProfileResponse? = null /** * Detailed customer information */ @ApiMember(Description="Detailed customer information") open var Customer:GDPRCustomerInfoResponse? = null /** * List of all comments associated with the customer */ @ApiMember(Description="List of all comments associated with the customer") open var CustomerComment:ArrayList? = null /** * List of all newsletter logs associated with the customer */ @ApiMember(Description="List of all newsletter logs associated with the customer") open var NewsletterLog:ArrayList? = null /** * Response status information */ @ApiMember(Description="Response status information") open var ResponseStatus:ResponseStatus? = null } interface ICompany { var CompanyId:UUID? } open class InvoiceAddressResponse { open var InvoiceAddressId:UUID? = null open var UserId:UUID? = null open var CorporateIdentityNumber:String? = null open var InvoiceAddress1:String? = null open var InvoiceAddress2:String? = null open var InvoiceCity:String? = null open var InvoicePostalCode:String? = null open var InvoiceCountryCode:String? = null } open class GDPRCustomerBookingsResponse { /** * The company ID associated with this booking */ @ApiMember(Description="The company ID associated with this booking") open var CompanyId:UUID? = null /** * The unique identifier of the booking */ @ApiMember(Description="The unique identifier of the booking") open var Id:Int? = null /** * The customer ID associated with this booking */ @ApiMember(Description="The customer ID associated with this booking") open var CustomerId:UUID? = null /** * The service ID for this booking */ @ApiMember(Description="The service ID for this booking") open var ServiceId:Int? = null /** * The current status of the booking */ @ApiMember(Description="The current status of the booking") open var StatusId:Int? = null /** * The start date and time of the booking */ @ApiMember(Description="The start date and time of the booking") open var From:Date? = null /** * The end date and time of the booking */ @ApiMember(Description="The end date and time of the booking") open var To:Date? = null /** * The date when the booking was cancelled or unbooked */ @ApiMember(Description="The date when the booking was cancelled or unbooked") open var UnbookedOn:Date? = null /** * Comments added when the booking was cancelled */ @ApiMember(Description="Comments added when the booking was cancelled") open var UnbookedComments:String? = null /** * Comments added when the booking was created */ @ApiMember(Description="Comments added when the booking was created") open var BookedComments:String? = null /** * The name of the person who made the booking */ @ApiMember(Description="The name of the person who made the booking") open var BookedBy:String? = null /** * General comments about the booking */ @ApiMember(Description="General comments about the booking") open var Comments:String? = null /** * Custom text field 1 */ @ApiMember(Description="Custom text field 1") open var TextField1:String? = null /** * Custom text field 2 */ @ApiMember(Description="Custom text field 2") open var TextField2:String? = null /** * Custom text field 3 */ @ApiMember(Description="Custom text field 3") open var TextField3:String? = null /** * Custom text field 4 */ @ApiMember(Description="Custom text field 4") open var TextField4:String? = null /** * Custom text field 5 */ @ApiMember(Description="Custom text field 5") open var TextField5:String? = null /** * Custom text field 6 */ @ApiMember(Description="Custom text field 6") open var TextField6:String? = null /** * Custom text field 7 */ @ApiMember(Description="Custom text field 7") open var TextField7:String? = null /** * Custom text field 8 */ @ApiMember(Description="Custom text field 8") open var TextField8:String? = null /** * Custom text field 9 */ @ApiMember(Description="Custom text field 9") open var TextField9:String? = null /** * Custom text field 10 */ @ApiMember(Description="Custom text field 10") open var TextField10:String? = null /** * Custom text field 11 */ @ApiMember(Description="Custom text field 11") open var TextField11:String? = null /** * Custom text field 12 */ @ApiMember(Description="Custom text field 12") open var TextField12:String? = null /** * Custom text field 13 */ @ApiMember(Description="Custom text field 13") open var TextField13:String? = null /** * Custom text field 14 */ @ApiMember(Description="Custom text field 14") open var TextField14:String? = null /** * Custom text field 15 */ @ApiMember(Description="Custom text field 15") open var TextField15:String? = null /** * Custom text field 16 */ @ApiMember(Description="Custom text field 16") open var TextField16:String? = null /** * Custom text field 17 */ @ApiMember(Description="Custom text field 17") open var TextField17:String? = null /** * Custom text field 18 */ @ApiMember(Description="Custom text field 18") open var TextField18:String? = null /** * Custom text field 19 */ @ApiMember(Description="Custom text field 19") open var TextField19:String? = null /** * Custom text field 20 */ @ApiMember(Description="Custom text field 20") open var TextField20:String? = null /** * The date when the booking was last updated */ @ApiMember(Description="The date when the booking was last updated") open var UpdatedDate:Date? = null /** * The date when the booking was created */ @ApiMember(Description="The date when the booking was created") open var CreatedDate:Date? = null /** * Comments sent to the customer about this booking */ @ApiMember(Description="Comments sent to the customer about this booking") open var CommentsToCustomer:String? = null } open class GDPRCustomerMessageLogResponse { /** * The company ID associated with this message */ @ApiMember(Description="The company ID associated with this message") open var CompanyId:UUID? = null /** * The unique identifier of the message */ @ApiMember(Description="The unique identifier of the message") open var Id:Int? = null /** * The booking ID this message is related to, if any */ @ApiMember(Description="The booking ID this message is related to, if any") open var BookingId:Int? = null /** * The recipient of the message */ @ApiMember(Description="The recipient of the message") open var Receiver:String? = null /** * The sender of the message */ @ApiMember(Description="The sender of the message") open var Sender:String? = null /** * The title or subject of the message */ @ApiMember(Description="The title or subject of the message") open var MessageTitle:String? = null /** * The body content of the message */ @ApiMember(Description="The body content of the message") open var MessageBody:String? = null /** * The name of the person who created the message */ @ApiMember(Description="The name of the person who created the message") open var CreatedBy:String? = null /** * The date when the message was created */ @ApiMember(Description="The date when the message was created") open var Created:Date? = null /** * Whether the message was successfully sent */ @ApiMember(Description="Whether the message was successfully sent") open var Sent:Boolean? = null /** * The date when the message was sent */ @ApiMember(Description="The date when the message was sent") open var SentDate:Date? = null /** * The method used to send the message (e.g., email, SMS) */ @ApiMember(Description="The method used to send the message (e.g., email, SMS)") open var SendMethodId:Int? = null } open class UserProfileResponse { open var Id:UUID? = null open var Firstname:String? = null open var Lastname:String? = null open var Phone:String? = null open var Email:String? = null open var InvoiceAddress:InvoiceAddressResponse? = null } open class GDPRCustomerInfoResponse { /** * The unique identifier of the user */ @ApiMember(Description="The unique identifier of the user") open var UserId:UUID? = null /** * The user's first name */ @ApiMember(Description="The user's first name") open var Firstname:String? = null /** * The user's last name */ @ApiMember(Description="The user's last name") open var Lastname:String? = null /** * The user's phone number */ @ApiMember(Description="The user's phone number") open var Phone:String? = null /** * The user's email address */ @ApiMember(Description="The user's email address") open var Email:String? = null /** * Whether the user account is currently active */ @ApiMember(Description="Whether the user account is currently active") open var Active:Boolean? = null /** * The user's Facebook username */ @ApiMember(Description="The user's Facebook username") open var FacebookUsername:String? = null /** * Custom text field 1 */ @ApiMember(Description="Custom text field 1") open var TextField1:String? = null /** * Custom text field 2 */ @ApiMember(Description="Custom text field 2") open var TextField2:String? = null /** * Custom text field 3 */ @ApiMember(Description="Custom text field 3") open var TextField3:String? = null /** * Custom text field 4 */ @ApiMember(Description="Custom text field 4") open var TextField4:String? = null /** * Custom text field 5 */ @ApiMember(Description="Custom text field 5") open var TextField5:String? = null /** * Custom text field 6 */ @ApiMember(Description="Custom text field 6") open var TextField6:String? = null /** * Custom text field 7 */ @ApiMember(Description="Custom text field 7") open var TextField7:String? = null /** * Custom text field 8 */ @ApiMember(Description="Custom text field 8") open var TextField8:String? = null /** * Custom text field 9 */ @ApiMember(Description="Custom text field 9") open var TextField9:String? = null /** * Custom text field 10 */ @ApiMember(Description="Custom text field 10") open var TextField10:String? = null /** * Custom text field 11 */ @ApiMember(Description="Custom text field 11") open var TextField11:String? = null /** * Custom text field 12 */ @ApiMember(Description="Custom text field 12") open var TextField12:String? = null /** * Custom text field 13 */ @ApiMember(Description="Custom text field 13") open var TextField13:String? = null /** * Custom text field 14 */ @ApiMember(Description="Custom text field 14") open var TextField14:String? = null /** * Custom text field 15 */ @ApiMember(Description="Custom text field 15") open var TextField15:String? = null /** * Custom text field 16 */ @ApiMember(Description="Custom text field 16") open var TextField16:String? = null /** * Custom text field 17 */ @ApiMember(Description="Custom text field 17") open var TextField17:String? = null /** * Custom text field 18 */ @ApiMember(Description="Custom text field 18") open var TextField18:String? = null /** * Custom text field 19 */ @ApiMember(Description="Custom text field 19") open var TextField19:String? = null /** * Custom text field 20 */ @ApiMember(Description="Custom text field 20") open var TextField20:String? = null /** * The date when the customer information was last updated */ @ApiMember(Description="The date when the customer information was last updated") open var Updated:Date? = null /** * The date when the customer information was created */ @ApiMember(Description="The date when the customer information was created") open var Created:Date? = null } open class GDPRCustomerCommentsResponse { /** * The company ID associated with this comment */ @ApiMember(Description="The company ID associated with this comment") open var CompanyId:UUID? = null /** * The unique identifier of the comment */ @ApiMember(Description="The unique identifier of the comment") open var Id:Int? = null /** * The customer ID this comment is associated with */ @ApiMember(Description="The customer ID this comment is associated with") open var CustomerId:UUID? = null /** * The content of the comment */ @ApiMember(Description="The content of the comment") open var Comments:String? = null /** * The date when the comment was last updated */ @ApiMember(Description="The date when the comment was last updated") open var Updated:Date? = null /** * The date when the comment was created */ @ApiMember(Description="The date when the comment was created") open var Created:Date? = null /** * URL to any image associated with the comment */ @ApiMember(Description="URL to any image associated with the comment") open var ImageUrl:Uri? = null } open class GDPRCustomerNewsletterLogResponse { /** * The company ID associated with this newsletter */ @ApiMember(Description="The company ID associated with this newsletter") open var CompanyId:UUID? = null /** * The unique identifier of the newsletter log entry */ @ApiMember(Description="The unique identifier of the newsletter log entry") open var Id:Int? = null /** * The newsletter ID this log entry is related to, if any */ @ApiMember(Description="The newsletter ID this log entry is related to, if any") open var NewslettersId:Int? = null /** * The recipient of the newsletter */ @ApiMember(Description="The recipient of the newsletter") open var Receiver:String? = null /** * The sender of the newsletter */ @ApiMember(Description="The sender of the newsletter") open var Sender:String? = null /** * The title or subject of the newsletter */ @ApiMember(Description="The title or subject of the newsletter") open var MessageTitle:String? = null /** * The body content of the newsletter */ @ApiMember(Description="The body content of the newsletter") open var MessageBody:String? = null /** * Whether the newsletter was successfully sent */ @ApiMember(Description="Whether the newsletter was successfully sent") open var Sent:Boolean? = null /** * The date when the newsletter was created */ @ApiMember(Description="The date when the newsletter was created") open var Created:Date? = null }