GET | /v1/backorder/match/{Guid} | Get Back Order Matches by Guid |
---|
<?php namespace dtos;
use DateTime;
use Exception;
use DateInterval;
use JsonSerializable;
use ServiceStack\{IReturn,IReturnVoid,IGet,IPost,IPut,IDelete,IPatch,IMeta,IHasSessionId,IHasBearerToken,IHasVersion};
use ServiceStack\{ICrud,ICreateDb,IUpdateDb,IPatchDb,IDeleteDb,ISaveDb,AuditBase,QueryDb,QueryDb2,QueryData,QueryData2,QueryResponse};
use ServiceStack\{ResponseStatus,ResponseError,EmptyResponse,IdResponse,ArrayList,KeyValuePair2,StringResponse,StringsResponse,Tuple2,Tuple3,ByteArray};
use ServiceStack\{JsonConverters,Returns,TypeContext};
class GetBackOrderMatchRequest implements JsonSerializable
{
public function __construct(
/** @var string */
public string $Guid=''
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Guid'])) $this->Guid = $o['Guid'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Guid)) $o['Guid'] = $this->Guid;
return empty($o) ? new class(){} : $o;
}
}
class Vehicle implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $Vin=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Vin'])) $this->Vin = $o['Vin'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Vin)) $o['Vin'] = $this->Vin;
return empty($o) ? new class(){} : $o;
}
}
class VehicleCriteriaMatch implements JsonSerializable
{
public function __construct(
/** @var bool|null */
public ?bool $Fuel=null,
/** @var bool|null */
public ?bool $Transmission=null,
/** @var bool|null */
public ?bool $Colour=null,
/** @var bool|null */
public ?bool $Upholstery=null,
/** @var bool|null */
public ?bool $Line=null,
/** @var bool|null */
public ?bool $Engine=null,
/** @var bool|null */
public ?bool $BodyStyle=null,
/** @var bool|null */
public ?bool $Packages=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Fuel'])) $this->Fuel = $o['Fuel'];
if (isset($o['Transmission'])) $this->Transmission = $o['Transmission'];
if (isset($o['Colour'])) $this->Colour = $o['Colour'];
if (isset($o['Upholstery'])) $this->Upholstery = $o['Upholstery'];
if (isset($o['Line'])) $this->Line = $o['Line'];
if (isset($o['Engine'])) $this->Engine = $o['Engine'];
if (isset($o['BodyStyle'])) $this->BodyStyle = $o['BodyStyle'];
if (isset($o['Packages'])) $this->Packages = $o['Packages'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Fuel)) $o['Fuel'] = $this->Fuel;
if (isset($this->Transmission)) $o['Transmission'] = $this->Transmission;
if (isset($this->Colour)) $o['Colour'] = $this->Colour;
if (isset($this->Upholstery)) $o['Upholstery'] = $this->Upholstery;
if (isset($this->Line)) $o['Line'] = $this->Line;
if (isset($this->Engine)) $o['Engine'] = $this->Engine;
if (isset($this->BodyStyle)) $o['BodyStyle'] = $this->BodyStyle;
if (isset($this->Packages)) $o['Packages'] = $this->Packages;
return empty($o) ? new class(){} : $o;
}
}
enum OfferPriceProductType : string
{
case LIST_PRICE = 'LIST_PRICE';
case NUMBER_PLATE_FEE = 'NUMBER_PLATE_FEE';
case DELIVERY_CHARGE = 'DELIVERY_CHARGE';
case FUEL_CHARGE = 'FUEL_CHARGE';
case MANUFACTURER_OFFER = 'MANUFACTURER_OFFER';
case PERSONALISED_MONEYOFFER = 'PERSONALISED_MONEYOFFER';
case PERSONALISED_NONMONEYOFFER = 'PERSONALISED_NONMONEYOFFER';
case PERSONALISED_NONMONEYOFFER_NEG = 'PERSONALISED_NONMONEYOFFER_NEG';
case SERVICE = 'SERVICE';
case SERVICE_NEG = 'SERVICE_NEG';
case GOVERNMENT_GRANT = 'GOVERNMENT_GRANT';
case OUTRIGHT_PURCHASE_DISCOUNT = 'OUTRIGHT_PURCHASE_DISCOUNT';
case VIP_OFFER = 'VIP_OFFER';
case WALLBOX_OFFER = 'WALLBOX_OFFER';
case WALLBOX_OFFER_NEG = 'WALLBOX_OFFER_NEG';
case ROAD_FUND_LICENCE = 'ROAD_FUND_LICENCE';
case FIRST_REGISTRATION_FEE = 'FIRST_REGISTRATION_FEE';
case NOT_FOUND = 'NOT_FOUND';
case ACCESSORY_OFFER = 'ACCESSORY_OFFER';
case ACCESSORY_OFFER_NEG = 'ACCESSORY_OFFER_NEG';
case MOTABILITY_DISCOUNT = 'MOTABILITY_DISCOUNT';
}
class Price implements JsonSerializable
{
public function __construct(
/** @var string */
public string $Id='',
/** @var string */
public string $Description='',
/** @var float */
public float $Net=0.0,
/** @var float */
public float $VAT=0.0,
/** @var float */
public float $Gross=0.0,
/** @var OfferPriceProductType|null */
public ?OfferPriceProductType $Product=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Id'])) $this->Id = $o['Id'];
if (isset($o['Description'])) $this->Description = $o['Description'];
if (isset($o['Net'])) $this->Net = $o['Net'];
if (isset($o['VAT'])) $this->VAT = $o['VAT'];
if (isset($o['Gross'])) $this->Gross = $o['Gross'];
if (isset($o['Product'])) $this->Product = JsonConverters::from('OfferPriceProductType', $o['Product']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Id)) $o['Id'] = $this->Id;
if (isset($this->Description)) $o['Description'] = $this->Description;
if (isset($this->Net)) $o['Net'] = $this->Net;
if (isset($this->VAT)) $o['VAT'] = $this->VAT;
if (isset($this->Gross)) $o['Gross'] = $this->Gross;
if (isset($this->Product)) $o['Product'] = JsonConverters::to('OfferPriceProductType', $this->Product);
return empty($o) ? new class(){} : $o;
}
}
class RetailerOpeningTime implements JsonSerializable
{
public function __construct(
/** @var string */
public string $Day='',
/** @var string */
public string $OpenFrom='',
/** @var string */
public string $OpenTo='',
/** @var string */
public string $Special=''
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Day'])) $this->Day = $o['Day'];
if (isset($o['OpenFrom'])) $this->OpenFrom = $o['OpenFrom'];
if (isset($o['OpenTo'])) $this->OpenTo = $o['OpenTo'];
if (isset($o['Special'])) $this->Special = $o['Special'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Day)) $o['Day'] = $this->Day;
if (isset($this->OpenFrom)) $o['OpenFrom'] = $this->OpenFrom;
if (isset($this->OpenTo)) $o['OpenTo'] = $this->OpenTo;
if (isset($this->Special)) $o['Special'] = $this->Special;
return empty($o) ? new class(){} : $o;
}
}
class RetailerOpeningTimes implements JsonSerializable
{
public function __construct(
/** @var array<RetailerOpeningTime>|null */
public ?array $New=null,
/** @var array<RetailerOpeningTime>|null */
public ?array $Used=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['New'])) $this->New = JsonConverters::fromArray('RetailerOpeningTime', $o['New']);
if (isset($o['Used'])) $this->Used = JsonConverters::fromArray('RetailerOpeningTime', $o['Used']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->New)) $o['New'] = JsonConverters::toArray('RetailerOpeningTime', $this->New);
if (isset($this->Used)) $o['Used'] = JsonConverters::toArray('RetailerOpeningTime', $this->Used);
return empty($o) ? new class(){} : $o;
}
}
class Retailer implements JsonSerializable
{
public function __construct(
/** @var int */
public int $Id=0,
/** @var string */
public string $GssnId='',
/** @var string */
public string $Description='',
/** @var string */
public string $Street='',
/** @var string */
public string $City='',
/** @var string */
public string $Postcode='',
/** @var string */
public string $GoogleMapPostcode='',
/** @var string */
public string $Phone='',
/** @var string */
public string $Fax='',
/** @var string */
public string $Email='',
/** @var string */
public string $Website='',
/** @var string */
public string $RetailerGroupId='',
/** @var string */
public string $RetailerGroupName='',
/** @var bool|null */
public ?bool $IsOnline=null,
/** @var bool|null */
public ?bool $IsNewCarRetailer=null,
/** @var bool|null */
public ?bool $IsUsedCarRetailer=null,
/** @var bool|null */
public ?bool $IsCentralRetailer=null,
/** @var bool|null */
public ?bool $ChatEnabled=null,
/** @var bool|null */
public ?bool $TradeInEnabled=null,
/** @var bool|null */
public ?bool $smart=null,
/** @var string */
public string $DisplayPhoneNumberNew='',
/** @var string */
public string $DisplayPhoneNumberUsed='',
/** @var float */
public float $Latitude=0.0,
/** @var float */
public float $Longitude=0.0,
/** @var string */
public string $smartDescription='',
/** @var string */
public string $smartWebsite='',
/** @var string */
public string $smartPhone='',
/** @var string */
public string $LegacyId='',
/** @var bool|null */
public ?bool $Agent=null,
/** @var int */
public int $MarketAreaId=0,
/** @var string|null */
public ?string $DigitalLoungeParentGssnId=null,
/** @var bool|null */
public ?bool $SendLeadsToDigitalLoungeParent=null,
/** @var RetailerOpeningTimes|null */
public ?RetailerOpeningTimes $OpeningTimes=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Id'])) $this->Id = $o['Id'];
if (isset($o['GssnId'])) $this->GssnId = $o['GssnId'];
if (isset($o['Description'])) $this->Description = $o['Description'];
if (isset($o['Street'])) $this->Street = $o['Street'];
if (isset($o['City'])) $this->City = $o['City'];
if (isset($o['Postcode'])) $this->Postcode = $o['Postcode'];
if (isset($o['GoogleMapPostcode'])) $this->GoogleMapPostcode = $o['GoogleMapPostcode'];
if (isset($o['Phone'])) $this->Phone = $o['Phone'];
if (isset($o['Fax'])) $this->Fax = $o['Fax'];
if (isset($o['Email'])) $this->Email = $o['Email'];
if (isset($o['Website'])) $this->Website = $o['Website'];
if (isset($o['RetailerGroupId'])) $this->RetailerGroupId = $o['RetailerGroupId'];
if (isset($o['RetailerGroupName'])) $this->RetailerGroupName = $o['RetailerGroupName'];
if (isset($o['IsOnline'])) $this->IsOnline = $o['IsOnline'];
if (isset($o['IsNewCarRetailer'])) $this->IsNewCarRetailer = $o['IsNewCarRetailer'];
if (isset($o['IsUsedCarRetailer'])) $this->IsUsedCarRetailer = $o['IsUsedCarRetailer'];
if (isset($o['IsCentralRetailer'])) $this->IsCentralRetailer = $o['IsCentralRetailer'];
if (isset($o['ChatEnabled'])) $this->ChatEnabled = $o['ChatEnabled'];
if (isset($o['TradeInEnabled'])) $this->TradeInEnabled = $o['TradeInEnabled'];
if (isset($o['smart'])) $this->smart = $o['smart'];
if (isset($o['DisplayPhoneNumberNew'])) $this->DisplayPhoneNumberNew = $o['DisplayPhoneNumberNew'];
if (isset($o['DisplayPhoneNumberUsed'])) $this->DisplayPhoneNumberUsed = $o['DisplayPhoneNumberUsed'];
if (isset($o['Latitude'])) $this->Latitude = $o['Latitude'];
if (isset($o['Longitude'])) $this->Longitude = $o['Longitude'];
if (isset($o['smartDescription'])) $this->smartDescription = $o['smartDescription'];
if (isset($o['smartWebsite'])) $this->smartWebsite = $o['smartWebsite'];
if (isset($o['smartPhone'])) $this->smartPhone = $o['smartPhone'];
if (isset($o['LegacyId'])) $this->LegacyId = $o['LegacyId'];
if (isset($o['Agent'])) $this->Agent = $o['Agent'];
if (isset($o['MarketAreaId'])) $this->MarketAreaId = $o['MarketAreaId'];
if (isset($o['DigitalLoungeParentGssnId'])) $this->DigitalLoungeParentGssnId = $o['DigitalLoungeParentGssnId'];
if (isset($o['SendLeadsToDigitalLoungeParent'])) $this->SendLeadsToDigitalLoungeParent = $o['SendLeadsToDigitalLoungeParent'];
if (isset($o['OpeningTimes'])) $this->OpeningTimes = JsonConverters::from('RetailerOpeningTimes', $o['OpeningTimes']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Id)) $o['Id'] = $this->Id;
if (isset($this->GssnId)) $o['GssnId'] = $this->GssnId;
if (isset($this->Description)) $o['Description'] = $this->Description;
if (isset($this->Street)) $o['Street'] = $this->Street;
if (isset($this->City)) $o['City'] = $this->City;
if (isset($this->Postcode)) $o['Postcode'] = $this->Postcode;
if (isset($this->GoogleMapPostcode)) $o['GoogleMapPostcode'] = $this->GoogleMapPostcode;
if (isset($this->Phone)) $o['Phone'] = $this->Phone;
if (isset($this->Fax)) $o['Fax'] = $this->Fax;
if (isset($this->Email)) $o['Email'] = $this->Email;
if (isset($this->Website)) $o['Website'] = $this->Website;
if (isset($this->RetailerGroupId)) $o['RetailerGroupId'] = $this->RetailerGroupId;
if (isset($this->RetailerGroupName)) $o['RetailerGroupName'] = $this->RetailerGroupName;
if (isset($this->IsOnline)) $o['IsOnline'] = $this->IsOnline;
if (isset($this->IsNewCarRetailer)) $o['IsNewCarRetailer'] = $this->IsNewCarRetailer;
if (isset($this->IsUsedCarRetailer)) $o['IsUsedCarRetailer'] = $this->IsUsedCarRetailer;
if (isset($this->IsCentralRetailer)) $o['IsCentralRetailer'] = $this->IsCentralRetailer;
if (isset($this->ChatEnabled)) $o['ChatEnabled'] = $this->ChatEnabled;
if (isset($this->TradeInEnabled)) $o['TradeInEnabled'] = $this->TradeInEnabled;
if (isset($this->smart)) $o['smart'] = $this->smart;
if (isset($this->DisplayPhoneNumberNew)) $o['DisplayPhoneNumberNew'] = $this->DisplayPhoneNumberNew;
if (isset($this->DisplayPhoneNumberUsed)) $o['DisplayPhoneNumberUsed'] = $this->DisplayPhoneNumberUsed;
if (isset($this->Latitude)) $o['Latitude'] = $this->Latitude;
if (isset($this->Longitude)) $o['Longitude'] = $this->Longitude;
if (isset($this->smartDescription)) $o['smartDescription'] = $this->smartDescription;
if (isset($this->smartWebsite)) $o['smartWebsite'] = $this->smartWebsite;
if (isset($this->smartPhone)) $o['smartPhone'] = $this->smartPhone;
if (isset($this->LegacyId)) $o['LegacyId'] = $this->LegacyId;
if (isset($this->Agent)) $o['Agent'] = $this->Agent;
if (isset($this->MarketAreaId)) $o['MarketAreaId'] = $this->MarketAreaId;
if (isset($this->DigitalLoungeParentGssnId)) $o['DigitalLoungeParentGssnId'] = $this->DigitalLoungeParentGssnId;
if (isset($this->SendLeadsToDigitalLoungeParent)) $o['SendLeadsToDigitalLoungeParent'] = $this->SendLeadsToDigitalLoungeParent;
if (isset($this->OpeningTimes)) $o['OpeningTimes'] = JsonConverters::to('RetailerOpeningTimes', $this->OpeningTimes);
return empty($o) ? new class(){} : $o;
}
}
class VehicleBaseDetail extends Vehicle implements ICommissionNumber, JsonSerializable
{
/**
* @param string|null $Vin
*/
public function __construct(
?string $Vin=null,
/** @var string */
public string $Description='',
/** @var string */
public string $CommissionNumber='',
/** @var string */
public string $PortArrivalDate='',
/** @var string */
public string $OfferExpiryDate='',
/** @var string */
public string $Fuel='',
/** @var string */
public string $Transmission='',
/** @var string */
public string $TransmissionType='',
/** @var string */
public string $Colour='',
/** @var string */
public string $ColourDescription='',
/** @var string */
public string $ImageUrl='',
/** @var bool|null */
public ?bool $Specialist=null,
/** @var VehicleCriteriaMatch|null */
public ?VehicleCriteriaMatch $VehicleCriteriaMatch=null,
/** @var string */
public string $ColourGroup='',
/** @var string */
public string $Model='',
/** @var string */
public string $BodyStyle='',
/** @var string */
public string $Brand='',
/** @var string */
public string $Engine='',
/** @var string */
public string $EngineDescription='',
/** @var string */
public string $Line='',
/** @var string */
public string $Upholstery='',
/** @var string */
public string $UpholsteryDescription='',
/** @var array<string>|null */
public ?array $Packages=null,
/** @var float */
public float $P11D=0.0,
/** @var array<Price>|null */
public ?array $Prices=null,
/** @var string */
public string $VehicleClass='',
/** @var string */
public string $ProductRange='',
/** @var string */
public string $VehicleType='',
/** @var float|null */
public ?float $Emission=null,
/** @var string */
public string $Baumuster='',
/** @var bool|null */
public ?bool $IsSellable=null,
/** @var string */
public string $Bm7NST='',
/** @var float|null */
public ?float $ElectricRange=null,
/** @var float|null */
public ?float $ElectricConsumption=null,
/** @var bool|null */
public ?bool $IsDisplayStock=null,
/** @var int|null */
public ?int $DisplayRetailer_Id=null,
/** @var string */
public string $DisplayRetailer='',
/** @var string */
public string $DisplayRetailerGssnId='',
/** @var Retailer|null */
public ?Retailer $Retailer=null,
/** @var int|null */
public ?int $Age=null,
/** @var string */
public string $ModelYearCode='',
/** @var string */
public string $HalfModelYearCode='',
/** @var string */
public string $FullModelYearCode='',
/** @var string */
public string $ProductionDate='',
/** @var string|null */
public ?string $ChassisNumber=null,
/** @var bool|null */
public ?bool $EligibleForIntegratedServiceCare=null
) {
parent::__construct($Vin);
}
/** @throws Exception */
public function fromMap($o): void {
parent::fromMap($o);
if (isset($o['Description'])) $this->Description = $o['Description'];
if (isset($o['CommissionNumber'])) $this->CommissionNumber = $o['CommissionNumber'];
if (isset($o['PortArrivalDate'])) $this->PortArrivalDate = $o['PortArrivalDate'];
if (isset($o['OfferExpiryDate'])) $this->OfferExpiryDate = $o['OfferExpiryDate'];
if (isset($o['Fuel'])) $this->Fuel = $o['Fuel'];
if (isset($o['Transmission'])) $this->Transmission = $o['Transmission'];
if (isset($o['TransmissionType'])) $this->TransmissionType = $o['TransmissionType'];
if (isset($o['Colour'])) $this->Colour = $o['Colour'];
if (isset($o['ColourDescription'])) $this->ColourDescription = $o['ColourDescription'];
if (isset($o['ImageUrl'])) $this->ImageUrl = $o['ImageUrl'];
if (isset($o['Specialist'])) $this->Specialist = $o['Specialist'];
if (isset($o['VehicleCriteriaMatch'])) $this->VehicleCriteriaMatch = JsonConverters::from('VehicleCriteriaMatch', $o['VehicleCriteriaMatch']);
if (isset($o['ColourGroup'])) $this->ColourGroup = $o['ColourGroup'];
if (isset($o['Model'])) $this->Model = $o['Model'];
if (isset($o['BodyStyle'])) $this->BodyStyle = $o['BodyStyle'];
if (isset($o['Brand'])) $this->Brand = $o['Brand'];
if (isset($o['Engine'])) $this->Engine = $o['Engine'];
if (isset($o['EngineDescription'])) $this->EngineDescription = $o['EngineDescription'];
if (isset($o['Line'])) $this->Line = $o['Line'];
if (isset($o['Upholstery'])) $this->Upholstery = $o['Upholstery'];
if (isset($o['UpholsteryDescription'])) $this->UpholsteryDescription = $o['UpholsteryDescription'];
if (isset($o['Packages'])) $this->Packages = JsonConverters::fromArray('string', $o['Packages']);
if (isset($o['P11D'])) $this->P11D = $o['P11D'];
if (isset($o['Prices'])) $this->Prices = JsonConverters::fromArray('Price', $o['Prices']);
if (isset($o['VehicleClass'])) $this->VehicleClass = $o['VehicleClass'];
if (isset($o['ProductRange'])) $this->ProductRange = $o['ProductRange'];
if (isset($o['VehicleType'])) $this->VehicleType = $o['VehicleType'];
if (isset($o['Emission'])) $this->Emission = $o['Emission'];
if (isset($o['Baumuster'])) $this->Baumuster = $o['Baumuster'];
if (isset($o['IsSellable'])) $this->IsSellable = $o['IsSellable'];
if (isset($o['Bm7NST'])) $this->Bm7NST = $o['Bm7NST'];
if (isset($o['ElectricRange'])) $this->ElectricRange = $o['ElectricRange'];
if (isset($o['ElectricConsumption'])) $this->ElectricConsumption = $o['ElectricConsumption'];
if (isset($o['IsDisplayStock'])) $this->IsDisplayStock = $o['IsDisplayStock'];
if (isset($o['DisplayRetailer_Id'])) $this->DisplayRetailer_Id = $o['DisplayRetailer_Id'];
if (isset($o['DisplayRetailer'])) $this->DisplayRetailer = $o['DisplayRetailer'];
if (isset($o['DisplayRetailerGssnId'])) $this->DisplayRetailerGssnId = $o['DisplayRetailerGssnId'];
if (isset($o['Retailer'])) $this->Retailer = JsonConverters::from('Retailer', $o['Retailer']);
if (isset($o['Age'])) $this->Age = $o['Age'];
if (isset($o['ModelYearCode'])) $this->ModelYearCode = $o['ModelYearCode'];
if (isset($o['HalfModelYearCode'])) $this->HalfModelYearCode = $o['HalfModelYearCode'];
if (isset($o['FullModelYearCode'])) $this->FullModelYearCode = $o['FullModelYearCode'];
if (isset($o['ProductionDate'])) $this->ProductionDate = $o['ProductionDate'];
if (isset($o['ChassisNumber'])) $this->ChassisNumber = $o['ChassisNumber'];
if (isset($o['EligibleForIntegratedServiceCare'])) $this->EligibleForIntegratedServiceCare = $o['EligibleForIntegratedServiceCare'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = parent::jsonSerialize();
if (isset($this->Description)) $o['Description'] = $this->Description;
if (isset($this->CommissionNumber)) $o['CommissionNumber'] = $this->CommissionNumber;
if (isset($this->PortArrivalDate)) $o['PortArrivalDate'] = $this->PortArrivalDate;
if (isset($this->OfferExpiryDate)) $o['OfferExpiryDate'] = $this->OfferExpiryDate;
if (isset($this->Fuel)) $o['Fuel'] = $this->Fuel;
if (isset($this->Transmission)) $o['Transmission'] = $this->Transmission;
if (isset($this->TransmissionType)) $o['TransmissionType'] = $this->TransmissionType;
if (isset($this->Colour)) $o['Colour'] = $this->Colour;
if (isset($this->ColourDescription)) $o['ColourDescription'] = $this->ColourDescription;
if (isset($this->ImageUrl)) $o['ImageUrl'] = $this->ImageUrl;
if (isset($this->Specialist)) $o['Specialist'] = $this->Specialist;
if (isset($this->VehicleCriteriaMatch)) $o['VehicleCriteriaMatch'] = JsonConverters::to('VehicleCriteriaMatch', $this->VehicleCriteriaMatch);
if (isset($this->ColourGroup)) $o['ColourGroup'] = $this->ColourGroup;
if (isset($this->Model)) $o['Model'] = $this->Model;
if (isset($this->BodyStyle)) $o['BodyStyle'] = $this->BodyStyle;
if (isset($this->Brand)) $o['Brand'] = $this->Brand;
if (isset($this->Engine)) $o['Engine'] = $this->Engine;
if (isset($this->EngineDescription)) $o['EngineDescription'] = $this->EngineDescription;
if (isset($this->Line)) $o['Line'] = $this->Line;
if (isset($this->Upholstery)) $o['Upholstery'] = $this->Upholstery;
if (isset($this->UpholsteryDescription)) $o['UpholsteryDescription'] = $this->UpholsteryDescription;
if (isset($this->Packages)) $o['Packages'] = JsonConverters::toArray('string', $this->Packages);
if (isset($this->P11D)) $o['P11D'] = $this->P11D;
if (isset($this->Prices)) $o['Prices'] = JsonConverters::toArray('Price', $this->Prices);
if (isset($this->VehicleClass)) $o['VehicleClass'] = $this->VehicleClass;
if (isset($this->ProductRange)) $o['ProductRange'] = $this->ProductRange;
if (isset($this->VehicleType)) $o['VehicleType'] = $this->VehicleType;
if (isset($this->Emission)) $o['Emission'] = $this->Emission;
if (isset($this->Baumuster)) $o['Baumuster'] = $this->Baumuster;
if (isset($this->IsSellable)) $o['IsSellable'] = $this->IsSellable;
if (isset($this->Bm7NST)) $o['Bm7NST'] = $this->Bm7NST;
if (isset($this->ElectricRange)) $o['ElectricRange'] = $this->ElectricRange;
if (isset($this->ElectricConsumption)) $o['ElectricConsumption'] = $this->ElectricConsumption;
if (isset($this->IsDisplayStock)) $o['IsDisplayStock'] = $this->IsDisplayStock;
if (isset($this->DisplayRetailer_Id)) $o['DisplayRetailer_Id'] = $this->DisplayRetailer_Id;
if (isset($this->DisplayRetailer)) $o['DisplayRetailer'] = $this->DisplayRetailer;
if (isset($this->DisplayRetailerGssnId)) $o['DisplayRetailerGssnId'] = $this->DisplayRetailerGssnId;
if (isset($this->Retailer)) $o['Retailer'] = JsonConverters::to('Retailer', $this->Retailer);
if (isset($this->Age)) $o['Age'] = $this->Age;
if (isset($this->ModelYearCode)) $o['ModelYearCode'] = $this->ModelYearCode;
if (isset($this->HalfModelYearCode)) $o['HalfModelYearCode'] = $this->HalfModelYearCode;
if (isset($this->FullModelYearCode)) $o['FullModelYearCode'] = $this->FullModelYearCode;
if (isset($this->ProductionDate)) $o['ProductionDate'] = $this->ProductionDate;
if (isset($this->ChassisNumber)) $o['ChassisNumber'] = $this->ChassisNumber;
if (isset($this->EligibleForIntegratedServiceCare)) $o['EligibleForIntegratedServiceCare'] = $this->EligibleForIntegratedServiceCare;
return empty($o) ? new class(){} : $o;
}
}
class VehicleConsumption implements JsonSerializable
{
public function __construct(
/** @var int */
public int $Id=0,
/** @var float */
public float $Lkm=0.0,
/** @var float */
public float $Mpg=0.0
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Id'])) $this->Id = $o['Id'];
if (isset($o['Lkm'])) $this->Lkm = $o['Lkm'];
if (isset($o['Mpg'])) $this->Mpg = $o['Mpg'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Id)) $o['Id'] = $this->Id;
if (isset($this->Lkm)) $o['Lkm'] = $this->Lkm;
if (isset($this->Mpg)) $o['Mpg'] = $this->Mpg;
return empty($o) ? new class(){} : $o;
}
}
class Equipment implements JsonSerializable
{
public function __construct(
/** @var int */
public int $Id=0,
/** @var string|null */
public ?string $Code=null,
/** @var string|null */
public ?string $Description=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Id'])) $this->Id = $o['Id'];
if (isset($o['Code'])) $this->Code = $o['Code'];
if (isset($o['Description'])) $this->Description = $o['Description'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Id)) $o['Id'] = $this->Id;
if (isset($this->Code)) $o['Code'] = $this->Code;
if (isset($this->Description)) $o['Description'] = $this->Description;
return empty($o) ? new class(){} : $o;
}
}
class Equipmentv2 extends Equipment implements JsonSerializable
{
/**
* @param int $Id
* @param string|null $Code
* @param string|null $Description
*/
public function __construct(
int $Id=0,
?string $Code=null,
?string $Description=null,
/** @var int */
public int $Importance=0,
/** @var bool|null */
public ?bool $IsAdditional=null
) {
parent::__construct($Id,$Code,$Description);
}
/** @throws Exception */
public function fromMap($o): void {
parent::fromMap($o);
if (isset($o['Importance'])) $this->Importance = $o['Importance'];
if (isset($o['IsAdditional'])) $this->IsAdditional = $o['IsAdditional'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = parent::jsonSerialize();
if (isset($this->Importance)) $o['Importance'] = $this->Importance;
if (isset($this->IsAdditional)) $o['IsAdditional'] = $this->IsAdditional;
return empty($o) ? new class(){} : $o;
}
}
class VehicleEquipmentCategory implements JsonSerializable
{
public function __construct(
/** @var int */
public int $Order=0,
/** @var string|null */
public ?string $Code=null,
/** @var string|null */
public ?string $Description=null,
/** @var array<Equipmentv2>|null */
public ?array $Equipment=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Order'])) $this->Order = $o['Order'];
if (isset($o['Code'])) $this->Code = $o['Code'];
if (isset($o['Description'])) $this->Description = $o['Description'];
if (isset($o['Equipment'])) $this->Equipment = JsonConverters::fromArray('Equipmentv2', $o['Equipment']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Order)) $o['Order'] = $this->Order;
if (isset($this->Code)) $o['Code'] = $this->Code;
if (isset($this->Description)) $o['Description'] = $this->Description;
if (isset($this->Equipment)) $o['Equipment'] = JsonConverters::toArray('Equipmentv2', $this->Equipment);
return empty($o) ? new class(){} : $o;
}
}
class VehicleEmissionClass implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $Colour=null,
/** @var string|null */
public ?string $Rating=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Colour'])) $this->Colour = $o['Colour'];
if (isset($o['Rating'])) $this->Rating = $o['Rating'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Colour)) $o['Colour'] = $this->Colour;
if (isset($this->Rating)) $o['Rating'] = $this->Rating;
return empty($o) ? new class(){} : $o;
}
}
class VehicleAttribute implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $Description=null,
/** @var string|null */
public ?string $Value=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Description'])) $this->Description = $o['Description'];
if (isset($o['Value'])) $this->Value = $o['Value'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Description)) $o['Description'] = $this->Description;
if (isset($this->Value)) $o['Value'] = $this->Value;
return empty($o) ? new class(){} : $o;
}
}
class VehicleIntegratedServiceCareOption implements JsonSerializable
{
public function __construct(
/** @var string|null */
public ?string $OptionCode=null,
/** @var string|null */
public ?string $BM7NST=null,
/** @var string|null */
public ?string $FullModelYear=null,
/** @var string|null */
public ?string $IntegratedProductType=null,
/** @var string|null */
public ?string $CustomerDescription=null,
/** @var string|null */
public ?string $OneAgentProductType=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['OptionCode'])) $this->OptionCode = $o['OptionCode'];
if (isset($o['BM7NST'])) $this->BM7NST = $o['BM7NST'];
if (isset($o['FullModelYear'])) $this->FullModelYear = $o['FullModelYear'];
if (isset($o['IntegratedProductType'])) $this->IntegratedProductType = $o['IntegratedProductType'];
if (isset($o['CustomerDescription'])) $this->CustomerDescription = $o['CustomerDescription'];
if (isset($o['OneAgentProductType'])) $this->OneAgentProductType = $o['OneAgentProductType'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->OptionCode)) $o['OptionCode'] = $this->OptionCode;
if (isset($this->BM7NST)) $o['BM7NST'] = $this->BM7NST;
if (isset($this->FullModelYear)) $o['FullModelYear'] = $this->FullModelYear;
if (isset($this->IntegratedProductType)) $o['IntegratedProductType'] = $this->IntegratedProductType;
if (isset($this->CustomerDescription)) $o['CustomerDescription'] = $this->CustomerDescription;
if (isset($this->OneAgentProductType)) $o['OneAgentProductType'] = $this->OneAgentProductType;
return empty($o) ? new class(){} : $o;
}
}
class VehicleDetail extends VehicleBaseDetail implements JsonSerializable
{
/**
* @param string|null $Vin
* @param string $Description
* @param string $CommissionNumber
* @param string $PortArrivalDate
* @param string $OfferExpiryDate
* @param string $Fuel
* @param string $Transmission
* @param string $TransmissionType
* @param string $Colour
* @param string $ColourDescription
* @param string $ImageUrl
* @param bool|null $Specialist
* @param VehicleCriteriaMatch|null $VehicleCriteriaMatch
* @param string $ColourGroup
* @param string $Model
* @param string $BodyStyle
* @param string $Brand
* @param string $Engine
* @param string $EngineDescription
* @param string $Line
* @param string $Upholstery
* @param string $UpholsteryDescription
* @param array<string>|null $Packages
* @param float $P11D
* @param array<Price>|null $Prices
* @param string $VehicleClass
* @param string $ProductRange
* @param string $VehicleType
* @param float|null $Emission
* @param string $Baumuster
* @param bool|null $IsSellable
* @param string $Bm7NST
* @param float|null $ElectricRange
* @param float|null $ElectricConsumption
* @param bool|null $IsDisplayStock
* @param int|null $DisplayRetailer_Id
* @param string $DisplayRetailer
* @param string $DisplayRetailerGssnId
* @param Retailer|null $Retailer
* @param int|null $Age
* @param string $ModelYearCode
* @param string $HalfModelYearCode
* @param string $FullModelYearCode
* @param string $ProductionDate
* @param string|null $ChassisNumber
* @param bool|null $EligibleForIntegratedServiceCare
*/
public function __construct(
?string $Vin=null,
string $Description='',
string $CommissionNumber='',
string $PortArrivalDate='',
string $OfferExpiryDate='',
string $Fuel='',
string $Transmission='',
string $TransmissionType='',
string $Colour='',
string $ColourDescription='',
string $ImageUrl='',
?bool $Specialist=null,
?VehicleCriteriaMatch $VehicleCriteriaMatch=null,
string $ColourGroup='',
string $Model='',
string $BodyStyle='',
string $Brand='',
string $Engine='',
string $EngineDescription='',
string $Line='',
string $Upholstery='',
string $UpholsteryDescription='',
?array $Packages=null,
float $P11D=0.0,
?array $Prices=null,
string $VehicleClass='',
string $ProductRange='',
string $VehicleType='',
?float $Emission=null,
string $Baumuster='',
?bool $IsSellable=null,
string $Bm7NST='',
?float $ElectricRange=null,
?float $ElectricConsumption=null,
?bool $IsDisplayStock=null,
?int $DisplayRetailer_Id=null,
string $DisplayRetailer='',
string $DisplayRetailerGssnId='',
?Retailer $Retailer=null,
?int $Age=null,
string $ModelYearCode='',
string $HalfModelYearCode='',
string $FullModelYearCode='',
string $ProductionDate='',
?string $ChassisNumber=null,
?bool $EligibleForIntegratedServiceCare=null,
/** @var string */
public string $RetailPrice_ExVAT='',
/** @var string */
public string $OTR='',
/** @var string */
public string $ActualPrice='',
/** @var string */
public string $TotalOfferValue='',
/** @var bool|null */
public ?bool $IsHOBackOrderAccountVehicle=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $ConsumptionCombined=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $ConsumptionExtraUrban=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $ConsumptionUrban=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $WltpFuelConsumptionCombined=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $WltpFuelConsumptionExtraHigh=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $WltpFuelConsumptionHigh=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $WltpFuelConsumptionLow=null,
/** @var VehicleConsumption|null */
public ?VehicleConsumption $WltpFuelConsumptionMedium=null,
/** @var array<VehicleEquipmentCategory>|null */
public ?array $EquipmentCategories=null,
/** @var VehicleEmissionClass|null */
public ?VehicleEmissionClass $VehicleEnergyEfficiencyClass=null,
/** @var array<VehicleAttribute>|null */
public ?array $VehicleData=null,
/** @var array<VehicleIntegratedServiceCareOption>|null */
public ?array $IntegratedProducts=null,
/** @var array<string>|null */
public ?array $IspVehicleCustomerDescriptions=null,
/** @var string */
public string $ColourCode='',
/** @var string */
public string $UpholsteryCode=''
) {
parent::__construct($Vin,$Description,$CommissionNumber,$PortArrivalDate,$OfferExpiryDate,$Fuel,$Transmission,$TransmissionType,$Colour,$ColourDescription,$ImageUrl,$Specialist,$VehicleCriteriaMatch,$ColourGroup,$Model,$BodyStyle,$Brand,$Engine,$EngineDescription,$Line,$Upholstery,$UpholsteryDescription,$Packages,$P11D,$Prices,$VehicleClass,$ProductRange,$VehicleType,$Emission,$Baumuster,$IsSellable,$Bm7NST,$ElectricRange,$ElectricConsumption,$IsDisplayStock,$DisplayRetailer_Id,$DisplayRetailer,$DisplayRetailerGssnId,$Retailer,$Age,$ModelYearCode,$HalfModelYearCode,$FullModelYearCode,$ProductionDate,$ChassisNumber,$EligibleForIntegratedServiceCare);
}
/** @throws Exception */
public function fromMap($o): void {
parent::fromMap($o);
if (isset($o['RetailPrice_ExVAT'])) $this->RetailPrice_ExVAT = $o['RetailPrice_ExVAT'];
if (isset($o['OTR'])) $this->OTR = $o['OTR'];
if (isset($o['ActualPrice'])) $this->ActualPrice = $o['ActualPrice'];
if (isset($o['TotalOfferValue'])) $this->TotalOfferValue = $o['TotalOfferValue'];
if (isset($o['IsHOBackOrderAccountVehicle'])) $this->IsHOBackOrderAccountVehicle = $o['IsHOBackOrderAccountVehicle'];
if (isset($o['ConsumptionCombined'])) $this->ConsumptionCombined = JsonConverters::from('VehicleConsumption', $o['ConsumptionCombined']);
if (isset($o['ConsumptionExtraUrban'])) $this->ConsumptionExtraUrban = JsonConverters::from('VehicleConsumption', $o['ConsumptionExtraUrban']);
if (isset($o['ConsumptionUrban'])) $this->ConsumptionUrban = JsonConverters::from('VehicleConsumption', $o['ConsumptionUrban']);
if (isset($o['WltpFuelConsumptionCombined'])) $this->WltpFuelConsumptionCombined = JsonConverters::from('VehicleConsumption', $o['WltpFuelConsumptionCombined']);
if (isset($o['WltpFuelConsumptionExtraHigh'])) $this->WltpFuelConsumptionExtraHigh = JsonConverters::from('VehicleConsumption', $o['WltpFuelConsumptionExtraHigh']);
if (isset($o['WltpFuelConsumptionHigh'])) $this->WltpFuelConsumptionHigh = JsonConverters::from('VehicleConsumption', $o['WltpFuelConsumptionHigh']);
if (isset($o['WltpFuelConsumptionLow'])) $this->WltpFuelConsumptionLow = JsonConverters::from('VehicleConsumption', $o['WltpFuelConsumptionLow']);
if (isset($o['WltpFuelConsumptionMedium'])) $this->WltpFuelConsumptionMedium = JsonConverters::from('VehicleConsumption', $o['WltpFuelConsumptionMedium']);
if (isset($o['EquipmentCategories'])) $this->EquipmentCategories = JsonConverters::fromArray('VehicleEquipmentCategory', $o['EquipmentCategories']);
if (isset($o['VehicleEnergyEfficiencyClass'])) $this->VehicleEnergyEfficiencyClass = JsonConverters::from('VehicleEmissionClass', $o['VehicleEnergyEfficiencyClass']);
if (isset($o['VehicleData'])) $this->VehicleData = JsonConverters::fromArray('VehicleAttribute', $o['VehicleData']);
if (isset($o['IntegratedProducts'])) $this->IntegratedProducts = JsonConverters::fromArray('VehicleIntegratedServiceCareOption', $o['IntegratedProducts']);
if (isset($o['IspVehicleCustomerDescriptions'])) $this->IspVehicleCustomerDescriptions = JsonConverters::fromArray('string', $o['IspVehicleCustomerDescriptions']);
if (isset($o['ColourCode'])) $this->ColourCode = $o['ColourCode'];
if (isset($o['UpholsteryCode'])) $this->UpholsteryCode = $o['UpholsteryCode'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = parent::jsonSerialize();
if (isset($this->RetailPrice_ExVAT)) $o['RetailPrice_ExVAT'] = $this->RetailPrice_ExVAT;
if (isset($this->OTR)) $o['OTR'] = $this->OTR;
if (isset($this->ActualPrice)) $o['ActualPrice'] = $this->ActualPrice;
if (isset($this->TotalOfferValue)) $o['TotalOfferValue'] = $this->TotalOfferValue;
if (isset($this->IsHOBackOrderAccountVehicle)) $o['IsHOBackOrderAccountVehicle'] = $this->IsHOBackOrderAccountVehicle;
if (isset($this->ConsumptionCombined)) $o['ConsumptionCombined'] = JsonConverters::to('VehicleConsumption', $this->ConsumptionCombined);
if (isset($this->ConsumptionExtraUrban)) $o['ConsumptionExtraUrban'] = JsonConverters::to('VehicleConsumption', $this->ConsumptionExtraUrban);
if (isset($this->ConsumptionUrban)) $o['ConsumptionUrban'] = JsonConverters::to('VehicleConsumption', $this->ConsumptionUrban);
if (isset($this->WltpFuelConsumptionCombined)) $o['WltpFuelConsumptionCombined'] = JsonConverters::to('VehicleConsumption', $this->WltpFuelConsumptionCombined);
if (isset($this->WltpFuelConsumptionExtraHigh)) $o['WltpFuelConsumptionExtraHigh'] = JsonConverters::to('VehicleConsumption', $this->WltpFuelConsumptionExtraHigh);
if (isset($this->WltpFuelConsumptionHigh)) $o['WltpFuelConsumptionHigh'] = JsonConverters::to('VehicleConsumption', $this->WltpFuelConsumptionHigh);
if (isset($this->WltpFuelConsumptionLow)) $o['WltpFuelConsumptionLow'] = JsonConverters::to('VehicleConsumption', $this->WltpFuelConsumptionLow);
if (isset($this->WltpFuelConsumptionMedium)) $o['WltpFuelConsumptionMedium'] = JsonConverters::to('VehicleConsumption', $this->WltpFuelConsumptionMedium);
if (isset($this->EquipmentCategories)) $o['EquipmentCategories'] = JsonConverters::toArray('VehicleEquipmentCategory', $this->EquipmentCategories);
if (isset($this->VehicleEnergyEfficiencyClass)) $o['VehicleEnergyEfficiencyClass'] = JsonConverters::to('VehicleEmissionClass', $this->VehicleEnergyEfficiencyClass);
if (isset($this->VehicleData)) $o['VehicleData'] = JsonConverters::toArray('VehicleAttribute', $this->VehicleData);
if (isset($this->IntegratedProducts)) $o['IntegratedProducts'] = JsonConverters::toArray('VehicleIntegratedServiceCareOption', $this->IntegratedProducts);
if (isset($this->IspVehicleCustomerDescriptions)) $o['IspVehicleCustomerDescriptions'] = JsonConverters::toArray('string', $this->IspVehicleCustomerDescriptions);
if (isset($this->ColourCode)) $o['ColourCode'] = $this->ColourCode;
if (isset($this->UpholsteryCode)) $o['UpholsteryCode'] = $this->UpholsteryCode;
return empty($o) ? new class(){} : $o;
}
}
class BackOrderVehicle extends VehicleDetail implements JsonSerializable
{
/**
* @param string|null $Vin
* @param string $Description
* @param string $CommissionNumber
* @param string $PortArrivalDate
* @param string $OfferExpiryDate
* @param string $Fuel
* @param string $Transmission
* @param string $TransmissionType
* @param string $Colour
* @param string $ColourDescription
* @param string $ImageUrl
* @param bool|null $Specialist
* @param VehicleCriteriaMatch|null $VehicleCriteriaMatch
* @param string $ColourGroup
* @param string $Model
* @param string $BodyStyle
* @param string $Brand
* @param string $Engine
* @param string $EngineDescription
* @param string $Line
* @param string $Upholstery
* @param string $UpholsteryDescription
* @param array<string>|null $Packages
* @param float $P11D
* @param array<Price>|null $Prices
* @param string $VehicleClass
* @param string $ProductRange
* @param string $VehicleType
* @param float|null $Emission
* @param string $Baumuster
* @param bool|null $IsSellable
* @param string $Bm7NST
* @param float|null $ElectricRange
* @param float|null $ElectricConsumption
* @param bool|null $IsDisplayStock
* @param int|null $DisplayRetailer_Id
* @param string $DisplayRetailer
* @param string $DisplayRetailerGssnId
* @param Retailer|null $Retailer
* @param int|null $Age
* @param string $ModelYearCode
* @param string $HalfModelYearCode
* @param string $FullModelYearCode
* @param string $ProductionDate
* @param string|null $ChassisNumber
* @param bool|null $EligibleForIntegratedServiceCare
* @param string $RetailPrice_ExVAT
* @param string $OTR
* @param string $ActualPrice
* @param string $TotalOfferValue
* @param bool|null $IsHOBackOrderAccountVehicle
* @param VehicleConsumption|null $ConsumptionCombined
* @param VehicleConsumption|null $ConsumptionExtraUrban
* @param VehicleConsumption|null $ConsumptionUrban
* @param VehicleConsumption|null $WltpFuelConsumptionCombined
* @param VehicleConsumption|null $WltpFuelConsumptionExtraHigh
* @param VehicleConsumption|null $WltpFuelConsumptionHigh
* @param VehicleConsumption|null $WltpFuelConsumptionLow
* @param VehicleConsumption|null $WltpFuelConsumptionMedium
* @param array<VehicleEquipmentCategory>|null $EquipmentCategories
* @param VehicleEmissionClass|null $VehicleEnergyEfficiencyClass
* @param array<VehicleAttribute>|null $VehicleData
* @param array<VehicleIntegratedServiceCareOption>|null $IntegratedProducts
* @param array<string>|null $IspVehicleCustomerDescriptions
* @param string $ColourCode
* @param string $UpholsteryCode
*/
public function __construct(
?string $Vin=null,
string $Description='',
string $CommissionNumber='',
string $PortArrivalDate='',
string $OfferExpiryDate='',
string $Fuel='',
string $Transmission='',
string $TransmissionType='',
string $Colour='',
string $ColourDescription='',
string $ImageUrl='',
?bool $Specialist=null,
?VehicleCriteriaMatch $VehicleCriteriaMatch=null,
string $ColourGroup='',
string $Model='',
string $BodyStyle='',
string $Brand='',
string $Engine='',
string $EngineDescription='',
string $Line='',
string $Upholstery='',
string $UpholsteryDescription='',
?array $Packages=null,
float $P11D=0.0,
?array $Prices=null,
string $VehicleClass='',
string $ProductRange='',
string $VehicleType='',
?float $Emission=null,
string $Baumuster='',
?bool $IsSellable=null,
string $Bm7NST='',
?float $ElectricRange=null,
?float $ElectricConsumption=null,
?bool $IsDisplayStock=null,
?int $DisplayRetailer_Id=null,
string $DisplayRetailer='',
string $DisplayRetailerGssnId='',
?Retailer $Retailer=null,
?int $Age=null,
string $ModelYearCode='',
string $HalfModelYearCode='',
string $FullModelYearCode='',
string $ProductionDate='',
?string $ChassisNumber=null,
?bool $EligibleForIntegratedServiceCare=null,
string $RetailPrice_ExVAT='',
string $OTR='',
string $ActualPrice='',
string $TotalOfferValue='',
?bool $IsHOBackOrderAccountVehicle=null,
?VehicleConsumption $ConsumptionCombined=null,
?VehicleConsumption $ConsumptionExtraUrban=null,
?VehicleConsumption $ConsumptionUrban=null,
?VehicleConsumption $WltpFuelConsumptionCombined=null,
?VehicleConsumption $WltpFuelConsumptionExtraHigh=null,
?VehicleConsumption $WltpFuelConsumptionHigh=null,
?VehicleConsumption $WltpFuelConsumptionLow=null,
?VehicleConsumption $WltpFuelConsumptionMedium=null,
?array $EquipmentCategories=null,
?VehicleEmissionClass $VehicleEnergyEfficiencyClass=null,
?array $VehicleData=null,
?array $IntegratedProducts=null,
?array $IspVehicleCustomerDescriptions=null,
string $ColourCode='',
string $UpholsteryCode='',
/** @var string */
public string $VehicleUsage='',
/** @var bool|null */
public ?bool $UnderOffer=null,
/** @var string */
public string $Vid='',
/** @var string */
public string $Fin='',
/** @var string */
public string $ModelYear='',
/** @var float|null */
public ?float $RetailPrice_IncVAT=null,
/** @var bool|null */
public ?bool $IsAMG=null,
/** @var string */
public string $Nst='',
/** @var string */
public string $BM7NST='',
/** @var float|null */
public ?float $Acceleration=null,
/** @var float|null */
public ?float $BootCapacity=null,
/** @var float|null */
public ?float $TopSpeed=null,
/** @var string */
public string $DriveConcept='',
/** @var float|null */
public ?float $CombustionPowerHp=null,
/** @var float|null */
public ?float $ElectricPowerKw=null,
/** @var float|null */
public ?float $ElectricPowerHp=null,
/** @var float|null */
public ?float $CombinedPowerKw=null,
/** @var float|null */
public ?float $CombinedPowerHP=null,
/** @var string */
public string $EmissionCombined='',
/** @var string */
public string $EmissionExtraUrban='',
/** @var string */
public string $EmissionUrban='',
/** @var string */
public string $EmissionDirective='',
/** @var string */
public string $EnergyEfficiencyClass='',
/** @var float|null */
public ?float $WltpCombined=null,
/** @var float|null */
public ?float $WltpLow=null,
/** @var float|null */
public ?float $WltpMedium=null,
/** @var float|null */
public ?float $WltpHigh=null,
/** @var float|null */
public ?float $WltpExtraHigh=null,
/** @var float|null */
public ?float $WltpEmissionCombined=null,
/** @var DateTime|null */
public ?DateTime $CreationDate=null,
/** @var DateTime|null */
public ?DateTime $LastUpdated=null,
/** @var string */
public string $DisplayStockAgent='',
/** @var bool|null */
public ?bool $IsSpecialistCar=null,
/** @var string */
public string $Account='',
/** @var string */
public string $Location='',
/** @var string */
public string $CesarIdShipToParty='',
/** @var string */
public string $VehicleUsageCode='',
/** @var bool|null */
public ?bool $MbukSecured=null
) {
parent::__construct($Vin,$Description,$CommissionNumber,$PortArrivalDate,$OfferExpiryDate,$Fuel,$Transmission,$TransmissionType,$Colour,$ColourDescription,$ImageUrl,$Specialist,$VehicleCriteriaMatch,$ColourGroup,$Model,$BodyStyle,$Brand,$Engine,$EngineDescription,$Line,$Upholstery,$UpholsteryDescription,$Packages,$P11D,$Prices,$VehicleClass,$ProductRange,$VehicleType,$Emission,$Baumuster,$IsSellable,$Bm7NST,$ElectricRange,$ElectricConsumption,$IsDisplayStock,$DisplayRetailer_Id,$DisplayRetailer,$DisplayRetailerGssnId,$Retailer,$Age,$ModelYearCode,$HalfModelYearCode,$FullModelYearCode,$ProductionDate,$ChassisNumber,$EligibleForIntegratedServiceCare,$RetailPrice_ExVAT,$OTR,$ActualPrice,$TotalOfferValue,$IsHOBackOrderAccountVehicle,$ConsumptionCombined,$ConsumptionExtraUrban,$ConsumptionUrban,$WltpFuelConsumptionCombined,$WltpFuelConsumptionExtraHigh,$WltpFuelConsumptionHigh,$WltpFuelConsumptionLow,$WltpFuelConsumptionMedium,$EquipmentCategories,$VehicleEnergyEfficiencyClass,$VehicleData,$IntegratedProducts,$IspVehicleCustomerDescriptions,$ColourCode,$UpholsteryCode);
}
/** @throws Exception */
public function fromMap($o): void {
parent::fromMap($o);
if (isset($o['VehicleUsage'])) $this->VehicleUsage = $o['VehicleUsage'];
if (isset($o['UnderOffer'])) $this->UnderOffer = $o['UnderOffer'];
if (isset($o['Vid'])) $this->Vid = $o['Vid'];
if (isset($o['Fin'])) $this->Fin = $o['Fin'];
if (isset($o['ModelYear'])) $this->ModelYear = $o['ModelYear'];
if (isset($o['RetailPrice_IncVAT'])) $this->RetailPrice_IncVAT = $o['RetailPrice_IncVAT'];
if (isset($o['IsAMG'])) $this->IsAMG = $o['IsAMG'];
if (isset($o['Nst'])) $this->Nst = $o['Nst'];
if (isset($o['BM7NST'])) $this->BM7NST = $o['BM7NST'];
if (isset($o['Acceleration'])) $this->Acceleration = $o['Acceleration'];
if (isset($o['BootCapacity'])) $this->BootCapacity = $o['BootCapacity'];
if (isset($o['TopSpeed'])) $this->TopSpeed = $o['TopSpeed'];
if (isset($o['DriveConcept'])) $this->DriveConcept = $o['DriveConcept'];
if (isset($o['CombustionPowerHp'])) $this->CombustionPowerHp = $o['CombustionPowerHp'];
if (isset($o['ElectricPowerKw'])) $this->ElectricPowerKw = $o['ElectricPowerKw'];
if (isset($o['ElectricPowerHp'])) $this->ElectricPowerHp = $o['ElectricPowerHp'];
if (isset($o['CombinedPowerKw'])) $this->CombinedPowerKw = $o['CombinedPowerKw'];
if (isset($o['CombinedPowerHP'])) $this->CombinedPowerHP = $o['CombinedPowerHP'];
if (isset($o['EmissionCombined'])) $this->EmissionCombined = $o['EmissionCombined'];
if (isset($o['EmissionExtraUrban'])) $this->EmissionExtraUrban = $o['EmissionExtraUrban'];
if (isset($o['EmissionUrban'])) $this->EmissionUrban = $o['EmissionUrban'];
if (isset($o['EmissionDirective'])) $this->EmissionDirective = $o['EmissionDirective'];
if (isset($o['EnergyEfficiencyClass'])) $this->EnergyEfficiencyClass = $o['EnergyEfficiencyClass'];
if (isset($o['WltpCombined'])) $this->WltpCombined = $o['WltpCombined'];
if (isset($o['WltpLow'])) $this->WltpLow = $o['WltpLow'];
if (isset($o['WltpMedium'])) $this->WltpMedium = $o['WltpMedium'];
if (isset($o['WltpHigh'])) $this->WltpHigh = $o['WltpHigh'];
if (isset($o['WltpExtraHigh'])) $this->WltpExtraHigh = $o['WltpExtraHigh'];
if (isset($o['WltpEmissionCombined'])) $this->WltpEmissionCombined = $o['WltpEmissionCombined'];
if (isset($o['CreationDate'])) $this->CreationDate = JsonConverters::from('DateTime', $o['CreationDate']);
if (isset($o['LastUpdated'])) $this->LastUpdated = JsonConverters::from('DateTime', $o['LastUpdated']);
if (isset($o['DisplayStockAgent'])) $this->DisplayStockAgent = $o['DisplayStockAgent'];
if (isset($o['IsSpecialistCar'])) $this->IsSpecialistCar = $o['IsSpecialistCar'];
if (isset($o['Account'])) $this->Account = $o['Account'];
if (isset($o['Location'])) $this->Location = $o['Location'];
if (isset($o['CesarIdShipToParty'])) $this->CesarIdShipToParty = $o['CesarIdShipToParty'];
if (isset($o['VehicleUsageCode'])) $this->VehicleUsageCode = $o['VehicleUsageCode'];
if (isset($o['MbukSecured'])) $this->MbukSecured = $o['MbukSecured'];
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = parent::jsonSerialize();
if (isset($this->VehicleUsage)) $o['VehicleUsage'] = $this->VehicleUsage;
if (isset($this->UnderOffer)) $o['UnderOffer'] = $this->UnderOffer;
if (isset($this->Vid)) $o['Vid'] = $this->Vid;
if (isset($this->Fin)) $o['Fin'] = $this->Fin;
if (isset($this->ModelYear)) $o['ModelYear'] = $this->ModelYear;
if (isset($this->RetailPrice_IncVAT)) $o['RetailPrice_IncVAT'] = $this->RetailPrice_IncVAT;
if (isset($this->IsAMG)) $o['IsAMG'] = $this->IsAMG;
if (isset($this->Nst)) $o['Nst'] = $this->Nst;
if (isset($this->BM7NST)) $o['BM7NST'] = $this->BM7NST;
if (isset($this->Acceleration)) $o['Acceleration'] = $this->Acceleration;
if (isset($this->BootCapacity)) $o['BootCapacity'] = $this->BootCapacity;
if (isset($this->TopSpeed)) $o['TopSpeed'] = $this->TopSpeed;
if (isset($this->DriveConcept)) $o['DriveConcept'] = $this->DriveConcept;
if (isset($this->CombustionPowerHp)) $o['CombustionPowerHp'] = $this->CombustionPowerHp;
if (isset($this->ElectricPowerKw)) $o['ElectricPowerKw'] = $this->ElectricPowerKw;
if (isset($this->ElectricPowerHp)) $o['ElectricPowerHp'] = $this->ElectricPowerHp;
if (isset($this->CombinedPowerKw)) $o['CombinedPowerKw'] = $this->CombinedPowerKw;
if (isset($this->CombinedPowerHP)) $o['CombinedPowerHP'] = $this->CombinedPowerHP;
if (isset($this->EmissionCombined)) $o['EmissionCombined'] = $this->EmissionCombined;
if (isset($this->EmissionExtraUrban)) $o['EmissionExtraUrban'] = $this->EmissionExtraUrban;
if (isset($this->EmissionUrban)) $o['EmissionUrban'] = $this->EmissionUrban;
if (isset($this->EmissionDirective)) $o['EmissionDirective'] = $this->EmissionDirective;
if (isset($this->EnergyEfficiencyClass)) $o['EnergyEfficiencyClass'] = $this->EnergyEfficiencyClass;
if (isset($this->WltpCombined)) $o['WltpCombined'] = $this->WltpCombined;
if (isset($this->WltpLow)) $o['WltpLow'] = $this->WltpLow;
if (isset($this->WltpMedium)) $o['WltpMedium'] = $this->WltpMedium;
if (isset($this->WltpHigh)) $o['WltpHigh'] = $this->WltpHigh;
if (isset($this->WltpExtraHigh)) $o['WltpExtraHigh'] = $this->WltpExtraHigh;
if (isset($this->WltpEmissionCombined)) $o['WltpEmissionCombined'] = $this->WltpEmissionCombined;
if (isset($this->CreationDate)) $o['CreationDate'] = JsonConverters::to('DateTime', $this->CreationDate);
if (isset($this->LastUpdated)) $o['LastUpdated'] = JsonConverters::to('DateTime', $this->LastUpdated);
if (isset($this->DisplayStockAgent)) $o['DisplayStockAgent'] = $this->DisplayStockAgent;
if (isset($this->IsSpecialistCar)) $o['IsSpecialistCar'] = $this->IsSpecialistCar;
if (isset($this->Account)) $o['Account'] = $this->Account;
if (isset($this->Location)) $o['Location'] = $this->Location;
if (isset($this->CesarIdShipToParty)) $o['CesarIdShipToParty'] = $this->CesarIdShipToParty;
if (isset($this->VehicleUsageCode)) $o['VehicleUsageCode'] = $this->VehicleUsageCode;
if (isset($this->MbukSecured)) $o['MbukSecured'] = $this->MbukSecured;
return empty($o) ? new class(){} : $o;
}
}
class GetBackOrderMatchResponse implements JsonSerializable
{
public function __construct(
/** @var array<BackOrderVehicle>|null */
public ?array $Vehicles=null,
/** @var array<BackOrderVehicle>|null */
public ?array $ClosestMatchVehicles=null,
/** @var array<BackOrderVehicle>|null */
public ?array $OtherMatchVehicles=null,
/** @var array<BackOrderVehicle>|null */
public ?array $ModelMatchVehicles=null
) {
}
/** @throws Exception */
public function fromMap($o): void {
if (isset($o['Vehicles'])) $this->Vehicles = JsonConverters::fromArray('BackOrderVehicle', $o['Vehicles']);
if (isset($o['ClosestMatchVehicles'])) $this->ClosestMatchVehicles = JsonConverters::fromArray('BackOrderVehicle', $o['ClosestMatchVehicles']);
if (isset($o['OtherMatchVehicles'])) $this->OtherMatchVehicles = JsonConverters::fromArray('BackOrderVehicle', $o['OtherMatchVehicles']);
if (isset($o['ModelMatchVehicles'])) $this->ModelMatchVehicles = JsonConverters::fromArray('BackOrderVehicle', $o['ModelMatchVehicles']);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = [];
if (isset($this->Vehicles)) $o['Vehicles'] = JsonConverters::toArray('BackOrderVehicle', $this->Vehicles);
if (isset($this->ClosestMatchVehicles)) $o['ClosestMatchVehicles'] = JsonConverters::toArray('BackOrderVehicle', $this->ClosestMatchVehicles);
if (isset($this->OtherMatchVehicles)) $o['OtherMatchVehicles'] = JsonConverters::toArray('BackOrderVehicle', $this->OtherMatchVehicles);
if (isset($this->ModelMatchVehicles)) $o['ModelMatchVehicles'] = JsonConverters::toArray('BackOrderVehicle', $this->ModelMatchVehicles);
return empty($o) ? new class(){} : $o;
}
}
class GetBackOrderVehicleMatchRequest extends GetBackOrderMatchRequest implements IGet, JsonSerializable
{
/**
* @param string $Guid
*/
public function __construct(
string $Guid=''
) {
parent::__construct($Guid);
}
/** @throws Exception */
public function fromMap($o): void {
parent::fromMap($o);
}
/** @throws Exception */
public function jsonSerialize(): mixed
{
$o = parent::jsonSerialize();
return empty($o) ? new class(){} : $o;
}
}
PHP GetBackOrderVehicleMatchRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/backorder/match/{Guid} HTTP/1.1 Host: prod-api-agency-orch-mb-dhc.rapp-customers.co.uk Accept: application/json
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"Vehicles":[{"VehicleUsage":"String","UnderOffer":false,"Vid":"String","Fin":"String","ModelYear":"String","RetailPrice_IncVAT":0,"IsAMG":false,"Nst":"String","BM7NST":"String","Acceleration":0,"BootCapacity":0,"TopSpeed":0,"DriveConcept":"String","CombustionPowerHp":0,"ElectricPowerKw":0,"ElectricPowerHp":0,"CombinedPowerKw":0,"CombinedPowerHP":0,"EmissionCombined":"String","EmissionExtraUrban":"String","EmissionUrban":"String","EmissionDirective":"String","EnergyEfficiencyClass":"String","WltpCombined":0,"WltpLow":0,"WltpMedium":0,"WltpHigh":0,"WltpExtraHigh":0,"WltpEmissionCombined":0,"CreationDate":"\/Date(-62135596800000-0000)\/","LastUpdated":"\/Date(-62135596800000-0000)\/","DisplayStockAgent":"String","IsSpecialistCar":false,"Account":"String","Location":"String","CesarIdShipToParty":"String","VehicleUsageCode":"String","MbukSecured":false,"RetailPrice_ExVAT":"String","OTR":"String","ActualPrice":"String","TotalOfferValue":"String","IsHOBackOrderAccountVehicle":false,"ConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionExtraUrban":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionUrban":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionExtraHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionLow":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionMedium":{"Id":0,"Lkm":0,"Mpg":0},"EquipmentCategories":[{"Order":0,"Code":"String","Description":"String","Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}]}],"VehicleEnergyEfficiencyClass":{"Colour":"String","Rating":"String"},"VehicleData":[{"Description":"String","Value":"String"}],"IntegratedProducts":[{"OptionCode":"String","BM7NST":"String","FullModelYear":"String","IntegratedProductType":"String","CustomerDescription":"String","OneAgentProductType":"String"}],"IspVehicleCustomerDescriptions":["String"],"ColourCode":"String","UpholsteryCode":"String","Description":"String","CommissionNumber":"String","PortArrivalDate":"String","OfferExpiryDate":"String","Fuel":"String","Transmission":"String","TransmissionType":"String","Colour":"String","ColourDescription":"String","ImageUrl":"String","Specialist":false,"VehicleCriteriaMatch":{"Fuel":false,"Transmission":false,"Colour":false,"Upholstery":false,"Line":false,"Engine":false,"BodyStyle":false,"Packages":false},"ColourGroup":"String","Model":"String","BodyStyle":"String","Brand":"String","Engine":"String","EngineDescription":"String","Line":"String","Upholstery":"String","UpholsteryDescription":"String","Packages":["String"],"P11D":0,"Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"LIST_PRICE"}],"VehicleClass":"String","ProductRange":"String","VehicleType":"String","Emission":0,"Baumuster":"String","IsSellable":false,"Bm7NST":"String","ElectricRange":0,"ElectricConsumption":0,"IsDisplayStock":false,"DisplayRetailer_Id":0,"DisplayRetailer":"String","DisplayRetailerGssnId":"String","Retailer":{"Id":0,"GssnId":"String","Description":"String","Street":"String","City":"String","Postcode":"String","GoogleMapPostcode":"String","Phone":"String","Fax":"String","Email":"String","Website":"String","RetailerGroupId":"String","RetailerGroupName":"String","IsOnline":false,"IsNewCarRetailer":false,"IsUsedCarRetailer":false,"IsCentralRetailer":false,"ChatEnabled":false,"TradeInEnabled":false,"smart":false,"DisplayPhoneNumberNew":"String","DisplayPhoneNumberUsed":"String","Latitude":0,"Longitude":0,"smartDescription":"String","smartWebsite":"String","smartPhone":"String","LegacyId":"String","Agent":false,"MarketAreaId":0,"DigitalLoungeParentGssnId":"String","SendLeadsToDigitalLoungeParent":false,"OpeningTimes":{"New":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}],"Used":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}]}},"Age":0,"ModelYearCode":"String","HalfModelYearCode":"String","FullModelYearCode":"String","ProductionDate":"String","ChassisNumber":"String","EligibleForIntegratedServiceCare":false,"Vin":"String"}],"ClosestMatchVehicles":[{"VehicleUsage":"String","UnderOffer":false,"Vid":"String","Fin":"String","ModelYear":"String","RetailPrice_IncVAT":0,"IsAMG":false,"Nst":"String","BM7NST":"String","Acceleration":0,"BootCapacity":0,"TopSpeed":0,"DriveConcept":"String","CombustionPowerHp":0,"ElectricPowerKw":0,"ElectricPowerHp":0,"CombinedPowerKw":0,"CombinedPowerHP":0,"EmissionCombined":"String","EmissionExtraUrban":"String","EmissionUrban":"String","EmissionDirective":"String","EnergyEfficiencyClass":"String","WltpCombined":0,"WltpLow":0,"WltpMedium":0,"WltpHigh":0,"WltpExtraHigh":0,"WltpEmissionCombined":0,"CreationDate":"\/Date(-62135596800000-0000)\/","LastUpdated":"\/Date(-62135596800000-0000)\/","DisplayStockAgent":"String","IsSpecialistCar":false,"Account":"String","Location":"String","CesarIdShipToParty":"String","VehicleUsageCode":"String","MbukSecured":false,"RetailPrice_ExVAT":"String","OTR":"String","ActualPrice":"String","TotalOfferValue":"String","IsHOBackOrderAccountVehicle":false,"ConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionExtraUrban":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionUrban":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionExtraHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionLow":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionMedium":{"Id":0,"Lkm":0,"Mpg":0},"EquipmentCategories":[{"Order":0,"Code":"String","Description":"String","Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}]}],"VehicleEnergyEfficiencyClass":{"Colour":"String","Rating":"String"},"VehicleData":[{"Description":"String","Value":"String"}],"IntegratedProducts":[{"OptionCode":"String","BM7NST":"String","FullModelYear":"String","IntegratedProductType":"String","CustomerDescription":"String","OneAgentProductType":"String"}],"IspVehicleCustomerDescriptions":["String"],"ColourCode":"String","UpholsteryCode":"String","Description":"String","CommissionNumber":"String","PortArrivalDate":"String","OfferExpiryDate":"String","Fuel":"String","Transmission":"String","TransmissionType":"String","Colour":"String","ColourDescription":"String","ImageUrl":"String","Specialist":false,"VehicleCriteriaMatch":{"Fuel":false,"Transmission":false,"Colour":false,"Upholstery":false,"Line":false,"Engine":false,"BodyStyle":false,"Packages":false},"ColourGroup":"String","Model":"String","BodyStyle":"String","Brand":"String","Engine":"String","EngineDescription":"String","Line":"String","Upholstery":"String","UpholsteryDescription":"String","Packages":["String"],"P11D":0,"Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"LIST_PRICE"}],"VehicleClass":"String","ProductRange":"String","VehicleType":"String","Emission":0,"Baumuster":"String","IsSellable":false,"Bm7NST":"String","ElectricRange":0,"ElectricConsumption":0,"IsDisplayStock":false,"DisplayRetailer_Id":0,"DisplayRetailer":"String","DisplayRetailerGssnId":"String","Retailer":{"Id":0,"GssnId":"String","Description":"String","Street":"String","City":"String","Postcode":"String","GoogleMapPostcode":"String","Phone":"String","Fax":"String","Email":"String","Website":"String","RetailerGroupId":"String","RetailerGroupName":"String","IsOnline":false,"IsNewCarRetailer":false,"IsUsedCarRetailer":false,"IsCentralRetailer":false,"ChatEnabled":false,"TradeInEnabled":false,"smart":false,"DisplayPhoneNumberNew":"String","DisplayPhoneNumberUsed":"String","Latitude":0,"Longitude":0,"smartDescription":"String","smartWebsite":"String","smartPhone":"String","LegacyId":"String","Agent":false,"MarketAreaId":0,"DigitalLoungeParentGssnId":"String","SendLeadsToDigitalLoungeParent":false,"OpeningTimes":{"New":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}],"Used":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}]}},"Age":0,"ModelYearCode":"String","HalfModelYearCode":"String","FullModelYearCode":"String","ProductionDate":"String","ChassisNumber":"String","EligibleForIntegratedServiceCare":false,"Vin":"String"}],"OtherMatchVehicles":[{"VehicleUsage":"String","UnderOffer":false,"Vid":"String","Fin":"String","ModelYear":"String","RetailPrice_IncVAT":0,"IsAMG":false,"Nst":"String","BM7NST":"String","Acceleration":0,"BootCapacity":0,"TopSpeed":0,"DriveConcept":"String","CombustionPowerHp":0,"ElectricPowerKw":0,"ElectricPowerHp":0,"CombinedPowerKw":0,"CombinedPowerHP":0,"EmissionCombined":"String","EmissionExtraUrban":"String","EmissionUrban":"String","EmissionDirective":"String","EnergyEfficiencyClass":"String","WltpCombined":0,"WltpLow":0,"WltpMedium":0,"WltpHigh":0,"WltpExtraHigh":0,"WltpEmissionCombined":0,"CreationDate":"\/Date(-62135596800000-0000)\/","LastUpdated":"\/Date(-62135596800000-0000)\/","DisplayStockAgent":"String","IsSpecialistCar":false,"Account":"String","Location":"String","CesarIdShipToParty":"String","VehicleUsageCode":"String","MbukSecured":false,"RetailPrice_ExVAT":"String","OTR":"String","ActualPrice":"String","TotalOfferValue":"String","IsHOBackOrderAccountVehicle":false,"ConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionExtraUrban":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionUrban":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionExtraHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionLow":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionMedium":{"Id":0,"Lkm":0,"Mpg":0},"EquipmentCategories":[{"Order":0,"Code":"String","Description":"String","Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}]}],"VehicleEnergyEfficiencyClass":{"Colour":"String","Rating":"String"},"VehicleData":[{"Description":"String","Value":"String"}],"IntegratedProducts":[{"OptionCode":"String","BM7NST":"String","FullModelYear":"String","IntegratedProductType":"String","CustomerDescription":"String","OneAgentProductType":"String"}],"IspVehicleCustomerDescriptions":["String"],"ColourCode":"String","UpholsteryCode":"String","Description":"String","CommissionNumber":"String","PortArrivalDate":"String","OfferExpiryDate":"String","Fuel":"String","Transmission":"String","TransmissionType":"String","Colour":"String","ColourDescription":"String","ImageUrl":"String","Specialist":false,"VehicleCriteriaMatch":{"Fuel":false,"Transmission":false,"Colour":false,"Upholstery":false,"Line":false,"Engine":false,"BodyStyle":false,"Packages":false},"ColourGroup":"String","Model":"String","BodyStyle":"String","Brand":"String","Engine":"String","EngineDescription":"String","Line":"String","Upholstery":"String","UpholsteryDescription":"String","Packages":["String"],"P11D":0,"Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"LIST_PRICE"}],"VehicleClass":"String","ProductRange":"String","VehicleType":"String","Emission":0,"Baumuster":"String","IsSellable":false,"Bm7NST":"String","ElectricRange":0,"ElectricConsumption":0,"IsDisplayStock":false,"DisplayRetailer_Id":0,"DisplayRetailer":"String","DisplayRetailerGssnId":"String","Retailer":{"Id":0,"GssnId":"String","Description":"String","Street":"String","City":"String","Postcode":"String","GoogleMapPostcode":"String","Phone":"String","Fax":"String","Email":"String","Website":"String","RetailerGroupId":"String","RetailerGroupName":"String","IsOnline":false,"IsNewCarRetailer":false,"IsUsedCarRetailer":false,"IsCentralRetailer":false,"ChatEnabled":false,"TradeInEnabled":false,"smart":false,"DisplayPhoneNumberNew":"String","DisplayPhoneNumberUsed":"String","Latitude":0,"Longitude":0,"smartDescription":"String","smartWebsite":"String","smartPhone":"String","LegacyId":"String","Agent":false,"MarketAreaId":0,"DigitalLoungeParentGssnId":"String","SendLeadsToDigitalLoungeParent":false,"OpeningTimes":{"New":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}],"Used":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}]}},"Age":0,"ModelYearCode":"String","HalfModelYearCode":"String","FullModelYearCode":"String","ProductionDate":"String","ChassisNumber":"String","EligibleForIntegratedServiceCare":false,"Vin":"String"}],"ModelMatchVehicles":[{"VehicleUsage":"String","UnderOffer":false,"Vid":"String","Fin":"String","ModelYear":"String","RetailPrice_IncVAT":0,"IsAMG":false,"Nst":"String","BM7NST":"String","Acceleration":0,"BootCapacity":0,"TopSpeed":0,"DriveConcept":"String","CombustionPowerHp":0,"ElectricPowerKw":0,"ElectricPowerHp":0,"CombinedPowerKw":0,"CombinedPowerHP":0,"EmissionCombined":"String","EmissionExtraUrban":"String","EmissionUrban":"String","EmissionDirective":"String","EnergyEfficiencyClass":"String","WltpCombined":0,"WltpLow":0,"WltpMedium":0,"WltpHigh":0,"WltpExtraHigh":0,"WltpEmissionCombined":0,"CreationDate":"\/Date(-62135596800000-0000)\/","LastUpdated":"\/Date(-62135596800000-0000)\/","DisplayStockAgent":"String","IsSpecialistCar":false,"Account":"String","Location":"String","CesarIdShipToParty":"String","VehicleUsageCode":"String","MbukSecured":false,"RetailPrice_ExVAT":"String","OTR":"String","ActualPrice":"String","TotalOfferValue":"String","IsHOBackOrderAccountVehicle":false,"ConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionExtraUrban":{"Id":0,"Lkm":0,"Mpg":0},"ConsumptionUrban":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionCombined":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionExtraHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionHigh":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionLow":{"Id":0,"Lkm":0,"Mpg":0},"WltpFuelConsumptionMedium":{"Id":0,"Lkm":0,"Mpg":0},"EquipmentCategories":[{"Order":0,"Code":"String","Description":"String","Equipment":[{"Importance":0,"IsAdditional":false,"Id":0,"Code":"String","Description":"String"}]}],"VehicleEnergyEfficiencyClass":{"Colour":"String","Rating":"String"},"VehicleData":[{"Description":"String","Value":"String"}],"IntegratedProducts":[{"OptionCode":"String","BM7NST":"String","FullModelYear":"String","IntegratedProductType":"String","CustomerDescription":"String","OneAgentProductType":"String"}],"IspVehicleCustomerDescriptions":["String"],"ColourCode":"String","UpholsteryCode":"String","Description":"String","CommissionNumber":"String","PortArrivalDate":"String","OfferExpiryDate":"String","Fuel":"String","Transmission":"String","TransmissionType":"String","Colour":"String","ColourDescription":"String","ImageUrl":"String","Specialist":false,"VehicleCriteriaMatch":{"Fuel":false,"Transmission":false,"Colour":false,"Upholstery":false,"Line":false,"Engine":false,"BodyStyle":false,"Packages":false},"ColourGroup":"String","Model":"String","BodyStyle":"String","Brand":"String","Engine":"String","EngineDescription":"String","Line":"String","Upholstery":"String","UpholsteryDescription":"String","Packages":["String"],"P11D":0,"Prices":[{"Id":"String","Description":"String","Net":0,"VAT":0,"Gross":0,"Product":"LIST_PRICE"}],"VehicleClass":"String","ProductRange":"String","VehicleType":"String","Emission":0,"Baumuster":"String","IsSellable":false,"Bm7NST":"String","ElectricRange":0,"ElectricConsumption":0,"IsDisplayStock":false,"DisplayRetailer_Id":0,"DisplayRetailer":"String","DisplayRetailerGssnId":"String","Retailer":{"Id":0,"GssnId":"String","Description":"String","Street":"String","City":"String","Postcode":"String","GoogleMapPostcode":"String","Phone":"String","Fax":"String","Email":"String","Website":"String","RetailerGroupId":"String","RetailerGroupName":"String","IsOnline":false,"IsNewCarRetailer":false,"IsUsedCarRetailer":false,"IsCentralRetailer":false,"ChatEnabled":false,"TradeInEnabled":false,"smart":false,"DisplayPhoneNumberNew":"String","DisplayPhoneNumberUsed":"String","Latitude":0,"Longitude":0,"smartDescription":"String","smartWebsite":"String","smartPhone":"String","LegacyId":"String","Agent":false,"MarketAreaId":0,"DigitalLoungeParentGssnId":"String","SendLeadsToDigitalLoungeParent":false,"OpeningTimes":{"New":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}],"Used":[{"Day":"String","OpenFrom":"String","OpenTo":"String","Special":"String"}]}},"Age":0,"ModelYearCode":"String","HalfModelYearCode":"String","FullModelYearCode":"String","ProductionDate":"String","ChassisNumber":"String","EligibleForIntegratedServiceCare":false,"Vin":"String"}]}