/* Options: Date: 2026-02-14 11:46:05 Version: 10.04 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stf-api-uat.data-xchange.co.za //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetReceivingAdvice.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface IReturnVoid { createResponse(): void; } export interface IDocument extends IHaveToken { } export interface IHaveToken { token: string; } export class ResultItem implements IDocument { public token: string; public item: T; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } // @DataContract export class DocumentIdentification { // @DataMember(Name="identifier") public identifier: string; // @DataMember(Name="type") public type: string; // @DataMember(Name="creationDateAndTime") public creationDateAndTime: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class Identifier { // @DataMember(Name="authority") public authority: string; // @DataMember(Name="text") public text: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ContactInformation { public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class Partner { // @DataMember(Name="identifier") public identifier: Identifier; // @DataMember(Name="contactInformation") public contactInformation: ContactInformation[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class Header { // @DataMember(Name="documentIdentification") public documentIdentification: DocumentIdentification; // @DataMember(Name="sender") public sender: Partner; // @DataMember(Name="receiver") public receiver: Partner; public constructor(init?: Partial
) { (Object as any).assign(this, init); } } export class AvpList { public code: string; public value: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Ecom_PartyIdentificationType { public gln: string; public name: string; public additionalPartyIdentification: AvpList[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CommunicationChannel { public communicationChannelCode: string; public communicationChannelName: string; public communicationValue: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Contact { public contactTypeCode: string; public personName: string; public departmentName: string; public jobTitle: string; public responsibility: string; public communicationChannel: CommunicationChannel[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Address { public streetAddressOne: string; public streetAddressTwo: string; public streetAddressThree: string; public city: string; public postalCode: string; public provinceCode: string; public countryCode: string; public constructor(init?: Partial
) { (Object as any).assign(this, init); } } export class FinancialRoutingNumber { public number: string; public numberTypeCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class FinancialAccount { public number: string; public numberTypeCode: string; public name: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class FinancialInstitutionInformation { public financialInstitutionBranchName: string; public financialInstitutionName: string; public financialRoutingNumber: FinancialRoutingNumber; public financialAccount: FinancialAccount; public swiftCode: string; public exportersCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalParty extends Ecom_PartyIdentificationType { public contact: Contact[] = []; public address: Address; public communicationChannel: AvpList[] = []; public financialInstitutionInformation: FinancialInstitutionInformation; public dutyFeeTaxRegistration: string; public entityIdentification: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export enum DocumentAction { ADD = 'ADD', CHANGE_BY_REFRESH = 'CHANGE_BY_REFRESH', DELETE = 'DELETE', REJECTED = 'REJECTED', } export enum DocumentStatus { ADDITIONAL_TRANSMISSION = 'ADDITIONAL_TRANSMISSION', COPY = 'COPY', ORIGINAL = 'ORIGINAL', } export class BaseDocument { public currencyCode: string; public creationDateTime: string; public documentActionCode: DocumentAction; public documentStatusCode: DocumentStatus; public documentStructureVersion: string; public lastUpdateDateTime?: string; public revisionNumber?: number; public avpList: AvpList[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class IdentityDocument { public identityDocumentIssuer: string; public identityDocumentNumber: string; public identityDocumentType: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Person { public dateOfBirth?: string; public gender: string; public nationality: string; public personName: string; public identityDocument: IdentityDocument[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ReceivingAdviceTransportInformation { public routeID: Identifier; public transportMeansID: Identifier; public transportMeansName: string; public driver: Contact; public driverID: Person; public receiver: Contact; public receiverID: Person; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class DocumentReference { public creationDateTime?: string; public revisionNumber?: number; public lineItemNumber?: number; public entityIdentification: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AdditionalConsignmentIdentification { public text: string; public additionalConsignmentIdentificationTypeCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ConsignmentIdentification { public ginc: string; public additionalConsignmentIdentification: AdditionalConsignmentIdentification; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Measurement { public value?: number; public codeListVersion: string; public measurementUnitCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Dimension { public depth: Measurement; public height: Measurement; public width: Measurement; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class UnitMeasurement { public measurementType: string; public measurementValue: Measurement; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class LogisticUnitMeasurement { public dimension: Dimension; public unitMeasurement: UnitMeasurement; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AdditionalReturnableAssetIdentification { public value: string; public additionalReturnableAssetIdentificationTypeCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ReturnableAssetIdentification { public additionalReturnableAssetIdentification: AdditionalReturnableAssetIdentification[] = []; public grai: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ReturnablePackaging { public currentHolderRegistration: Identifier; public newHolderRegistration: Identifier; public packagingConditionCode: string; public packagingQuantity?: number; public individualReturnableAssetIdentification: ReturnableAssetIdentification[] = []; public returnableAssetIdentification: ReturnableAssetIdentification; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CarrierTrackAndTraceInformation { public carrierTrackAndTraceURL: string; public packageTrackingNumber: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AdditionalIndividualAssetIdentification { public value?: number; public additionalIndividualAssetIdentificationTypeCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Ecom_IndividualAssetIdentification { public additionalIndividualAssetIdentification: AdditionalIndividualAssetIdentification[] = []; public giai: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AdditionalLogisticUnitIdentification { public value?: number; public additionalLogisticUnitIdentificationTypeCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Ecom_LogisticUnitIdentification { public additionalLogisiticUnitIdentification: AdditionalLogisticUnitIdentification[] = []; public sscc: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class LogisticUnits { public childPackageTypeCode: string; public levelIdentification?: number; public packageTypeCode: string; public parentLevelIdentification?: number; public quantityOfChildren?: number; public quantityOfLogisticUnits?: number; public logisticUnitMeasurement: LogisticUnitMeasurement; public returnablePackaging: ReturnablePackaging[] = []; public carrierTrackAndTraceInformation: CarrierTrackAndTraceInformation; public avpList: AvpList; public individualAssetIdentification: Ecom_IndividualAssetIdentification[] = []; public logisticUnitIdentification: Ecom_LogisticUnitIdentification; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Quantity { public value?: number; public measurementUnitCode: string; public codeListVersion: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ReceivingConditionInformation { public receivedGoodsDisposition: string; public receivingConditionCode: string; public receivingConditionQuantity: Quantity; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalItem { public measurementUnitCode: string; public measurementType: string; public measurementValue: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SerialNumberRange { public maximumValue: string; public minimumValue: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalItemDimension { public measurementUnitCode: string; public depth: string; public height: string; public width: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalItemLogisticUnitInformation { public numberOfLayers?: number; public numberOfUnitsPerLayer?: number; public numberOfUnitsPerPallet?: number; public packagingTerms: string; public packageTypeCode: string; public maximumStackingFactor?: number; public returnablePackageTransportCostPayment: string; public dimensionsOfLogisticUnit: TransactionalItemDimension[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalItemDataCarrierAndIdentification { public gs1TransactionalItemIdentificationKey: string; public dataCarrier: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TradeItemWaste { public wasteIdentification: string; public typeOfWaste: AvpList[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalItemOrganicInformation { public isTradeItemOrganic?: boolean; public organicCertification: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalItemData { public availableForSaleDate?: string; public batchNumber: string; public bestBeforeDate?: string; public countryOfOrigin: string; public itemExpirationDate?: string; public lotNumber: string; public packagingDate?: string; public productionDate?: string; public productQualityIndication: string; public sellByDate?: string; public serialNumber: string[] = []; public shelfLife: string; public tradeItemQuantity?: number; public itemInContactWithFoodProduct?: boolean; public transactionalItemWeight: TransactionalItem[] = []; public transactionalItemVolume: TransactionalItem[] = []; public serialNumberRange: SerialNumberRange[] = []; public transactionalItemDimensions: TransactionalItemDimension[] = []; public transactionalItemLogisticUnitInformation: TransactionalItemLogisticUnitInformation; public transactionalItemDataCarrierAndIdentification: TransactionalItemDataCarrierAndIdentification; public tradeItemWaste: TradeItemWaste[] = []; public transactionalItemOrganicInformation: TransactionalItemOrganicInformation; public avpList: AvpList[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Colour { public colourCode: string; public colourDescription: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Size { public descriptiveSize: string; public sizeCode: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TradeItemClassification { public gpcCategoryCode: string; public additionalTradeItemClassificationCode: AvpList[] = []; public gpcCategoryName: string; public gpcAttribute: AvpList[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TransactionalTradeItem { public gtin: string; public additionalTradeItemIdentification: AvpList[] = []; public tradeItemQuantity?: number; public tradeItemDescription: string; public productVariantIdentifier: string; public itemTypeCode: string; public tradeItemDataOwner: string; public butterFatReference: string; public transactionalItemData: TransactionalItemData[] = []; public colour: Colour[] = []; public size: Size; public tradeItemClassification: TradeItemClassification; public avpList: AvpList[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class TradeItemIdentification { public additionalTradeItemIdentification: AvpList[] = []; public gtin: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ReceivingAdviceLineItem { public extension: string; public lineItemNumber?: number; public note: string; public parentLineItemNumber?: number; public quantityAccepted: Quantity; public quantityDespatched: Quantity; public quantityReceived: Quantity; public receivingConditionInformation: ReceivingConditionInformation[] = []; public transactionalTradeItem: TransactionalTradeItem; public consignmentIdentification: ConsignmentIdentification; public avpList: AvpList; public contract: DocumentReference; public customerReference: DocumentReference; public deliveryNote: DocumentReference; public despatchAdvice: DocumentReference; public productCertification: DocumentReference; public promotionalDeal: DocumentReference; public purchaseConditions: DocumentReference; public purchaseOrder: DocumentReference; public requestedItemIdentification: TradeItemIdentification; public specification: DocumentReference; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ReceivingAdviceLogisticUnit extends LogisticUnits { public receivingAdviceLineItem: ReceivingAdviceLineItem[] = []; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class ReceivingAdvice extends BaseDocument { public despatchAdviceDeliveryDateTime?: string; public note: string; public paymentDateTime?: string; public receivingDateTime?: string; public reportingCode: string; public totalDepositAmount?: number; public receivingAdviceTransportInformation: ReceivingAdviceTransportInformation; public billOfLadingNumber: DocumentReference; public buyer: TransactionalParty; public carrier: TransactionalParty; public consignmentIdentification: ConsignmentIdentification; public deliveryNote: DocumentReference; public despatchAdvice: string; public inventoryLocation: TransactionalParty; public purchaseOrder: DocumentReference; public receiver: TransactionalParty; public receivingAdviceIdentification: string; public seller: TransactionalParty; public shipFrom: TransactionalParty; public shipmentIdentification: ConsignmentIdentification; public shipper: TransactionalParty; public shipTo: TransactionalParty; public receivingAdviceLogisticUnit: ReceivingAdviceLogisticUnit[] = []; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class ReceivingAdviceMessage { public header: Header; public receivingAdvice: ReceivingAdvice; public constructor(init?: Partial) { (Object as any).assign(this, init); } } /** @description Receiving Advice */ // @Route("/receivingAdvice", "GET") // @Api(Description="Receiving Advice") // @ApiResponse(Description="ReceivingAdvice message", IsDefaultResponse=true, StatusCode=200) // @ApiResponse(Description="No Content", ResponseType="typeof(ServiceStack.IReturnVoid)", StatusCode=204) export class GetReceivingAdvice implements IReturn> { public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'GetReceivingAdvice'; } public getMethod() { return 'GET'; } public createResponse() { return new ResultItem(); } }