/* Options: Date: 2025-05-05 19:06:55 Version: 8.61 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://prod-api-agency-orch-mb-dhc.rapp-customers.co.uk //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: MotabilityInflightPricingRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class OutrightPurchase implements IConvertible { bool? IsOutrightPurchase; String? Reference; double? DiscountRate; String? Bm7NST; bool? IsBackOrder; bool? IsCOPConverter; OutrightPurchase({this.IsOutrightPurchase,this.Reference,this.DiscountRate,this.Bm7NST,this.IsBackOrder,this.IsCOPConverter}); OutrightPurchase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { IsOutrightPurchase = json['IsOutrightPurchase']; Reference = json['Reference']; DiscountRate = JsonConverters.toDouble(json['DiscountRate']); Bm7NST = json['Bm7NST']; IsBackOrder = json['IsBackOrder']; IsCOPConverter = json['IsCOPConverter']; return this; } Map toJson() => { 'IsOutrightPurchase': IsOutrightPurchase, 'Reference': Reference, 'DiscountRate': DiscountRate, 'Bm7NST': Bm7NST, 'IsBackOrder': IsBackOrder, 'IsCOPConverter': IsCOPConverter }; getTypeName() => "OutrightPurchase"; TypeContext? context = _ctx; } class OrderOffer implements IConvertible { int? Id; int? OfferTypeId; String? OfferTypeDescription; String? OfferId; String? OfferDescription; double? Net; double? VAT; double? Gross; bool? GovernmentGrant; String? PromoCode; String? Expiry; bool? AffectsPrice; int? Product; String? ParentId; DateTime? CreationDate; String? ProductTypeDescription; String? ProductTypeNegativeDescription; bool? CertificateRequired; OrderOffer({this.Id,this.OfferTypeId,this.OfferTypeDescription,this.OfferId,this.OfferDescription,this.Net,this.VAT,this.Gross,this.GovernmentGrant,this.PromoCode,this.Expiry,this.AffectsPrice,this.Product,this.ParentId,this.CreationDate,this.ProductTypeDescription,this.ProductTypeNegativeDescription,this.CertificateRequired}); OrderOffer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; OfferTypeId = json['OfferTypeId']; OfferTypeDescription = json['OfferTypeDescription']; OfferId = json['OfferId']; OfferDescription = json['OfferDescription']; Net = JsonConverters.toDouble(json['Net']); VAT = JsonConverters.toDouble(json['VAT']); Gross = JsonConverters.toDouble(json['Gross']); GovernmentGrant = json['GovernmentGrant']; PromoCode = json['PromoCode']; Expiry = json['Expiry']; AffectsPrice = json['AffectsPrice']; Product = json['Product']; ParentId = json['ParentId']; CreationDate = JsonConverters.fromJson(json['CreationDate'],'DateTime',context!); ProductTypeDescription = json['ProductTypeDescription']; ProductTypeNegativeDescription = json['ProductTypeNegativeDescription']; CertificateRequired = json['CertificateRequired']; return this; } Map toJson() => { 'Id': Id, 'OfferTypeId': OfferTypeId, 'OfferTypeDescription': OfferTypeDescription, 'OfferId': OfferId, 'OfferDescription': OfferDescription, 'Net': Net, 'VAT': VAT, 'Gross': Gross, 'GovernmentGrant': GovernmentGrant, 'PromoCode': PromoCode, 'Expiry': Expiry, 'AffectsPrice': AffectsPrice, 'Product': Product, 'ParentId': ParentId, 'CreationDate': JsonConverters.toJson(CreationDate,'DateTime',context!), 'ProductTypeDescription': ProductTypeDescription, 'ProductTypeNegativeDescription': ProductTypeNegativeDescription, 'CertificateRequired': CertificateRequired }; getTypeName() => "OrderOffer"; TypeContext? context = _ctx; } class MotabilityAdvancePayment implements IConvertible { String? AdvancePaymentRentalType; double? AdvancePaymentValueGross; double? AdvancePaymentValueVAT; double? AdvancePaymentValueNet; MotabilityAdvancePayment({this.AdvancePaymentRentalType,this.AdvancePaymentValueGross,this.AdvancePaymentValueVAT,this.AdvancePaymentValueNet}); MotabilityAdvancePayment.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AdvancePaymentRentalType = json['AdvancePaymentRentalType']; AdvancePaymentValueGross = JsonConverters.toDouble(json['AdvancePaymentValueGross']); AdvancePaymentValueVAT = JsonConverters.toDouble(json['AdvancePaymentValueVAT']); AdvancePaymentValueNet = JsonConverters.toDouble(json['AdvancePaymentValueNet']); return this; } Map toJson() => { 'AdvancePaymentRentalType': AdvancePaymentRentalType, 'AdvancePaymentValueGross': AdvancePaymentValueGross, 'AdvancePaymentValueVAT': AdvancePaymentValueVAT, 'AdvancePaymentValueNet': AdvancePaymentValueNet }; getTypeName() => "MotabilityAdvancePayment"; TypeContext? context = _ctx; } class InflightPricingOrder implements IConvertible { String? Guid; String? Vin; int? AdvanceRentalPaymentType; List? Offer = []; OutrightPurchase? OutrightPurchase; MotabilityAdvancePayment? MotabilityAdvancePayment; InflightPricingOrder({this.Guid,this.Vin,this.AdvanceRentalPaymentType,this.Offer,this.OutrightPurchase,this.MotabilityAdvancePayment}); InflightPricingOrder.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Guid = json['Guid']; Vin = json['Vin']; AdvanceRentalPaymentType = json['AdvanceRentalPaymentType']; Offer = JsonConverters.fromJson(json['Offer'],'List',context!); OutrightPurchase = JsonConverters.fromJson(json['OutrightPurchase'],'OutrightPurchase',context!); MotabilityAdvancePayment = JsonConverters.fromJson(json['MotabilityAdvancePayment'],'MotabilityAdvancePayment',context!); return this; } Map toJson() => { 'Guid': Guid, 'Vin': Vin, 'AdvanceRentalPaymentType': AdvanceRentalPaymentType, 'Offer': JsonConverters.toJson(Offer,'List',context!), 'OutrightPurchase': JsonConverters.toJson(OutrightPurchase,'OutrightPurchase',context!), 'MotabilityAdvancePayment': JsonConverters.toJson(MotabilityAdvancePayment,'MotabilityAdvancePayment',context!) }; getTypeName() => "InflightPricingOrder"; TypeContext? context = _ctx; } class InflightPricingOrderRequest implements IConvertible { List? InvalidFormatGuids = []; List? OrderNotFoundGuids = []; List? InflightPricingOrders = []; bool? IsMotability; InflightPricingOrderRequest({this.InvalidFormatGuids,this.OrderNotFoundGuids,this.InflightPricingOrders,this.IsMotability}); InflightPricingOrderRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { InvalidFormatGuids = JsonConverters.fromJson(json['InvalidFormatGuids'],'List',context!); OrderNotFoundGuids = JsonConverters.fromJson(json['OrderNotFoundGuids'],'List',context!); InflightPricingOrders = JsonConverters.fromJson(json['InflightPricingOrders'],'List',context!); IsMotability = json['IsMotability']; return this; } Map toJson() => { 'InvalidFormatGuids': JsonConverters.toJson(InvalidFormatGuids,'List',context!), 'OrderNotFoundGuids': JsonConverters.toJson(OrderNotFoundGuids,'List',context!), 'InflightPricingOrders': JsonConverters.toJson(InflightPricingOrders,'List',context!), 'IsMotability': IsMotability }; getTypeName() => "InflightPricingOrderRequest"; TypeContext? context = _ctx; } class MotabilityInflightPricingOrderRequest extends InflightPricingOrderRequest implements IConvertible { List? OrderVehicleWithNoMotabilityDiscount = []; MotabilityInflightPricingOrderRequest({this.OrderVehicleWithNoMotabilityDiscount}); MotabilityInflightPricingOrderRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); OrderVehicleWithNoMotabilityDiscount = JsonConverters.fromJson(json['OrderVehicleWithNoMotabilityDiscount'],'List',context!); return this; } Map toJson() => super.toJson()..addAll({ 'OrderVehicleWithNoMotabilityDiscount': JsonConverters.toJson(OrderVehicleWithNoMotabilityDiscount,'List',context!) }); getTypeName() => "MotabilityInflightPricingOrderRequest"; TypeContext? context = _ctx; } class SalesforcePrice implements IConvertible { String? Id; String? Description; double? Net; double? VAT; double? Gross; String? Product; SalesforcePrice({this.Id,this.Description,this.Net,this.VAT,this.Gross,this.Product}); SalesforcePrice.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Description = json['Description']; Net = JsonConverters.toDouble(json['Net']); VAT = JsonConverters.toDouble(json['VAT']); Gross = JsonConverters.toDouble(json['Gross']); Product = json['Product']; return this; } Map toJson() => { 'Id': Id, 'Description': Description, 'Net': Net, 'VAT': VAT, 'Gross': Gross, 'Product': Product }; getTypeName() => "SalesforcePrice"; TypeContext? context = _ctx; } class SalesforceTotalPrice implements IConvertible { double? Net; double? VAT; double? Gross; SalesforceTotalPrice({this.Net,this.VAT,this.Gross}); SalesforceTotalPrice.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Net = JsonConverters.toDouble(json['Net']); VAT = JsonConverters.toDouble(json['VAT']); Gross = JsonConverters.toDouble(json['Gross']); return this; } Map toJson() => { 'Net': Net, 'VAT': VAT, 'Gross': Gross }; getTypeName() => "SalesforceTotalPrice"; TypeContext? context = _ctx; } class SalesforceOffer implements IConvertible { String? Id; String? Description; double? Net; double? VAT; double? Gross; String? Expiry; String? Product; bool? RequiresCertification; SalesforceOffer({this.Id,this.Description,this.Net,this.VAT,this.Gross,this.Expiry,this.Product,this.RequiresCertification}); SalesforceOffer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; Description = json['Description']; Net = JsonConverters.toDouble(json['Net']); VAT = JsonConverters.toDouble(json['VAT']); Gross = JsonConverters.toDouble(json['Gross']); Expiry = json['Expiry']; Product = json['Product']; RequiresCertification = json['RequiresCertification']; return this; } Map toJson() => { 'Id': Id, 'Description': Description, 'Net': Net, 'VAT': VAT, 'Gross': Gross, 'Expiry': Expiry, 'Product': Product, 'RequiresCertification': RequiresCertification }; getTypeName() => "SalesforceOffer"; TypeContext? context = _ctx; } class SalesforceOffers implements IConvertible { List? Personalised = []; List? NonDiscretionary = []; List? NonCampaign = []; List? OutrightPurchaseDiscount = []; List? MotabilityDiscount = []; List? IntegratedProducts = []; SalesforceOffers({this.Personalised,this.NonDiscretionary,this.NonCampaign,this.OutrightPurchaseDiscount,this.MotabilityDiscount,this.IntegratedProducts}); SalesforceOffers.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Personalised = JsonConverters.fromJson(json['Personalised'],'List',context!); NonDiscretionary = JsonConverters.fromJson(json['NonDiscretionary'],'List',context!); NonCampaign = JsonConverters.fromJson(json['NonCampaign'],'List',context!); OutrightPurchaseDiscount = JsonConverters.fromJson(json['OutrightPurchaseDiscount'],'List',context!); MotabilityDiscount = JsonConverters.fromJson(json['MotabilityDiscount'],'List',context!); IntegratedProducts = JsonConverters.fromJson(json['IntegratedProducts'],'List',context!); return this; } Map toJson() => { 'Personalised': JsonConverters.toJson(Personalised,'List',context!), 'NonDiscretionary': JsonConverters.toJson(NonDiscretionary,'List',context!), 'NonCampaign': JsonConverters.toJson(NonCampaign,'List',context!), 'OutrightPurchaseDiscount': JsonConverters.toJson(OutrightPurchaseDiscount,'List',context!), 'MotabilityDiscount': JsonConverters.toJson(MotabilityDiscount,'List',context!), 'IntegratedProducts': JsonConverters.toJson(IntegratedProducts,'List',context!) }; getTypeName() => "SalesforceOffers"; TypeContext? context = _ctx; } class SalesforceOutrightPurchase implements IConvertible { bool? IsOutrightPurchase; String? Reference; double? DiscountPercentage; String? ModelId; SalesforceOutrightPurchase({this.IsOutrightPurchase,this.Reference,this.DiscountPercentage,this.ModelId}); SalesforceOutrightPurchase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { IsOutrightPurchase = json['IsOutrightPurchase']; Reference = json['Reference']; DiscountPercentage = JsonConverters.toDouble(json['DiscountPercentage']); ModelId = json['ModelId']; return this; } Map toJson() => { 'IsOutrightPurchase': IsOutrightPurchase, 'Reference': Reference, 'DiscountPercentage': DiscountPercentage, 'ModelId': ModelId }; getTypeName() => "SalesforceOutrightPurchase"; TypeContext? context = _ctx; } class VehicleInflightPrice implements IConvertible { String? Guid; String? Status; bool? Success; List? Prices = []; SalesforceTotalPrice? TotalOTRFees; SalesforceTotalPrice? TotalOTRPrice; SalesforceTotalPrice? TotalActualPrice; SalesforceOffers? Offers; SalesforceOutrightPurchase? OutrightPurchase; MotabilityAdvancePayment? Motability; VehicleInflightPrice({this.Guid,this.Status,this.Success,this.Prices,this.TotalOTRFees,this.TotalOTRPrice,this.TotalActualPrice,this.Offers,this.OutrightPurchase,this.Motability}); VehicleInflightPrice.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Guid = json['Guid']; Status = json['Status']; Success = json['Success']; Prices = JsonConverters.fromJson(json['Prices'],'List',context!); TotalOTRFees = JsonConverters.fromJson(json['TotalOTRFees'],'SalesforceTotalPrice',context!); TotalOTRPrice = JsonConverters.fromJson(json['TotalOTRPrice'],'SalesforceTotalPrice',context!); TotalActualPrice = JsonConverters.fromJson(json['TotalActualPrice'],'SalesforceTotalPrice',context!); Offers = JsonConverters.fromJson(json['Offers'],'SalesforceOffers',context!); OutrightPurchase = JsonConverters.fromJson(json['OutrightPurchase'],'SalesforceOutrightPurchase',context!); Motability = JsonConverters.fromJson(json['Motability'],'MotabilityAdvancePayment',context!); return this; } Map toJson() => { 'Guid': Guid, 'Status': Status, 'Success': Success, 'Prices': JsonConverters.toJson(Prices,'List',context!), 'TotalOTRFees': JsonConverters.toJson(TotalOTRFees,'SalesforceTotalPrice',context!), 'TotalOTRPrice': JsonConverters.toJson(TotalOTRPrice,'SalesforceTotalPrice',context!), 'TotalActualPrice': JsonConverters.toJson(TotalActualPrice,'SalesforceTotalPrice',context!), 'Offers': JsonConverters.toJson(Offers,'SalesforceOffers',context!), 'OutrightPurchase': JsonConverters.toJson(OutrightPurchase,'SalesforceOutrightPurchase',context!), 'Motability': JsonConverters.toJson(Motability,'MotabilityAdvancePayment',context!) }; getTypeName() => "VehicleInflightPrice"; TypeContext? context = _ctx; } class InflightPricingResponse implements IConvertible { List? VehiclesInflightPrices = []; InflightPricingResponse({this.VehiclesInflightPrices}); InflightPricingResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { VehiclesInflightPrices = JsonConverters.fromJson(json['VehiclesInflightPrices'],'List',context!); return this; } Map toJson() => { 'VehiclesInflightPrices': JsonConverters.toJson(VehiclesInflightPrices,'List',context!) }; getTypeName() => "InflightPricingResponse"; TypeContext? context = _ctx; } // @Route("/v1/motabilityinflightpricing", "POST") // @ApiResponse(Description="In Flight pricing generated", StatusCode=200) class MotabilityInflightPricingRequest extends MotabilityInflightPricingOrderRequest implements IReturn, IPost, IConvertible { MotabilityInflightPricingRequest(); MotabilityInflightPricingRequest.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); createResponse() => InflightPricingResponse(); getResponseTypeName() => "InflightPricingResponse"; getTypeName() => "MotabilityInflightPricingRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'prod_api_agency_orch_mb_dhc.rapp_customers.co.uk', types: { 'OutrightPurchase': TypeInfo(TypeOf.Class, create:() => OutrightPurchase()), 'OrderOffer': TypeInfo(TypeOf.Class, create:() => OrderOffer()), 'MotabilityAdvancePayment': TypeInfo(TypeOf.Class, create:() => MotabilityAdvancePayment()), 'InflightPricingOrder': TypeInfo(TypeOf.Class, create:() => InflightPricingOrder()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'InflightPricingOrderRequest': TypeInfo(TypeOf.Class, create:() => InflightPricingOrderRequest()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'MotabilityInflightPricingOrderRequest': TypeInfo(TypeOf.Class, create:() => MotabilityInflightPricingOrderRequest()), 'SalesforcePrice': TypeInfo(TypeOf.Class, create:() => SalesforcePrice()), 'SalesforceTotalPrice': TypeInfo(TypeOf.Class, create:() => SalesforceTotalPrice()), 'SalesforceOffer': TypeInfo(TypeOf.Class, create:() => SalesforceOffer()), 'SalesforceOffers': TypeInfo(TypeOf.Class, create:() => SalesforceOffers()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SalesforceOutrightPurchase': TypeInfo(TypeOf.Class, create:() => SalesforceOutrightPurchase()), 'VehicleInflightPrice': TypeInfo(TypeOf.Class, create:() => VehicleInflightPrice()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'InflightPricingResponse': TypeInfo(TypeOf.Class, create:() => InflightPricingResponse()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'MotabilityInflightPricingRequest': TypeInfo(TypeOf.Class, create:() => MotabilityInflightPricingRequest()), });