POST | /v1/DisplayStockOverview | Filter Display Stock vehicle data with usedCode and MBUKSecured |
---|
import 'package:servicestack/servicestack.dart';
class VehicleDisplayStock implements IConvertible
{
String? vin;
String? vehicleDescription;
String? commissionNumber;
String? retailer;
String? model;
String? fuelType;
String? transmission;
String? colour;
String? actualPrice;
DateTime? gbDestDate;
String? vehicleUsage;
bool? underOffer;
bool? isSellable;
String? vehicleType;
String? vid;
String? fin;
String? chassisNumber;
String? line;
String? modelYear;
String? modelYearCode;
String? vehicleClass;
String? retailPrice_ExVAT;
String? retailPrice_IncVAT;
String? otr;
String? bodyStyle;
String? productRange;
String? engine;
bool? isAMG;
String? colourGroup;
String? upholstery;
String? packages;
String? nst;
String? bM7NST;
String? acceleration;
String? bootCapacity;
String? topSpeed;
String? driveConcept;
String? combustionPowerHp;
String? electricPowerKw;
String? electricPowerHp;
String? combinedPowerKw;
String? combinedPowerHP;
String? electricRange;
String? electricConsumption;
String? emissionCombined;
String? emissionExtraUrban;
String? emissionUrban;
String? emission;
String? emissionDirective;
String? energyEfficiencyClass;
String? wltpCombined;
String? wltpLow;
String? wltpMedium;
String? wltpHigh;
String? wltpExtraHigh;
String? wltpEmissionCombined;
DateTime? portArrivalDate;
DateTime? creationDate;
DateTime? lastUpdated;
bool? isDisplayStock;
String? displayStockAgent;
bool? isSpecialistCar;
String? account;
String? location;
String? cesarIdShipToParty;
String? vehicleUsageCode;
bool? mbukSecured;
bool? isAllocatedToBackOrder;
String? backOrderReference;
String? marketAreaName;
int? marketAreaId;
String? daysAtSite;
VehicleDisplayStock({this.vin,this.vehicleDescription,this.commissionNumber,this.retailer,this.model,this.fuelType,this.transmission,this.colour,this.actualPrice,this.gbDestDate,this.vehicleUsage,this.underOffer,this.isSellable,this.vehicleType,this.vid,this.fin,this.chassisNumber,this.line,this.modelYear,this.modelYearCode,this.vehicleClass,this.retailPrice_ExVAT,this.retailPrice_IncVAT,this.otr,this.bodyStyle,this.productRange,this.engine,this.isAMG,this.colourGroup,this.upholstery,this.packages,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.emissionCombined,this.emissionExtraUrban,this.emissionUrban,this.emission,this.emissionDirective,this.energyEfficiencyClass,this.wltpCombined,this.wltpLow,this.wltpMedium,this.wltpHigh,this.wltpExtraHigh,this.wltpEmissionCombined,this.portArrivalDate,this.creationDate,this.lastUpdated,this.isDisplayStock,this.displayStockAgent,this.isSpecialistCar,this.account,this.location,this.cesarIdShipToParty,this.vehicleUsageCode,this.mbukSecured,this.isAllocatedToBackOrder,this.backOrderReference,this.marketAreaName,this.marketAreaId,this.daysAtSite});
VehicleDisplayStock.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
vin = json['vin'];
vehicleDescription = json['vehicleDescription'];
commissionNumber = json['commissionNumber'];
retailer = json['retailer'];
model = json['model'];
fuelType = json['fuelType'];
transmission = json['transmission'];
colour = json['colour'];
actualPrice = json['actualPrice'];
gbDestDate = JsonConverters.fromJson(json['gbDestDate'],'DateTime',context!);
vehicleUsage = json['vehicleUsage'];
underOffer = json['underOffer'];
isSellable = json['isSellable'];
vehicleType = json['vehicleType'];
vid = json['vid'];
fin = json['fin'];
chassisNumber = json['chassisNumber'];
line = json['line'];
modelYear = json['modelYear'];
modelYearCode = json['modelYearCode'];
vehicleClass = json['vehicleClass'];
retailPrice_ExVAT = json['retailPrice_ExVAT'];
retailPrice_IncVAT = json['retailPrice_IncVAT'];
otr = json['otr'];
bodyStyle = json['bodyStyle'];
productRange = json['productRange'];
engine = json['engine'];
isAMG = json['isAMG'];
colourGroup = json['colourGroup'];
upholstery = json['upholstery'];
packages = json['packages'];
nst = json['nst'];
bM7NST = json['bM7NST'];
acceleration = json['acceleration'];
bootCapacity = json['bootCapacity'];
topSpeed = json['topSpeed'];
driveConcept = json['driveConcept'];
combustionPowerHp = json['combustionPowerHp'];
electricPowerKw = json['electricPowerKw'];
electricPowerHp = json['electricPowerHp'];
combinedPowerKw = json['combinedPowerKw'];
combinedPowerHP = json['combinedPowerHP'];
electricRange = json['electricRange'];
electricConsumption = json['electricConsumption'];
emissionCombined = json['emissionCombined'];
emissionExtraUrban = json['emissionExtraUrban'];
emissionUrban = json['emissionUrban'];
emission = json['emission'];
emissionDirective = json['emissionDirective'];
energyEfficiencyClass = json['energyEfficiencyClass'];
wltpCombined = json['wltpCombined'];
wltpLow = json['wltpLow'];
wltpMedium = json['wltpMedium'];
wltpHigh = json['wltpHigh'];
wltpExtraHigh = json['wltpExtraHigh'];
wltpEmissionCombined = json['wltpEmissionCombined'];
portArrivalDate = JsonConverters.fromJson(json['portArrivalDate'],'DateTime',context!);
creationDate = JsonConverters.fromJson(json['creationDate'],'DateTime',context!);
lastUpdated = JsonConverters.fromJson(json['lastUpdated'],'DateTime',context!);
isDisplayStock = json['isDisplayStock'];
displayStockAgent = json['displayStockAgent'];
isSpecialistCar = json['isSpecialistCar'];
account = json['account'];
location = json['location'];
cesarIdShipToParty = json['cesarIdShipToParty'];
vehicleUsageCode = json['vehicleUsageCode'];
mbukSecured = json['mbukSecured'];
isAllocatedToBackOrder = json['isAllocatedToBackOrder'];
backOrderReference = json['backOrderReference'];
marketAreaName = json['marketAreaName'];
marketAreaId = json['marketAreaId'];
daysAtSite = json['daysAtSite'];
return this;
}
Map<String, dynamic> toJson() => {
'vin': vin,
'vehicleDescription': vehicleDescription,
'commissionNumber': commissionNumber,
'retailer': retailer,
'model': model,
'fuelType': fuelType,
'transmission': transmission,
'colour': colour,
'actualPrice': actualPrice,
'gbDestDate': JsonConverters.toJson(gbDestDate,'DateTime',context!),
'vehicleUsage': vehicleUsage,
'underOffer': underOffer,
'isSellable': isSellable,
'vehicleType': vehicleType,
'vid': vid,
'fin': fin,
'chassisNumber': chassisNumber,
'line': line,
'modelYear': modelYear,
'modelYearCode': modelYearCode,
'vehicleClass': vehicleClass,
'retailPrice_ExVAT': retailPrice_ExVAT,
'retailPrice_IncVAT': retailPrice_IncVAT,
'otr': otr,
'bodyStyle': bodyStyle,
'productRange': productRange,
'engine': engine,
'isAMG': isAMG,
'colourGroup': colourGroup,
'upholstery': upholstery,
'packages': packages,
'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,
'emissionCombined': emissionCombined,
'emissionExtraUrban': emissionExtraUrban,
'emissionUrban': emissionUrban,
'emission': emission,
'emissionDirective': emissionDirective,
'energyEfficiencyClass': energyEfficiencyClass,
'wltpCombined': wltpCombined,
'wltpLow': wltpLow,
'wltpMedium': wltpMedium,
'wltpHigh': wltpHigh,
'wltpExtraHigh': wltpExtraHigh,
'wltpEmissionCombined': wltpEmissionCombined,
'portArrivalDate': JsonConverters.toJson(portArrivalDate,'DateTime',context!),
'creationDate': JsonConverters.toJson(creationDate,'DateTime',context!),
'lastUpdated': JsonConverters.toJson(lastUpdated,'DateTime',context!),
'isDisplayStock': isDisplayStock,
'displayStockAgent': displayStockAgent,
'isSpecialistCar': isSpecialistCar,
'account': account,
'location': location,
'cesarIdShipToParty': cesarIdShipToParty,
'vehicleUsageCode': vehicleUsageCode,
'mbukSecured': mbukSecured,
'isAllocatedToBackOrder': isAllocatedToBackOrder,
'backOrderReference': backOrderReference,
'marketAreaName': marketAreaName,
'marketAreaId': marketAreaId,
'daysAtSite': daysAtSite
};
getTypeName() => "VehicleDisplayStock";
TypeContext? context = _ctx;
}
class DisplayStockOverviewResponse implements IConvertible
{
List<VehicleDisplayStock>? vehicles = [];
DisplayStockOverviewResponse({this.vehicles});
DisplayStockOverviewResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
vehicles = JsonConverters.fromJson(json['vehicles'],'List<VehicleDisplayStock>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'vehicles': JsonConverters.toJson(vehicles,'List<VehicleDisplayStock>',context!)
};
getTypeName() => "DisplayStockOverviewResponse";
TypeContext? context = _ctx;
}
class DisplayStockOverviewRequest implements IPost, IConvertible
{
/**
* Is vehicle secured
*/
// @ApiMember(Description="Is vehicle secured", IsRequired=true)
bool? isSecured;
/**
* Usage codes
*/
// @ApiMember(Description="Usage codes", IsRequired=true)
List<String>? usageCode = [];
DisplayStockOverviewRequest({this.isSecured,this.usageCode});
DisplayStockOverviewRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
isSecured = json['isSecured'];
usageCode = JsonConverters.fromJson(json['usageCode'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'isSecured': isSecured,
'usageCode': JsonConverters.toJson(usageCode,'List<String>',context!)
};
getTypeName() => "DisplayStockOverviewRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'uat_api_vehicle_mgt_mb_dhc.rapp_customers.co.uk', types: <String, TypeInfo> {
'VehicleDisplayStock': TypeInfo(TypeOf.Class, create:() => VehicleDisplayStock()),
'DisplayStockOverviewResponse': TypeInfo(TypeOf.Class, create:() => DisplayStockOverviewResponse()),
'List<VehicleDisplayStock>': TypeInfo(TypeOf.Class, create:() => <VehicleDisplayStock>[]),
'DisplayStockOverviewRequest': TypeInfo(TypeOf.Class, create:() => DisplayStockOverviewRequest()),
});
Dart DisplayStockOverviewRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/DisplayStockOverview HTTP/1.1
Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
isSecured: False,
usageCode:
[
String
]
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { vehicles: [ { vin: String, vehicleDescription: String, commissionNumber: String, retailer: String, model: String, fuelType: String, transmission: String, colour: String, actualPrice: String, gbDestDate: 0001-01-01, vehicleUsage: String, underOffer: False, isSellable: False, vehicleType: String, vid: String, fin: String, chassisNumber: String, line: String, modelYear: String, modelYearCode: String, vehicleClass: String, retailPrice_ExVAT: String, retailPrice_IncVAT: String, otr: String, bodyStyle: String, productRange: String, engine: String, isAMG: False, colourGroup: String, upholstery: String, packages: String, nst: String, bM7NST: String, acceleration: String, bootCapacity: String, topSpeed: String, driveConcept: String, combustionPowerHp: String, electricPowerKw: String, electricPowerHp: String, combinedPowerKw: String, combinedPowerHP: String, electricRange: String, electricConsumption: String, emissionCombined: String, emissionExtraUrban: String, emissionUrban: String, emission: String, emissionDirective: String, energyEfficiencyClass: String, wltpCombined: String, wltpLow: String, wltpMedium: String, wltpHigh: String, wltpExtraHigh: String, wltpEmissionCombined: String, portArrivalDate: 0001-01-01, creationDate: 0001-01-01, lastUpdated: 0001-01-01, isDisplayStock: False, displayStockAgent: String, isSpecialistCar: False, account: String, location: String, cesarIdShipToParty: String, vehicleUsageCode: String, mbukSecured: False, isAllocatedToBackOrder: False, backOrderReference: String, marketAreaName: String, marketAreaId: 0, daysAtSite: String } ] }