/* Options: Date: 2026-02-14 10:17:01 Version: 10.04 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stf-api-uat.data-xchange.co.za //Package: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetOrderResponse.* //ExcludeTypes: //InitializeCollections: False //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.* import java.util.* import java.io.InputStream import net.servicestack.client.* import com.google.gson.annotations.* import com.google.gson.reflect.* /** * Order Response */ @Route(Path="/orderResponse", Verbs="GET") @Api(Description="Order Response") @ApiResponse(Description="OrderResponse message", IsDefaultResponse=true, StatusCode=200) // @ApiResponse(Description="No Content", ResponseType=IReturnVoid::class, StatusCode=204) open class GetOrderResponse : IReturn> { companion object { private val responseType = object : TypeToken>(){}.type } override fun getResponseType(): Any? = GetOrderResponse.responseType } open class ResultItem : IDocument { open var token:UUID? = null open var item:OrderResponseMessage? = null } interface IDocument : IHaveToken { } interface IHaveToken { var token:UUID? } @DataContract open class Header { @DataMember(Name="documentIdentification") @SerializedName("documentIdentification") open var documentIdentification:DocumentIdentification? = null @DataMember(Name="sender") @SerializedName("sender") open var sender:Partner? = null @DataMember(Name="receiver") @SerializedName("receiver") open var receiver:Partner? = null } open class TransactionalParty : Ecom_PartyIdentificationType() { open var contact:ArrayList = ArrayList() open var address:Address? = null open var communicationChannel:ArrayList = ArrayList() open var financialInstitutionInformation:FinancialInstitutionInformation? = null open var dutyFeeTaxRegistration:String? = null open var entityIdentification:String? = null } enum class DocumentAction { Add, ChangeByRefresh, Delete, Rejected, } enum class DocumentStatus { AdditionalTransmission, Copy, Original, } open class AvpList { open var code:String? = null open var value:String? = null } open class BaseDocument { open var currencyCode:String? = null open var creationDateTime:Date? = null open var documentActionCode:DocumentAction? = null open var documentStatusCode:DocumentStatus? = null open var documentStructureVersion:String? = null open var lastUpdateDateTime:Date? = null open var revisionNumber:Long? = null open var avpList:ArrayList = ArrayList() } open class OrderResponse : BaseDocument() { open var note:String? = null open var orderResponseReasonCode:ArrayList = ArrayList() open var responseStatusCode:String? = null open var totalMonetaryAmountExcludingTaxes:BigDecimal? = null open var totalMonetaryAmountIncludingTaxes:BigDecimal? = null open var totalTaxAmount:BigDecimal? = null open var allowanceCharge:ArrayList = ArrayList() open var deliveryTerms:DeliveryTerms? = null open var amendedDateTimeValue:OrderLogisticalDateInformation? = null open var orderResponseIdentification:String? = null open var originalOrder:DocumentReference? = null open var salesOrder:DocumentReference? = null open var billTo:TransactionalParty? = null open var buyer:TransactionalParty? = null open var seller:TransactionalParty? = null open var shipTo:TransactionalParty? = null open var orderResponseLineItem:ArrayList = ArrayList() } @DataContract open class DocumentIdentification { @DataMember(Name="identifier") @SerializedName("identifier") open var identifier:String? = null @DataMember(Name="type") @SerializedName("type") open var Type:String? = null @DataMember(Name="creationDateAndTime") @SerializedName("creationDateAndTime") open var creationDateAndTime:Date? = null } @DataContract open class Partner { @DataMember(Name="identifier") @SerializedName("identifier") open var identifier:Identifier? = null @DataMember(Name="contactInformation") @SerializedName("contactInformation") open var contactInformation:ArrayList = ArrayList() } open class DocumentReference { open var creationDateTime:Date? = null open var revisionNumber:Long? = null open var lineItemNumber:Long? = null open var entityIdentification:String? = null } open class ShipmentTransportationInformation { open var carrier:TransactionalParty? = null open var freightForwarder:TransactionalParty? = null } open class Contact { open var contactTypeCode:String? = null open var personName:String? = null open var departmentName:String? = null open var jobTitle:String? = null open var responsibility:String? = null open var communicationChannel:ArrayList = ArrayList() } open class Address { open var streetAddressOne:String? = null open var streetAddressTwo:String? = null open var streetAddressThree:String? = null open var city:String? = null open var postalCode:String? = null open var provinceCode:String? = null open var countryCode:String? = null } open class FinancialInstitutionInformation { open var financialInstitutionBranchName:String? = null open var financialInstitutionName:String? = null open var financialRoutingNumber:FinancialRoutingNumber? = null open var financialAccount:FinancialAccount? = null open var swiftCode:String? = null open var exportersCode:String? = null } open class Ecom_PartyIdentificationType { open var gln:String? = null open var name:String? = null open var additionalPartyIdentification:ArrayList = ArrayList() } open class AllowanceCharge { open var allowanceChargeAmount:BigDecimal? = null open var allowanceChargePercentage:BigDecimal? = null open var allowanceChargeType:String? = null open var allowanceOrChargeType:String? = null open var amountPerUnit:BigDecimal? = null open var baseAmount:BigDecimal? = null open var baseNumberOfUnits:String? = null open var bracketIdentifier:String? = null open var effectiveDateType:Date? = null open var sequenceNumber:String? = null open var settlementType:String? = null open var specialServiceType:String? = null open var allowanceChargeDescription:String? = null } open class DeliveryTerms { open var incotermsCode:String? = null open var alternateDeliveryTermsCode:String? = null open var deliveryInstructions:String? = null open var deliveryCostPayment:String? = null open var isSignatureRequired:String? = null open var deliveryTermsLocation:DeliveryTermsLocation? = null } open class OrderLogisticalDateInformation { open var dateRangeDeliveryDateRange:DateRange? = null open var dateRangeShipDateRange:DateRange? = null open var dateRangeDeliveryDateRangeAtUltimateConsignee:DateRange? = null open var requestedDeliveryDateTime:Date? = null open var requestedShipDateTime:String? = null open var requestedPickUpDateTime:Date? = null open var requestedDeliveryDateTimeAtUltimateConsignee:Date? = null } open class OrderResponseLineItem { open var additionalOrderLineInstruction:ArrayList = ArrayList() open var confirmedQuantity:Quantity? = null open var deliveryDateTime:Date? = null open var lineItemActionCode:String? = null open var lineItemChangeIndicator:String? = null open var lineItemNumber:Long? = null open var monetaryAmountExcludingTaxes:BigDecimal? = null open var monetaryAmountIncludingTaxes:BigDecimal? = null open var netAmount:BigDecimal? = null open var netPrice:BigDecimal? = null open var note:String? = null open var orderResponseReasonCode:String? = null open var responseStatusCode:String? = null open var originalOrderLineItemNumber:Long? = null open var parentLineItemNumber:Long? = null open var orderResponseLineItemDetail:ArrayList = ArrayList() open var allowanceCharge:ArrayList = ArrayList() open var transactionalTradeItem:TransactionalTradeItem? = null open var leviedDutyFeeTax:LeviedDutyFeeTax? = null open var avpList:ArrayList = ArrayList() open var backOrderInformation:OrderResponseLineItemDetail? = null open var substituteItemInformation:TransactionalTradeItem? = null open var shipmentTransportationInformation:ShipmentTransportationInformation? = null } open class OrderLogisticalInformation { open var commodityTypeCode:Code? = null open var orderLogisticalDateInformation:OrderLogisticalDateInformation? = null open var inventoryLocation:TransactionalParty? = null open var shipFrom:TransactionalParty? = null open var shipTo:TransactionalParty? = null open var ultimateConsignee:TransactionalParty? = null open var shipmentTransportationInformation:ShipmentTransportationInformation? = null } @DataContract open class Identifier { @DataMember(Name="authority") @SerializedName("authority") open var authority:String? = null @DataMember(Name="text") @SerializedName("text") open var text:String? = null } @DataContract open class ContactInformation { } open class Quantity { open var value:BigDecimal? = null open var measurementUnitCode:String? = null open var codeListVersion:String? = null } open class TransactionalTradeItem { open var gtin:String? = null open var additionalTradeItemIdentification:ArrayList = ArrayList() open var tradeItemQuantity:BigDecimal? = null open var tradeItemDescription:String? = null open var productVariantIdentifier:String? = null open var itemTypeCode:String? = null open var tradeItemDataOwner:String? = null open var butterFatReference:String? = null open var transactionalItemData:ArrayList = ArrayList() open var colour:ArrayList = ArrayList() open var size:Size? = null open var tradeItemClassification:TradeItemClassification? = null open var avpList:ArrayList = ArrayList() } open class CommunicationChannel { open var communicationChannelCode:String? = null open var communicationChannelName:String? = null open var communicationValue:String? = null } open class FinancialRoutingNumber { open var number:String? = null open var numberTypeCode:String? = null } open class FinancialAccount { open var number:String? = null open var numberTypeCode:String? = null open var name:String? = null } open class DeliveryTermsLocation { open var unLocationCode:String? = null open var gln:String? = null open var additionalLocationIdentification:ArrayList = ArrayList() open var sublocationIdentification:String? = null open var locationName:String? = null open var locationSpecificInstructions:String? = null } open class DateRange { open var beginDate:Date? = null open var beginTime:Date? = null open var endDate:Date? = null open var endTime:Date? = null } open class OrderResponseLineItemDetail { open var confirmedQuantity:Quantity? = null open var orderLogisticalInformation:OrderLogisticalInformation? = null open var avpList:AvpList? = null open var purchaseConditions:DocumentReference? = null } open class LeviedDutyFeeTax { open var dutyFeeTaxAmount:BigDecimal? = null open var dutyFeeTaxBasisAmount:BigDecimal? = null open var dutyFeeTaxDescription:String? = null open var dutyFeeTaxPercentage:BigDecimal? = null } open class Code { open var value:String? = null open var codeDescription:String? = null open var codeListAgencyCodeListVersion:String? = null open var codeListAgencyName:String? = null open var codeListName:String? = null open var codeListUri:String? = null } open class TransactionalItemData { open var availableForSaleDate:Date? = null open var batchNumber:String? = null open var bestBeforeDate:Date? = null open var countryOfOrigin:String? = null open var itemExpirationDate:Date? = null open var lotNumber:String? = null open var packagingDate:Date? = null open var productionDate:Date? = null open var productQualityIndication:String? = null open var sellByDate:Date? = null open var serialNumber:ArrayList = ArrayList() open var shelfLife:String? = null open var tradeItemQuantity:Long? = null open var itemInContactWithFoodProduct:Boolean? = null open var transactionalItemWeight:ArrayList = ArrayList() open var transactionalItemVolume:ArrayList = ArrayList() open var serialNumberRange:ArrayList = ArrayList() open var transactionalItemDimensions:ArrayList = ArrayList() open var transactionalItemLogisticUnitInformation:TransactionalItemLogisticUnitInformation? = null open var transactionalItemDataCarrierAndIdentification:TransactionalItemDataCarrierAndIdentification? = null open var tradeItemWaste:ArrayList = ArrayList() open var transactionalItemOrganicInformation:TransactionalItemOrganicInformation? = null open var avpList:ArrayList = ArrayList() } open class Colour { open var colourCode:String? = null open var colourDescription:String? = null } open class Size { open var descriptiveSize:String? = null open var sizeCode:String? = null } open class TradeItemClassification { open var gpcCategoryCode:String? = null open var additionalTradeItemClassificationCode:ArrayList = ArrayList() open var gpcCategoryName:String? = null open var gpcAttribute:ArrayList = ArrayList() } open class TransactionalItem { open var measurementUnitCode:String? = null open var measurementType:String? = null open var measurementValue:String? = null } open class SerialNumberRange { open var maximumValue:String? = null open var minimumValue:String? = null } open class TransactionalItemDimension { open var measurementUnitCode:String? = null open var depth:String? = null open var height:String? = null open var width:String? = null } open class TransactionalItemLogisticUnitInformation { open var numberOfLayers:Long? = null open var numberOfUnitsPerLayer:Long? = null open var numberOfUnitsPerPallet:Long? = null open var packagingTerms:String? = null open var packageTypeCode:String? = null open var maximumStackingFactor:Long? = null open var returnablePackageTransportCostPayment:String? = null open var dimensionsOfLogisticUnit:ArrayList = ArrayList() } open class TransactionalItemDataCarrierAndIdentification { open var gs1TransactionalItemIdentificationKey:String? = null open var dataCarrier:String? = null } open class TradeItemWaste { open var wasteIdentification:String? = null open var typeOfWaste:ArrayList = ArrayList() } open class TransactionalItemOrganicInformation { open var isTradeItemOrganic:Boolean? = null open var organicCertification:String? = null } open class OrderResponseMessage { open var header:Header? = null open var orderResponse:OrderResponse? = null }