/* Options: Date: 2024-05-15 20:55:00 Version: 6.50 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://www.clubready.com/api/current //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: UserAccountRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum RestrictedResourceType { Store, Chain, User, Undefined, } abstract class IRestrictedApiRequest extends IApiKeyEndpoint { int? RestrictedId; RestrictedResourceType? RestrictedResourceType; } abstract class IApiKeyEndpoint { String? ApiKey; } class ApiDtoBase implements IConvertible { String? ApiKey; int? StoreId; int? ChainId; ApiDtoBase({this.ApiKey,this.StoreId,this.ChainId}); ApiDtoBase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ApiKey = json['ApiKey']; StoreId = json['StoreId']; ChainId = json['ChainId']; return this; } Map toJson() => { 'ApiKey': ApiKey, 'StoreId': StoreId, 'ChainId': ChainId }; getTypeName() => "ApiDtoBase"; TypeContext? context = _ctx; } class UserAccountRequestDto extends ApiDtoBase implements IConvertible { int? UserId; String? FirstName; String? LastName; String? HomePhone; String? CellPhone; String? Address1; String? City; String? State; String? Zip; String? Email; String? Gender; DateTime? DateOfBirth; String? Username; String? ExternalId; String? EmergencyContactName; String? EmergencyContactPhone; String? EmergencyContactType; int? ProspectTypeId; UserAccountRequestDto({this.UserId,this.FirstName,this.LastName,this.HomePhone,this.CellPhone,this.Address1,this.City,this.State,this.Zip,this.Email,this.Gender,this.DateOfBirth,this.Username,this.ExternalId,this.EmergencyContactName,this.EmergencyContactPhone,this.EmergencyContactType,this.ProspectTypeId}); UserAccountRequestDto.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); UserId = json['UserId']; FirstName = json['FirstName']; LastName = json['LastName']; HomePhone = json['HomePhone']; CellPhone = json['CellPhone']; Address1 = json['Address1']; City = json['City']; State = json['State']; Zip = json['Zip']; Email = json['Email']; Gender = json['Gender']; DateOfBirth = JsonConverters.fromJson(json['DateOfBirth'],'DateTime',context!); Username = json['Username']; ExternalId = json['ExternalId']; EmergencyContactName = json['EmergencyContactName']; EmergencyContactPhone = json['EmergencyContactPhone']; EmergencyContactType = json['EmergencyContactType']; ProspectTypeId = json['ProspectTypeId']; return this; } Map toJson() => super.toJson()..addAll({ 'UserId': UserId, 'FirstName': FirstName, 'LastName': LastName, 'HomePhone': HomePhone, 'CellPhone': CellPhone, 'Address1': Address1, 'City': City, 'State': State, 'Zip': Zip, 'Email': Email, 'Gender': Gender, 'DateOfBirth': JsonConverters.toJson(DateOfBirth,'DateTime',context!), 'Username': Username, 'ExternalId': ExternalId, 'EmergencyContactName': EmergencyContactName, 'EmergencyContactPhone': EmergencyContactPhone, 'EmergencyContactType': EmergencyContactType, 'ProspectTypeId': ProspectTypeId }); getTypeName() => "UserAccountRequestDto"; TypeContext? context = _ctx; } // @Route("/users/{UserId}", "PUT") class UserAccountRequest extends UserAccountRequestDto implements IRestrictedApiRequest, IConvertible { /** * Api Key - grants access to resources */ // @ApiMember(DataType="string", Description="Api Key - grants access to resources", IsRequired=true, Name="ApiKey", ParameterType="query") String? ApiKey; /** * */ // @ApiMember(DataType="integer", Description="", IsRequired=true, Name="UserId", ParameterType="query") int? UserId; /** * StoreId OR ChainId is required */ // @ApiMember(DataType="integer", Description="StoreId OR ChainId is required", Name="StoreId", ParameterType="query") int? StoreId; /** * StoreId OR ChainId is required */ // @ApiMember(DataType="integer", Description="StoreId OR ChainId is required", Name="ChainId", ParameterType="query") int? ChainId; /** * */ // @ApiMember(DataType="string", Description="", Name="FirstName", ParameterType="query") String? FirstName; /** * */ // @ApiMember(DataType="string", Description="", Name="LastName", ParameterType="query") String? LastName; /** * */ // @ApiMember(DataType="string", Description="", Name="HomePhone", ParameterType="query") String? HomePhone; /** * */ // @ApiMember(DataType="string", Description="", Name="CellPhone", ParameterType="query") String? CellPhone; /** * */ // @ApiMember(DataType="string", Description="", Name="Address1", ParameterType="query") String? Address1; /** * */ // @ApiMember(DataType="string", Description="", Name="City", ParameterType="query") String? City; /** * (Format:2 characters; Example:'MO') */ // @ApiMember(DataType="string", Description="(Format:2 characters; Example:'MO')", Name="State", ParameterType="query") String? State; /** * */ // @ApiMember(DataType="string", Description="", Name="Zip", ParameterType="query") String? Zip; /** * */ // @ApiMember(DataType="string", Description="", Name="Email", ParameterType="query") String? Email; /** * Gender (Format:'M'|'F') */ // @ApiMember(DataType="string", Description="Gender (Format:'M'|'F')", Name="Gender", ParameterType="query") String? Gender; /** * Date of Birth (Format:YYYY-MM-DD) */ // @ApiMember(DataType="date", Description="Date of Birth (Format:YYYY-MM-DD)", Name="DateOfBirth", ParameterType="query") DateTime? DateOfBirth; /** * Username should be between 4 and 255 characters long */ // @ApiMember(DataType="string", Description="Username should be between 4 and 255 characters long", Name="Username", ParameterType="query") String? Username; /** * Unique ID for the user from your system. We store internally as ExternalUserId */ // @ApiMember(DataType="string", Description="Unique ID for the user from your system. We store internally as ExternalUserId", Name="ExternalId", ParameterType="query") String? ExternalId; /** * Emergency contact name */ // @ApiMember(DataType="string", Description="Emergency contact name", Name="EmergencyContactName", ParameterType="query") String? EmergencyContactName; /** * Emergency contact phone number */ // @ApiMember(DataType="string", Description="Emergency contact phone number", Name="EmergencyContactPhone", ParameterType="query") String? EmergencyContactPhone; /** * Emergency contact relationship */ // @ApiMember(DataType="string", Description="Emergency contact relationship", Name="EmergencyContactType", ParameterType="query") String? EmergencyContactType; /** * Prospect Type Id */ // @ApiMember(DataType="integer", Description="Prospect Type Id", Name="ProspectTypeId", ParameterType="query") int? ProspectTypeId; int? RestrictedId; RestrictedResourceType? RestrictedResourceType; UserAccountRequest({this.ApiKey,this.UserId,this.StoreId,this.ChainId,this.FirstName,this.LastName,this.HomePhone,this.CellPhone,this.Address1,this.City,this.State,this.Zip,this.Email,this.Gender,this.DateOfBirth,this.Username,this.ExternalId,this.EmergencyContactName,this.EmergencyContactPhone,this.EmergencyContactType,this.ProspectTypeId,this.RestrictedId,this.RestrictedResourceType}); UserAccountRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); ApiKey = json['ApiKey']; UserId = json['UserId']; StoreId = json['StoreId']; ChainId = json['ChainId']; FirstName = json['FirstName']; LastName = json['LastName']; HomePhone = json['HomePhone']; CellPhone = json['CellPhone']; Address1 = json['Address1']; City = json['City']; State = json['State']; Zip = json['Zip']; Email = json['Email']; Gender = json['Gender']; DateOfBirth = JsonConverters.fromJson(json['DateOfBirth'],'DateTime',context!); Username = json['Username']; ExternalId = json['ExternalId']; EmergencyContactName = json['EmergencyContactName']; EmergencyContactPhone = json['EmergencyContactPhone']; EmergencyContactType = json['EmergencyContactType']; ProspectTypeId = json['ProspectTypeId']; RestrictedId = json['RestrictedId']; RestrictedResourceType = JsonConverters.fromJson(json['RestrictedResourceType'],'RestrictedResourceType',context!); return this; } Map toJson() => super.toJson()..addAll({ 'ApiKey': ApiKey, 'UserId': UserId, 'StoreId': StoreId, 'ChainId': ChainId, 'FirstName': FirstName, 'LastName': LastName, 'HomePhone': HomePhone, 'CellPhone': CellPhone, 'Address1': Address1, 'City': City, 'State': State, 'Zip': Zip, 'Email': Email, 'Gender': Gender, 'DateOfBirth': JsonConverters.toJson(DateOfBirth,'DateTime',context!), 'Username': Username, 'ExternalId': ExternalId, 'EmergencyContactName': EmergencyContactName, 'EmergencyContactPhone': EmergencyContactPhone, 'EmergencyContactType': EmergencyContactType, 'ProspectTypeId': ProspectTypeId, 'RestrictedId': RestrictedId, 'RestrictedResourceType': JsonConverters.toJson(RestrictedResourceType,'RestrictedResourceType',context!) }); getTypeName() => "UserAccountRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'www.clubready.com', types: { 'RestrictedResourceType': TypeInfo(TypeOf.Enum, enumValues:RestrictedResourceType.values), 'IRestrictedApiRequest': TypeInfo(TypeOf.Interface), 'IApiKeyEndpoint': TypeInfo(TypeOf.Interface), 'ApiDtoBase': TypeInfo(TypeOf.Class, create:() => ApiDtoBase()), 'UserAccountRequestDto': TypeInfo(TypeOf.Class, create:() => UserAccountRequestDto()), 'UserAccountRequest': TypeInfo(TypeOf.Class, create:() => UserAccountRequest()), });