/* Options: Date: 2025-09-14 21:16:48 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: UpdateUser.* //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="/users", Verbs="PUT") @ApiResponse(Description="Returned if there is a validation error on the input parameters", StatusCode=400) // @ApiResponse(Description="Returned if the current user is not allowed to perform the action", StatusCode=401) @ValidateRequest(Validator="IsAuthenticated") open class UpdateUser : IReturn { /** * The user id for your profile. */ @ApiMember(Description="The user id for your profile.") open var UserId:UUID? = null open var NewEmail:String? = null open var UserProfile:UpdateCustomerProfile? = null open var AdminProfile:UpdateAdminProfile? = null /** * The user realm for identity server. BookMore = 1, BookMoreAdmin = 2 */ @ApiMember(Description="The user realm for identity server. BookMore = 1, BookMoreAdmin = 2 ", IsRequired=true) open var Realm:KeyCloakRealm? = null open var InvoiceAddress:InvoiceAddressToHandle? = null companion object { private val responseType = UpdateUserResponse::class.java } override fun getResponseType(): Any? = UpdateUser.responseType } open class UpdateUserResponse { open var ResponseStatus:Object? = null /** * The user id for your profile. */ @ApiMember(Description="The user id for your profile.", IsRequired=true) open var UserId:UUID? = null open var UserProfile:UserProfileResponse? = null open var AdminProfile:AdminProfile? = null open var IsSentConfirmationUpdateEmail:Boolean? = null open var InvoiceAddress:InvoiceAddressResponse? = null } open class InvoiceAddressToHandle { 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 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 UpdateCustomerProfile { 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 UpdateAdminProfile { open var Firstname:String? = null open var Lastname:String? = null open var Phone:String? = null open var Email:String? = null } enum class KeyCloakRealm(val value:Int) { BookMore(1), BookMoreAdmin(2), SuperAdmin(3), } 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 AdminProfile { open var CompanyId:UUID? = null open var Id:UUID? = null open var Firstname:String? = null open var Lastname:String? = null open var Email:String? = null open var WorkerId:String? = null open var Phone:String? = null }