/* Options: Date: 2026-09-11 19:00:37 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: AllAvailableVehiclesRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class BaseAllAvailableVehiclesRequest { String vehicleType = ""; bool? includeBackOrderAccounts; BaseAllAvailableVehiclesRequest({this.vehicleType="",this.includeBackOrderAccounts}); BaseAllAvailableVehiclesRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { vehicleType = json['vehicleType'] ?? ""; includeBackOrderAccounts = json['includeBackOrderAccounts']; return this; } Map toJson() => { 'vehicleType': vehicleType, 'includeBackOrderAccounts': includeBackOrderAccounts }; getTypeName() => "BaseAllAvailableVehiclesRequest"; 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/AllAvailableVehicles/{vehicleType}/{includeBackOrderAccounts}", "GET") class AllAvailableVehiclesRequest extends BaseAllAvailableVehiclesRequest implements IReturn, IGet, IConvertible { AllAvailableVehiclesRequest(); AllAvailableVehiclesRequest.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); createResponse() => StockManagementResponse(); getResponseTypeName() => "StockManagementResponse"; getTypeName() => "AllAvailableVehiclesRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'uat_api_vehicle_mgt_mb_dhc.rapp_customers.co.uk', types: { 'BaseAllAvailableVehiclesRequest': TypeInfo(TypeOf.AbstractClass), 'BasicBackOrderVehicle': TypeInfo(TypeOf.Class, create:() => BasicBackOrderVehicle()), 'BackOrderVehicle': TypeInfo(TypeOf.Class, create:() => BackOrderVehicle()), 'StockManagementResponse': TypeInfo(TypeOf.Class, create:() => StockManagementResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'AllAvailableVehiclesRequest': TypeInfo(TypeOf.Class, create:() => AllAvailableVehiclesRequest()), });