/* Options:
Date: 2026-05-19 09:51:22
Version: 8.22
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://dev-api-booster.richemont.com
//GlobalNamespace:
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddNullableAnnotations: False
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion:
//InitializeCollections: True
//ExportValueTypes: False
IncludeTypes: SimulateOrderV2.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using Richemont.Booster2.PublicApi.CRM.ServiceModel;
using Richemont.Booster2.PublicApi.Purchase.ServiceModel;
using Richemont.Booster2.PublicApi.Purchase.ServiceModel.SharedModels;
namespace Richemont.Booster2.PublicApi.CRM.ServiceModel
{
public partial class Address
{
///
///Address type e.g. Home, Office, Shipping
///
[ApiMember(Description="Address type e.g. Home, Office, Shipping", IsRequired=true)]
public virtual string addressType { get; set; }
///
///Country Id e.g. it, cn, az, gb, de
///
[ApiMember(Description="Country Id e.g. it, cn, az, gb, de", IsRequired=true)]
public virtual string countryId { get; set; }
///
///House Number
///
[ApiMember(Description="House Number")]
public virtual string houseNumber { get; set; }
///
///Region/State
///
[ApiMember(Description="Region/State")]
public virtual string stateId { get; set; }
///
///City Name
///
[ApiMember(Description="City Name")]
public virtual string city { get; set; }
///
///Postal Code
///
[ApiMember(Description="Postal Code")]
public virtual string zipCode { get; set; }
///
///Street Name and Number
///
[ApiMember(Description="Street Name and Number")]
public virtual string street { get; set; }
///
///Street 2
///
[ApiMember(Description="Street 2")]
public virtual string street2 { get; set; }
///
///Street 3
///
[ApiMember(Description="Street 3")]
public virtual string street3 { get; set; }
///
///Street 4
///
[ApiMember(Description="Street 4")]
public virtual string street4 { get; set; }
///
///Street 5
///
[ApiMember(Description="Street 5")]
public virtual string street5 { get; set; }
///
///Main Address
///
[ApiMember(Description="Main Address", IsRequired=true)]
public virtual bool isMainAddress { get; set; }
///
///Post Office Box
///
[ApiMember(Description="Post Office Box")]
public virtual string poBox { get; set; }
///
///Additional Information
///
[ApiMember(Description="Additional Information")]
public virtual string additionalInformation { get; set; }
}
}
namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel
{
public partial class Address
{
///
///Country ID
///
[ApiMember(Description="Country ID")]
public virtual string countryId { get; set; }
///
///State ID
///
[ApiMember(Description="State ID")]
public virtual string stateId { get; set; }
///
///City Name
///
[ApiMember(Description="City Name")]
public virtual string city { get; set; }
///
///Street Name and Number
///
[ApiMember(Description="Street Name and Number")]
public virtual string street { get; set; }
///
///Postal Code
///
[ApiMember(Description="Postal Code")]
public virtual string zipCode { get; set; }
}
public partial class Amount
{
///
///Value
///
[ApiMember(Description="Value", IsRequired=true)]
public virtual decimal value { get; set; }
///
///Currency
///
[ApiMember(Description="Currency", IsRequired=true)]
public virtual string currency { get; set; }
}
public partial class AmountAndQuantity
{
///
///Amount
///
[ApiMember(Description="Amount", IsRequired=true)]
public virtual Amount amount { get; set; }
///
///Base Quantity
///
[ApiMember(Description="Base Quantity", IsRequired=true)]
public virtual Quantity baseQuantity { get; set; }
}
public partial class ItemTotalValues
{
///
///Requested Quantity
///
[ApiMember(Description="Requested Quantity")]
public virtual Quantity requestedQuantity { get; set; }
///
///Confirmed Quantity
///
[ApiMember(Description="Confirmed Quantity")]
public virtual Quantity confirmedQuantity { get; set; }
///
///Available Quantity
///
[ApiMember(Description="Available Quantity")]
public virtual Quantity availableQuantity { get; set; }
///
///Gross Weight
///
[ApiMember(Description="Gross Weight")]
public virtual Quantity grossWeightMeasure { get; set; }
///
///Net Weight
///
[ApiMember(Description="Net Weight")]
public virtual Quantity netWeightMeasure { get; set; }
///
///Volume
///
[ApiMember(Description="Volume")]
public virtual Quantity volumeMeasure { get; set; }
///
///Net Amount Line Total
///
[ApiMember(Description="Net Amount Line Total")]
public virtual Amount netAmount { get; set; }
///
///Net Price Line Total
///
[ApiMember(Description="Net Price Line Total")]
public virtual AmountAndQuantity netPrice { get; set; }
///
///Tax Amount Line Total
///
[ApiMember(Description="Tax Amount Line Total")]
public virtual Amount taxAmount { get; set; }
///
///Retail Sales Price Line Total
///
[ApiMember(Description="Retail Sales Price Line Total")]
public virtual Amount retailSalesPriceAmount { get; set; }
}
public partial class Party
{
///
///Internal ID of the Element
///
[ApiMember(Description="Internal ID of the Element", IsRequired=true)]
public virtual string id { get; set; }
///
///Formatted Name of the Element
///
[ApiMember(Description="Formatted Name of the Element", IsRequired=true)]
public virtual string name { get; set; }
///
///Geographic Address of the Element
///
[ApiMember(Description="Geographic Address of the Element")]
public virtual Address address { get; set; }
}
public partial class Quantity
{
///
///Unit
///
[ApiMember(Description="Unit", IsRequired=true)]
public virtual string unit { get; set; }
///
///Value
///
[ApiMember(Description="Value", IsRequired=true)]
public virtual decimal value { get; set; }
}
public partial class SimulateOrderItemRequestV2
{
///
///Line Number
///
[ApiMember(Description="Line Number", IsRequired=true)]
public virtual int lineNumber { get; set; }
///
///Reference ID of the article/product, e.g. 'CRWB520003'
///
[ApiMember(Description="Reference ID of the article/product, e.g. 'CRWB520003'", IsRequired=true)]
public virtual string articleCode { get; set; }
///
///Desired quantity of the article
///
[ApiMember(Description="Desired quantity of the article", IsRequired=true)]
public virtual int quantity { get; set; }
///
///Requested Delivery Date of the Item, e.g. '2020-12-30'
///
[ApiMember(Description="Requested Delivery Date of the Item, e.g. '2020-12-30'")]
public virtual DateTime? requestedDeliveryDate { get; set; }
///
///Purchase order type, e.g. 'WCFS', null. Null for ordinary order
///
[ApiMember(Description="Purchase order type, e.g. 'WCFS', null. Null for ordinary order")]
public virtual string orderType { get; set; }
///
///Final Ship To Pos Code
///
[ApiMember(Description="Final Ship To Pos Code")]
public virtual string finalShipToId { get; set; }
///
///Strap definition
///
[ApiMember(Description="Strap definition")]
public virtual StrapItem strap { get; set; }
}
public partial class SimulateOrderItemResponseV2
{
public SimulateOrderItemResponseV2()
{
warnings = new List{};
}
///
///Line Number, e.g 20, 40, 21, 41
///
[ApiMember(Description="Line Number, e.g 20, 40, 21, 41", IsRequired=true)]
public virtual int lineNumber { get; set; }
///
///Parent Line Number, e.g 20, 40
///
[ApiMember(Description="Parent Line Number, e.g 20, 40", IsRequired=true)]
public virtual int? parentLineNumber { get; set; }
///
///Original line number in the request. Line numbers are remapped after the split
///
[ApiMember(Description="Original line number in the request. Line numbers are remapped after the split", IsRequired=true)]
public virtual int requestLineNumber { get; set; }
///
///Reference No of item, e.g.: CRWB521234
///
[ApiMember(Description="Reference No of item, e.g.: CRWB521234", IsRequired=true)]
public virtual string articleCode { get; set; }
///
///Substituted reference No of item, e.g.: CRWB520003
///
[ApiMember(Description="Substituted reference No of item, e.g.: CRWB520003")]
public virtual string substitutedArticleCode { get; set; }
///
///DeliveryPlantId of item, e.g.: CHD6
///
[ApiMember(Description="DeliveryPlantId of item, e.g.: CHD6", IsRequired=true)]
public virtual string deliveryPlantId { get; set; }
///
///Expected Delivery Date, e.g. '2020-12-30'
///
[ApiMember(Description="Expected Delivery Date, e.g. '2020-12-30'")]
public virtual string expectedDeliveryDate { get; set; }
///
///Buckle Summary, need to be forwarded to order creation
///
[ApiMember(Description="Buckle Summary, need to be forwarded to order creation")]
public virtual string buckleSummary { get; set; }
///
///Material Summary, need to be forwarded to order creation
///
[ApiMember(Description="Material Summary, need to be forwarded to order creation")]
public virtual string materialSummary { get; set; }
///
///Content Summary, need to be forwarded to order creation
///
[ApiMember(Description="Content Summary, need to be forwarded to order creation")]
public virtual string contentSummary { get; set; }
///
///Strap Summary, need to be forwarded to order creation
///
[ApiMember(Description="Strap Summary, need to be forwarded to order creation")]
public virtual string strapSummary { get; set; }
///
///Item Total Values
///
[ApiMember(Description="Item Total Values", IsRequired=true)]
public virtual ItemTotalValues totalValues { get; set; }
///
///Warning list
///
[ApiMember(Description="Warning list", IsRequired=true)]
public virtual List warnings { get; set; }
}
public partial class SimulateOrderResponseV2
{
public SimulateOrderResponseV2()
{
results = new Dictionary{};
shipTo = new List{};
finalShipTo = new List{};
billTo = new List{};
}
///
///List of splitted order simulation results
///
[ApiMember(Description="List of splitted order simulation results", IsRequired=true)]
public virtual Dictionary results { get; set; }
///
///Addresses which order can be shipped to (common list for all splitted orders)
///
[ApiMember(Description="Addresses which order can be shipped to (common list for all splitted orders)")]
public virtual List shipTo { get; set; }
///
///Addresses which order can be final shipped to (common list for all splitted orders)
///
[ApiMember(Description="Addresses which order can be final shipped to (common list for all splitted orders)")]
public virtual List finalShipTo { get; set; }
///
///Addresses which order can be billed to (common list for all splitted orders)
///
[ApiMember(Description="Addresses which order can be billed to (common list for all splitted orders)")]
public virtual List billTo { get; set; }
///
///Address which order is made to (common list for all splitted orders)
///
[ApiMember(Description="Address which order is made to (common list for all splitted orders)")]
public virtual Party soldTo { get; set; }
///
///Sales representatives (common list for all splitted orders)
///
[ApiMember(Description="Sales representatives (common list for all splitted orders)")]
public virtual Party salesRepresentative { get; set; }
}
[Route("/purchase/simulate/v2", "POST")]
public partial class SimulateOrderV2
: IReturn
{
public SimulateOrderV2()
{
orderItems = new List{};
}
///
///Brand Trigram of the intended Order, e.g. 'IWC', 'CAR', etc.
///
[ApiMember(Description="Brand Trigram of the intended Order, e.g. 'IWC', 'CAR', etc.", IsRequired=true)]
public virtual string brand { get; set; }
///
///Global Pos Code for the intended Order e.g. ES100:102048
///
[ApiMember(Description="Global Pos Code for the intended Order e.g. ES100:102048", IsRequired=true)]
public virtual string posCode { get; set; }
///
///Customer Reference
///
[ApiMember(Description="Customer Reference")]
public virtual string customerReference { get; set; }
///
///Additional Notes regarding the Order
///
[ApiMember(Description="Additional Notes regarding the Order")]
public virtual string notes { get; set; }
///
///Purchase order date, e.g. '2020-12-31'
///
[ApiMember(Description="Purchase order date, e.g. '2020-12-31'")]
public virtual DateTime? orderDate { get; set; }
///
///List of Articles to be simulated
///
[ApiMember(Description="List of Articles to be simulated", IsRequired=true)]
public virtual List orderItems { get; set; }
///
///Booster1 ID of the end Customer
///
[ApiMember(Description="Booster1 ID of the end Customer")]
public virtual string endCustomerBooster1Id { get; set; }
///
///Details of the end Customer
///
[ApiMember(Description="Details of the end Customer")]
public virtual EndCustomerDetails endCustomerDetails { get; set; }
}
public partial class SplittedSimulateOrderResponse
{
public SplittedSimulateOrderResponse()
{
orderItems = new List{};
shipTo = new List{};
finalShipTo = new List{};
billTo = new List{};
warnings = new List{};
}
///
///Order Type
///
[ApiMember(Description="Order Type", IsRequired=true)]
public virtual string orderType { get; set; }
///
///Product Type
///
[ApiMember(Description="Product Type", IsRequired=true)]
public virtual string productType { get; set; }
///
///List of Articles simulated
///
[ApiMember(Description="List of Articles simulated", IsRequired=true)]
public virtual List orderItems { get; set; }
///
///Total Values
///
[ApiMember(Description="Total Values", IsRequired=true)]
public virtual TotalValues totalValues { get; set; }
///
///Addresses which order can be shipped to
///
[ApiMember(Description="Addresses which order can be shipped to", IsRequired=true)]
public virtual List shipTo { get; set; }
///
///Addresses which order can be final shipped to
///
[ApiMember(Description="Addresses which order can be final shipped to")]
public virtual List finalShipTo { get; set; }
///
///Addresses which order can be billed to
///
[ApiMember(Description="Addresses which order can be billed to", IsRequired=true)]
public virtual List billTo { get; set; }
///
///Address which order is made to
///
[ApiMember(Description="Address which order is made to", IsRequired=true)]
public virtual Party soldTo { get; set; }
///
///Sales Representative
///
[ApiMember(Description="Sales Representative")]
public virtual Party salesRepresentative { get; set; }
///
///Warning list
///
[ApiMember(Description="Warning list", IsRequired=true)]
public virtual List warnings { get; set; }
}
public partial class TotalValues
{
///
///Gross Weight
///
[ApiMember(Description="Gross Weight", IsRequired=true)]
public virtual Quantity grossWeightMeasure { get; set; }
///
///Net Weight
///
[ApiMember(Description="Net Weight", IsRequired=true)]
public virtual Quantity netWeightMeasure { get; set; }
///
///Gross Volume
///
[ApiMember(Description="Gross Volume", IsRequired=true)]
public virtual Quantity grossVolumeMeasure { get; set; }
///
///Gross Amount
///
[ApiMember(Description="Gross Amount", IsRequired=true)]
public virtual Amount grossAmount { get; set; }
///
///Net Amount
///
[ApiMember(Description="Net Amount", IsRequired=true)]
public virtual Amount netAmount { get; set; }
///
///Tax Amount
///
[ApiMember(Description="Tax Amount", IsRequired=true)]
public virtual Amount taxAmount { get; set; }
}
public partial class Warning
{
///
///Id
///
[ApiMember(Description="Id", IsRequired=true)]
public virtual string id { get; set; }
///
///Message
///
[ApiMember(Description="Message", IsRequired=true)]
public virtual string message { get; set; }
///
///Severity code, possible values: 1, 2, 3, 4
///
[ApiMember(Description="Severity code, possible values: 1, 2, 3, 4", IsRequired=true)]
public virtual int severityCode { get; set; }
}
}
namespace Richemont.Booster2.PublicApi.Purchase.ServiceModel.SharedModels
{
public partial class EndCustomerDetails
{
///
///Title of the end Customer, e.g. 'MR', 'MRS'.
///
[ApiMember(Description="Title of the end Customer, e.g. 'MR', 'MRS'.")]
public virtual string title { get; set; }
///
///First Name of the end Customer
///
[ApiMember(Description="First Name of the end Customer", IsRequired=true)]
public virtual string firstName { get; set; }
///
///Last Name of the end Customer
///
[ApiMember(Description="Last Name of the end Customer", IsRequired=true)]
public virtual string lastName { get; set; }
///
///Email of the end Customer
///
[ApiMember(Description="Email of the end Customer")]
public virtual string email { get; set; }
///
///Phone number of the end Customer, e.g. '0032477123456'.
///
[ApiMember(Description="Phone number of the end Customer, e.g. '0032477123456'. ")]
public virtual string phone { get; set; }
///
///Countr code in the shipping address, e.g. 'BE' (ISO Code)
///
[ApiMember(Description="Countr code in the shipping address, e.g. 'BE' (ISO Code)", IsRequired=true)]
public virtual string country { get; set; }
///
///City name in the shipping address
///
[ApiMember(Description="City name in the shipping address", IsRequired=true)]
public virtual string city { get; set; }
///
///Street name in the shipping address
///
[ApiMember(Description="Street name in the shipping address", IsRequired=true)]
public virtual string street { get; set; }
///
///House number in the shipping address
///
[ApiMember(Description="House number in the shipping address")]
public virtual string houseNumber { get; set; }
///
///Building number in the shipping address
///
[ApiMember(Description="Building number in the shipping address")]
public virtual string building { get; set; }
///
///Postal code in the shipping address
///
[ApiMember(Description="Postal code in the shipping address")]
public virtual string postalCode { get; set; }
///
///Region code in the shipping address, e.g. 'VL' (ISO Code)
///
[ApiMember(Description="Region code in the shipping address, e.g. 'VL' (ISO Code)")]
public virtual string region { get; set; }
///
///District name in the shipping address
///
[ApiMember(Description="District name in the shipping address")]
public virtual string district { get; set; }
///
///Additional Info number to the shipping address
///
[ApiMember(Description="Additional Info number to the shipping address")]
public virtual string additionalInfo { get; set; }
}
public partial class StrapItem
{
///
///Article reference
///
[ApiMember(Description="Article reference")]
public virtual string speakingArticleCode { get; set; }
///
///Buckle type Description
///
[ApiMember(Description="Buckle type Description")]
public virtual string buckleTypeDescription { get; set; }
///
///Buckle type
///
[ApiMember(Description="Buckle type")]
public virtual string buckleTypeCode { get; set; }
///
///watch 6 Length
///
[ApiMember(Description="watch 6 Length")]
public virtual int? watch6Length { get; set; }
///
///watch 12 Length
///
[ApiMember(Description="watch 12 Length")]
public virtual int? watch12Length { get; set; }
///
///Article Material Code
///
[ApiMember(Description="Article Material Code")]
public virtual string materialCode { get; set; }
///
///Article Material Description
///
[ApiMember(Description="Article Material Description")]
public virtual string materialDescription { get; set; }
///
///Article Color Code
///
[ApiMember(Description="Article Color Code")]
public virtual string colorCode { get; set; }
///
///Article Color Description
///
[ApiMember(Description="Article Color Description")]
public virtual string colorDescription { get; set; }
///
///Buckle Witdh
///
[ApiMember(Description="Buckle Witdh")]
public virtual string buckleWidth { get; set; }
///
///Article Lining Code
///
[ApiMember(Description="Article Lining Code")]
public virtual string liningCode { get; set; }
///
///Article Lining Description
///
[ApiMember(Description="Article Lining Description")]
public virtual string liningDescription { get; set; }
///
///Article Stitching Code
///
[ApiMember(Description="Article Stitching Code")]
public virtual string stitchingCode { get; set; }
///
///Article Stitching Description
///
[ApiMember(Description="Article Stitching Description")]
public virtual string stitchingDescription { get; set; }
///
///Article Edge Code
///
[ApiMember(Description="Article Edge Code")]
public virtual string edgeCode { get; set; }
///
///Article Edge Description
///
[ApiMember(Description="Article Edge Description")]
public virtual string edgeDescription { get; set; }
///
///Article Padding Code
///
[ApiMember(Description="Article Padding Code")]
public virtual string paddingCode { get; set; }
///
///Article Padding Description
///
[ApiMember(Description="Article Padding Description")]
public virtual string paddingDescription { get; set; }
///
///Article Speciality Code
///
[ApiMember(Description="Article Speciality Code")]
public virtual string specialtyCode { get; set; }
///
///Article Speciality Description
///
[ApiMember(Description="Article Speciality Description")]
public virtual string specialtyDescription { get; set; }
///
///Nuancier Code
///
[ApiMember(Description="Nuancier Code")]
public virtual string nuancierCode { get; set; }
///
///Strap Vip Order
///
[ApiMember(Description="Strap Vip Order")]
public virtual bool? isStrapVipOrder { get; set; }
}
}