/* Options: Date: 2026-05-19 09:51:54 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetStock.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class StockRequest { /** @description Brand */ // @ApiMember(Description="Brand", IsRequired=true) public brand: string; /** @description POS Legacy */ // @ApiMember(Description="POS Legacy") public posCodes: string[]; /** @description Article Codes */ // @ApiMember(Description="Article Codes") public articleCodes: string[]; /** @description Include Extra Info */ // @ApiMember(Description="Include Extra Info") public includeExtraInfo: boolean; /** @description Cluster Id */ // @ApiMember(Description="Cluster Id") public clusterIds: string[]; /** @description Include Consignment NotAuthorized POS */ // @ApiMember(Description="Include Consignment NotAuthorized POS") public includeConsignmentNotAuthorizedPOS: boolean; /** @description Include Retail Sales Price in the Output, by default: false */ // @ApiMember(Description="Include Retail Sales Price in the Output, by default: false") public includeRSP: boolean; /** @description In Stock Since date from */ // @ApiMember(Description="In Stock Since date from ") public dateFrom?: string; /** @description In Stock Since date to */ // @ApiMember(Description="In Stock Since date to") public dateTo?: string; /** @description Item type, 'standard' OR 'consigned'. By default, all are coming */ // @ApiMember(Description="Item type, 'standard' OR 'consigned'. By default, all are coming") public type: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Pos { /** @description POS Code */ // @ApiMember(Description="POS Code", IsRequired=true) public posCode: string; /** @description Name of the POS */ // @ApiMember(Description="Name of the POS", IsRequired=true) public name: string; /** @description City of the POS */ // @ApiMember(Description="City of the POS", IsRequired=true) public city: string; /** @description Address of the POS */ // @ApiMember(Description="Address of the POS", IsRequired=true) public address: string; /** @description Country of the POS */ // @ApiMember(Description="Country of the POS", IsRequired=true) public country: string; /** @description Brand of the POS */ // @ApiMember(Description="Brand of the POS", IsRequired=true) public brand: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class UnitNetAmount { /** @description Currency Iso Code */ // @ApiMember(Description="Currency Iso Code", IsRequired=true) public currencyIsoCode: string; /** @description Value */ // @ApiMember(Description="Value", IsRequired=true) public value: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class StockPositionItem { /** @description Quantity */ // @ApiMember(Description="Quantity", IsRequired=true) public quantity: number; /** @description Serial Number */ // @ApiMember(Description="Serial Number") public serialNumber: string; /** @description Stock Date */ // @ApiMember(Description="Stock Date", IsRequired=true) public stockDate: string; /** @description Loaded On Date */ // @ApiMember(Description="Loaded On Date", IsRequired=true) public loadedOnDate: string; /** @description Type e.g. consignment or standard */ // @ApiMember(Description="Type e.g. consignment or standard", IsRequired=true) public type: string; /** @description Is Consignment Sellable */ // @ApiMember(Description="Is Consignment Sellable ", IsRequired=true) public isConsignmentSellable: boolean; /** @description Sell-In Price. Disclaimer: this data will be arriving empty/null due to DealerCost project still being in test phase. */ // @ApiMember(Description="Sell-In Price. Disclaimer: this data will be arriving empty/null due to DealerCost project still being in test phase.") public unitNetAmount: UnitNetAmount; /** @description Retail Sales Price */ // @ApiMember(Description="Retail Sales Price") public retailSalesPrice: UnitNetAmount; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class StockItem { /** @description Article Code */ // @ApiMember(Description="Article Code", IsRequired=true) public articleCode: string; /** @description Current Stock Quantity */ // @ApiMember(Description="Current Stock Quantity", IsRequired=true) public currentStockQuantity: number; /** @description Serial Numbers */ // @ApiMember(Description="Serial Numbers") public serialNumbers: string[]; /** @description Stock Item in Details */ // @ApiMember(Description="Stock Item in Details", IsRequired=true) public stockPositions: StockPositionItem[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PosStockItem { /** @description Brand */ // @ApiMember(Description="Brand", IsRequired=true) public brand: string; /** @description Pos Code */ // @ApiMember(Description="Pos Code", IsRequired=true) public posCode: string; /** @description Shared Stock Location */ // @ApiMember(Description="Shared Stock Location", IsRequired=true) public sharedStockLocation: Pos; /** @description Stock Items */ // @ApiMember(Description="Stock Items") public stockItems: StockItem[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Pos { /** @description Name of the POS */ // @ApiMember(Description="Name of the POS", IsRequired=true) public name: string; /** @description POS Code */ // @ApiMember(Description="POS Code", IsRequired=true) public posCode: string; /** @description Pos Code To Be Displayed */ // @ApiMember(Description="Pos Code To Be Displayed", IsRequired=true) public posCodeToBeDisplayed: string; /** @description Country of the POS */ // @ApiMember(Description="Country of the POS", IsRequired=true) public country: string; /** @description City of the POS */ // @ApiMember(Description="City of the POS", IsRequired=true) public city: string; /** @description Postal Code */ // @ApiMember(Description="Postal Code", IsRequired=true) public postalCode: string; /** @description State */ // @ApiMember(Description="State", IsRequired=true) public state: string; /** @description Street */ // @ApiMember(Description="Street", IsRequired=true) public street: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class GetStockResponse extends Array { public constructor(init?: Partial) { super(); (Object as any).assign(this, init); } } // @Route("/stock/{brand}", "GET") export class GetStock extends StockRequest implements IReturn { public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'GetStock'; } public getMethod() { return 'GET'; } public createResponse() { return new GetStockResponse(); } }