/* Options: Date: 2025-06-26 02:18:38 Version: 6.00 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: http://webservices.mbukdatabase.co.uk/MBOnlineCreditApplicationService //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateOCAv2Request.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; class PaymentDetails implements IConvertible { List? paymentDetails; PaymentDetails({this.paymentDetails}); PaymentDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { paymentDetails = JsonConverters.fromJson(json['paymentDetails'],'List',context!); return this; } Map toJson() => { 'paymentDetails': JsonConverters.toJson(paymentDetails,'List',context!) }; getTypeName() => "PaymentDetails"; TypeContext? context = _ctx; } class DiPDetails implements IConvertible { String? DiPCustomerId; String? DiPTimestamp; String? DiPRequestID; String? DiPDecisionType; String? DiPPrimaryDecisionCode; String? DiPDecisionDescription; String? DipDecisionDescriptionCode; String? DipPrimaryDecisionReason; String? DiPPrimaryDecisionReasonDealerMessage; List? diPReasons; DiPDetails({this.DiPCustomerId,this.DiPTimestamp,this.DiPRequestID,this.DiPDecisionType,this.DiPPrimaryDecisionCode,this.DiPDecisionDescription,this.DipDecisionDescriptionCode,this.DipPrimaryDecisionReason,this.DiPPrimaryDecisionReasonDealerMessage,this.diPReasons}); DiPDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { DiPCustomerId = json['DiPCustomerId']; DiPTimestamp = json['DiPTimestamp']; DiPRequestID = json['DiPRequestID']; DiPDecisionType = json['DiPDecisionType']; DiPPrimaryDecisionCode = json['DiPPrimaryDecisionCode']; DiPDecisionDescription = json['DiPDecisionDescription']; DipDecisionDescriptionCode = json['DipDecisionDescriptionCode']; DipPrimaryDecisionReason = json['DipPrimaryDecisionReason']; DiPPrimaryDecisionReasonDealerMessage = json['DiPPrimaryDecisionReasonDealerMessage']; diPReasons = JsonConverters.fromJson(json['diPReasons'],'List',context!); return this; } Map toJson() => { 'DiPCustomerId': DiPCustomerId, 'DiPTimestamp': DiPTimestamp, 'DiPRequestID': DiPRequestID, 'DiPDecisionType': DiPDecisionType, 'DiPPrimaryDecisionCode': DiPPrimaryDecisionCode, 'DiPDecisionDescription': DiPDecisionDescription, 'DipDecisionDescriptionCode': DipDecisionDescriptionCode, 'DipPrimaryDecisionReason': DipPrimaryDecisionReason, 'DiPPrimaryDecisionReasonDealerMessage': DiPPrimaryDecisionReasonDealerMessage, 'diPReasons': JsonConverters.toJson(diPReasons,'List',context!) }; getTypeName() => "DiPDetails"; TypeContext? context = _ctx; } class GeneralDetailsv2 implements IConvertible { String? OCAApprovalNumber; String? EnquiryDateTime; int? Brand; String? CustomerReferenceNumber; String? CustomerType; String? SourceofBusiness; String? TagURL; int? RequestSource; String? FormID; String? ProposalCreated; String? LoadFullData; String? ProposalNumber; String? POSSystem; GeneralDetailsv2({this.OCAApprovalNumber,this.EnquiryDateTime,this.Brand,this.CustomerReferenceNumber,this.CustomerType,this.SourceofBusiness,this.TagURL,this.RequestSource,this.FormID,this.ProposalCreated,this.LoadFullData,this.ProposalNumber,this.POSSystem}); GeneralDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { OCAApprovalNumber = json['OCAApprovalNumber']; EnquiryDateTime = json['EnquiryDateTime']; Brand = json['Brand']; CustomerReferenceNumber = json['CustomerReferenceNumber']; CustomerType = json['CustomerType']; SourceofBusiness = json['SourceofBusiness']; TagURL = json['TagURL']; RequestSource = json['RequestSource']; FormID = json['FormID']; ProposalCreated = json['ProposalCreated']; LoadFullData = json['LoadFullData']; ProposalNumber = json['ProposalNumber']; POSSystem = json['POSSystem']; return this; } Map toJson() => { 'OCAApprovalNumber': OCAApprovalNumber, 'EnquiryDateTime': EnquiryDateTime, 'Brand': Brand, 'CustomerReferenceNumber': CustomerReferenceNumber, 'CustomerType': CustomerType, 'SourceofBusiness': SourceofBusiness, 'TagURL': TagURL, 'RequestSource': RequestSource, 'FormID': FormID, 'ProposalCreated': ProposalCreated, 'LoadFullData': LoadFullData, 'ProposalNumber': ProposalNumber, 'POSSystem': POSSystem }; getTypeName() => "GeneralDetailsv2"; TypeContext? context = _ctx; } class FinanceDetailsv2 implements IConvertible { String? FinancialProduct; String? CampaignCode; String? PhoenixFinanceProductCode; String? Fixed; String? FleetNonFleet; String? RFLCover; int? Duration; double? PaymentRentalAmount; double? RentalAmountExcVAT; String? AdvanceArrears; int? AnnualMileage; double? ExcessMileageRate; double? CustomerDepositContribution; double? RetailerDepositContribution; double? RetailerDepositContributionNet; double? ManufacturerDepositContribution; double? ManufacturerDepositContributionNet; double? TotalDepositContribution; double? LumpSum; double? CostForCredit; double? PurchaseActivationFee; double? TotalAmountPayable; double? FixedInterestRate; double? RepresentativeAPR; String? TrueFlatRate; String? RVReferenceNumber; double? OptionalPurchasePayment; double? AdvancedRentalAmount; String? NumberofAdvanceRentals; String? PaymentProfile; String? RandMIncluded; String? RandMLevel; String? ProductType; String? Frequency; String? PauseType; double? EqualsFinance; double? AcceptanceFee; FinanceDetailsv2({this.FinancialProduct,this.CampaignCode,this.PhoenixFinanceProductCode,this.Fixed,this.FleetNonFleet,this.RFLCover,this.Duration,this.PaymentRentalAmount,this.RentalAmountExcVAT,this.AdvanceArrears,this.AnnualMileage,this.ExcessMileageRate,this.CustomerDepositContribution,this.RetailerDepositContribution,this.RetailerDepositContributionNet,this.ManufacturerDepositContribution,this.ManufacturerDepositContributionNet,this.TotalDepositContribution,this.LumpSum,this.CostForCredit,this.PurchaseActivationFee,this.TotalAmountPayable,this.FixedInterestRate,this.RepresentativeAPR,this.TrueFlatRate,this.RVReferenceNumber,this.OptionalPurchasePayment,this.AdvancedRentalAmount,this.NumberofAdvanceRentals,this.PaymentProfile,this.RandMIncluded,this.RandMLevel,this.ProductType,this.Frequency,this.PauseType,this.EqualsFinance,this.AcceptanceFee}); FinanceDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { FinancialProduct = json['FinancialProduct']; CampaignCode = json['CampaignCode']; PhoenixFinanceProductCode = json['PhoenixFinanceProductCode']; Fixed = json['Fixed']; FleetNonFleet = json['FleetNonFleet']; RFLCover = json['RFLCover']; Duration = json['Duration']; PaymentRentalAmount = JsonConverters.toDouble(json['PaymentRentalAmount']); RentalAmountExcVAT = JsonConverters.toDouble(json['RentalAmountExcVAT']); AdvanceArrears = json['AdvanceArrears']; AnnualMileage = json['AnnualMileage']; ExcessMileageRate = JsonConverters.toDouble(json['ExcessMileageRate']); CustomerDepositContribution = JsonConverters.toDouble(json['CustomerDepositContribution']); RetailerDepositContribution = JsonConverters.toDouble(json['RetailerDepositContribution']); RetailerDepositContributionNet = JsonConverters.toDouble(json['RetailerDepositContributionNet']); ManufacturerDepositContribution = JsonConverters.toDouble(json['ManufacturerDepositContribution']); ManufacturerDepositContributionNet = JsonConverters.toDouble(json['ManufacturerDepositContributionNet']); TotalDepositContribution = JsonConverters.toDouble(json['TotalDepositContribution']); LumpSum = JsonConverters.toDouble(json['LumpSum']); CostForCredit = JsonConverters.toDouble(json['CostForCredit']); PurchaseActivationFee = JsonConverters.toDouble(json['PurchaseActivationFee']); TotalAmountPayable = JsonConverters.toDouble(json['TotalAmountPayable']); FixedInterestRate = JsonConverters.toDouble(json['FixedInterestRate']); RepresentativeAPR = JsonConverters.toDouble(json['RepresentativeAPR']); TrueFlatRate = json['TrueFlatRate']; RVReferenceNumber = json['RVReferenceNumber']; OptionalPurchasePayment = JsonConverters.toDouble(json['OptionalPurchasePayment']); AdvancedRentalAmount = JsonConverters.toDouble(json['AdvancedRentalAmount']); NumberofAdvanceRentals = json['NumberofAdvanceRentals']; PaymentProfile = json['PaymentProfile']; RandMIncluded = json['RandMIncluded']; RandMLevel = json['RandMLevel']; ProductType = json['ProductType']; Frequency = json['Frequency']; PauseType = json['PauseType']; EqualsFinance = JsonConverters.toDouble(json['EqualsFinance']); AcceptanceFee = JsonConverters.toDouble(json['AcceptanceFee']); return this; } Map toJson() => { 'FinancialProduct': FinancialProduct, 'CampaignCode': CampaignCode, 'PhoenixFinanceProductCode': PhoenixFinanceProductCode, 'Fixed': Fixed, 'FleetNonFleet': FleetNonFleet, 'RFLCover': RFLCover, 'Duration': Duration, 'PaymentRentalAmount': PaymentRentalAmount, 'RentalAmountExcVAT': RentalAmountExcVAT, 'AdvanceArrears': AdvanceArrears, 'AnnualMileage': AnnualMileage, 'ExcessMileageRate': ExcessMileageRate, 'CustomerDepositContribution': CustomerDepositContribution, 'RetailerDepositContribution': RetailerDepositContribution, 'RetailerDepositContributionNet': RetailerDepositContributionNet, 'ManufacturerDepositContribution': ManufacturerDepositContribution, 'ManufacturerDepositContributionNet': ManufacturerDepositContributionNet, 'TotalDepositContribution': TotalDepositContribution, 'LumpSum': LumpSum, 'CostForCredit': CostForCredit, 'PurchaseActivationFee': PurchaseActivationFee, 'TotalAmountPayable': TotalAmountPayable, 'FixedInterestRate': FixedInterestRate, 'RepresentativeAPR': RepresentativeAPR, 'TrueFlatRate': TrueFlatRate, 'RVReferenceNumber': RVReferenceNumber, 'OptionalPurchasePayment': OptionalPurchasePayment, 'AdvancedRentalAmount': AdvancedRentalAmount, 'NumberofAdvanceRentals': NumberofAdvanceRentals, 'PaymentProfile': PaymentProfile, 'RandMIncluded': RandMIncluded, 'RandMLevel': RandMLevel, 'ProductType': ProductType, 'Frequency': Frequency, 'PauseType': PauseType, 'EqualsFinance': EqualsFinance, 'AcceptanceFee': AcceptanceFee }; getTypeName() => "FinanceDetailsv2"; TypeContext? context = _ctx; } class VehicleDetailsv2 implements IConvertible { String? OnlineCode; String? ModelClass; String? ModelBody; String? ModelDerivative; double? TotalPrice; double? OTRPrice; String? VIN; String? RegNo; String? CommissionNumber; String? EngineNumber; int? CurrentMileage; String? MilesKilometers; String? FirstRegistrationDate; String? NewUsedFlag; List? NewVehicleModelOptionDetails; String? VID; String? Baumuster; double? VehiclePrice; double? TotalVAT; double? OLEVGrant; double? ExtrasTotalExcVAT; String? CombinedCO2; String? VehicleVATTickBox; String? FirstYearRFLIncluded; double? FirstYearRFLAmount; String? FirstRegFeeIncludedFlag; double? FirstRegFeeAmount; String? HighLowVEDSupplementFlag; String? LeaseRFLSubsequentYears; double? LeaseRFLSubsequentYearsAmount; VehicleDetailsv2({this.OnlineCode,this.ModelClass,this.ModelBody,this.ModelDerivative,this.TotalPrice,this.OTRPrice,this.VIN,this.RegNo,this.CommissionNumber,this.EngineNumber,this.CurrentMileage,this.MilesKilometers,this.FirstRegistrationDate,this.NewUsedFlag,this.NewVehicleModelOptionDetails,this.VID,this.Baumuster,this.VehiclePrice,this.TotalVAT,this.OLEVGrant,this.ExtrasTotalExcVAT,this.CombinedCO2,this.VehicleVATTickBox,this.FirstYearRFLIncluded,this.FirstYearRFLAmount,this.FirstRegFeeIncludedFlag,this.FirstRegFeeAmount,this.HighLowVEDSupplementFlag,this.LeaseRFLSubsequentYears,this.LeaseRFLSubsequentYearsAmount}); VehicleDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { OnlineCode = json['OnlineCode']; ModelClass = json['ModelClass']; ModelBody = json['ModelBody']; ModelDerivative = json['ModelDerivative']; TotalPrice = JsonConverters.toDouble(json['TotalPrice']); OTRPrice = JsonConverters.toDouble(json['OTRPrice']); VIN = json['VIN']; RegNo = json['RegNo']; CommissionNumber = json['CommissionNumber']; EngineNumber = json['EngineNumber']; CurrentMileage = json['CurrentMileage']; MilesKilometers = json['MilesKilometers']; FirstRegistrationDate = json['FirstRegistrationDate']; NewUsedFlag = json['NewUsedFlag']; NewVehicleModelOptionDetails = JsonConverters.fromJson(json['NewVehicleModelOptionDetails'],'List',context!); VID = json['VID']; Baumuster = json['Baumuster']; VehiclePrice = JsonConverters.toDouble(json['VehiclePrice']); TotalVAT = JsonConverters.toDouble(json['TotalVAT']); OLEVGrant = JsonConverters.toDouble(json['OLEVGrant']); ExtrasTotalExcVAT = JsonConverters.toDouble(json['ExtrasTotalExcVAT']); CombinedCO2 = json['CombinedCO2']; VehicleVATTickBox = json['VehicleVATTickBox']; FirstYearRFLIncluded = json['FirstYearRFLIncluded']; FirstYearRFLAmount = JsonConverters.toDouble(json['FirstYearRFLAmount']); FirstRegFeeIncludedFlag = json['FirstRegFeeIncludedFlag']; FirstRegFeeAmount = JsonConverters.toDouble(json['FirstRegFeeAmount']); HighLowVEDSupplementFlag = json['HighLowVEDSupplementFlag']; LeaseRFLSubsequentYears = json['LeaseRFLSubsequentYears']; LeaseRFLSubsequentYearsAmount = JsonConverters.toDouble(json['LeaseRFLSubsequentYearsAmount']); return this; } Map toJson() => { 'OnlineCode': OnlineCode, 'ModelClass': ModelClass, 'ModelBody': ModelBody, 'ModelDerivative': ModelDerivative, 'TotalPrice': TotalPrice, 'OTRPrice': OTRPrice, 'VIN': VIN, 'RegNo': RegNo, 'CommissionNumber': CommissionNumber, 'EngineNumber': EngineNumber, 'CurrentMileage': CurrentMileage, 'MilesKilometers': MilesKilometers, 'FirstRegistrationDate': FirstRegistrationDate, 'NewUsedFlag': NewUsedFlag, 'NewVehicleModelOptionDetails': JsonConverters.toJson(NewVehicleModelOptionDetails,'List',context!), 'VID': VID, 'Baumuster': Baumuster, 'VehiclePrice': VehiclePrice, 'TotalVAT': TotalVAT, 'OLEVGrant': OLEVGrant, 'ExtrasTotalExcVAT': ExtrasTotalExcVAT, 'CombinedCO2': CombinedCO2, 'VehicleVATTickBox': VehicleVATTickBox, 'FirstYearRFLIncluded': FirstYearRFLIncluded, 'FirstYearRFLAmount': FirstYearRFLAmount, 'FirstRegFeeIncludedFlag': FirstRegFeeIncludedFlag, 'FirstRegFeeAmount': FirstRegFeeAmount, 'HighLowVEDSupplementFlag': HighLowVEDSupplementFlag, 'LeaseRFLSubsequentYears': LeaseRFLSubsequentYears, 'LeaseRFLSubsequentYearsAmount': LeaseRFLSubsequentYearsAmount }; getTypeName() => "VehicleDetailsv2"; TypeContext? context = _ctx; } class DeliveryDetailsv2 implements IConvertible { String? DealerCode; String? DeliveryPreference; String? DeliveryDate; DeliveryDetailsv2({this.DealerCode,this.DeliveryPreference,this.DeliveryDate}); DeliveryDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { DealerCode = json['DealerCode']; DeliveryPreference = json['DeliveryPreference']; DeliveryDate = json['DeliveryDate']; return this; } Map toJson() => { 'DealerCode': DealerCode, 'DeliveryPreference': DeliveryPreference, 'DeliveryDate': DeliveryDate }; getTypeName() => "DeliveryDetailsv2"; TypeContext? context = _ctx; } class ExistingVehicleDetailsv2 implements IConvertible { String? TradeInFlag; String? TradeInIncludedInCalc; double? TradeInValue; double? TradeInValueNet; String? TradeInRegNo; String? TradeInVIN; int? TradeInMileage; String? TradeInCondition; String? SettlementFlag; String? SettlementIncludedInCalc; double? SettlementValue; double? SettlementValueNet; String? SettlementRegNo; String? SettlementVIN; int? SettlementMileage; ExistingVehicleDetailsv2({this.TradeInFlag,this.TradeInIncludedInCalc,this.TradeInValue,this.TradeInValueNet,this.TradeInRegNo,this.TradeInVIN,this.TradeInMileage,this.TradeInCondition,this.SettlementFlag,this.SettlementIncludedInCalc,this.SettlementValue,this.SettlementValueNet,this.SettlementRegNo,this.SettlementVIN,this.SettlementMileage}); ExistingVehicleDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { TradeInFlag = json['TradeInFlag']; TradeInIncludedInCalc = json['TradeInIncludedInCalc']; TradeInValue = JsonConverters.toDouble(json['TradeInValue']); TradeInValueNet = JsonConverters.toDouble(json['TradeInValueNet']); TradeInRegNo = json['TradeInRegNo']; TradeInVIN = json['TradeInVIN']; TradeInMileage = json['TradeInMileage']; TradeInCondition = json['TradeInCondition']; SettlementFlag = json['SettlementFlag']; SettlementIncludedInCalc = json['SettlementIncludedInCalc']; SettlementValue = JsonConverters.toDouble(json['SettlementValue']); SettlementValueNet = JsonConverters.toDouble(json['SettlementValueNet']); SettlementRegNo = json['SettlementRegNo']; SettlementVIN = json['SettlementVIN']; SettlementMileage = json['SettlementMileage']; return this; } Map toJson() => { 'TradeInFlag': TradeInFlag, 'TradeInIncludedInCalc': TradeInIncludedInCalc, 'TradeInValue': TradeInValue, 'TradeInValueNet': TradeInValueNet, 'TradeInRegNo': TradeInRegNo, 'TradeInVIN': TradeInVIN, 'TradeInMileage': TradeInMileage, 'TradeInCondition': TradeInCondition, 'SettlementFlag': SettlementFlag, 'SettlementIncludedInCalc': SettlementIncludedInCalc, 'SettlementValue': SettlementValue, 'SettlementValueNet': SettlementValueNet, 'SettlementRegNo': SettlementRegNo, 'SettlementVIN': SettlementVIN, 'SettlementMileage': SettlementMileage }; getTypeName() => "ExistingVehicleDetailsv2"; TypeContext? context = _ctx; } class InsuranceDetails implements IConvertible { String? InterestedInFirstCoverFlag; InsuranceDetails({this.InterestedInFirstCoverFlag}); InsuranceDetails.fromJson(Map json) { fromMap(json); } fromMap(Map json) { InterestedInFirstCoverFlag = json['InterestedInFirstCoverFlag']; return this; } Map toJson() => { 'InterestedInFirstCoverFlag': InterestedInFirstCoverFlag }; getTypeName() => "InsuranceDetails"; TypeContext? context = _ctx; } class AddressWithTimeLinev2 implements IConvertible { String? AddressLine1; String? AddressLine2; String? AddressLine3; String? Town; String? County; String? Country; String? Postcode; String? Duration; String? DateStarted; String? TotalNumberOfMonths; AddressWithTimeLinev2({this.AddressLine1,this.AddressLine2,this.AddressLine3,this.Town,this.County,this.Country,this.Postcode,this.Duration,this.DateStarted,this.TotalNumberOfMonths}); AddressWithTimeLinev2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AddressLine1 = json['AddressLine1']; AddressLine2 = json['AddressLine2']; AddressLine3 = json['AddressLine3']; Town = json['Town']; County = json['County']; Country = json['Country']; Postcode = json['Postcode']; Duration = json['Duration']; DateStarted = json['DateStarted']; TotalNumberOfMonths = json['TotalNumberOfMonths']; return this; } Map toJson() => { 'AddressLine1': AddressLine1, 'AddressLine2': AddressLine2, 'AddressLine3': AddressLine3, 'Town': Town, 'County': County, 'Country': Country, 'Postcode': Postcode, 'Duration': Duration, 'DateStarted': DateStarted, 'TotalNumberOfMonths': TotalNumberOfMonths }; getTypeName() => "AddressWithTimeLinev2"; TypeContext? context = _ctx; } class Address implements IConvertible { String? AddressLine1; String? AddressLine2; String? AddressLine3; String? AddressLine4; String? AddressLine5; String? Postcode; Address({this.AddressLine1,this.AddressLine2,this.AddressLine3,this.AddressLine4,this.AddressLine5,this.Postcode}); Address.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AddressLine1 = json['AddressLine1']; AddressLine2 = json['AddressLine2']; AddressLine3 = json['AddressLine3']; AddressLine4 = json['AddressLine4']; AddressLine5 = json['AddressLine5']; Postcode = json['Postcode']; return this; } Map toJson() => { 'AddressLine1': AddressLine1, 'AddressLine2': AddressLine2, 'AddressLine3': AddressLine3, 'AddressLine4': AddressLine4, 'AddressLine5': AddressLine5, 'Postcode': Postcode }; getTypeName() => "Address"; TypeContext? context = _ctx; } class EmployerDetailsv2 implements IConvertible { String? EmploymentType; String? EmployersName; String? Occupation; AddressWithTimeLinev2? EmployersAddress; EmployerDetailsv2({this.EmploymentType,this.EmployersName,this.Occupation,this.EmployersAddress}); EmployerDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { EmploymentType = json['EmploymentType']; EmployersName = json['EmployersName']; Occupation = json['Occupation']; EmployersAddress = JsonConverters.fromJson(json['EmployersAddress'],'AddressWithTimeLinev2',context!); return this; } Map toJson() => { 'EmploymentType': EmploymentType, 'EmployersName': EmployersName, 'Occupation': Occupation, 'EmployersAddress': JsonConverters.toJson(EmployersAddress,'AddressWithTimeLinev2',context!) }; getTypeName() => "EmployerDetailsv2"; TypeContext? context = _ctx; } class CurrentEmploymentDetailsv2 implements IConvertible { EmployerDetailsv2? EmployerDetails; String? MonthsAtEmployer; String? DateEmploymentCommenced; String? AnnualIncome; CurrentEmploymentDetailsv2({this.EmployerDetails,this.MonthsAtEmployer,this.DateEmploymentCommenced,this.AnnualIncome}); CurrentEmploymentDetailsv2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { EmployerDetails = JsonConverters.fromJson(json['EmployerDetails'],'EmployerDetailsv2',context!); MonthsAtEmployer = json['MonthsAtEmployer']; DateEmploymentCommenced = json['DateEmploymentCommenced']; AnnualIncome = json['AnnualIncome']; return this; } Map toJson() => { 'EmployerDetails': JsonConverters.toJson(EmployerDetails,'EmployerDetailsv2',context!), 'MonthsAtEmployer': MonthsAtEmployer, 'DateEmploymentCommenced': DateEmploymentCommenced, 'AnnualIncome': AnnualIncome }; getTypeName() => "CurrentEmploymentDetailsv2"; TypeContext? context = _ctx; } class MarketingPreference implements IConvertible { String? OptInMail; String? OptInTelephone; String? OptInEmail; String? OptInSMS; MarketingPreference({this.OptInMail,this.OptInTelephone,this.OptInEmail,this.OptInSMS}); MarketingPreference.fromJson(Map json) { fromMap(json); } fromMap(Map json) { OptInMail = json['OptInMail']; OptInTelephone = json['OptInTelephone']; OptInEmail = json['OptInEmail']; OptInSMS = json['OptInSMS']; return this; } Map toJson() => { 'OptInMail': OptInMail, 'OptInTelephone': OptInTelephone, 'OptInEmail': OptInEmail, 'OptInSMS': OptInSMS }; getTypeName() => "MarketingPreference"; TypeContext? context = _ctx; } class CreditApplicationIndividualV2 implements IConvertible { String? Title; String? Initial; String? FirstName; String? Surname; String? DateofBirth; String? Gender; String? MaritalStatus; String? ResidentialStatus; AddressWithTimeLinev2? CurrentAddress; List? PreviousAddresses; String? HomePhone; String? MobilePhone; String? WorkPhone; String? ContactAtWork; String? Email; String? BankSortCode; String? BankAccountNumber; String? BankAccountName; String? BankName; Address? BankAddress; String? BankPaymentType; String? DrivingLicenceNumber; CurrentEmploymentDetailsv2? CurrentEmploymentDetails; List? PreviousEmploymentDetails; MarketingPreference? MarketingPreference; String? CreditCheckConsent; CreditApplicationIndividualV2({this.Title,this.Initial,this.FirstName,this.Surname,this.DateofBirth,this.Gender,this.MaritalStatus,this.ResidentialStatus,this.CurrentAddress,this.PreviousAddresses,this.HomePhone,this.MobilePhone,this.WorkPhone,this.ContactAtWork,this.Email,this.BankSortCode,this.BankAccountNumber,this.BankAccountName,this.BankName,this.BankAddress,this.BankPaymentType,this.DrivingLicenceNumber,this.CurrentEmploymentDetails,this.PreviousEmploymentDetails,this.MarketingPreference,this.CreditCheckConsent}); CreditApplicationIndividualV2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Title = json['Title']; Initial = json['Initial']; FirstName = json['FirstName']; Surname = json['Surname']; DateofBirth = json['DateofBirth']; Gender = json['Gender']; MaritalStatus = json['MaritalStatus']; ResidentialStatus = json['ResidentialStatus']; CurrentAddress = JsonConverters.fromJson(json['CurrentAddress'],'AddressWithTimeLinev2',context!); PreviousAddresses = JsonConverters.fromJson(json['PreviousAddresses'],'List',context!); HomePhone = json['HomePhone']; MobilePhone = json['MobilePhone']; WorkPhone = json['WorkPhone']; ContactAtWork = json['ContactAtWork']; Email = json['Email']; BankSortCode = json['BankSortCode']; BankAccountNumber = json['BankAccountNumber']; BankAccountName = json['BankAccountName']; BankName = json['BankName']; BankAddress = JsonConverters.fromJson(json['BankAddress'],'Address',context!); BankPaymentType = json['BankPaymentType']; DrivingLicenceNumber = json['DrivingLicenceNumber']; CurrentEmploymentDetails = JsonConverters.fromJson(json['CurrentEmploymentDetails'],'CurrentEmploymentDetailsv2',context!); PreviousEmploymentDetails = JsonConverters.fromJson(json['PreviousEmploymentDetails'],'List',context!); MarketingPreference = JsonConverters.fromJson(json['MarketingPreference'],'MarketingPreference',context!); CreditCheckConsent = json['CreditCheckConsent']; return this; } Map toJson() => { 'Title': Title, 'Initial': Initial, 'FirstName': FirstName, 'Surname': Surname, 'DateofBirth': DateofBirth, 'Gender': Gender, 'MaritalStatus': MaritalStatus, 'ResidentialStatus': ResidentialStatus, 'CurrentAddress': JsonConverters.toJson(CurrentAddress,'AddressWithTimeLinev2',context!), 'PreviousAddresses': JsonConverters.toJson(PreviousAddresses,'List',context!), 'HomePhone': HomePhone, 'MobilePhone': MobilePhone, 'WorkPhone': WorkPhone, 'ContactAtWork': ContactAtWork, 'Email': Email, 'BankSortCode': BankSortCode, 'BankAccountNumber': BankAccountNumber, 'BankAccountName': BankAccountName, 'BankName': BankName, 'BankAddress': JsonConverters.toJson(BankAddress,'Address',context!), 'BankPaymentType': BankPaymentType, 'DrivingLicenceNumber': DrivingLicenceNumber, 'CurrentEmploymentDetails': JsonConverters.toJson(CurrentEmploymentDetails,'CurrentEmploymentDetailsv2',context!), 'PreviousEmploymentDetails': JsonConverters.toJson(PreviousEmploymentDetails,'List',context!), 'MarketingPreference': JsonConverters.toJson(MarketingPreference,'MarketingPreference',context!), 'CreditCheckConsent': CreditCheckConsent }; getTypeName() => "CreditApplicationIndividualV2"; TypeContext? context = _ctx; } class CreditApplicationBusinessV2 implements IConvertible { String? TypeOfBusiness; String? BusinessContactPosition; String? Title; String? Initial; String? FirstName; String? Surname; AddressWithTimeLinev2? CurrentHomeAddress; String? HomePhone; String? WorkPhone; String? MobilePhone; String? Email; String? CompanyName; String? CompanyRegistrationNumber; String? TradingAs; String? BusinessActivity; int? NumberOfEmployees; int? YearsTrading; String? Position; String? BankSortCode; String? BankAccountNumber; String? BankAccountName; String? BankName; Address? BankAddress; int? NumberofPartners; List? BusinessPartners; MarketingPreference? MarketingPreference; List? PreviousAddresses; CreditApplicationBusinessV2({this.TypeOfBusiness,this.BusinessContactPosition,this.Title,this.Initial,this.FirstName,this.Surname,this.CurrentHomeAddress,this.HomePhone,this.WorkPhone,this.MobilePhone,this.Email,this.CompanyName,this.CompanyRegistrationNumber,this.TradingAs,this.BusinessActivity,this.NumberOfEmployees,this.YearsTrading,this.Position,this.BankSortCode,this.BankAccountNumber,this.BankAccountName,this.BankName,this.BankAddress,this.NumberofPartners,this.BusinessPartners,this.MarketingPreference,this.PreviousAddresses}); CreditApplicationBusinessV2.fromJson(Map json) { fromMap(json); } fromMap(Map json) { TypeOfBusiness = json['TypeOfBusiness']; BusinessContactPosition = json['BusinessContactPosition']; Title = json['Title']; Initial = json['Initial']; FirstName = json['FirstName']; Surname = json['Surname']; CurrentHomeAddress = JsonConverters.fromJson(json['CurrentHomeAddress'],'AddressWithTimeLinev2',context!); HomePhone = json['HomePhone']; WorkPhone = json['WorkPhone']; MobilePhone = json['MobilePhone']; Email = json['Email']; CompanyName = json['CompanyName']; CompanyRegistrationNumber = json['CompanyRegistrationNumber']; TradingAs = json['TradingAs']; BusinessActivity = json['BusinessActivity']; NumberOfEmployees = json['NumberOfEmployees']; YearsTrading = json['YearsTrading']; Position = json['Position']; BankSortCode = json['BankSortCode']; BankAccountNumber = json['BankAccountNumber']; BankAccountName = json['BankAccountName']; BankName = json['BankName']; BankAddress = JsonConverters.fromJson(json['BankAddress'],'Address',context!); NumberofPartners = json['NumberofPartners']; BusinessPartners = JsonConverters.fromJson(json['BusinessPartners'],'List',context!); MarketingPreference = JsonConverters.fromJson(json['MarketingPreference'],'MarketingPreference',context!); PreviousAddresses = JsonConverters.fromJson(json['PreviousAddresses'],'List',context!); return this; } Map toJson() => { 'TypeOfBusiness': TypeOfBusiness, 'BusinessContactPosition': BusinessContactPosition, 'Title': Title, 'Initial': Initial, 'FirstName': FirstName, 'Surname': Surname, 'CurrentHomeAddress': JsonConverters.toJson(CurrentHomeAddress,'AddressWithTimeLinev2',context!), 'HomePhone': HomePhone, 'WorkPhone': WorkPhone, 'MobilePhone': MobilePhone, 'Email': Email, 'CompanyName': CompanyName, 'CompanyRegistrationNumber': CompanyRegistrationNumber, 'TradingAs': TradingAs, 'BusinessActivity': BusinessActivity, 'NumberOfEmployees': NumberOfEmployees, 'YearsTrading': YearsTrading, 'Position': Position, 'BankSortCode': BankSortCode, 'BankAccountNumber': BankAccountNumber, 'BankAccountName': BankAccountName, 'BankName': BankName, 'BankAddress': JsonConverters.toJson(BankAddress,'Address',context!), 'NumberofPartners': NumberofPartners, 'BusinessPartners': JsonConverters.toJson(BusinessPartners,'List',context!), 'MarketingPreference': JsonConverters.toJson(MarketingPreference,'MarketingPreference',context!), 'PreviousAddresses': JsonConverters.toJson(PreviousAddresses,'List',context!) }; getTypeName() => "CreditApplicationBusinessV2"; TypeContext? context = _ctx; } // @DataContract class CreateOCAv2RequestResponse implements IConvertible { // @DataMember String? Code; // @DataMember String? Message; // @DataMember int? URN; CreateOCAv2RequestResponse({this.Code,this.Message,this.URN}); CreateOCAv2RequestResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Code = json['Code']; Message = json['Message']; URN = json['URN']; return this; } Map toJson() => { 'Code': Code, 'Message': Message, 'URN': URN }; getTypeName() => "CreateOCAv2RequestResponse"; TypeContext? context = _ctx; } // @Route("/CreateOCAv2/", "PUT") // @DataContract class CreateOCAv2Request implements IReturn, IConvertible { // @DataMember String? Username; // @DataMember String? Timestamp; // @DataMember String? Token; // @DataMember GeneralDetailsv2? GeneralDetails; // @DataMember FinanceDetailsv2? FinanceDetails; // @DataMember VehicleDetailsv2? VehicleDetails; // @DataMember DeliveryDetailsv2? DeliveryDetails; // @DataMember ExistingVehicleDetailsv2? ExistingVehicleDetails; // @DataMember InsuranceDetails? InsuranceDetails; // @DataMember CreditApplicationIndividualV2? CreditApplicationIndividual; // @DataMember CreditApplicationBusinessV2? CreditApplicationBusiness; // @DataMember PaymentDetails? PaymentDetails; // @DataMember List? Notes; // @DataMember DiPDetails? DiPDetails; CreateOCAv2Request({this.Username,this.Timestamp,this.Token,this.GeneralDetails,this.FinanceDetails,this.VehicleDetails,this.DeliveryDetails,this.ExistingVehicleDetails,this.InsuranceDetails,this.CreditApplicationIndividual,this.CreditApplicationBusiness,this.PaymentDetails,this.Notes,this.DiPDetails}); CreateOCAv2Request.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Username = json['Username']; Timestamp = json['Timestamp']; Token = json['Token']; GeneralDetails = JsonConverters.fromJson(json['GeneralDetails'],'GeneralDetailsv2',context!); FinanceDetails = JsonConverters.fromJson(json['FinanceDetails'],'FinanceDetailsv2',context!); VehicleDetails = JsonConverters.fromJson(json['VehicleDetails'],'VehicleDetailsv2',context!); DeliveryDetails = JsonConverters.fromJson(json['DeliveryDetails'],'DeliveryDetailsv2',context!); ExistingVehicleDetails = JsonConverters.fromJson(json['ExistingVehicleDetails'],'ExistingVehicleDetailsv2',context!); InsuranceDetails = JsonConverters.fromJson(json['InsuranceDetails'],'InsuranceDetails',context!); CreditApplicationIndividual = JsonConverters.fromJson(json['CreditApplicationIndividual'],'CreditApplicationIndividualV2',context!); CreditApplicationBusiness = JsonConverters.fromJson(json['CreditApplicationBusiness'],'CreditApplicationBusinessV2',context!); PaymentDetails = JsonConverters.fromJson(json['PaymentDetails'],'PaymentDetails',context!); Notes = JsonConverters.fromJson(json['Notes'],'List',context!); DiPDetails = JsonConverters.fromJson(json['DiPDetails'],'DiPDetails',context!); return this; } Map toJson() => { 'Username': Username, 'Timestamp': Timestamp, 'Token': Token, 'GeneralDetails': JsonConverters.toJson(GeneralDetails,'GeneralDetailsv2',context!), 'FinanceDetails': JsonConverters.toJson(FinanceDetails,'FinanceDetailsv2',context!), 'VehicleDetails': JsonConverters.toJson(VehicleDetails,'VehicleDetailsv2',context!), 'DeliveryDetails': JsonConverters.toJson(DeliveryDetails,'DeliveryDetailsv2',context!), 'ExistingVehicleDetails': JsonConverters.toJson(ExistingVehicleDetails,'ExistingVehicleDetailsv2',context!), 'InsuranceDetails': JsonConverters.toJson(InsuranceDetails,'InsuranceDetails',context!), 'CreditApplicationIndividual': JsonConverters.toJson(CreditApplicationIndividual,'CreditApplicationIndividualV2',context!), 'CreditApplicationBusiness': JsonConverters.toJson(CreditApplicationBusiness,'CreditApplicationBusinessV2',context!), 'PaymentDetails': JsonConverters.toJson(PaymentDetails,'PaymentDetails',context!), 'Notes': JsonConverters.toJson(Notes,'List',context!), 'DiPDetails': JsonConverters.toJson(DiPDetails,'DiPDetails',context!) }; createResponse() => CreateOCAv2RequestResponse(); getResponseTypeName() => "CreateOCAv2RequestResponse"; getTypeName() => "CreateOCAv2Request"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'webservices.mbukdatabase.co.uk', types: { 'PaymentDetails': TypeInfo(TypeOf.Class, create:() => PaymentDetails()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PaymentDetail': TypeInfo(TypeOf.Class, create:() => PaymentDetail()), 'DiPDetails': TypeInfo(TypeOf.Class, create:() => DiPDetails()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'DiPReasons': TypeInfo(TypeOf.Class, create:() => DiPReasons()), 'GeneralDetailsv2': TypeInfo(TypeOf.Class, create:() => GeneralDetailsv2()), 'FinanceDetailsv2': TypeInfo(TypeOf.Class, create:() => FinanceDetailsv2()), 'VehicleDetailsv2': TypeInfo(TypeOf.Class, create:() => VehicleDetailsv2()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ModelOptionDetailsv2': TypeInfo(TypeOf.Class, create:() => ModelOptionDetailsv2()), 'DeliveryDetailsv2': TypeInfo(TypeOf.Class, create:() => DeliveryDetailsv2()), 'ExistingVehicleDetailsv2': TypeInfo(TypeOf.Class, create:() => ExistingVehicleDetailsv2()), 'InsuranceDetails': TypeInfo(TypeOf.Class, create:() => InsuranceDetails()), 'AddressWithTimeLinev2': TypeInfo(TypeOf.Class, create:() => AddressWithTimeLinev2()), 'Address': TypeInfo(TypeOf.Class, create:() => Address()), 'EmployerDetailsv2': TypeInfo(TypeOf.Class, create:() => EmployerDetailsv2()), 'CurrentEmploymentDetailsv2': TypeInfo(TypeOf.Class, create:() => CurrentEmploymentDetailsv2()), 'MarketingPreference': TypeInfo(TypeOf.Class, create:() => MarketingPreference()), 'CreditApplicationIndividualV2': TypeInfo(TypeOf.Class, create:() => CreditApplicationIndividualV2()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PreviousAddressv2': TypeInfo(TypeOf.Class, create:() => PreviousAddressv2()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'PreviousEmploymentv2': TypeInfo(TypeOf.Class, create:() => PreviousEmploymentv2()), 'CreditApplicationBusinessV2': TypeInfo(TypeOf.Class, create:() => CreditApplicationBusinessV2()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'BusinessPartnerv2': TypeInfo(TypeOf.Class, create:() => BusinessPartnerv2()), 'CreateOCAv2RequestResponse': TypeInfo(TypeOf.Class, create:() => CreateOCAv2RequestResponse()), 'CreateOCAv2Request': TypeInfo(TypeOf.Class, create:() => CreateOCAv2Request()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'NoteDetails': TypeInfo(TypeOf.Class, create:() => NoteDetails()), });