/* Options: Date: 2026-02-14 10:19:51 Version: 10.04 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stf-api-uat.data-xchange.co.za //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetClaim.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; abstract class IDocument extends IHaveToken { } abstract class IHaveToken { String token = ""; } class ResultItem implements IDocument, IConvertible { String token = ""; T item; ResultItem({this.token,this.item}); ResultItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { token = json['token']; item = JsonConverters.fromJson(json['item'],'T',context!); return this; } Map toJson() => { 'token': token, 'item': JsonConverters.toJson(item,'T',context!) }; getTypeName() => "ResultItem<$T>"; TypeContext? context = _ctx; } // @DataContract class DocumentIdentification implements IConvertible { // @DataMember(Name="identifier") String identifier = ""; // @DataMember(Name="type") String type = ""; // @DataMember(Name="creationDateAndTime") DateTime creationDateAndTime = DateTime(0); DocumentIdentification({this.identifier,this.type,this.creationDateAndTime}); DocumentIdentification.fromJson(Map json) { fromMap(json); } fromMap(Map json) { identifier = json['identifier']; type = json['type']; creationDateAndTime = JsonConverters.fromJson(json['creationDateAndTime'],'DateTime',context!); return this; } Map toJson() => { 'identifier': identifier, 'type': type, 'creationDateAndTime': JsonConverters.toJson(creationDateAndTime,'DateTime',context!) }; getTypeName() => "DocumentIdentification"; TypeContext? context = _ctx; } // @DataContract class Identifier implements IConvertible { // @DataMember(Name="authority") String authority = ""; // @DataMember(Name="text") String text = ""; Identifier({this.authority,this.text}); Identifier.fromJson(Map json) { fromMap(json); } fromMap(Map json) { authority = json['authority']; text = json['text']; return this; } Map toJson() => { 'authority': authority, 'text': text }; getTypeName() => "Identifier"; TypeContext? context = _ctx; } // @DataContract class ContactInformation implements IConvertible { ContactInformation(); ContactInformation.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; getTypeName() => "ContactInformation"; TypeContext? context = _ctx; } // @DataContract class Partner implements IConvertible { // @DataMember(Name="identifier") Identifier identifier; // @DataMember(Name="contactInformation") List contactInformation = []; Partner({this.identifier,this.contactInformation}); Partner.fromJson(Map json) { fromMap(json); } fromMap(Map json) { identifier = JsonConverters.fromJson(json['identifier'],'Identifier',context!); contactInformation = JsonConverters.fromJson(json['contactInformation'],'List',context!); return this; } Map toJson() => { 'identifier': JsonConverters.toJson(identifier,'Identifier',context!), 'contactInformation': JsonConverters.toJson(contactInformation,'List',context!) }; getTypeName() => "Partner"; TypeContext? context = _ctx; } // @DataContract class Header implements IConvertible { // @DataMember(Name="documentIdentification") DocumentIdentification documentIdentification; // @DataMember(Name="sender") Partner sender; // @DataMember(Name="receiver") Partner receiver; Header({this.documentIdentification,this.sender,this.receiver}); Header.fromJson(Map json) { fromMap(json); } fromMap(Map json) { documentIdentification = JsonConverters.fromJson(json['documentIdentification'],'DocumentIdentification',context!); sender = JsonConverters.fromJson(json['sender'],'Partner',context!); receiver = JsonConverters.fromJson(json['receiver'],'Partner',context!); return this; } Map toJson() => { 'documentIdentification': JsonConverters.toJson(documentIdentification,'DocumentIdentification',context!), 'sender': JsonConverters.toJson(sender,'Partner',context!), 'receiver': JsonConverters.toJson(receiver,'Partner',context!) }; getTypeName() => "Header"; TypeContext? context = _ctx; } enum DocumentAction { ADD, CHANGE_BY_REFRESH, DELETE, REJECTED, } enum DocumentStatus { ADDITIONAL_TRANSMISSION, COPY, ORIGINAL, } class AvpList implements IConvertible { String code = ""; String value = ""; AvpList({this.code,this.value}); AvpList.fromJson(Map json) { fromMap(json); } fromMap(Map json) { code = json['code']; value = json['value']; return this; } Map toJson() => { 'code': code, 'value': value }; getTypeName() => "AvpList"; TypeContext? context = _ctx; } class BaseDocument implements IConvertible { String currencyCode = ""; DateTime creationDateTime = DateTime(0); DocumentAction documentActionCode; DocumentStatus documentStatusCode; String documentStructureVersion = ""; DateTime? lastUpdateDateTime; int? revisionNumber; List avpList = []; BaseDocument({this.currencyCode,this.creationDateTime,this.documentActionCode,this.documentStatusCode,this.documentStructureVersion,this.lastUpdateDateTime,this.revisionNumber,this.avpList}); BaseDocument.fromJson(Map json) { fromMap(json); } fromMap(Map json) { currencyCode = json['currencyCode']; creationDateTime = JsonConverters.fromJson(json['creationDateTime'],'DateTime',context!); documentActionCode = JsonConverters.fromJson(json['documentActionCode'],'DocumentAction',context!); documentStatusCode = JsonConverters.fromJson(json['documentStatusCode'],'DocumentStatus',context!); documentStructureVersion = json['documentStructureVersion']; lastUpdateDateTime = JsonConverters.fromJson(json['lastUpdateDateTime'],'DateTime',context!); revisionNumber = json['revisionNumber']; avpList = JsonConverters.fromJson(json['avpList'],'List',context!); return this; } Map toJson() => { 'currencyCode': currencyCode, 'creationDateTime': JsonConverters.toJson(creationDateTime,'DateTime',context!), 'documentActionCode': JsonConverters.toJson(documentActionCode,'DocumentAction',context!), 'documentStatusCode': JsonConverters.toJson(documentStatusCode,'DocumentStatus',context!), 'documentStructureVersion': documentStructureVersion, 'lastUpdateDateTime': JsonConverters.toJson(lastUpdateDateTime,'DateTime',context!), 'revisionNumber': revisionNumber, 'avpList': JsonConverters.toJson(avpList,'List',context!) }; getTypeName() => "BaseDocument"; TypeContext? context = _ctx; } class Ecom_PartyIdentificationType implements IConvertible { String gln = ""; String name = ""; List additionalPartyIdentification = []; Ecom_PartyIdentificationType({this.gln,this.name,this.additionalPartyIdentification}); Ecom_PartyIdentificationType.fromJson(Map json) { fromMap(json); } fromMap(Map json) { gln = json['gln']; name = json['name']; additionalPartyIdentification = JsonConverters.fromJson(json['additionalPartyIdentification'],'List',context!); return this; } Map toJson() => { 'gln': gln, 'name': name, 'additionalPartyIdentification': JsonConverters.toJson(additionalPartyIdentification,'List',context!) }; getTypeName() => "Ecom_PartyIdentificationType"; TypeContext? context = _ctx; } class CommunicationChannel implements IConvertible { String communicationChannelCode = ""; String communicationChannelName = ""; String communicationValue = ""; CommunicationChannel({this.communicationChannelCode,this.communicationChannelName,this.communicationValue}); CommunicationChannel.fromJson(Map json) { fromMap(json); } fromMap(Map json) { communicationChannelCode = json['communicationChannelCode']; communicationChannelName = json['communicationChannelName']; communicationValue = json['communicationValue']; return this; } Map toJson() => { 'communicationChannelCode': communicationChannelCode, 'communicationChannelName': communicationChannelName, 'communicationValue': communicationValue }; getTypeName() => "CommunicationChannel"; TypeContext? context = _ctx; } class Contact implements IConvertible { String contactTypeCode = ""; String personName = ""; String departmentName = ""; String jobTitle = ""; String responsibility = ""; List communicationChannel = []; Contact({this.contactTypeCode,this.personName,this.departmentName,this.jobTitle,this.responsibility,this.communicationChannel}); Contact.fromJson(Map json) { fromMap(json); } fromMap(Map json) { contactTypeCode = json['contactTypeCode']; personName = json['personName']; departmentName = json['departmentName']; jobTitle = json['jobTitle']; responsibility = json['responsibility']; communicationChannel = JsonConverters.fromJson(json['communicationChannel'],'List',context!); return this; } Map toJson() => { 'contactTypeCode': contactTypeCode, 'personName': personName, 'departmentName': departmentName, 'jobTitle': jobTitle, 'responsibility': responsibility, 'communicationChannel': JsonConverters.toJson(communicationChannel,'List',context!) }; getTypeName() => "Contact"; TypeContext? context = _ctx; } class Address implements IConvertible { String streetAddressOne = ""; String streetAddressTwo = ""; String streetAddressThree = ""; String city = ""; String postalCode = ""; String provinceCode = ""; String countryCode = ""; Address({this.streetAddressOne,this.streetAddressTwo,this.streetAddressThree,this.city,this.postalCode,this.provinceCode,this.countryCode}); Address.fromJson(Map json) { fromMap(json); } fromMap(Map json) { streetAddressOne = json['streetAddressOne']; streetAddressTwo = json['streetAddressTwo']; streetAddressThree = json['streetAddressThree']; city = json['city']; postalCode = json['postalCode']; provinceCode = json['provinceCode']; countryCode = json['countryCode']; return this; } Map toJson() => { 'streetAddressOne': streetAddressOne, 'streetAddressTwo': streetAddressTwo, 'streetAddressThree': streetAddressThree, 'city': city, 'postalCode': postalCode, 'provinceCode': provinceCode, 'countryCode': countryCode }; getTypeName() => "Address"; TypeContext? context = _ctx; } class FinancialRoutingNumber implements IConvertible { String number = ""; String numberTypeCode = ""; FinancialRoutingNumber({this.number,this.numberTypeCode}); FinancialRoutingNumber.fromJson(Map json) { fromMap(json); } fromMap(Map json) { number = json['number']; numberTypeCode = json['numberTypeCode']; return this; } Map toJson() => { 'number': number, 'numberTypeCode': numberTypeCode }; getTypeName() => "FinancialRoutingNumber"; TypeContext? context = _ctx; } class FinancialAccount implements IConvertible { String number = ""; String numberTypeCode = ""; String name = ""; FinancialAccount({this.number,this.numberTypeCode,this.name}); FinancialAccount.fromJson(Map json) { fromMap(json); } fromMap(Map json) { number = json['number']; numberTypeCode = json['numberTypeCode']; name = json['name']; return this; } Map toJson() => { 'number': number, 'numberTypeCode': numberTypeCode, 'name': name }; getTypeName() => "FinancialAccount"; TypeContext? context = _ctx; } class FinancialInstitutionInformation implements IConvertible { String financialInstitutionBranchName = ""; String financialInstitutionName = ""; FinancialRoutingNumber financialRoutingNumber; FinancialAccount financialAccount; String swiftCode = ""; String exportersCode = ""; FinancialInstitutionInformation({this.financialInstitutionBranchName,this.financialInstitutionName,this.financialRoutingNumber,this.financialAccount,this.swiftCode,this.exportersCode}); FinancialInstitutionInformation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { financialInstitutionBranchName = json['financialInstitutionBranchName']; financialInstitutionName = json['financialInstitutionName']; financialRoutingNumber = JsonConverters.fromJson(json['financialRoutingNumber'],'FinancialRoutingNumber',context!); financialAccount = JsonConverters.fromJson(json['financialAccount'],'FinancialAccount',context!); swiftCode = json['swiftCode']; exportersCode = json['exportersCode']; return this; } Map toJson() => { 'financialInstitutionBranchName': financialInstitutionBranchName, 'financialInstitutionName': financialInstitutionName, 'financialRoutingNumber': JsonConverters.toJson(financialRoutingNumber,'FinancialRoutingNumber',context!), 'financialAccount': JsonConverters.toJson(financialAccount,'FinancialAccount',context!), 'swiftCode': swiftCode, 'exportersCode': exportersCode }; getTypeName() => "FinancialInstitutionInformation"; TypeContext? context = _ctx; } class TransactionalParty extends Ecom_PartyIdentificationType implements IConvertible { List contact = []; Address address; List communicationChannel = []; FinancialInstitutionInformation financialInstitutionInformation; String dutyFeeTaxRegistration = ""; String entityIdentification = ""; TransactionalParty({this.contact,this.address,this.communicationChannel,this.financialInstitutionInformation,this.dutyFeeTaxRegistration,this.entityIdentification}); TransactionalParty.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); contact = JsonConverters.fromJson(json['contact'],'List',context!); address = JsonConverters.fromJson(json['address'],'Address',context!); communicationChannel = JsonConverters.fromJson(json['communicationChannel'],'List',context!); financialInstitutionInformation = JsonConverters.fromJson(json['financialInstitutionInformation'],'FinancialInstitutionInformation',context!); dutyFeeTaxRegistration = json['dutyFeeTaxRegistration']; entityIdentification = json['entityIdentification']; return this; } Map toJson() => super.toJson()..addAll({ 'contact': JsonConverters.toJson(contact,'List',context!), 'address': JsonConverters.toJson(address,'Address',context!), 'communicationChannel': JsonConverters.toJson(communicationChannel,'List',context!), 'financialInstitutionInformation': JsonConverters.toJson(financialInstitutionInformation,'FinancialInstitutionInformation',context!), 'dutyFeeTaxRegistration': dutyFeeTaxRegistration, 'entityIdentification': entityIdentification }); getTypeName() => "TransactionalParty"; TypeContext? context = _ctx; } class BillOfLading implements IConvertible { DateTime creationDate = DateTime(0); int revisionNumber = 0; String entityIdentification = ""; List tagNumbers = []; int totalBags = 0; BillOfLading({this.creationDate,this.revisionNumber,this.entityIdentification,this.tagNumbers,this.totalBags}); BillOfLading.fromJson(Map json) { fromMap(json); } fromMap(Map json) { creationDate = JsonConverters.fromJson(json['creationDate'],'DateTime',context!); revisionNumber = json['revisionNumber']; entityIdentification = json['entityIdentification']; tagNumbers = JsonConverters.fromJson(json['tagNumbers'],'List',context!); totalBags = json['totalBags']; return this; } Map toJson() => { 'creationDate': JsonConverters.toJson(creationDate,'DateTime',context!), 'revisionNumber': revisionNumber, 'entityIdentification': entityIdentification, 'tagNumbers': JsonConverters.toJson(tagNumbers,'List',context!), 'totalBags': totalBags }; getTypeName() => "BillOfLading"; TypeContext? context = _ctx; } class DocumentReference implements IConvertible { DateTime? creationDateTime; int? revisionNumber; int? lineItemNumber; String entityIdentification = ""; DocumentReference({this.creationDateTime,this.revisionNumber,this.lineItemNumber,this.entityIdentification}); DocumentReference.fromJson(Map json) { fromMap(json); } fromMap(Map json) { creationDateTime = JsonConverters.fromJson(json['creationDateTime'],'DateTime',context!); revisionNumber = json['revisionNumber']; lineItemNumber = json['lineItemNumber']; entityIdentification = json['entityIdentification']; return this; } Map toJson() => { 'creationDateTime': JsonConverters.toJson(creationDateTime,'DateTime',context!), 'revisionNumber': revisionNumber, 'lineItemNumber': lineItemNumber, 'entityIdentification': entityIdentification }; getTypeName() => "DocumentReference"; TypeContext? context = _ctx; } class Quantity implements IConvertible { double? value; String measurementUnitCode = ""; String codeListVersion = ""; Quantity({this.value,this.measurementUnitCode,this.codeListVersion}); Quantity.fromJson(Map json) { fromMap(json); } fromMap(Map json) { value = JsonConverters.toDouble(json['value']); measurementUnitCode = json['measurementUnitCode']; codeListVersion = json['codeListVersion']; return this; } Map toJson() => { 'value': value, 'measurementUnitCode': measurementUnitCode, 'codeListVersion': codeListVersion }; getTypeName() => "Quantity"; TypeContext? context = _ctx; } class TransactionalItem implements IConvertible { String measurementUnitCode = ""; String measurementType = ""; String measurementValue = ""; TransactionalItem({this.measurementUnitCode,this.measurementType,this.measurementValue}); TransactionalItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { measurementUnitCode = json['measurementUnitCode']; measurementType = json['measurementType']; measurementValue = json['measurementValue']; return this; } Map toJson() => { 'measurementUnitCode': measurementUnitCode, 'measurementType': measurementType, 'measurementValue': measurementValue }; getTypeName() => "TransactionalItem"; TypeContext? context = _ctx; } class SerialNumberRange implements IConvertible { String maximumValue = ""; String minimumValue = ""; SerialNumberRange({this.maximumValue,this.minimumValue}); SerialNumberRange.fromJson(Map json) { fromMap(json); } fromMap(Map json) { maximumValue = json['maximumValue']; minimumValue = json['minimumValue']; return this; } Map toJson() => { 'maximumValue': maximumValue, 'minimumValue': minimumValue }; getTypeName() => "SerialNumberRange"; TypeContext? context = _ctx; } class TransactionalItemDimension implements IConvertible { String measurementUnitCode = ""; String depth = ""; String height = ""; String width = ""; TransactionalItemDimension({this.measurementUnitCode,this.depth,this.height,this.width}); TransactionalItemDimension.fromJson(Map json) { fromMap(json); } fromMap(Map json) { measurementUnitCode = json['measurementUnitCode']; depth = json['depth']; height = json['height']; width = json['width']; return this; } Map toJson() => { 'measurementUnitCode': measurementUnitCode, 'depth': depth, 'height': height, 'width': width }; getTypeName() => "TransactionalItemDimension"; TypeContext? context = _ctx; } class TransactionalItemLogisticUnitInformation implements IConvertible { int? numberOfLayers; int? numberOfUnitsPerLayer; int? numberOfUnitsPerPallet; String packagingTerms = ""; String packageTypeCode = ""; int? maximumStackingFactor; String returnablePackageTransportCostPayment = ""; List dimensionsOfLogisticUnit = []; TransactionalItemLogisticUnitInformation({this.numberOfLayers,this.numberOfUnitsPerLayer,this.numberOfUnitsPerPallet,this.packagingTerms,this.packageTypeCode,this.maximumStackingFactor,this.returnablePackageTransportCostPayment,this.dimensionsOfLogisticUnit}); TransactionalItemLogisticUnitInformation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { numberOfLayers = json['numberOfLayers']; numberOfUnitsPerLayer = json['numberOfUnitsPerLayer']; numberOfUnitsPerPallet = json['numberOfUnitsPerPallet']; packagingTerms = json['packagingTerms']; packageTypeCode = json['packageTypeCode']; maximumStackingFactor = json['maximumStackingFactor']; returnablePackageTransportCostPayment = json['returnablePackageTransportCostPayment']; dimensionsOfLogisticUnit = JsonConverters.fromJson(json['dimensionsOfLogisticUnit'],'List',context!); return this; } Map toJson() => { 'numberOfLayers': numberOfLayers, 'numberOfUnitsPerLayer': numberOfUnitsPerLayer, 'numberOfUnitsPerPallet': numberOfUnitsPerPallet, 'packagingTerms': packagingTerms, 'packageTypeCode': packageTypeCode, 'maximumStackingFactor': maximumStackingFactor, 'returnablePackageTransportCostPayment': returnablePackageTransportCostPayment, 'dimensionsOfLogisticUnit': JsonConverters.toJson(dimensionsOfLogisticUnit,'List',context!) }; getTypeName() => "TransactionalItemLogisticUnitInformation"; TypeContext? context = _ctx; } class TransactionalItemDataCarrierAndIdentification implements IConvertible { String gs1TransactionalItemIdentificationKey = ""; String dataCarrier = ""; TransactionalItemDataCarrierAndIdentification({this.gs1TransactionalItemIdentificationKey,this.dataCarrier}); TransactionalItemDataCarrierAndIdentification.fromJson(Map json) { fromMap(json); } fromMap(Map json) { gs1TransactionalItemIdentificationKey = json['gs1TransactionalItemIdentificationKey']; dataCarrier = json['dataCarrier']; return this; } Map toJson() => { 'gs1TransactionalItemIdentificationKey': gs1TransactionalItemIdentificationKey, 'dataCarrier': dataCarrier }; getTypeName() => "TransactionalItemDataCarrierAndIdentification"; TypeContext? context = _ctx; } class TradeItemWaste implements IConvertible { String wasteIdentification = ""; List typeOfWaste = []; TradeItemWaste({this.wasteIdentification,this.typeOfWaste}); TradeItemWaste.fromJson(Map json) { fromMap(json); } fromMap(Map json) { wasteIdentification = json['wasteIdentification']; typeOfWaste = JsonConverters.fromJson(json['typeOfWaste'],'List',context!); return this; } Map toJson() => { 'wasteIdentification': wasteIdentification, 'typeOfWaste': JsonConverters.toJson(typeOfWaste,'List',context!) }; getTypeName() => "TradeItemWaste"; TypeContext? context = _ctx; } class TransactionalItemOrganicInformation implements IConvertible { bool? isTradeItemOrganic; String organicCertification = ""; TransactionalItemOrganicInformation({this.isTradeItemOrganic,this.organicCertification}); TransactionalItemOrganicInformation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { isTradeItemOrganic = json['isTradeItemOrganic']; organicCertification = json['organicCertification']; return this; } Map toJson() => { 'isTradeItemOrganic': isTradeItemOrganic, 'organicCertification': organicCertification }; getTypeName() => "TransactionalItemOrganicInformation"; TypeContext? context = _ctx; } class TransactionalItemData implements IConvertible { DateTime? availableForSaleDate; String batchNumber = ""; DateTime? bestBeforeDate; String countryOfOrigin = ""; DateTime? itemExpirationDate; String lotNumber = ""; DateTime? packagingDate; DateTime? productionDate; String productQualityIndication = ""; DateTime? sellByDate; List serialNumber = []; String shelfLife = ""; int? tradeItemQuantity; bool? itemInContactWithFoodProduct; List transactionalItemWeight = []; List transactionalItemVolume = []; List serialNumberRange = []; List transactionalItemDimensions = []; TransactionalItemLogisticUnitInformation transactionalItemLogisticUnitInformation; TransactionalItemDataCarrierAndIdentification transactionalItemDataCarrierAndIdentification; List tradeItemWaste = []; TransactionalItemOrganicInformation transactionalItemOrganicInformation; List avpList = []; TransactionalItemData({this.availableForSaleDate,this.batchNumber,this.bestBeforeDate,this.countryOfOrigin,this.itemExpirationDate,this.lotNumber,this.packagingDate,this.productionDate,this.productQualityIndication,this.sellByDate,this.serialNumber,this.shelfLife,this.tradeItemQuantity,this.itemInContactWithFoodProduct,this.transactionalItemWeight,this.transactionalItemVolume,this.serialNumberRange,this.transactionalItemDimensions,this.transactionalItemLogisticUnitInformation,this.transactionalItemDataCarrierAndIdentification,this.tradeItemWaste,this.transactionalItemOrganicInformation,this.avpList}); TransactionalItemData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { availableForSaleDate = JsonConverters.fromJson(json['availableForSaleDate'],'DateTime',context!); batchNumber = json['batchNumber']; bestBeforeDate = JsonConverters.fromJson(json['bestBeforeDate'],'DateTime',context!); countryOfOrigin = json['countryOfOrigin']; itemExpirationDate = JsonConverters.fromJson(json['itemExpirationDate'],'DateTime',context!); lotNumber = json['lotNumber']; packagingDate = JsonConverters.fromJson(json['packagingDate'],'DateTime',context!); productionDate = JsonConverters.fromJson(json['productionDate'],'DateTime',context!); productQualityIndication = json['productQualityIndication']; sellByDate = JsonConverters.fromJson(json['sellByDate'],'DateTime',context!); serialNumber = JsonConverters.fromJson(json['serialNumber'],'List',context!); shelfLife = json['shelfLife']; tradeItemQuantity = json['tradeItemQuantity']; itemInContactWithFoodProduct = json['itemInContactWithFoodProduct']; transactionalItemWeight = JsonConverters.fromJson(json['transactionalItemWeight'],'List',context!); transactionalItemVolume = JsonConverters.fromJson(json['transactionalItemVolume'],'List',context!); serialNumberRange = JsonConverters.fromJson(json['serialNumberRange'],'List',context!); transactionalItemDimensions = JsonConverters.fromJson(json['transactionalItemDimensions'],'List',context!); transactionalItemLogisticUnitInformation = JsonConverters.fromJson(json['transactionalItemLogisticUnitInformation'],'TransactionalItemLogisticUnitInformation',context!); transactionalItemDataCarrierAndIdentification = JsonConverters.fromJson(json['transactionalItemDataCarrierAndIdentification'],'TransactionalItemDataCarrierAndIdentification',context!); tradeItemWaste = JsonConverters.fromJson(json['tradeItemWaste'],'List',context!); transactionalItemOrganicInformation = JsonConverters.fromJson(json['transactionalItemOrganicInformation'],'TransactionalItemOrganicInformation',context!); avpList = JsonConverters.fromJson(json['avpList'],'List',context!); return this; } Map toJson() => { 'availableForSaleDate': JsonConverters.toJson(availableForSaleDate,'DateTime',context!), 'batchNumber': batchNumber, 'bestBeforeDate': JsonConverters.toJson(bestBeforeDate,'DateTime',context!), 'countryOfOrigin': countryOfOrigin, 'itemExpirationDate': JsonConverters.toJson(itemExpirationDate,'DateTime',context!), 'lotNumber': lotNumber, 'packagingDate': JsonConverters.toJson(packagingDate,'DateTime',context!), 'productionDate': JsonConverters.toJson(productionDate,'DateTime',context!), 'productQualityIndication': productQualityIndication, 'sellByDate': JsonConverters.toJson(sellByDate,'DateTime',context!), 'serialNumber': JsonConverters.toJson(serialNumber,'List',context!), 'shelfLife': shelfLife, 'tradeItemQuantity': tradeItemQuantity, 'itemInContactWithFoodProduct': itemInContactWithFoodProduct, 'transactionalItemWeight': JsonConverters.toJson(transactionalItemWeight,'List',context!), 'transactionalItemVolume': JsonConverters.toJson(transactionalItemVolume,'List',context!), 'serialNumberRange': JsonConverters.toJson(serialNumberRange,'List',context!), 'transactionalItemDimensions': JsonConverters.toJson(transactionalItemDimensions,'List',context!), 'transactionalItemLogisticUnitInformation': JsonConverters.toJson(transactionalItemLogisticUnitInformation,'TransactionalItemLogisticUnitInformation',context!), 'transactionalItemDataCarrierAndIdentification': JsonConverters.toJson(transactionalItemDataCarrierAndIdentification,'TransactionalItemDataCarrierAndIdentification',context!), 'tradeItemWaste': JsonConverters.toJson(tradeItemWaste,'List',context!), 'transactionalItemOrganicInformation': JsonConverters.toJson(transactionalItemOrganicInformation,'TransactionalItemOrganicInformation',context!), 'avpList': JsonConverters.toJson(avpList,'List',context!) }; getTypeName() => "TransactionalItemData"; TypeContext? context = _ctx; } class Colour implements IConvertible { String colourCode = ""; String colourDescription = ""; Colour({this.colourCode,this.colourDescription}); Colour.fromJson(Map json) { fromMap(json); } fromMap(Map json) { colourCode = json['colourCode']; colourDescription = json['colourDescription']; return this; } Map toJson() => { 'colourCode': colourCode, 'colourDescription': colourDescription }; getTypeName() => "Colour"; TypeContext? context = _ctx; } class Size implements IConvertible { String descriptiveSize = ""; String sizeCode = ""; Size({this.descriptiveSize,this.sizeCode}); Size.fromJson(Map json) { fromMap(json); } fromMap(Map json) { descriptiveSize = json['descriptiveSize']; sizeCode = json['sizeCode']; return this; } Map toJson() => { 'descriptiveSize': descriptiveSize, 'sizeCode': sizeCode }; getTypeName() => "Size"; TypeContext? context = _ctx; } class TradeItemClassification implements IConvertible { String gpcCategoryCode = ""; List additionalTradeItemClassificationCode = []; String gpcCategoryName = ""; List gpcAttribute = []; TradeItemClassification({this.gpcCategoryCode,this.additionalTradeItemClassificationCode,this.gpcCategoryName,this.gpcAttribute}); TradeItemClassification.fromJson(Map json) { fromMap(json); } fromMap(Map json) { gpcCategoryCode = json['gpcCategoryCode']; additionalTradeItemClassificationCode = JsonConverters.fromJson(json['additionalTradeItemClassificationCode'],'List',context!); gpcCategoryName = json['gpcCategoryName']; gpcAttribute = JsonConverters.fromJson(json['gpcAttribute'],'List',context!); return this; } Map toJson() => { 'gpcCategoryCode': gpcCategoryCode, 'additionalTradeItemClassificationCode': JsonConverters.toJson(additionalTradeItemClassificationCode,'List',context!), 'gpcCategoryName': gpcCategoryName, 'gpcAttribute': JsonConverters.toJson(gpcAttribute,'List',context!) }; getTypeName() => "TradeItemClassification"; TypeContext? context = _ctx; } class TransactionalTradeItem implements IConvertible { String gtin = ""; List additionalTradeItemIdentification = []; double? tradeItemQuantity; String tradeItemDescription = ""; String productVariantIdentifier = ""; String itemTypeCode = ""; String tradeItemDataOwner = ""; String butterFatReference = ""; List transactionalItemData = []; List colour = []; Size size; TradeItemClassification tradeItemClassification; List avpList = []; TransactionalTradeItem({this.gtin,this.additionalTradeItemIdentification,this.tradeItemQuantity,this.tradeItemDescription,this.productVariantIdentifier,this.itemTypeCode,this.tradeItemDataOwner,this.butterFatReference,this.transactionalItemData,this.colour,this.size,this.tradeItemClassification,this.avpList}); TransactionalTradeItem.fromJson(Map json) { fromMap(json); } fromMap(Map json) { gtin = json['gtin']; additionalTradeItemIdentification = JsonConverters.fromJson(json['additionalTradeItemIdentification'],'List',context!); tradeItemQuantity = JsonConverters.toDouble(json['tradeItemQuantity']); tradeItemDescription = json['tradeItemDescription']; productVariantIdentifier = json['productVariantIdentifier']; itemTypeCode = json['itemTypeCode']; tradeItemDataOwner = json['tradeItemDataOwner']; butterFatReference = json['butterFatReference']; transactionalItemData = JsonConverters.fromJson(json['transactionalItemData'],'List',context!); colour = JsonConverters.fromJson(json['colour'],'List',context!); size = JsonConverters.fromJson(json['size'],'Size',context!); tradeItemClassification = JsonConverters.fromJson(json['tradeItemClassification'],'TradeItemClassification',context!); avpList = JsonConverters.fromJson(json['avpList'],'List',context!); return this; } Map toJson() => { 'gtin': gtin, 'additionalTradeItemIdentification': JsonConverters.toJson(additionalTradeItemIdentification,'List',context!), 'tradeItemQuantity': tradeItemQuantity, 'tradeItemDescription': tradeItemDescription, 'productVariantIdentifier': productVariantIdentifier, 'itemTypeCode': itemTypeCode, 'tradeItemDataOwner': tradeItemDataOwner, 'butterFatReference': butterFatReference, 'transactionalItemData': JsonConverters.toJson(transactionalItemData,'List',context!), 'colour': JsonConverters.toJson(colour,'List',context!), 'size': JsonConverters.toJson(size,'Size',context!), 'tradeItemClassification': JsonConverters.toJson(tradeItemClassification,'TradeItemClassification',context!), 'avpList': JsonConverters.toJson(avpList,'List',context!) }; getTypeName() => "TransactionalTradeItem"; TypeContext? context = _ctx; } class ClaimsNotificationItemDiscrepancy implements IConvertible { double price = 0; Quantity quantity; TransactionalTradeItem transactionalTradeItem; ClaimsNotificationItemDiscrepancy({this.price,this.quantity,this.transactionalTradeItem}); ClaimsNotificationItemDiscrepancy.fromJson(Map json) { fromMap(json); } fromMap(Map json) { price = JsonConverters.toDouble(json['price']); quantity = JsonConverters.fromJson(json['quantity'],'Quantity',context!); transactionalTradeItem = JsonConverters.fromJson(json['transactionalTradeItem'],'TransactionalTradeItem',context!); return this; } Map toJson() => { 'price': price, 'quantity': JsonConverters.toJson(quantity,'Quantity',context!), 'transactionalTradeItem': JsonConverters.toJson(transactionalTradeItem,'TransactionalTradeItem',context!) }; getTypeName() => "ClaimsNotificationItemDiscrepancy"; TypeContext? context = _ctx; } class ClaimsNotificationDiscrepancyInformation implements IConvertible { double claimAmount = 0; String claimReasonCode = ""; String discrepancyDescription = ""; ClaimsNotificationItemDiscrepancy actualReceived; ClaimsNotificationItemDiscrepancy expectedToReceive; List avpList = []; ClaimsNotificationDiscrepancyInformation({this.claimAmount,this.claimReasonCode,this.discrepancyDescription,this.actualReceived,this.expectedToReceive,this.avpList}); ClaimsNotificationDiscrepancyInformation.fromJson(Map json) { fromMap(json); } fromMap(Map json) { claimAmount = JsonConverters.toDouble(json['claimAmount']); claimReasonCode = json['claimReasonCode']; discrepancyDescription = json['discrepancyDescription']; actualReceived = JsonConverters.fromJson(json['actualReceived'],'ClaimsNotificationItemDiscrepancy',context!); expectedToReceive = JsonConverters.fromJson(json['expectedToReceive'],'ClaimsNotificationItemDiscrepancy',context!); avpList = JsonConverters.fromJson(json['avpList'],'List',context!); return this; } Map toJson() => { 'claimAmount': claimAmount, 'claimReasonCode': claimReasonCode, 'discrepancyDescription': discrepancyDescription, 'actualReceived': JsonConverters.toJson(actualReceived,'ClaimsNotificationItemDiscrepancy',context!), 'expectedToReceive': JsonConverters.toJson(expectedToReceive,'ClaimsNotificationItemDiscrepancy',context!), 'avpList': JsonConverters.toJson(avpList,'List',context!) }; getTypeName() => "ClaimsNotificationDiscrepancyInformation"; TypeContext? context = _ctx; } class ClaimTotals implements IConvertible { double? baseAmount; double? totalTaxAmount; double? totalClaimAmount; ClaimTotals({this.baseAmount,this.totalTaxAmount,this.totalClaimAmount}); ClaimTotals.fromJson(Map json) { fromMap(json); } fromMap(Map json) { baseAmount = JsonConverters.toDouble(json['baseAmount']); totalTaxAmount = JsonConverters.toDouble(json['totalTaxAmount']); totalClaimAmount = JsonConverters.toDouble(json['totalClaimAmount']); return this; } Map toJson() => { 'baseAmount': baseAmount, 'totalTaxAmount': totalTaxAmount, 'totalClaimAmount': totalClaimAmount }; getTypeName() => "ClaimTotals"; TypeContext? context = _ctx; } class ClaimExtension implements IConvertible { ClaimTotals claimTotals; TransactionalParty shipFrom; TransactionalParty shipTo; ClaimExtension({this.claimTotals,this.shipFrom,this.shipTo}); ClaimExtension.fromJson(Map json) { fromMap(json); } fromMap(Map json) { claimTotals = JsonConverters.fromJson(json['claimTotals'],'ClaimTotals',context!); shipFrom = JsonConverters.fromJson(json['shipFrom'],'TransactionalParty',context!); shipTo = JsonConverters.fromJson(json['shipTo'],'TransactionalParty',context!); return this; } Map toJson() => { 'claimTotals': JsonConverters.toJson(claimTotals,'ClaimTotals',context!), 'shipFrom': JsonConverters.toJson(shipFrom,'TransactionalParty',context!), 'shipTo': JsonConverters.toJson(shipTo,'TransactionalParty',context!) }; getTypeName() => "ClaimExtension"; TypeContext? context = _ctx; } class ClaimNotification extends BaseDocument implements IConvertible { String claimsNotificationTypeCode = ""; bool isManualProcessNeededForClaimsResolution; bool isSupplementalMessageBeingSent; String supplementalMessageDescription = ""; String claimsNotificationIdentification = ""; TransactionalParty buyer; TransactionalParty remitTo; TransactionalParty seller; BillOfLading billOfLading; DocumentReference claimsNotification; DocumentReference dispatchAdvice; DocumentReference purchaseOrder; DocumentReference invoice; List claimsNotificationDiscrepancyInformation = []; ClaimExtension Extension; ClaimNotification({this.claimsNotificationTypeCode,this.isManualProcessNeededForClaimsResolution,this.isSupplementalMessageBeingSent,this.supplementalMessageDescription,this.claimsNotificationIdentification,this.buyer,this.remitTo,this.seller,this.billOfLading,this.claimsNotification,this.dispatchAdvice,this.purchaseOrder,this.invoice,this.claimsNotificationDiscrepancyInformation,this.Extension}); ClaimNotification.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); claimsNotificationTypeCode = json['claimsNotificationTypeCode']; isManualProcessNeededForClaimsResolution = json['isManualProcessNeededForClaimsResolution']; isSupplementalMessageBeingSent = json['isSupplementalMessageBeingSent']; supplementalMessageDescription = json['supplementalMessageDescription']; claimsNotificationIdentification = json['claimsNotificationIdentification']; buyer = JsonConverters.fromJson(json['buyer'],'TransactionalParty',context!); remitTo = JsonConverters.fromJson(json['remitTo'],'TransactionalParty',context!); seller = JsonConverters.fromJson(json['seller'],'TransactionalParty',context!); billOfLading = JsonConverters.fromJson(json['billOfLading'],'BillOfLading',context!); claimsNotification = JsonConverters.fromJson(json['claimsNotification'],'DocumentReference',context!); dispatchAdvice = JsonConverters.fromJson(json['dispatchAdvice'],'DocumentReference',context!); purchaseOrder = JsonConverters.fromJson(json['purchaseOrder'],'DocumentReference',context!); invoice = JsonConverters.fromJson(json['invoice'],'DocumentReference',context!); claimsNotificationDiscrepancyInformation = JsonConverters.fromJson(json['claimsNotificationDiscrepancyInformation'],'List',context!); Extension = JsonConverters.fromJson(json['extension'],'ClaimExtension',context!); return this; } Map toJson() => super.toJson()..addAll({ 'claimsNotificationTypeCode': claimsNotificationTypeCode, 'isManualProcessNeededForClaimsResolution': isManualProcessNeededForClaimsResolution, 'isSupplementalMessageBeingSent': isSupplementalMessageBeingSent, 'supplementalMessageDescription': supplementalMessageDescription, 'claimsNotificationIdentification': claimsNotificationIdentification, 'buyer': JsonConverters.toJson(buyer,'TransactionalParty',context!), 'remitTo': JsonConverters.toJson(remitTo,'TransactionalParty',context!), 'seller': JsonConverters.toJson(seller,'TransactionalParty',context!), 'billOfLading': JsonConverters.toJson(billOfLading,'BillOfLading',context!), 'claimsNotification': JsonConverters.toJson(claimsNotification,'DocumentReference',context!), 'dispatchAdvice': JsonConverters.toJson(dispatchAdvice,'DocumentReference',context!), 'purchaseOrder': JsonConverters.toJson(purchaseOrder,'DocumentReference',context!), 'invoice': JsonConverters.toJson(invoice,'DocumentReference',context!), 'claimsNotificationDiscrepancyInformation': JsonConverters.toJson(claimsNotificationDiscrepancyInformation,'List',context!), 'extension': JsonConverters.toJson(Extension,'ClaimExtension',context!) }); getTypeName() => "ClaimNotification"; TypeContext? context = _ctx; } class ClaimMessage implements IConvertible { Header header; ClaimNotification claimNotification; ClaimMessage({this.header,this.claimNotification}); ClaimMessage.fromJson(Map json) { fromMap(json); } fromMap(Map json) { header = JsonConverters.fromJson(json['header'],'Header',context!); claimNotification = JsonConverters.fromJson(json['claimNotification'],'ClaimNotification',context!); return this; } Map toJson() => { 'header': JsonConverters.toJson(header,'Header',context!), 'claimNotification': JsonConverters.toJson(claimNotification,'ClaimNotification',context!) }; getTypeName() => "ClaimMessage"; TypeContext? context = _ctx; } /** * Claim */ // @Route("/claim", "GET") // @Api(Description="Claim") // @ApiResponse(Description="Claim message", StatusCode=200) // @ApiResponse(Description="No Content", ResponseType=typeof(IReturnVoid), StatusCode=204) class GetClaim implements IReturn>, IConvertible, IGet { GetClaim(); GetClaim.fromJson(Map json) : super(); fromMap(Map json) { return this; } Map toJson() => {}; createResponse() => ResultItem(); getResponseTypeName() => "ResultItem"; getTypeName() => "GetClaim"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'stf_api_uat.data_xchange.co.za', types: { 'IDocument': TypeInfo(TypeOf.Interface), 'IHaveToken': TypeInfo(TypeOf.Interface), 'ResultItem': TypeInfo(TypeOf.GenericDef,create:() => ResultItem()), 'DocumentIdentification': TypeInfo(TypeOf.Class, create:() => DocumentIdentification()), 'Identifier': TypeInfo(TypeOf.Class, create:() => Identifier()), 'ContactInformation': TypeInfo(TypeOf.Class, create:() => ContactInformation()), 'Partner': TypeInfo(TypeOf.Class, create:() => Partner()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Header': TypeInfo(TypeOf.Class, create:() => Header()), 'DocumentAction': TypeInfo(TypeOf.Enum, enumValues:DocumentAction.values), 'DocumentStatus': TypeInfo(TypeOf.Enum, enumValues:DocumentStatus.values), 'AvpList': TypeInfo(TypeOf.Class, create:() => AvpList()), 'BaseDocument': TypeInfo(TypeOf.Class, create:() => BaseDocument()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Ecom_PartyIdentificationType': TypeInfo(TypeOf.Class, create:() => Ecom_PartyIdentificationType()), 'CommunicationChannel': TypeInfo(TypeOf.Class, create:() => CommunicationChannel()), 'Contact': TypeInfo(TypeOf.Class, create:() => Contact()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Address': TypeInfo(TypeOf.Class, create:() => Address()), 'FinancialRoutingNumber': TypeInfo(TypeOf.Class, create:() => FinancialRoutingNumber()), 'FinancialAccount': TypeInfo(TypeOf.Class, create:() => FinancialAccount()), 'FinancialInstitutionInformation': TypeInfo(TypeOf.Class, create:() => FinancialInstitutionInformation()), 'TransactionalParty': TypeInfo(TypeOf.Class, create:() => TransactionalParty()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'BillOfLading': TypeInfo(TypeOf.Class, create:() => BillOfLading()), 'DocumentReference': TypeInfo(TypeOf.Class, create:() => DocumentReference()), 'Quantity': TypeInfo(TypeOf.Class, create:() => Quantity()), 'TransactionalItem': TypeInfo(TypeOf.Class, create:() => TransactionalItem()), 'SerialNumberRange': TypeInfo(TypeOf.Class, create:() => SerialNumberRange()), 'TransactionalItemDimension': TypeInfo(TypeOf.Class, create:() => TransactionalItemDimension()), 'TransactionalItemLogisticUnitInformation': TypeInfo(TypeOf.Class, create:() => TransactionalItemLogisticUnitInformation()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'TransactionalItemDataCarrierAndIdentification': TypeInfo(TypeOf.Class, create:() => TransactionalItemDataCarrierAndIdentification()), 'TradeItemWaste': TypeInfo(TypeOf.Class, create:() => TradeItemWaste()), 'TransactionalItemOrganicInformation': TypeInfo(TypeOf.Class, create:() => TransactionalItemOrganicInformation()), 'TransactionalItemData': TypeInfo(TypeOf.Class, create:() => TransactionalItemData()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Colour': TypeInfo(TypeOf.Class, create:() => Colour()), 'Size': TypeInfo(TypeOf.Class, create:() => Size()), 'TradeItemClassification': TypeInfo(TypeOf.Class, create:() => TradeItemClassification()), 'TransactionalTradeItem': TypeInfo(TypeOf.Class, create:() => TransactionalTradeItem()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ClaimsNotificationItemDiscrepancy': TypeInfo(TypeOf.Class, create:() => ClaimsNotificationItemDiscrepancy()), 'ClaimsNotificationDiscrepancyInformation': TypeInfo(TypeOf.Class, create:() => ClaimsNotificationDiscrepancyInformation()), 'ClaimTotals': TypeInfo(TypeOf.Class, create:() => ClaimTotals()), 'ClaimExtension': TypeInfo(TypeOf.Class, create:() => ClaimExtension()), 'ClaimNotification': TypeInfo(TypeOf.Class, create:() => ClaimNotification()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ClaimMessage': TypeInfo(TypeOf.Class, create:() => ClaimMessage()), 'ResultItem': TypeInfo(TypeOf.Class, create:() => ResultItem()), 'GetClaim': TypeInfo(TypeOf.Class, create:() => GetClaim()), });