/* Options: Date: 2024-11-21 14:48:26 SwiftVersion: 5.0 Version: 8.23 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://testapi.bokamera.se //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: GDPRCustomerQuery.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/gdpr/customers/{CustomerId}", "GET") // @ValidateRequest(Validator="IsAuthenticated") public class GDPRCustomerQuery : IReturn, ICompany, Codable { public typealias Return = GDPRCustomerQueryResponse /** * 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") public var companyId:String? /** * Id of the customer */ // @ApiMember(Description="Id of the customer", IsRequired=true, ParameterType="path") public var customerId:String required public init(){} } public class GDPRCustomerQueryResponse : Codable { public var bookings:[GDPRCustomerBookingsResponse] = [] public var messageLog:[GDPRCustomerMessageLogResponse] = [] public var userProfile:UserProfileResponse public var customer:GDPRCustomerInfoResponse public var customerComment:[GDPRCustomerCommentsResponse] = [] public var newsletterLog:[GDPRCustomerNewsletterLogResponse] = [] public var responseStatus:ResponseStatus required public init(){} } public protocol ICompany { var companyId:String? { get set } } public class GDPRCustomerBookingsResponse : Codable { public var companyId:String public var id:Int public var customerId:String public var serviceId:Int public var statusId:Int public var from:Date public var to:Date public var unbookedOn:Date? public var unbookedComments:String public var bookedComments:String public var bookedBy:String public var comments:String public var textField1:String public var textField2:String public var textField3:String public var textField4:String public var textField5:String public var textField6:String public var textField7:String public var textField8:String public var textField9:String public var textField10:String public var textField11:String public var textField12:String public var textField13:String public var textField14:String public var textField15:String public var textField16:String public var textField17:String public var textField18:String public var textField19:String public var textField20:String public var updatedDate:Date public var createdDate:Date public var commentsToCustomer:String required public init(){} } public class GDPRCustomerMessageLogResponse : Codable { public var companyId:String public var id:Int public var bookingId:Int? public var receiver:String public var sender:String public var messageTitle:String public var messageBody:String public var createdBy:String public var created:Date public var sent:Bool public var sentDate:Date? public var sendMethodId:Int required public init(){} } public class UserProfileResponse : Codable { public var id:String public var firstname:String public var lastname:String public var phone:String public var email:String required public init(){} } public class GDPRCustomerInfoResponse : Codable { public var userId:String public var firstname:String public var lastname:String public var phone:String public var email:String public var active:Bool public var facebookUsername:String public var textField1:String public var textField2:String public var textField3:String public var textField4:String public var textField5:String public var textField6:String public var textField7:String public var textField8:String public var textField9:String public var textField10:String public var textField11:String public var textField12:String public var textField13:String public var textField14:String public var textField15:String public var textField16:String public var textField17:String public var textField18:String public var textField19:String public var textField20:String public var updated:Date public var created:Date required public init(){} } public class GDPRCustomerCommentsResponse : Codable { public var companyId:String public var id:Int public var customerId:String public var comments:String public var updated:Date public var created:Date public var imageUrl:Uri required public init(){} } public class GDPRCustomerNewsletterLogResponse : Codable { public var companyId:String public var id:Int public var newslettersId:Int? public var receiver:String public var sender:String public var messageTitle:String public var messageBody:String public var sent:Bool public var created:Date required public init(){} }