/* Options: Date: 2026-08-27 07:10:52 SwiftVersion: 6.0 Version: 10.08 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True //MakePropertiesOptional: True IncludeTypes: CreateSellOut.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/warranty", "POST") public class CreateSellOut : IReturn, Codable { public typealias Return = CreateSellOutResponse /** * Brand Trigram, e.g. CAR, IWC; compulsory only if articleCode is not provided */ // @ApiMember(Description="Brand Trigram, e.g. CAR, IWC; compulsory only if articleCode is not provided") public var brand:String? /** * Richemont POS code */ // @ApiMember(Description="Richemont POS code", IsRequired=true) public var posCode:String? /** * Receipt or Invoice Number */ // @ApiMember(Description="Receipt or Invoice Number") public var documentNumber:String? /** * Date of the Sell-out */ // @ApiMember(Description="Date of the Sell-out", IsRequired=true) public var documentDate:Date? /** * Position Number */ // @ApiMember(Description="Position Number") public var documentLineNumber:Int? /** * Richemont Reference Code of the item */ // @ApiMember(Description="Richemont Reference Code of the item", IsRequired=true) public var articleCode:String? /** * Serial Number of the item */ // @ApiMember(Description="Serial Number of the item") public var serialNumber:String? /** * Use positive for standard Sell-out and negative quantity for return */ // @ApiMember(Description="Use positive for standard Sell-out and negative quantity for return", IsRequired=true) public var quantity:Int? /** * Sold Price */ // @ApiMember(Description="Sold Price") public var unitPrice:Double? /** * Currency of the sold price */ // @ApiMember(Description="Currency of the sold price") public var currencyCode:String? /** * Booster Customer Id */ // @ApiMember(Description="Booster Customer Id") public var boosterCustomerId:Int? /** * Sale Representative Email e.g. rauf.aliyev@richemont.com */ // @ApiMember(Description="Sale Representative Email e.g. rauf.aliyev@richemont.com") public var saleRepresentativeEmails:[String]? /** * Promoter Type ID, e.g. DAI, FIT, GRT */ // @ApiMember(Description="Promoter Type ID, e.g. DAI, FIT, GRT") public var promoterTypeId:String? /** * Return Reason ID, e.g ADM, CLR, EXC, DEF, OTH */ // @ApiMember(Description="Return Reason ID, e.g ADM, CLR, EXC, DEF, OTH") public var returnReasonId:String? /** * Sale related comments */ // @ApiMember(Description="Sale related comments") public var comments:String? /** * Original Sale Detail Id */ // @ApiMember(Description="Original Sale Detail Id") public var originalSaleDetailId:Int? /** * To have the piece back in stock as consignment in case of consignment sellout return */ // @ApiMember(Description="To have the piece back in stock as consignment in case of consignment sellout return") public var consSelloutReturnInStock:Bool? /** * Reason for the sell-out, e.g., 'CPO' (Certified Pre-Owned) */ // @ApiMember(Description="Reason for the sell-out, e.g., 'CPO' (Certified Pre-Owned)") public var saleReasonId:String? required public init(){} } public class CreateSellOutResponse : Codable { /** * Unique Identifier of the Sell-out item created in Booster */ // @ApiMember(Description="Unique Identifier of the Sell-out item created in Booster") public var saleDetailId:Int? /** * Unique Identifiers of the Sell-out items created in Booster if more than one */ // @ApiMember(Description="Unique Identifiers of the Sell-out items created in Booster if more than one") public var saleDetailIds:[Int]? /** * Unique Identifier of the Sell-out header created in Booster */ // @ApiMember(Description="Unique Identifier of the Sell-out header created in Booster", IsRequired=true) public var saleId:Int? required public init(){} }