/* Options: Date: 2026-06-14 21:39:09 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://qp-microservices-booster.richemont.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateCustomerRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class BaseRequest implements IRequest, IConvertible { String? sid; String? app; String? _os; String? _appVersion; String? _searchMethod; BaseRequest({this.sid,this.app,this._os,this._appVersion,this._searchMethod}); BaseRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { sid = json['sid']; app = json['app']; _os = json['_os']; _appVersion = json['_appVersion']; _searchMethod = json['_searchMethod']; return this; } Map toJson() => { 'sid': sid, 'app': app, '_os': _os, '_appVersion': _appVersion, '_searchMethod': _searchMethod }; getTypeName() => "BaseRequest<$TResponse>"; TypeContext? context = _ctx; } abstract class IRequest { String? sid; String? app; } class BaseResponse implements IRespose, IConvertible { String? _xmlns; String? _type; String? _source; String? _tstamp; String? _user; String? _env; String? _uri; String? _query; BaseResponse({this._xmlns,this._type,this._source,this._tstamp,this._user,this._env,this._uri,this._query}); BaseResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { _xmlns = json['_xmlns']; _type = json['_type']; _source = json['_source']; _tstamp = json['_tstamp']; _user = json['_user']; _env = json['_env']; _uri = json['_uri']; _query = json['_query']; return this; } Map toJson() => { '_xmlns': _xmlns, '_type': _type, '_source': _source, '_tstamp': _tstamp, '_user': _user, '_env': _env, '_uri': _uri, '_query': _query }; getTypeName() => "BaseResponse"; TypeContext? context = _ctx; } abstract class IRespose { String? _xmlns; String? _type; String? _source; String? _tstamp; String? _user; String? _env; String? _uri; String? _query; } class CreateCustomerResponse extends BaseResponse implements IConvertible { String? customerId; int? boosterCustomerId; CreateCustomerResponse({this.customerId,this.boosterCustomerId}); CreateCustomerResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); customerId = json['customerId']; boosterCustomerId = json['boosterCustomerId']; return this; } Map toJson() => super.toJson()..addAll({ 'customerId': customerId, 'boosterCustomerId': boosterCustomerId }); getTypeName() => "CreateCustomerResponse"; TypeContext? context = _ctx; } // @Route("/warranty/v1/createCustomer", "POST") class CreateCustomerRequest extends BaseRequest implements IReturn, IConvertible, IPost { String? customerRef; int? title; String? firstName; String? lastName; String? firstNameNotLatin; String? lastNameNotLatin; DateTime? birthday; String? email; bool? canBeContacted; String? language; String? nameSuffix; String? gender; String? middleName; String? countryId; String? phoneCountryId; String? prefixCountryId; String? phone; int? posId; String? brandTrigram; DateTime? weddingDate; String? street; String? houseNumber; String? city; String? postalCode; String? region; String? street2; String? street3; String? street4; String? street5; String? salePersonId; bool? privacyPolicyAcceptanceStorage; bool? allowStoreDataAbroad; bool? tvPrivacyPolicyAcceptanceStorage; bool? tvAllowStoreDataAbroad; bool? contactByMail; bool? contactByEmail; bool? contactByPhone; bool? contactBySMS; bool? contactBySocialMedia; CreateCustomerRequest({this.customerRef,this.title,this.firstName,this.lastName,this.firstNameNotLatin,this.lastNameNotLatin,this.birthday,this.email,this.canBeContacted,this.language,this.nameSuffix,this.gender,this.middleName,this.countryId,this.phoneCountryId,this.prefixCountryId,this.phone,this.posId,this.brandTrigram,this.weddingDate,this.street,this.houseNumber,this.city,this.postalCode,this.region,this.street2,this.street3,this.street4,this.street5,this.salePersonId,this.privacyPolicyAcceptanceStorage,this.allowStoreDataAbroad,this.tvPrivacyPolicyAcceptanceStorage,this.tvAllowStoreDataAbroad,this.contactByMail,this.contactByEmail,this.contactByPhone,this.contactBySMS,this.contactBySocialMedia}); CreateCustomerRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); customerRef = json['customerRef']; title = json['title']; firstName = json['firstName']; lastName = json['lastName']; firstNameNotLatin = json['firstNameNotLatin']; lastNameNotLatin = json['lastNameNotLatin']; birthday = JsonConverters.fromJson(json['birthday'],'DateTime',context!); email = json['email']; canBeContacted = json['canBeContacted']; language = json['language']; nameSuffix = json['nameSuffix']; gender = json['gender']; middleName = json['middleName']; countryId = json['countryId']; phoneCountryId = json['phoneCountryId']; prefixCountryId = json['prefixCountryId']; phone = json['phone']; posId = json['posId']; brandTrigram = json['brandTrigram']; weddingDate = JsonConverters.fromJson(json['weddingDate'],'DateTime',context!); street = json['street']; houseNumber = json['houseNumber']; city = json['city']; postalCode = json['postalCode']; region = json['region']; street2 = json['street2']; street3 = json['street3']; street4 = json['street4']; street5 = json['street5']; salePersonId = json['salePersonId']; privacyPolicyAcceptanceStorage = json['privacyPolicyAcceptanceStorage']; allowStoreDataAbroad = json['allowStoreDataAbroad']; tvPrivacyPolicyAcceptanceStorage = json['tvPrivacyPolicyAcceptanceStorage']; tvAllowStoreDataAbroad = json['tvAllowStoreDataAbroad']; contactByMail = json['contactByMail']; contactByEmail = json['contactByEmail']; contactByPhone = json['contactByPhone']; contactBySMS = json['contactBySMS']; contactBySocialMedia = json['contactBySocialMedia']; return this; } Map toJson() => super.toJson()..addAll({ 'customerRef': customerRef, 'title': title, 'firstName': firstName, 'lastName': lastName, 'firstNameNotLatin': firstNameNotLatin, 'lastNameNotLatin': lastNameNotLatin, 'birthday': JsonConverters.toJson(birthday,'DateTime',context!), 'email': email, 'canBeContacted': canBeContacted, 'language': language, 'nameSuffix': nameSuffix, 'gender': gender, 'middleName': middleName, 'countryId': countryId, 'phoneCountryId': phoneCountryId, 'prefixCountryId': prefixCountryId, 'phone': phone, 'posId': posId, 'brandTrigram': brandTrigram, 'weddingDate': JsonConverters.toJson(weddingDate,'DateTime',context!), 'street': street, 'houseNumber': houseNumber, 'city': city, 'postalCode': postalCode, 'region': region, 'street2': street2, 'street3': street3, 'street4': street4, 'street5': street5, 'salePersonId': salePersonId, 'privacyPolicyAcceptanceStorage': privacyPolicyAcceptanceStorage, 'allowStoreDataAbroad': allowStoreDataAbroad, 'tvPrivacyPolicyAcceptanceStorage': tvPrivacyPolicyAcceptanceStorage, 'tvAllowStoreDataAbroad': tvAllowStoreDataAbroad, 'contactByMail': contactByMail, 'contactByEmail': contactByEmail, 'contactByPhone': contactByPhone, 'contactBySMS': contactBySMS, 'contactBySocialMedia': contactBySocialMedia }); createResponse() => CreateCustomerResponse(); getResponseTypeName() => "CreateCustomerResponse"; getTypeName() => "CreateCustomerRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'qp_microservices_booster.richemont.com', types: { 'BaseRequest': TypeInfo(TypeOf.Class, create:() => BaseRequest()), 'IRequest': TypeInfo(TypeOf.Interface), 'BaseResponse': TypeInfo(TypeOf.Class, create:() => BaseResponse()), 'IRespose': TypeInfo(TypeOf.Interface), 'CreateCustomerResponse': TypeInfo(TypeOf.Class, create:() => CreateCustomerResponse()), 'CreateCustomerRequest': TypeInfo(TypeOf.Class, create:() => CreateCustomerRequest()), });