| GET | /v1/AllAvailableVehiclesCsv/{vehicleType}/{includeBackOrderAccounts} | Get all available vehicles |
|---|
import 'package:servicestack/servicestack.dart';
abstract class BaseAllAvailableVehiclesRequest
{
String vehicleType = "";
bool? includeBackOrderAccounts;
BaseAllAvailableVehiclesRequest({this.vehicleType="",this.includeBackOrderAccounts});
BaseAllAvailableVehiclesRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
vehicleType = json['vehicleType'] ?? "";
includeBackOrderAccounts = json['includeBackOrderAccounts'];
return this;
}
Map<String, dynamic> 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<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> 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<String, dynamic> 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<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> 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<String, dynamic> 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<BackOrderVehicle>? vehicles;
StockManagementResponse({this.totalVehicles=0,this.vehicles});
StockManagementResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
totalVehicles = json['totalVehicles'] ?? 0;
vehicles = JsonConverters.fromJson(json['vehicles'],'List<BackOrderVehicle>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'totalVehicles': totalVehicles,
'vehicles': JsonConverters.toJson(vehicles,'List<BackOrderVehicle>',context!)
};
getTypeName() => "StockManagementResponse";
TypeContext? context = _ctx;
}
class AllAvailableVehiclesCsvRequest extends BaseAllAvailableVehiclesRequest implements IGet, IConvertible
{
AllAvailableVehiclesCsvRequest();
AllAvailableVehiclesCsvRequest.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "AllAvailableVehiclesCsvRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'uat_api_vehicle_mgt_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
'BaseAllAvailableVehiclesRequest': TypeInfo(TypeOf.AbstractClass),
'BasicBackOrderVehicle': TypeInfo(TypeOf.Class, create:() => BasicBackOrderVehicle()),
'BackOrderVehicle': TypeInfo(TypeOf.Class, create:() => BackOrderVehicle()),
'StockManagementResponse': TypeInfo(TypeOf.Class, create:() => StockManagementResponse()),
'List<BackOrderVehicle>': TypeInfo(TypeOf.Class, create:() => <BackOrderVehicle>[]),
'AllAvailableVehiclesCsvRequest': TypeInfo(TypeOf.Class, create:() => AllAvailableVehiclesCsvRequest()),
});
Dart AllAvailableVehiclesCsvRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/AllAvailableVehiclesCsv/{vehicleType}/{includeBackOrderAccounts} HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: text/csv
HTTP/1.1 200 OK
Content-Type: text/csv
Content-Length: length
{"totalVehicles":0}