/* Options: Date: 2026-05-19 09:52:40 SwiftVersion: 5.0 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: GetPurchaseItems.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/purchaseItem/{brand}", "GET") public class GetPurchaseItems : IReturn, IPagedRequest, Codable { public typealias Return = GetPurchaseItemsResponse /** * Brand */ // @ApiMember(Description="Brand", IsRequired=true) public var brand:String /** * POS Legacy */ // @ApiMember(Description="POS Legacy", IsRequired=true) public var posCodes:[String] = [] /** * Article Codes */ // @ApiMember(Description="Article Codes") public var articleCodes:[String] = [] /** * ERP Order Codes */ // @ApiMember(Description="ERP Order Codes") public var erpOrderCodes:[String] = [] /** * Index of the result set returned */ // @ApiMember(Description="Index of the result set returned") public var page:Int /** * Size of the result set returned */ // @ApiMember(Description="Size of the result set returned") public var items:Int /** * Omit precise record count - save on performance */ // @ApiMember(Description="Omit precise record count - save on performance") public var noCount:Bool /** * Sorting expression */ // @ApiMember(Description="Sorting expression") public var sortBy:String required public init(){} } public class GetPurchaseItemsResponse : Codable { /** * Total Pages */ // @ApiMember(Description="Total Pages", IsRequired=true) public var totalPages:Int /** * Total Results */ // @ApiMember(Description="Total Results", IsRequired=true) public var totalResults:Int /** * Index of the result set returned */ // @ApiMember(Description="Index of the result set returned", IsRequired=true) public var page:Int /** * Size of the result set returned */ // @ApiMember(Description="Size of the result set returned", IsRequired=true) public var items:Int /** * List of purchase items */ // @ApiMember(Description="List of purchase items", IsRequired=true) public var elements:[PurchaseItem] = [] required public init(){} } public protocol IPagedRequest { var page:Int { get set } var items:Int { get set } var noCount:Bool { get set } var sortBy:String { get set } } public class PurchaseItem : Codable { /** * Pos Code */ // @ApiMember(Description="Pos Code", IsRequired=true) public var posCode:String /** * Pos Code To Be Displayed */ // @ApiMember(Description="Pos Code To Be Displayed", IsRequired=true) public var posCodeToBeDisplayed:String /** * Erp Order Id */ // @ApiMember(Description="Erp Order Id", IsRequired=true) public var erpOrderId:Int /** * Line number */ // @ApiMember(Description="Line number", IsRequired=true) public var lineNumber:Int /** * Order Date */ // @ApiMember(Description="Order Date", IsRequired=true) public var orderDate:String /** * Origin Order Id */ // @ApiMember(Description="Origin Order Id") public var originOrderId:Int? /** * Article Code */ // @ApiMember(Description="Article Code", IsRequired=true) public var articleCode:String /** * Ordered Quantity */ // @ApiMember(Description="Ordered Quantity", IsRequired=true) public var orderedQuantity:Int /** * Open Quantity */ // @ApiMember(Description="Open Quantity", IsRequired=true) public var openQuantity:Int /** * Order status */ // @ApiMember(Description="Order status", IsRequired=true) public var status:String /** * Net Amount */ // @ApiMember(Description="Net Amount", IsRequired=true) public var netAmount:Amount /** * Customer Reference */ // @ApiMember(Description="Customer Reference", IsRequired=true) public var customerReference:String /** * Speaking Article Code */ // @ApiMember(Description="Speaking Article Code", IsRequired=true) public var speakingArticleCode:String /** * Expected Delivery Date */ // @ApiMember(Description="Expected Delivery Date", IsRequired=true) public var expectedDeliveryDate:String /** * Is Strap Vip Order */ // @ApiMember(Description="Is Strap Vip Order", IsRequired=true) public var isStrapVipOrder:Bool /** * Order Type */ // @ApiMember(Description="Order Type", IsRequired=true) public var orderType:String required public init(){} } public class Amount : Codable { /** * Value */ // @ApiMember(Description="Value", IsRequired=true) public var value:Double /** * Currency */ // @ApiMember(Description="Currency", IsRequired=true) public var currency:String required public init(){} }