/* Options: Date: 2026-09-11 19:16:01 Version: 10.08 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: StockManagementRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class Sort implements IConvertible { int id = 0; Sort({this.id=0}); Sort.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id'] ?? 0; return this; } Map toJson() => { 'id': id }; getTypeName() => "Sort"; TypeContext? context = _ctx; } class Paging implements IConvertible { int resultsPerPage = 0; int pageIndex = 0; Paging({this.resultsPerPage=0,this.pageIndex=0}); Paging.fromJson(Map json) { fromMap(json); } fromMap(Map json) { resultsPerPage = json['resultsPerPage'] ?? 0; pageIndex = json['pageIndex'] ?? 0; return this; } Map toJson() => { 'resultsPerPage': resultsPerPage, 'pageIndex': pageIndex }; getTypeName() => "Paging"; TypeContext? context = _ctx; } class CampaignExclusion implements IConvertible { List vin = []; List commissionNumber = []; String modelYearCode = ""; String equipmentCode = ""; List gssn = []; CampaignExclusion({this.vin=const [],this.commissionNumber=const [],this.modelYearCode="",this.equipmentCode="",this.gssn=const []}); CampaignExclusion.fromJson(Map json) { fromMap(json); } fromMap(Map json) { vin = JsonConverters.fromJson(json['vin'],'List',context!) ?? []; commissionNumber = JsonConverters.fromJson(json['commissionNumber'],'List',context!) ?? []; modelYearCode = json['modelYearCode'] ?? ""; equipmentCode = json['equipmentCode'] ?? ""; gssn = JsonConverters.fromJson(json['gssn'],'List',context!) ?? []; return this; } Map toJson() => { 'vin': JsonConverters.toJson(vin,'List',context!), 'commissionNumber': JsonConverters.toJson(commissionNumber,'List',context!), 'modelYearCode': modelYearCode, 'equipmentCode': equipmentCode, 'gssn': JsonConverters.toJson(gssn,'List',context!) }; getTypeName() => "CampaignExclusion"; TypeContext? context = _ctx; } class RegistrationDate implements IConvertible { DateTime? from; DateTime? to; RegistrationDate({this.from,this.to}); RegistrationDate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { from = JsonConverters.fromJson(json['from'],'DateTime',context!) ?? DateTime(0); to = JsonConverters.fromJson(json['to'],'DateTime',context!) ?? DateTime(0); return this; } Map toJson() => { 'from': JsonConverters.toJson(from,'DateTime',context!), 'to': JsonConverters.toJson(to,'DateTime',context!) }; getTypeName() => "RegistrationDate"; TypeContext? context = _ctx; } class Age implements IConvertible { DateTime? date; int min = 0; int max = 0; bool? includePipelineStock; Age({this.date,this.min=0,this.max=0,this.includePipelineStock}); Age.fromJson(Map json) { fromMap(json); } fromMap(Map json) { date = JsonConverters.fromJson(json['date'],'DateTime',context!) ?? DateTime(0); min = json['min'] ?? 0; max = json['max'] ?? 0; includePipelineStock = json['includePipelineStock']; return this; } Map toJson() => { 'date': JsonConverters.toJson(date,'DateTime',context!), 'min': min, 'max': max, 'includePipelineStock': includePipelineStock }; getTypeName() => "Age"; TypeContext? context = _ctx; } class PortArrivalDate implements IConvertible { bool? pipelineStock; DateTime? from; DateTime? to; PortArrivalDate({this.pipelineStock,this.from,this.to}); PortArrivalDate.fromJson(Map json) { fromMap(json); } fromMap(Map json) { pipelineStock = json['pipelineStock']; from = JsonConverters.fromJson(json['from'],'DateTime',context!) ?? DateTime(0); to = JsonConverters.fromJson(json['to'],'DateTime',context!) ?? DateTime(0); return this; } Map toJson() => { 'pipelineStock': pipelineStock, 'from': JsonConverters.toJson(from,'DateTime',context!), 'to': JsonConverters.toJson(to,'DateTime',context!) }; getTypeName() => "PortArrivalDate"; TypeContext? context = _ctx; } class VehicleSearchV3Criteria implements IConvertible { List vin = []; List model = []; List fuel = []; List transmission = []; List engine = []; List line = []; List mappedLine = []; List commissionNumber = []; String vehicleType = ""; CampaignExclusion? exclusion; String regNo = ""; bool? includeOffline; RegistrationDate? registrationDate; Age? age; PortArrivalDate? portArrivalDate; bool? isAvailableOnline; bool? isBackOrdered; bool? isSellable; bool? isUnderOffer; bool? mbukSecured; List account = []; List baumuster = []; List colours = []; List upholstery = []; List package = []; List nst = []; List usageCode = []; VehicleSearchV3Criteria({this.vin=const [],this.model=const [],this.fuel=const [],this.transmission=const [],this.engine=const [],this.line=const [],this.mappedLine=const [],this.commissionNumber=const [],this.vehicleType="",this.exclusion,this.regNo="",this.includeOffline,this.registrationDate,this.age,this.portArrivalDate,this.isAvailableOnline,this.isBackOrdered,this.isSellable,this.isUnderOffer,this.mbukSecured,this.account=const [],this.baumuster=const [],this.colours=const [],this.upholstery=const [],this.package=const [],this.nst=const [],this.usageCode=const []}); VehicleSearchV3Criteria.fromJson(Map json) { fromMap(json); } fromMap(Map json) { vin = JsonConverters.fromJson(json['vin'],'List',context!) ?? []; model = JsonConverters.fromJson(json['model'],'List',context!) ?? []; fuel = JsonConverters.fromJson(json['fuel'],'List',context!) ?? []; transmission = JsonConverters.fromJson(json['transmission'],'List',context!) ?? []; engine = JsonConverters.fromJson(json['engine'],'List',context!) ?? []; line = JsonConverters.fromJson(json['line'],'List',context!) ?? []; mappedLine = JsonConverters.fromJson(json['mappedLine'],'List',context!) ?? []; commissionNumber = JsonConverters.fromJson(json['commissionNumber'],'List',context!) ?? []; vehicleType = json['vehicleType'] ?? ""; exclusion = JsonConverters.fromJson(json['exclusion'],'CampaignExclusion',context!); regNo = json['regNo'] ?? ""; includeOffline = json['includeOffline']; registrationDate = JsonConverters.fromJson(json['registrationDate'],'RegistrationDate',context!); age = JsonConverters.fromJson(json['age'],'Age',context!); portArrivalDate = JsonConverters.fromJson(json['portArrivalDate'],'PortArrivalDate',context!); isAvailableOnline = json['isAvailableOnline']; isBackOrdered = json['isBackOrdered']; isSellable = json['isSellable']; isUnderOffer = json['isUnderOffer']; mbukSecured = json['mbukSecured']; account = JsonConverters.fromJson(json['account'],'List',context!) ?? []; baumuster = JsonConverters.fromJson(json['baumuster'],'List',context!) ?? []; colours = JsonConverters.fromJson(json['colours'],'List',context!) ?? []; upholstery = JsonConverters.fromJson(json['upholstery'],'List',context!) ?? []; package = JsonConverters.fromJson(json['package'],'List',context!) ?? []; nst = JsonConverters.fromJson(json['nst'],'List',context!) ?? []; usageCode = JsonConverters.fromJson(json['usageCode'],'List',context!) ?? []; return this; } Map toJson() => { 'vin': JsonConverters.toJson(vin,'List',context!), 'model': JsonConverters.toJson(model,'List',context!), 'fuel': JsonConverters.toJson(fuel,'List',context!), 'transmission': JsonConverters.toJson(transmission,'List',context!), 'engine': JsonConverters.toJson(engine,'List',context!), 'line': JsonConverters.toJson(line,'List',context!), 'mappedLine': JsonConverters.toJson(mappedLine,'List',context!), 'commissionNumber': JsonConverters.toJson(commissionNumber,'List',context!), 'vehicleType': vehicleType, 'exclusion': JsonConverters.toJson(exclusion,'CampaignExclusion',context!), 'regNo': regNo, 'includeOffline': includeOffline, 'registrationDate': JsonConverters.toJson(registrationDate,'RegistrationDate',context!), 'age': JsonConverters.toJson(age,'Age',context!), 'portArrivalDate': JsonConverters.toJson(portArrivalDate,'PortArrivalDate',context!), 'isAvailableOnline': isAvailableOnline, 'isBackOrdered': isBackOrdered, 'isSellable': isSellable, 'isUnderOffer': isUnderOffer, 'mbukSecured': mbukSecured, 'account': JsonConverters.toJson(account,'List',context!), 'baumuster': JsonConverters.toJson(baumuster,'List',context!), 'colours': JsonConverters.toJson(colours,'List',context!), 'upholstery': JsonConverters.toJson(upholstery,'List',context!), 'package': JsonConverters.toJson(package,'List',context!), 'nst': JsonConverters.toJson(nst,'List',context!), 'usageCode': JsonConverters.toJson(usageCode,'List',context!) }; getTypeName() => "VehicleSearchV3Criteria"; TypeContext? context = _ctx; } class BasicBackOrderVehicle implements IConvertible { String commissionNumber = ""; String description = ""; String model = ""; String colour = ""; String fuelType = ""; String transmission = ""; String packages = ""; String lines = ""; String upholstery = ""; String emissionCombined = ""; double actualPrice = 0; String usageCode = ""; bool? secured; String account = ""; String? securedTime; String? securedReason; String? securedByGasId; DateTime? securedDate; DateTime? confirmedProductionDate; DateTime? forecastedArrivalDate; BasicBackOrderVehicle({this.commissionNumber="",this.description="",this.model="",this.colour="",this.fuelType="",this.transmission="",this.packages="",this.lines="",this.upholstery="",this.emissionCombined="",this.actualPrice=0,this.usageCode="",this.secured,this.account="",this.securedTime,this.securedReason,this.securedByGasId,this.securedDate,this.confirmedProductionDate,this.forecastedArrivalDate}); BasicBackOrderVehicle.fromJson(Map json) { fromMap(json); } fromMap(Map json) { commissionNumber = json['commissionNumber'] ?? ""; description = json['description'] ?? ""; model = json['model'] ?? ""; colour = json['colour'] ?? ""; fuelType = json['fuelType'] ?? ""; transmission = json['transmission'] ?? ""; packages = json['packages'] ?? ""; lines = json['lines'] ?? ""; upholstery = json['upholstery'] ?? ""; emissionCombined = json['emissionCombined'] ?? ""; actualPrice = JsonConverters.toDouble(json['actualPrice']) ?? 0; usageCode = json['usageCode'] ?? ""; secured = json['secured']; account = json['account'] ?? ""; securedTime = json['securedTime']; securedReason = json['securedReason']; securedByGasId = json['securedByGasId']; securedDate = JsonConverters.fromJson(json['securedDate'],'DateTime',context!); confirmedProductionDate = JsonConverters.fromJson(json['confirmedProductionDate'],'DateTime',context!); forecastedArrivalDate = JsonConverters.fromJson(json['forecastedArrivalDate'],'DateTime',context!); return this; } Map toJson() => { 'commissionNumber': commissionNumber, 'description': description, 'model': model, 'colour': colour, 'fuelType': fuelType, 'transmission': transmission, 'packages': packages, 'lines': lines, 'upholstery': upholstery, 'emissionCombined': emissionCombined, 'actualPrice': actualPrice, 'usageCode': usageCode, 'secured': secured, 'account': account, 'securedTime': securedTime, 'securedReason': securedReason, 'securedByGasId': securedByGasId, 'securedDate': JsonConverters.toJson(securedDate,'DateTime',context!), 'confirmedProductionDate': JsonConverters.toJson(confirmedProductionDate,'DateTime',context!), 'forecastedArrivalDate': JsonConverters.toJson(forecastedArrivalDate,'DateTime',context!) }; getTypeName() => "BasicBackOrderVehicle"; TypeContext? context = _ctx; } class BackOrderVehicle extends BasicBackOrderVehicle implements IConvertible { int id = 0; String vin = ""; String vehicleType = ""; String vid = ""; String fin = ""; String chassisNumber = ""; String modelYear = ""; String modelYearCode = ""; String halfModelYearCode = ""; String fullModelYearCode = ""; String salesDescriptionLong = ""; String vehicleClass = ""; double retailPrice_ExVAT = 0; double retailPrice_IncVAT = 0; double otr = 0; String bodyStyle = ""; String productRange = ""; String engine = ""; bool? isAMG; String colourGroup = ""; String upholsteryCode = ""; String nst = ""; String bm7NST = ""; double? acceleration; int? bootCapacity; double? topSpeed; String driveConcept = ""; double? combustionPowerHp; double? electricPowerKw; double? electricPowerHp; double? combinedPowerKw; double? combinedPowerHP; double? electricRange; double? electricConsumption; double? emission; String emissionDirective = ""; String emissionExtraUrban = ""; String emissionUrban = ""; String energyEfficiencyClass = ""; String wltpEmissionCombined = ""; String wltpCombined = ""; String wltpLow = ""; String wltpMedium = ""; String wltpHigh = ""; String wltpExtraHigh = ""; DateTime? portArrivalDate; DateTime? creationDate; DateTime? lastUpdated; bool? isDisplayStock; String displayStockAgent = ""; bool? isSpecialistCar; String location = ""; String cesarIdShipToParty = ""; bool? isSellable; bool? underOffer; String baumuster = ""; BackOrderVehicle({this.id=0,this.vin="",this.vehicleType="",this.vid="",this.fin="",this.chassisNumber="",this.modelYear="",this.modelYearCode="",this.halfModelYearCode="",this.fullModelYearCode="",this.salesDescriptionLong="",this.vehicleClass="",this.retailPrice_ExVAT=0,this.retailPrice_IncVAT=0,this.otr=0,this.bodyStyle="",this.productRange="",this.engine="",this.isAMG,this.colourGroup="",this.upholsteryCode="",this.nst="",this.bm7NST="",this.acceleration,this.bootCapacity,this.topSpeed,this.driveConcept="",this.combustionPowerHp,this.electricPowerKw,this.electricPowerHp,this.combinedPowerKw,this.combinedPowerHP,this.electricRange,this.electricConsumption,this.emission,this.emissionDirective="",this.emissionExtraUrban="",this.emissionUrban="",this.energyEfficiencyClass="",this.wltpEmissionCombined="",this.wltpCombined="",this.wltpLow="",this.wltpMedium="",this.wltpHigh="",this.wltpExtraHigh="",this.portArrivalDate,this.creationDate,this.lastUpdated,this.isDisplayStock,this.displayStockAgent="",this.isSpecialistCar,this.location="",this.cesarIdShipToParty="",this.isSellable,this.underOffer,this.baumuster=""}); BackOrderVehicle.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); id = json['id'] ?? 0; vin = json['vin'] ?? ""; vehicleType = json['vehicleType'] ?? ""; vid = json['vid'] ?? ""; fin = json['fin'] ?? ""; chassisNumber = json['chassisNumber'] ?? ""; modelYear = json['modelYear'] ?? ""; modelYearCode = json['modelYearCode'] ?? ""; halfModelYearCode = json['halfModelYearCode'] ?? ""; fullModelYearCode = json['fullModelYearCode'] ?? ""; salesDescriptionLong = json['salesDescriptionLong'] ?? ""; vehicleClass = json['vehicleClass'] ?? ""; retailPrice_ExVAT = JsonConverters.toDouble(json['retailPrice_ExVAT']) ?? 0; retailPrice_IncVAT = JsonConverters.toDouble(json['retailPrice_IncVAT']) ?? 0; otr = JsonConverters.toDouble(json['otr']) ?? 0; bodyStyle = json['bodyStyle'] ?? ""; productRange = json['productRange'] ?? ""; engine = json['engine'] ?? ""; isAMG = json['isAMG']; colourGroup = json['colourGroup'] ?? ""; upholsteryCode = json['upholsteryCode'] ?? ""; nst = json['nst'] ?? ""; bm7NST = json['bm7NST'] ?? ""; acceleration = JsonConverters.toDouble(json['acceleration']); bootCapacity = json['bootCapacity']; topSpeed = JsonConverters.toDouble(json['topSpeed']); driveConcept = json['driveConcept'] ?? ""; combustionPowerHp = JsonConverters.toDouble(json['combustionPowerHp']); electricPowerKw = JsonConverters.toDouble(json['electricPowerKw']); electricPowerHp = JsonConverters.toDouble(json['electricPowerHp']); combinedPowerKw = JsonConverters.toDouble(json['combinedPowerKw']); combinedPowerHP = JsonConverters.toDouble(json['combinedPowerHP']); electricRange = JsonConverters.toDouble(json['electricRange']); electricConsumption = JsonConverters.toDouble(json['electricConsumption']); emission = JsonConverters.toDouble(json['emission']); emissionDirective = json['emissionDirective'] ?? ""; emissionExtraUrban = json['emissionExtraUrban'] ?? ""; emissionUrban = json['emissionUrban'] ?? ""; energyEfficiencyClass = json['energyEfficiencyClass'] ?? ""; wltpEmissionCombined = json['wltpEmissionCombined'] ?? ""; wltpCombined = json['wltpCombined'] ?? ""; wltpLow = json['wltpLow'] ?? ""; wltpMedium = json['wltpMedium'] ?? ""; wltpHigh = json['wltpHigh'] ?? ""; wltpExtraHigh = json['wltpExtraHigh'] ?? ""; portArrivalDate = JsonConverters.fromJson(json['portArrivalDate'],'DateTime',context!); creationDate = JsonConverters.fromJson(json['creationDate'],'DateTime',context!) ?? DateTime(0); lastUpdated = JsonConverters.fromJson(json['lastUpdated'],'DateTime',context!); isDisplayStock = json['isDisplayStock']; displayStockAgent = json['displayStockAgent'] ?? ""; isSpecialistCar = json['isSpecialistCar']; location = json['location'] ?? ""; cesarIdShipToParty = json['cesarIdShipToParty'] ?? ""; isSellable = json['isSellable']; underOffer = json['underOffer']; baumuster = json['baumuster'] ?? ""; return this; } Map toJson() => super.toJson()..addAll({ 'id': id, 'vin': vin, 'vehicleType': vehicleType, 'vid': vid, 'fin': fin, 'chassisNumber': chassisNumber, 'modelYear': modelYear, 'modelYearCode': modelYearCode, 'halfModelYearCode': halfModelYearCode, 'fullModelYearCode': fullModelYearCode, 'salesDescriptionLong': salesDescriptionLong, 'vehicleClass': vehicleClass, 'retailPrice_ExVAT': retailPrice_ExVAT, 'retailPrice_IncVAT': retailPrice_IncVAT, 'otr': otr, 'bodyStyle': bodyStyle, 'productRange': productRange, 'engine': engine, 'isAMG': isAMG, 'colourGroup': colourGroup, 'upholsteryCode': upholsteryCode, 'nst': nst, 'bm7NST': bm7NST, 'acceleration': acceleration, 'bootCapacity': bootCapacity, 'topSpeed': topSpeed, 'driveConcept': driveConcept, 'combustionPowerHp': combustionPowerHp, 'electricPowerKw': electricPowerKw, 'electricPowerHp': electricPowerHp, 'combinedPowerKw': combinedPowerKw, 'combinedPowerHP': combinedPowerHP, 'electricRange': electricRange, 'electricConsumption': electricConsumption, 'emission': emission, 'emissionDirective': emissionDirective, 'emissionExtraUrban': emissionExtraUrban, 'emissionUrban': emissionUrban, 'energyEfficiencyClass': energyEfficiencyClass, 'wltpEmissionCombined': wltpEmissionCombined, 'wltpCombined': wltpCombined, 'wltpLow': wltpLow, 'wltpMedium': wltpMedium, 'wltpHigh': wltpHigh, 'wltpExtraHigh': wltpExtraHigh, 'portArrivalDate': JsonConverters.toJson(portArrivalDate,'DateTime',context!), 'creationDate': JsonConverters.toJson(creationDate,'DateTime',context!), 'lastUpdated': JsonConverters.toJson(lastUpdated,'DateTime',context!), 'isDisplayStock': isDisplayStock, 'displayStockAgent': displayStockAgent, 'isSpecialistCar': isSpecialistCar, 'location': location, 'cesarIdShipToParty': cesarIdShipToParty, 'isSellable': isSellable, 'underOffer': underOffer, 'baumuster': baumuster }); getTypeName() => "BackOrderVehicle"; TypeContext? context = _ctx; } class StockManagementResponse implements IConvertible { int totalVehicles = 0; List? vehicles; StockManagementResponse({this.totalVehicles=0,this.vehicles}); StockManagementResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { totalVehicles = json['totalVehicles'] ?? 0; vehicles = JsonConverters.fromJson(json['vehicles'],'List',context!); return this; } Map toJson() => { 'totalVehicles': totalVehicles, 'vehicles': JsonConverters.toJson(vehicles,'List',context!) }; getTypeName() => "StockManagementResponse"; TypeContext? context = _ctx; } // @Route("/v1/StockManagement", "POST") class StockManagementRequest implements IReturn, IPost, IConvertible { Sort? sort; Paging? paging; VehicleSearchV3Criteria? criteria; StockManagementRequest({this.sort,this.paging,this.criteria}); StockManagementRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { sort = JsonConverters.fromJson(json['sort'],'Sort',context!); paging = JsonConverters.fromJson(json['paging'],'Paging',context!); criteria = JsonConverters.fromJson(json['criteria'],'VehicleSearchV3Criteria',context!); return this; } Map toJson() => { 'sort': JsonConverters.toJson(sort,'Sort',context!), 'paging': JsonConverters.toJson(paging,'Paging',context!), 'criteria': JsonConverters.toJson(criteria,'VehicleSearchV3Criteria',context!) }; createResponse() => StockManagementResponse(); getResponseTypeName() => "StockManagementResponse"; getTypeName() => "StockManagementRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'uat_api_vehicle_mgt_mb_dhc.rapp_customers.co.uk', types: { 'Sort': TypeInfo(TypeOf.Class, create:() => Sort()), 'Paging': TypeInfo(TypeOf.Class, create:() => Paging()), 'CampaignExclusion': TypeInfo(TypeOf.Class, create:() => CampaignExclusion()), 'RegistrationDate': TypeInfo(TypeOf.Class, create:() => RegistrationDate()), 'Age': TypeInfo(TypeOf.Class, create:() => Age()), 'PortArrivalDate': TypeInfo(TypeOf.Class, create:() => PortArrivalDate()), 'VehicleSearchV3Criteria': TypeInfo(TypeOf.Class, create:() => VehicleSearchV3Criteria()), 'BasicBackOrderVehicle': TypeInfo(TypeOf.Class, create:() => BasicBackOrderVehicle()), 'BackOrderVehicle': TypeInfo(TypeOf.Class, create:() => BackOrderVehicle()), 'StockManagementResponse': TypeInfo(TypeOf.Class, create:() => StockManagementResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'StockManagementRequest': TypeInfo(TypeOf.Class, create:() => StockManagementRequest()), });