/* Options: Date: 2026-02-14 10:12:53 Version: 10.04 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stf-api-uat.data-xchange.co.za //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddNullableAnnotations: True //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: False //ExportValueTypes: False IncludeTypes: GetPurchaseConditionByIdentification.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.IO; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using DX.STF.Models.Dto.GS1; using DX.STF.Application.ClientApi.Messages.PurchaseCondition; namespace DX.STF.Application.ClientApi.Messages.PurchaseCondition { /// ///Purchase Conditions /// [Route("/purchaseCondition/{OwnerGln}/{Identification}", "GET")] [Api(Description="Purchase Conditions")] [ApiResponse(Description="PurchaseCondition data", IsDefaultResponse=true, StatusCode=200)] [ApiResponse(Description="No Content", ResponseType=typeof(ServiceStack.IReturnVoid), StatusCode=204)] [ApiResponse(Description="Specified argument was out of the range of valid values.", ResponseType=typeof(System.ArgumentOutOfRangeException), StatusCode=400)] public partial class GetPurchaseConditionByIdentification : IReturn { /// ///Purchase Condition Owner GLN /// [ApiMember(Description="Purchase Condition Owner GLN", ExcludeInSchema=true, ParameterType="path")] public virtual string OwnerGln { get; set; } /// ///Purchase Condition Identifier /// [ApiMember(Description="Purchase Condition Identifier", ExcludeInSchema=true, ParameterType="path")] public virtual string Identification { get; set; } } } namespace DX.STF.Models.Dto.GS1 { public partial class Address { public virtual string StreetAddressOne { get; set; } public virtual string StreetAddressTwo { get; set; } public virtual string StreetAddressThree { get; set; } public virtual string City { get; set; } public virtual string PostalCode { get; set; } public virtual string ProvinceCode { get; set; } public virtual string CountryCode { get; set; } } public partial class AllowanceCharge { public virtual decimal? AllowanceChargeAmount { get; set; } public virtual decimal? AllowanceChargePercentage { get; set; } public virtual string AllowanceChargeType { get; set; } public virtual string AllowanceOrChargeType { get; set; } public virtual decimal? AmountPerUnit { get; set; } public virtual decimal? BaseAmount { get; set; } public virtual string BaseNumberOfUnits { get; set; } public virtual string BracketIdentifier { get; set; } public virtual DateTime? EffectiveDateType { get; set; } public virtual string SequenceNumber { get; set; } public virtual string SettlementType { get; set; } public virtual string SpecialServiceType { get; set; } public virtual string AllowanceChargeDescription { get; set; } } public partial class AvpList { public virtual string Code { get; set; } public virtual string Value { get; set; } } public partial class BaseDocument { public virtual string CurrencyCode { get; set; } public virtual DateTime CreationDateTime { get; set; } public virtual DocumentAction DocumentActionCode { get; set; } public virtual DocumentStatus DocumentStatusCode { get; set; } public virtual string DocumentStructureVersion { get; set; } public virtual DateTime? LastUpdateDateTime { get; set; } public virtual long? RevisionNumber { get; set; } public virtual List AvpList { get; set; } = []; } public partial class Colour { public virtual string ColourCode { get; set; } public virtual string ColourDescription { get; set; } } public partial class CommunicationChannel { public virtual string CommunicationChannelCode { get; set; } public virtual string CommunicationChannelName { get; set; } public virtual string CommunicationValue { get; set; } } public partial class Contact { public virtual string ContactTypeCode { get; set; } public virtual string PersonName { get; set; } public virtual string DepartmentName { get; set; } public virtual string JobTitle { get; set; } public virtual string Responsibility { get; set; } public virtual List CommunicationChannel { get; set; } = []; } [DataContract] public partial class ContactInformation { } public partial class CurrencyExchangeRateInformation { public virtual string CurrencyConversionFromCode { get; set; } public virtual string CurrencyConversionToCode { get; set; } public virtual long? ExchangeRate { get; set; } public virtual DateTime? ExchangeRateDateTime { get; set; } } public partial class DateTimeRange { public virtual DateOnly BeginDate { get; set; } public virtual TimeOnly? BeginTime { get; set; } public virtual DateOnly? EndDate { get; set; } public virtual TimeOnly? EndTime { get; set; } } public enum DocumentAction { ADD, CHANGE_BY_REFRESH, DELETE, REJECTED, } [DataContract] public partial class DocumentIdentification { [DataMember(Name="identifier")] public virtual string Identifier { get; set; } [DataMember(Name="type")] public virtual string Type { get; set; } [DataMember(Name="creationDateAndTime")] public virtual DateTime CreationDateAndTime { get; set; } } public partial class DocumentReference { public virtual DateTime? CreationDateTime { get; set; } public virtual long? RevisionNumber { get; set; } public virtual long? LineItemNumber { get; set; } public virtual string EntityIdentification { get; set; } } public enum DocumentStatus { ADDITIONAL_TRANSMISSION, COPY, ORIGINAL, } public partial class Ecom_PartyIdentificationType { public virtual string Gln { get; set; } public virtual string Name { get; set; } public virtual List AdditionalPartyIdentification { get; set; } = []; } public partial class FinancialAccount { public virtual string Number { get; set; } public virtual string NumberTypeCode { get; set; } public virtual string Name { get; set; } } public partial class FinancialInstitutionInformation { public virtual string FinancialInstitutionBranchName { get; set; } public virtual string FinancialInstitutionName { get; set; } public virtual FinancialRoutingNumber FinancialRoutingNumber { get; set; } public virtual FinancialAccount FinancialAccount { get; set; } public virtual string SwiftCode { get; set; } public virtual string ExportersCode { get; set; } } public partial class FinancialRoutingNumber { public virtual string Number { get; set; } public virtual string NumberTypeCode { get; set; } } [DataContract] public partial class Header { [DataMember(Name="documentIdentification")] public virtual DocumentIdentification DocumentIdentification { get; set; } [DataMember(Name="sender")] public virtual Partner Sender { get; set; } [DataMember(Name="receiver")] public virtual Partner Receiver { get; set; } } [DataContract] public partial class Identifier { [DataMember(Name="authority")] public virtual string Authority { get; set; } [DataMember(Name="text")] public virtual string Text { get; set; } } public partial class LeviedDutyFeeTax { public virtual decimal? DutyFeeTaxAmount { get; set; } public virtual decimal? DutyFeeTaxBasisAmount { get; set; } public virtual string DutyFeeTaxDescription { get; set; } public virtual decimal? DutyFeeTaxPercentage { get; set; } } [DataContract] public partial class Partner { [DataMember(Name="identifier")] public virtual Identifier Identifier { get; set; } [DataMember(Name="contactInformation")] public virtual List ContactInformation { get; set; } = []; } public partial class PurchaseConditions : BaseDocument { public virtual string PurchaseConditionsCurrencyCode { get; set; } public virtual List PurchaseConditionsLocationInformation { get; set; } = []; public virtual CurrencyExchangeRateInformation CurrencyExchangeRateInformation { get; set; } public virtual TransactionalParty Buyer { get; set; } public virtual TransactionalParty Payee { get; set; } public virtual TransactionalParty Payer { get; set; } public virtual string PurchaseConditionsIdentification { get; set; } public virtual TransactionalParty RemitTo { get; set; } public virtual TransactionalParty Seller { get; set; } public virtual TransactionalParty TaxRepresentative { get; set; } } public partial class PurchaseConditionsCommitmentPeriod { public virtual TimeMeasurement CommitmentPeriodDuration { get; set; } public virtual string PurchaseConditionsCommitmentTypeCode { get; set; } } public partial class PurchaseConditionsLineItem { public virtual decimal? DiscrepancyTolerancePercentage { get; set; } public virtual long? LineItemNumber { get; set; } public virtual string PackagingTypeCode { get; set; } public virtual long? ParentLineItemNumber { get; set; } public virtual Quantity PurchaseConditionsQuantity { get; set; } public virtual List PurchaseConditionsCommitmentPeriod { get; set; } = []; public virtual List PurchaseConditionsPriceInformation { get; set; } = []; public virtual List AllowanceCharge { get; set; } = []; public virtual TransactionalTradeItem TransactionalTradeItem { get; set; } public virtual LeviedDutyFeeTax LeviedDutyFeeTax { get; set; } public virtual List AvpList { get; set; } = []; public virtual DateTimeRange EffectivePeriod { get; set; } public virtual DocumentReference MaterialSpecification { get; set; } public virtual QuantityRange PurchaseConditionsQuantityRange { get; set; } } public partial class PurchaseConditionsLocationInformation { public virtual List PurchaseConditionsLineItem { get; set; } = []; public virtual TransactionalParty ShipFrom { get; set; } public virtual TransactionalParty ShipTo { get; set; } } public partial class PurchaseConditionsMessage { public virtual Header Header { get; set; } public virtual PurchaseConditions PurchaseConditions { get; set; } } public partial class PurchaseConditionsPriceInformation { public virtual Quantity ItemPriceBaseQuantity { get; set; } public virtual decimal? ItemPriceExclusiveAllowancesCharges { get; set; } public virtual QuantityRange QuantityRange { get; set; } public virtual DateTimeRange EffectivePeriod { get; set; } } public partial class Quantity { public virtual decimal? Value { get; set; } public virtual string MeasurementUnitCode { get; set; } public virtual string CodeListVersion { get; set; } } public partial class QuantityRange { public virtual Quantity MaximumQuantity { get; set; } public virtual Quantity MinimumQuantity { get; set; } } public partial class SerialNumberRange { public virtual string MaximumValue { get; set; } public virtual string MinimumValue { get; set; } } public partial class Size { public virtual string DescriptiveSize { get; set; } public virtual string SizeCode { get; set; } } public partial class TimeMeasurement { public virtual string TimeMeasurementUnitCode { get; set; } public virtual decimal? Value { get; set; } } public partial class TradeItemClassification { public virtual string GpcCategoryCode { get; set; } public virtual List AdditionalTradeItemClassificationCode { get; set; } = []; public virtual string GpcCategoryName { get; set; } public virtual List GpcAttribute { get; set; } = []; } public partial class TradeItemWaste { public virtual string WasteIdentification { get; set; } public virtual List TypeOfWaste { get; set; } = []; } public partial class TransactionalItem { public virtual string MeasurementUnitCode { get; set; } public virtual string MeasurementType { get; set; } public virtual string MeasurementValue { get; set; } } public partial class TransactionalItemData { public virtual DateTime? AvailableForSaleDate { get; set; } public virtual string BatchNumber { get; set; } public virtual DateTime? BestBeforeDate { get; set; } public virtual string CountryOfOrigin { get; set; } public virtual DateTime? ItemExpirationDate { get; set; } public virtual string LotNumber { get; set; } public virtual DateTime? PackagingDate { get; set; } public virtual DateTime? ProductionDate { get; set; } public virtual string ProductQualityIndication { get; set; } public virtual DateTime? SellByDate { get; set; } public virtual List SerialNumber { get; set; } = []; public virtual string ShelfLife { get; set; } public virtual long? TradeItemQuantity { get; set; } public virtual bool? ItemInContactWithFoodProduct { get; set; } public virtual List TransactionalItemWeight { get; set; } = []; public virtual List TransactionalItemVolume { get; set; } = []; public virtual List SerialNumberRange { get; set; } = []; public virtual List TransactionalItemDimensions { get; set; } = []; public virtual TransactionalItemLogisticUnitInformation TransactionalItemLogisticUnitInformation { get; set; } public virtual TransactionalItemDataCarrierAndIdentification TransactionalItemDataCarrierAndIdentification { get; set; } public virtual List TradeItemWaste { get; set; } = []; public virtual TransactionalItemOrganicInformation TransactionalItemOrganicInformation { get; set; } public virtual List AvpList { get; set; } = []; } public partial class TransactionalItemDataCarrierAndIdentification { public virtual string Gs1TransactionalItemIdentificationKey { get; set; } public virtual string DataCarrier { get; set; } } public partial class TransactionalItemDimension { public virtual string MeasurementUnitCode { get; set; } public virtual string Depth { get; set; } public virtual string Height { get; set; } public virtual string Width { get; set; } } public partial class TransactionalItemLogisticUnitInformation { public virtual long? NumberOfLayers { get; set; } public virtual long? NumberOfUnitsPerLayer { get; set; } public virtual long? NumberOfUnitsPerPallet { get; set; } public virtual string PackagingTerms { get; set; } public virtual string PackageTypeCode { get; set; } public virtual long? MaximumStackingFactor { get; set; } public virtual string ReturnablePackageTransportCostPayment { get; set; } public virtual List DimensionsOfLogisticUnit { get; set; } = []; } public partial class TransactionalItemOrganicInformation { public virtual bool? IsTradeItemOrganic { get; set; } public virtual string OrganicCertification { get; set; } } public partial class TransactionalParty : Ecom_PartyIdentificationType { public virtual List Contact { get; set; } = []; public virtual Address Address { get; set; } public virtual List CommunicationChannel { get; set; } = []; public virtual FinancialInstitutionInformation FinancialInstitutionInformation { get; set; } public virtual string DutyFeeTaxRegistration { get; set; } public virtual string EntityIdentification { get; set; } } public partial class TransactionalTradeItem { public virtual string Gtin { get; set; } public virtual List AdditionalTradeItemIdentification { get; set; } = []; public virtual decimal? TradeItemQuantity { get; set; } public virtual string TradeItemDescription { get; set; } public virtual string ProductVariantIdentifier { get; set; } public virtual string ItemTypeCode { get; set; } public virtual string TradeItemDataOwner { get; set; } public virtual string ButterFatReference { get; set; } public virtual List TransactionalItemData { get; set; } = []; public virtual List Colour { get; set; } = []; public virtual Size Size { get; set; } public virtual TradeItemClassification TradeItemClassification { get; set; } public virtual List AvpList { get; set; } = []; } }