/* Options: Date: 2024-12-15 19:39:27 Version: 6.10 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://staging-api.billiecart.com.au //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: SearchAllEmployersRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class GetOperationUnTenanted implements IHasGetOptions, IGet { String? embed; GetOperationUnTenanted({this.embed}); GetOperationUnTenanted.fromJson(Map json) { fromMap(json); } fromMap(Map json) { embed = json['embed']; return this; } Map toJson() => { 'embed': embed }; getTypeName() => "GetOperationUnTenanted<$TResponse>"; TypeContext? context = _ctx; } abstract class IHasGetOptions { String? embed; } abstract class SearchOperationUnTenanted extends GetOperationUnTenanted implements IHasSearchOptions { String? distinct; int? limit; int? offset; String? sort; String? filter; String? search; SearchOperationUnTenanted({this.distinct,this.limit,this.offset,this.sort,this.filter,this.search}); SearchOperationUnTenanted.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); distinct = json['distinct']; limit = json['limit']; offset = json['offset']; sort = json['sort']; filter = json['filter']; search = json['search']; return this; } Map toJson() => super.toJson()..addAll({ 'distinct': distinct, 'limit': limit, 'offset': offset, 'sort': sort, 'filter': filter, 'search': search }); getTypeName() => "SearchOperationUnTenanted<$TResponse>"; TypeContext? context = _ctx; } abstract class IHasSearchOptions extends IHasGetOptions { int? limit; int? offset; String? sort; String? filter; String? search; } abstract class ITenantedRequest { String? organisationId; } abstract class SearchOperationTenanted extends SearchOperationUnTenanted implements ITenantedRequest { String? organisationId; SearchOperationTenanted({this.organisationId}); SearchOperationTenanted.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); organisationId = json['organisationId']; return this; } Map toJson() => super.toJson()..addAll({ 'organisationId': organisationId }); getTypeName() => "SearchOperationTenanted<$TResponse>"; TypeContext? context = _ctx; } enum SortDirection { Ascending, Descending, } class Sorting implements IConvertible { String? by; SortDirection? direction; Sorting({this.by,this.direction}); Sorting.fromJson(Map json) { fromMap(json); } fromMap(Map json) { by = json['by']; direction = JsonConverters.fromJson(json['direction'],'SortDirection',context!); return this; } Map toJson() => { 'by': by, 'direction': JsonConverters.toJson(direction,'SortDirection',context!) }; getTypeName() => "Sorting"; TypeContext? context = _ctx; } class Filtering implements IConvertible { List? fields; String? search; Filtering({this.fields,this.search}); Filtering.fromJson(Map json) { fromMap(json); } fromMap(Map json) { fields = JsonConverters.fromJson(json['fields'],'List',context!); search = json['search']; return this; } Map toJson() => { 'fields': JsonConverters.toJson(fields,'List',context!), 'search': search }; getTypeName() => "Filtering"; TypeContext? context = _ctx; } class SearchMetadata implements IConvertible { int? total; int? limit; int? offset; Sorting? sort; Filtering? filter; SearchMetadata({this.total,this.limit,this.offset,this.sort,this.filter}); SearchMetadata.fromJson(Map json) { fromMap(json); } fromMap(Map json) { total = json['total']; limit = json['limit']; offset = json['offset']; sort = JsonConverters.fromJson(json['sort'],'Sorting',context!); filter = JsonConverters.fromJson(json['filter'],'Filtering',context!); return this; } Map toJson() => { 'total': total, 'limit': limit, 'offset': offset, 'sort': JsonConverters.toJson(sort,'Sorting',context!), 'filter': JsonConverters.toJson(filter,'Filtering',context!) }; getTypeName() => "SearchMetadata"; TypeContext? context = _ctx; } class BusinessDetails implements IConvertible { String? tradingName; String? australianBusinessNumber; String? australianCompanyNumber; BusinessDetails({this.tradingName,this.australianBusinessNumber,this.australianCompanyNumber}); BusinessDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { tradingName = json['tradingName']; australianBusinessNumber = json['australianBusinessNumber']; australianCompanyNumber = json['australianCompanyNumber']; return this; } Map toJson() => { 'tradingName': tradingName, 'australianBusinessNumber': australianBusinessNumber, 'australianCompanyNumber': australianCompanyNumber }; getTypeName() => "BusinessDetails"; TypeContext? context = _ctx; } class Contact implements IConvertible { String? contactName; String? email; String? phoneNumber; String? preferredContactMethod; Contact({this.contactName,this.email,this.phoneNumber,this.preferredContactMethod}); Contact.fromJson(Map json) { fromMap(json); } fromMap(Map json) { contactName = json['contactName']; email = json['email']; phoneNumber = json['phoneNumber']; preferredContactMethod = json['preferredContactMethod']; return this; } Map toJson() => { 'contactName': contactName, 'email': email, 'phoneNumber': phoneNumber, 'preferredContactMethod': preferredContactMethod }; getTypeName() => "Contact"; TypeContext? context = _ctx; } class Address implements IConvertible { String? addressLine1; String? addressLine2; String? suburb; String? stateTerritory; String? postcode; Address({this.addressLine1,this.addressLine2,this.suburb,this.stateTerritory,this.postcode}); Address.fromJson(Map json) { fromMap(json); } fromMap(Map json) { addressLine1 = json['addressLine1']; addressLine2 = json['addressLine2']; suburb = json['suburb']; stateTerritory = json['stateTerritory']; postcode = json['postcode']; return this; } Map toJson() => { 'addressLine1': addressLine1, 'addressLine2': addressLine2, 'suburb': suburb, 'stateTerritory': stateTerritory, 'postcode': postcode }; getTypeName() => "Address"; TypeContext? context = _ctx; } class Employer implements IIdentifiableResource, IConvertible { String? name; BusinessDetails? businessDetails; Contact? contact; Address? postalAddress; Address? physicalAddress; String? id; Employer({this.name,this.businessDetails,this.contact,this.postalAddress,this.physicalAddress,this.id}); Employer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { name = json['name']; businessDetails = JsonConverters.fromJson(json['businessDetails'],'BusinessDetails',context!); contact = JsonConverters.fromJson(json['contact'],'Contact',context!); postalAddress = JsonConverters.fromJson(json['postalAddress'],'Address',context!); physicalAddress = JsonConverters.fromJson(json['physicalAddress'],'Address',context!); id = json['id']; return this; } Map toJson() => { 'name': name, 'businessDetails': JsonConverters.toJson(businessDetails,'BusinessDetails',context!), 'contact': JsonConverters.toJson(contact,'Contact',context!), 'postalAddress': JsonConverters.toJson(postalAddress,'Address',context!), 'physicalAddress': JsonConverters.toJson(physicalAddress,'Address',context!), 'id': id }; getTypeName() => "Employer"; TypeContext? context = _ctx; } abstract class IIdentifiableResource { String? id; } class SearchAllEmployersResponse implements IConvertible { ResponseStatus? responseStatus; List? employers; SearchMetadata? metadata; SearchAllEmployersResponse({this.responseStatus,this.employers,this.metadata}); SearchAllEmployersResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!); employers = JsonConverters.fromJson(json['employers'],'List',context!); metadata = JsonConverters.fromJson(json['metadata'],'SearchMetadata',context!); return this; } Map toJson() => { 'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!), 'employers': JsonConverters.toJson(employers,'List',context!), 'metadata': JsonConverters.toJson(metadata,'SearchMetadata',context!) }; getTypeName() => "SearchAllEmployersResponse"; TypeContext? context = _ctx; } // @Route("/employers", "GET") class SearchAllEmployersRequest extends SearchOperationTenanted implements IReturn, IConvertible { SearchAllEmployersRequest(); SearchAllEmployersRequest.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); createResponse() => SearchAllEmployersResponse(); getResponseTypeName() => "SearchAllEmployersResponse"; getTypeName() => "SearchAllEmployersRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'staging_api.billiecart.com.au', types: { 'GetOperationUnTenanted': TypeInfo(TypeOf.AbstractClass), 'IHasGetOptions': TypeInfo(TypeOf.Interface), 'SearchOperationUnTenanted': TypeInfo(TypeOf.AbstractClass), 'IHasSearchOptions': TypeInfo(TypeOf.Interface), 'ITenantedRequest': TypeInfo(TypeOf.Interface), 'SearchOperationTenanted': TypeInfo(TypeOf.AbstractClass), 'SortDirection': TypeInfo(TypeOf.Enum, enumValues:SortDirection.values), 'Sorting': TypeInfo(TypeOf.Class, create:() => Sorting()), 'Filtering': TypeInfo(TypeOf.Class, create:() => Filtering()), 'SearchMetadata': TypeInfo(TypeOf.Class, create:() => SearchMetadata()), 'BusinessDetails': TypeInfo(TypeOf.Class, create:() => BusinessDetails()), 'Contact': TypeInfo(TypeOf.Class, create:() => Contact()), 'Address': TypeInfo(TypeOf.Class, create:() => Address()), 'Employer': TypeInfo(TypeOf.Class, create:() => Employer()), 'IIdentifiableResource': TypeInfo(TypeOf.Interface), 'SearchAllEmployersResponse': TypeInfo(TypeOf.Class, create:() => SearchAllEmployersResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SearchAllEmployersRequest': TypeInfo(TypeOf.Class, create:() => SearchAllEmployersRequest()), });