/* Options: Date: 2024-12-15 19:41: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: SearchAllAvailableCarsRequest.* //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; } abstract class SearchOperationResponse { SearchMetadata? metadata; SearchOperationResponse({this.metadata}); SearchOperationResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { metadata = JsonConverters.fromJson(json['metadata'],'SearchMetadata',context!); return this; } Map toJson() => { 'metadata': JsonConverters.toJson(metadata,'SearchMetadata',context!) }; getTypeName() => "SearchOperationResponse"; TypeContext? context = _ctx; } class CarManufacturer implements IConvertible { int? year; String? make; String? model; CarManufacturer({this.year,this.make,this.model}); CarManufacturer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { year = json['year']; make = json['make']; model = json['model']; return this; } Map toJson() => { 'year': year, 'make': make, 'model': model }; getTypeName() => "CarManufacturer"; TypeContext? context = _ctx; } class CarLicensePlate implements IConvertible { String? jurisdiction; String? number; CarLicensePlate({this.jurisdiction,this.number}); CarLicensePlate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { jurisdiction = json['jurisdiction']; number = json['number']; return this; } Map toJson() => { 'jurisdiction': jurisdiction, 'number': number }; getTypeName() => "CarLicensePlate"; TypeContext? context = _ctx; } class CarOwner implements IConvertible { String? id; CarOwner({this.id}); CarOwner.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; return this; } Map toJson() => { 'id': id }; getTypeName() => "CarOwner"; TypeContext? context = _ctx; } class CarManager implements IConvertible { String? id; CarManager({this.id}); CarManager.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; return this; } Map toJson() => { 'id': id }; getTypeName() => "CarManager"; TypeContext? context = _ctx; } class Car implements IIdentifiableResource, IConvertible { CarManufacturer? manufacturer; CarLicensePlate? plate; CarOwner? owner; List? managers; String? status; bool? altered; String? id; Car({this.manufacturer,this.plate,this.owner,this.managers,this.status,this.altered,this.id}); Car.fromJson(Map json) { fromMap(json); } fromMap(Map json) { manufacturer = JsonConverters.fromJson(json['manufacturer'],'CarManufacturer',context!); plate = JsonConverters.fromJson(json['plate'],'CarLicensePlate',context!); owner = JsonConverters.fromJson(json['owner'],'CarOwner',context!); managers = JsonConverters.fromJson(json['managers'],'List',context!); status = json['status']; altered = json['altered']; id = json['id']; return this; } Map toJson() => { 'manufacturer': JsonConverters.toJson(manufacturer,'CarManufacturer',context!), 'plate': JsonConverters.toJson(plate,'CarLicensePlate',context!), 'owner': JsonConverters.toJson(owner,'CarOwner',context!), 'managers': JsonConverters.toJson(managers,'List',context!), 'status': status, 'altered': altered, 'id': id }; getTypeName() => "Car"; TypeContext? context = _ctx; } abstract class IIdentifiableResource { String? id; } class SearchAllAvailableCarsResponse extends SearchOperationResponse implements IConvertible { ResponseStatus? responseStatus; List? cars; SearchAllAvailableCarsResponse({this.responseStatus,this.cars}); SearchAllAvailableCarsResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); responseStatus = JsonConverters.fromJson(json['responseStatus'],'ResponseStatus',context!); cars = JsonConverters.fromJson(json['cars'],'List',context!); return this; } Map toJson() => super.toJson()..addAll({ 'responseStatus': JsonConverters.toJson(responseStatus,'ResponseStatus',context!), 'cars': JsonConverters.toJson(cars,'List',context!) }); getTypeName() => "SearchAllAvailableCarsResponse"; TypeContext? context = _ctx; } // @Route("/cars/available", "GET") class SearchAllAvailableCarsRequest extends SearchOperationTenanted implements IReturn, IConvertible { DateTime? fromUtc; DateTime? toUtc; SearchAllAvailableCarsRequest({this.fromUtc,this.toUtc}); SearchAllAvailableCarsRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); fromUtc = JsonConverters.fromJson(json['fromUtc'],'DateTime',context!); toUtc = JsonConverters.fromJson(json['toUtc'],'DateTime',context!); return this; } Map toJson() => super.toJson()..addAll({ 'fromUtc': JsonConverters.toJson(fromUtc,'DateTime',context!), 'toUtc': JsonConverters.toJson(toUtc,'DateTime',context!) }); createResponse() => SearchAllAvailableCarsResponse(); getResponseTypeName() => "SearchAllAvailableCarsResponse"; getTypeName() => "SearchAllAvailableCarsRequest"; 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()), 'SearchOperationResponse': TypeInfo(TypeOf.AbstractClass), 'CarManufacturer': TypeInfo(TypeOf.Class, create:() => CarManufacturer()), 'CarLicensePlate': TypeInfo(TypeOf.Class, create:() => CarLicensePlate()), 'CarOwner': TypeInfo(TypeOf.Class, create:() => CarOwner()), 'CarManager': TypeInfo(TypeOf.Class, create:() => CarManager()), 'Car': TypeInfo(TypeOf.Class, create:() => Car()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'IIdentifiableResource': TypeInfo(TypeOf.Interface), 'SearchAllAvailableCarsResponse': TypeInfo(TypeOf.Class, create:() => SearchAllAvailableCarsResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SearchAllAvailableCarsRequest': TypeInfo(TypeOf.Class, create:() => SearchAllAvailableCarsRequest()), });