/* Options: Date: 2024-09-19 22:47:53 Version: 8.30 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://initiation-api.sirva.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: TransfereeInitiationRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class CustomField implements IConvertible { /** * Custom field name */ // @ApiMember(Description="Custom field name", IsRequired=true) String? fieldName; /** * Custom field value */ // @ApiMember(Description="Custom field value") String? fieldValue; CustomField({this.fieldName,this.fieldValue}); CustomField.fromJson(Map json) { fromMap(json); } fromMap(Map json) { fieldName = json['fieldName']; fieldValue = json['fieldValue']; return this; } Map toJson() => { 'fieldName': fieldName, 'fieldValue': fieldValue }; getTypeName() => "CustomField"; TypeContext? context = _ctx; } class Location implements IConvertible { String? title; String? city; String? stateCode; String? countryCode; Location({this.title,this.city,this.stateCode,this.countryCode}); Location.fromJson(Map json) { fromMap(json); } fromMap(Map json) { title = json['title']; city = json['city']; stateCode = json['stateCode']; countryCode = json['countryCode']; return this; } Map toJson() => { 'title': title, 'city': city, 'stateCode': stateCode, 'countryCode': countryCode }; getTypeName() => "Location"; TypeContext? context = _ctx; } class Address extends Location implements IConvertible { String? line1; String? line2; String? line3; String? postalCode; Address({this.line1,this.line2,this.line3,this.postalCode}); Address.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); line1 = json['line1']; line2 = json['line2']; line3 = json['line3']; postalCode = json['postalCode']; return this; } Map toJson() => super.toJson()..addAll({ 'line1': line1, 'line2': line2, 'line3': line3, 'postalCode': postalCode }); getTypeName() => "Address"; TypeContext? context = _ctx; } enum MaritalStatus { Single, Married, DomesticPartner, Divorcee, Defacto, Other, Separated, Interdependent, Widowed, Divorced, } enum HomeOwnerStatus { Homeowner, Renter, } class SpousePartner implements IConvertible { String? firstName; String? lastName; DateTime? birthDate; SpousePartner({this.firstName,this.lastName,this.birthDate}); SpousePartner.fromJson(Map json) { fromMap(json); } fromMap(Map json) { firstName = json['firstName']; lastName = json['lastName']; birthDate = JsonConverters.fromJson(json['birthDate'],'DateTime',context!); return this; } Map toJson() => { 'firstName': firstName, 'lastName': lastName, 'birthDate': JsonConverters.toJson(birthDate,'DateTime',context!) }; getTypeName() => "SpousePartner"; TypeContext? context = _ctx; } enum DependentAssigneeRelationship { Child, Other, } class Dependent implements IConvertible { String? firstName; String? lastName; DateTime? birthDate; // @ApiMember(IsRequired=true, Name="RelationshipToAssignee") DependentAssigneeRelationship? relationshipToAssignee; Dependent({this.firstName,this.lastName,this.birthDate,this.relationshipToAssignee}); Dependent.fromJson(Map json) { fromMap(json); } fromMap(Map json) { firstName = json['firstName']; lastName = json['lastName']; birthDate = JsonConverters.fromJson(json['birthDate'],'DateTime',context!); relationshipToAssignee = JsonConverters.fromJson(json['relationshipToAssignee'],'DependentAssigneeRelationship',context!); return this; } Map toJson() => { 'firstName': firstName, 'lastName': lastName, 'birthDate': JsonConverters.toJson(birthDate,'DateTime',context!), 'relationshipToAssignee': JsonConverters.toJson(relationshipToAssignee,'DependentAssigneeRelationship',context!) }; getTypeName() => "Dependent"; TypeContext? context = _ctx; } class TransfereeInitiation implements IConvertible { /** * Client ID */ // @ApiMember(Description="Client ID") String? clientId; /** * External ID. This must be unique to the intiation's parent client */ // @ApiMember(Description="External ID. This must be unique to the intiation's parent client", IsRequired=true) String? externalId; /** * Transferee first name */ // @ApiMember(Description="Transferee first name", IsRequired=true) String? firstName; /** * Transferee last name */ // @ApiMember(Description="Transferee last name", IsRequired=true) String? lastName; /** * Assignment type */ // @ApiMember(Description="Assignment type") String? assignmentType; /** * Is this transferee pre-decision */ // @ApiMember(Description="Is this transferee pre-decision") bool? preDecision; /** * Is this transferee a VIP */ // @ApiMember(Description="Is this transferee a VIP") bool? vip; /** * Custom fields */ // @ApiMember(Description="Custom fields") List? customFields; /** * Employee ID */ // @ApiMember(Description="Employee ID") String? employeeId; /** * Start date */ // @ApiMember(Description="Start date") DateTime? startDate; /** * End date */ // @ApiMember(Description="End date") DateTime? endDate; /** * Origin work location */ // @ApiMember(Description="Origin work location", IsRequired=true) Location? originWorkLocation; /** * Origin home address */ // @ApiMember(Description="Origin home address", IsRequired=true) Address? originHomeAddress; /** * Destination work location */ // @ApiMember(Description="Destination work location", IsRequired=true) Location? destinationWorkLocation; /** * Repat */ // @ApiMember(Description="Repat") String? repat; /** * Repat From City */ // @ApiMember(Description="Repat From City") String? repatFromCity; /** * Repat From State code */ // @ApiMember(Description="Repat From State code") String? repatFromStateCode; /** * Repat From Country Code */ // @ApiMember(Description="Repat From Country Code") String? repatFromCountryCode; /** * Repat To City */ // @ApiMember(Description="Repat To City") String? repatToCity; /** * Repat To State Code */ // @ApiMember(Description="Repat To State Code") String? repatToStateCode; /** * Repat To Country Code */ // @ApiMember(Description="Repat To Country Code") String? repatToCountryCode; /** * Transferee citizenship country */ // @ApiMember(Description="Transferee citizenship country") String? citizenshipCountry; /** * Transferee dual citizenship country */ // @ApiMember(Description="Transferee dual citizenship country") String? dualCitizenshipCountry; /** * Policy */ // @ApiMember(Description="Policy", IsRequired=true) String? policy; /** * Job title */ // @ApiMember(Description="Job title") String? jobTitle; /** * Marital status */ // @ApiMember(Description="Marital status", Name="MaritalStatus") MaritalStatus? maritalStatus; /** * Pay grade */ // @ApiMember(Description="Pay grade") String? payGrade; /** * Assignment family size */ // @ApiMember(Description="Assignment family size") int? assignmentFamilySize; /** * Home owner status */ // @ApiMember(Description="Home owner status", Name="HomeOwnerStatus") HomeOwnerStatus? homeOwnerStatus; /** * Line of business */ // @ApiMember(Description="Line of business", IsRequired=true) String? lineOfBusiness; /** * HostCurrency */ // @ApiMember(Description="HostCurrency") String? hostCurrency; /** * ServiceLevel */ // @ApiMember(Description="ServiceLevel") String? serviceLevel; /** * CompanyCodePrimary */ // @ApiMember(Description="CompanyCodePrimary") String? companyCodePrimary; /** * CompanyCodeSecondary */ // @ApiMember(Description="CompanyCodeSecondary") String? companyCodeSecondary; /** * CostCenterPrimary */ // @ApiMember(Description="CostCenterPrimary") String? costCenterPrimary; /** * CostCenterSecondary */ // @ApiMember(Description="CostCenterSecondary") String? costCenterSecondary; /** * CostCenterTertiary */ // @ApiMember(Description="CostCenterTertiary") String? costCenterTertiary; /** * Is the assignment confidential */ // @ApiMember(Description="Is the assignment confidential") bool? confidential; /** * Special Instructions */ // @ApiMember(Description="Special Instructions") String? specialInstructions; /** * Destination entity legal name */ // @ApiMember(Description="Destination entity legal name") String? destinationEntityLegalName; /** * Transferee mobile phone number */ // @ApiMember(Description="Transferee mobile phone number", IsRequired=true) String? mobilePhoneNumber; /** * Transferee work phone number */ // @ApiMember(Description="Transferee work phone number") String? workPhoneNumber; /** * Transferee home phone number */ // @ApiMember(Description="Transferee home phone number") String? homePhoneNumber; /** * Transferee primary email */ // @ApiMember(Description="Transferee primary email", IsRequired=true) String? primaryEmail; /** * Transferee secondary email */ // @ApiMember(Description="Transferee secondary email") String? secondaryEmail; /** * HR Contact First Name */ // @ApiMember(Description="HR Contact First Name") String? hrContactFirstName; /** * HR Contact Last Name */ // @ApiMember(Description="HR Contact Last Name") String? hrContactLastName; /** * HR contact full name */ // @ApiMember(Description="HR contact full name") String? hrContactFullName; /** * Transferee annual salary */ // @ApiMember(Description="Transferee annual salary") String? annualSalary; /** * Transferee spouse/partner */ // @ApiMember(Description="Transferee spouse/partner") SpousePartner? spousePartner; /** * Transferee dependents */ // @ApiMember(Description="Transferee dependents") List? dependents; /** * Assignment Services */ // @ApiMember(Description="Assignment Services") List? services; /** * Relocation Status */ // @ApiMember(Description="Relocation Status") String? relocationStatus; /** * Cancel */ // @ApiMember(Description="Cancel") String? cancel; TransfereeInitiation({this.clientId,this.externalId,this.firstName,this.lastName,this.assignmentType,this.preDecision,this.vip,this.customFields,this.employeeId,this.startDate,this.endDate,this.originWorkLocation,this.originHomeAddress,this.destinationWorkLocation,this.repat,this.repatFromCity,this.repatFromStateCode,this.repatFromCountryCode,this.repatToCity,this.repatToStateCode,this.repatToCountryCode,this.citizenshipCountry,this.dualCitizenshipCountry,this.policy,this.jobTitle,this.maritalStatus,this.payGrade,this.assignmentFamilySize,this.homeOwnerStatus,this.lineOfBusiness,this.hostCurrency,this.serviceLevel,this.companyCodePrimary,this.companyCodeSecondary,this.costCenterPrimary,this.costCenterSecondary,this.costCenterTertiary,this.confidential,this.specialInstructions,this.destinationEntityLegalName,this.mobilePhoneNumber,this.workPhoneNumber,this.homePhoneNumber,this.primaryEmail,this.secondaryEmail,this.hrContactFirstName,this.hrContactLastName,this.hrContactFullName,this.annualSalary,this.spousePartner,this.dependents,this.services,this.relocationStatus,this.cancel}); TransfereeInitiation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { clientId = json['clientId']; externalId = json['externalId']; firstName = json['firstName']; lastName = json['lastName']; assignmentType = json['assignmentType']; preDecision = json['preDecision']; vip = json['vip']; customFields = JsonConverters.fromJson(json['customFields'],'List',context!); employeeId = json['employeeId']; startDate = JsonConverters.fromJson(json['startDate'],'DateTime',context!); endDate = JsonConverters.fromJson(json['endDate'],'DateTime',context!); originWorkLocation = JsonConverters.fromJson(json['originWorkLocation'],'Location',context!); originHomeAddress = JsonConverters.fromJson(json['originHomeAddress'],'Address',context!); destinationWorkLocation = JsonConverters.fromJson(json['destinationWorkLocation'],'Location',context!); repat = json['repat']; repatFromCity = json['repatFromCity']; repatFromStateCode = json['repatFromStateCode']; repatFromCountryCode = json['repatFromCountryCode']; repatToCity = json['repatToCity']; repatToStateCode = json['repatToStateCode']; repatToCountryCode = json['repatToCountryCode']; citizenshipCountry = json['citizenshipCountry']; dualCitizenshipCountry = json['dualCitizenshipCountry']; policy = json['policy']; jobTitle = json['jobTitle']; maritalStatus = JsonConverters.fromJson(json['maritalStatus'],'MaritalStatus',context!); payGrade = json['payGrade']; assignmentFamilySize = json['assignmentFamilySize']; homeOwnerStatus = JsonConverters.fromJson(json['homeOwnerStatus'],'HomeOwnerStatus',context!); lineOfBusiness = json['lineOfBusiness']; hostCurrency = json['hostCurrency']; serviceLevel = json['serviceLevel']; companyCodePrimary = json['companyCodePrimary']; companyCodeSecondary = json['companyCodeSecondary']; costCenterPrimary = json['costCenterPrimary']; costCenterSecondary = json['costCenterSecondary']; costCenterTertiary = json['costCenterTertiary']; confidential = json['confidential']; specialInstructions = json['specialInstructions']; destinationEntityLegalName = json['destinationEntityLegalName']; mobilePhoneNumber = json['mobilePhoneNumber']; workPhoneNumber = json['workPhoneNumber']; homePhoneNumber = json['homePhoneNumber']; primaryEmail = json['primaryEmail']; secondaryEmail = json['secondaryEmail']; hrContactFirstName = json['hrContactFirstName']; hrContactLastName = json['hrContactLastName']; hrContactFullName = json['hrContactFullName']; annualSalary = json['annualSalary']; spousePartner = JsonConverters.fromJson(json['spousePartner'],'SpousePartner',context!); dependents = JsonConverters.fromJson(json['dependents'],'List',context!); services = JsonConverters.fromJson(json['services'],'List',context!); relocationStatus = json['relocationStatus']; cancel = json['cancel']; return this; } Map toJson() => { 'clientId': clientId, 'externalId': externalId, 'firstName': firstName, 'lastName': lastName, 'assignmentType': assignmentType, 'preDecision': preDecision, 'vip': vip, 'customFields': JsonConverters.toJson(customFields,'List',context!), 'employeeId': employeeId, 'startDate': JsonConverters.toJson(startDate,'DateTime',context!), 'endDate': JsonConverters.toJson(endDate,'DateTime',context!), 'originWorkLocation': JsonConverters.toJson(originWorkLocation,'Location',context!), 'originHomeAddress': JsonConverters.toJson(originHomeAddress,'Address',context!), 'destinationWorkLocation': JsonConverters.toJson(destinationWorkLocation,'Location',context!), 'repat': repat, 'repatFromCity': repatFromCity, 'repatFromStateCode': repatFromStateCode, 'repatFromCountryCode': repatFromCountryCode, 'repatToCity': repatToCity, 'repatToStateCode': repatToStateCode, 'repatToCountryCode': repatToCountryCode, 'citizenshipCountry': citizenshipCountry, 'dualCitizenshipCountry': dualCitizenshipCountry, 'policy': policy, 'jobTitle': jobTitle, 'maritalStatus': JsonConverters.toJson(maritalStatus,'MaritalStatus',context!), 'payGrade': payGrade, 'assignmentFamilySize': assignmentFamilySize, 'homeOwnerStatus': JsonConverters.toJson(homeOwnerStatus,'HomeOwnerStatus',context!), 'lineOfBusiness': lineOfBusiness, 'hostCurrency': hostCurrency, 'serviceLevel': serviceLevel, 'companyCodePrimary': companyCodePrimary, 'companyCodeSecondary': companyCodeSecondary, 'costCenterPrimary': costCenterPrimary, 'costCenterSecondary': costCenterSecondary, 'costCenterTertiary': costCenterTertiary, 'confidential': confidential, 'specialInstructions': specialInstructions, 'destinationEntityLegalName': destinationEntityLegalName, 'mobilePhoneNumber': mobilePhoneNumber, 'workPhoneNumber': workPhoneNumber, 'homePhoneNumber': homePhoneNumber, 'primaryEmail': primaryEmail, 'secondaryEmail': secondaryEmail, 'hrContactFirstName': hrContactFirstName, 'hrContactLastName': hrContactLastName, 'hrContactFullName': hrContactFullName, 'annualSalary': annualSalary, 'spousePartner': JsonConverters.toJson(spousePartner,'SpousePartner',context!), 'dependents': JsonConverters.toJson(dependents,'List',context!), 'services': JsonConverters.toJson(services,'List',context!), 'relocationStatus': relocationStatus, 'cancel': cancel }; getTypeName() => "TransfereeInitiation"; TypeContext? context = _ctx; } abstract class IRequireClientScoped { } class TransfereeInitiationResponse implements IConvertible { ResponseStatus? responseStatus; TransfereeInitiationResponse({this.responseStatus}); TransfereeInitiationResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!); return this; } Map toJson() => { 'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!) }; getTypeName() => "TransfereeInitiationResponse"; TypeContext? context = _ctx; } // @Route("/Initiation/Transferee", "POST") class TransfereeInitiationRequest implements IReturn, IRequireClientScoped, IPost, IConvertible { /** * Transferee initiation info needed for creation. */ // @ApiMember(Description="Transferee initiation info needed for creation.", IsRequired=true, ParameterType="body") TransfereeInitiation? initiationInfo; TransfereeInitiationRequest({this.initiationInfo}); TransfereeInitiationRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { initiationInfo = JsonConverters.fromJson(json['initiationInfo'],'TransfereeInitiation',context!); return this; } Map toJson() => { 'initiationInfo': JsonConverters.toJson(initiationInfo,'TransfereeInitiation',context!) }; createResponse() => TransfereeInitiationResponse(); getResponseTypeName() => "TransfereeInitiationResponse"; getTypeName() => "TransfereeInitiationRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'initiation_api.sirva.com', types: { 'CustomField': TypeInfo(TypeOf.Class, create:() => CustomField()), 'Location': TypeInfo(TypeOf.Class, create:() => Location()), 'Address': TypeInfo(TypeOf.Class, create:() => Address()), 'MaritalStatus': TypeInfo(TypeOf.Enum, enumValues:MaritalStatus.values), 'HomeOwnerStatus': TypeInfo(TypeOf.Enum, enumValues:HomeOwnerStatus.values), 'SpousePartner': TypeInfo(TypeOf.Class, create:() => SpousePartner()), 'DependentAssigneeRelationship': TypeInfo(TypeOf.Enum, enumValues:DependentAssigneeRelationship.values), 'Dependent': TypeInfo(TypeOf.Class, create:() => Dependent()), 'TransfereeInitiation': TypeInfo(TypeOf.Class, create:() => TransfereeInitiation()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Service': TypeInfo(TypeOf.Class, create:() => Service()), 'IRequireClientScoped': TypeInfo(TypeOf.Interface), 'TransfereeInitiationResponse': TypeInfo(TypeOf.Class, create:() => TransfereeInitiationResponse()), 'TransfereeInitiationRequest': TypeInfo(TypeOf.Class, create:() => TransfereeInitiationRequest()), });