From 6b6dafb730a74412666760c33cb147858e69bbec Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 4 Nov 2017 08:14:42 -0500 Subject: [PATCH 01/33] Updated Close Service v5. --- .../CloseService/ComplexType/ClientDetail.php | 6 +- .../ComplexType/CloseDocument.php | 4 +- .../ComplexType/CloseDocumentFormat.php | 4 +- .../CloseDocumentSpecification.php | 39 + .../CloseManifestReferenceDetail.php | 49 + .../ComplexType/CloseSmartPostDetail.php | 88 ++ ...ithDocumentsProcessingOptionsRequested.php | 36 + .../ComplexType/CloseWithDocumentsReply.php | 88 ++ .../ComplexType/CloseWithDocumentsRequest.php | 179 ++++ .../DetailedDeliveryManifestDetail.php | 49 + .../ComplexType/GroundCloseDocumentsReply.php | 8 +- .../GroundCloseReportsReprintRequest.php | 2 +- .../ComplexType/GroundCloseRequest.php | 30 +- .../GroundCloseWithDocumentsRequest.php | 10 +- .../HazardousMaterialsCertificationDetail.php | 36 + .../CloseService/ComplexType/Localization.php | 6 +- .../ComplexType/ManifestDetail.php | 36 + .../CloseService/ComplexType/Notification.php | 14 +- .../ComplexType/NotificationParameter.php | 4 +- .../ReprintGroundCloseDocumentsRequest.php | 10 +- .../ShippingDocumentEMailDetail.php | 13 + .../ComplexType/SmartPostCloseRequest.php | 15 +- .../ComplexType/TransactionDetail.php | 2 +- .../CloseService/ComplexType/VersionId.php | 8 +- .../WebAuthenticationCredential.php | 6 +- .../ComplexType/WebAuthenticationDetail.php | 15 +- src/FedEx/CloseService/Request.php | 63 +- .../SimpleType/CloseActionType.php | 18 + .../SimpleType/CloseDocumentType.php | 2 + .../SimpleType/CloseGroupingType.php | 18 + ...CloseWithDocumentsProcessingOptionType.php | 17 + .../SimpleType/CustomerReferenceType.php | 26 + .../EMailNotificationRecipientType.php | 2 +- .../CloseService/SimpleType/LinearUnits.php | 2 +- .../ShippingDocumentDispositionType.php | 4 +- .../ShippingDocumentEMailGroupingType.php | 2 +- .../ShippingDocumentGroupingType.php | 1 + .../SimpleType/ShippingDocumentStockType.php | 3 + src/FedEx/_wsdl/CloseService_v2.wsdl | 833 --------------- src/FedEx/_wsdl/CloseService_v5.wsdl | 983 ++++++++++++++++++ .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 41 files changed, 1827 insertions(+), 906 deletions(-) create mode 100644 src/FedEx/CloseService/ComplexType/CloseManifestReferenceDetail.php create mode 100644 src/FedEx/CloseService/ComplexType/CloseSmartPostDetail.php create mode 100644 src/FedEx/CloseService/ComplexType/CloseWithDocumentsProcessingOptionsRequested.php create mode 100644 src/FedEx/CloseService/ComplexType/CloseWithDocumentsReply.php create mode 100644 src/FedEx/CloseService/ComplexType/CloseWithDocumentsRequest.php create mode 100644 src/FedEx/CloseService/ComplexType/DetailedDeliveryManifestDetail.php create mode 100644 src/FedEx/CloseService/ComplexType/HazardousMaterialsCertificationDetail.php create mode 100644 src/FedEx/CloseService/ComplexType/ManifestDetail.php create mode 100644 src/FedEx/CloseService/SimpleType/CloseActionType.php create mode 100644 src/FedEx/CloseService/SimpleType/CloseGroupingType.php create mode 100644 src/FedEx/CloseService/SimpleType/CloseWithDocumentsProcessingOptionType.php create mode 100644 src/FedEx/CloseService/SimpleType/CustomerReferenceType.php delete mode 100644 src/FedEx/_wsdl/CloseService_v2.wsdl create mode 100755 src/FedEx/_wsdl/CloseService_v5.wsdl diff --git a/src/FedEx/CloseService/ComplexType/ClientDetail.php b/src/FedEx/CloseService/ComplexType/ClientDetail.php index 1f5b62fd..dfc38acc 100644 --- a/src/FedEx/CloseService/ComplexType/ClientDetail.php +++ b/src/FedEx/CloseService/ComplexType/ClientDetail.php @@ -26,7 +26,7 @@ class ClientDetail extends AbstractComplexType protected $name = 'ClientDetail'; /** - * Set AccountNumber + * The FedEx account number associated with this transaction. * * @param string $accountNumber * @return $this @@ -38,7 +38,7 @@ public function setAccountNumber($accountNumber) } /** - * Set MeterNumber + * This number is assigned by FedEx and identifies the unique device from which the request is originating * * @param string $meterNumber * @return $this @@ -50,7 +50,7 @@ public function setMeterNumber($meterNumber) } /** - * Only used in transactions which require identification of the Fed Ex Office integrator. + * Only used in transactions which require identification of the FedEx Office integrator. * * @param string $integratorId * @return $this diff --git a/src/FedEx/CloseService/ComplexType/CloseDocument.php b/src/FedEx/CloseService/ComplexType/CloseDocument.php index b8df45ce..091d61ff 100644 --- a/src/FedEx/CloseService/ComplexType/CloseDocument.php +++ b/src/FedEx/CloseService/ComplexType/CloseDocument.php @@ -41,7 +41,7 @@ public function setType($type) } /** - * The client's shipping cycle to which this shipment belongs. + * Identifies the shipping cycle covered by the content of this document. * * @param string $shippingCycle * @return $this @@ -89,7 +89,7 @@ public function setResolution($resolution) } /** - * Number of copies to print. + * Can be zero for documents whose disposition implies that no content is included. * * @param int $copiesToPrint * @return $this diff --git a/src/FedEx/CloseService/ComplexType/CloseDocumentFormat.php b/src/FedEx/CloseService/ComplexType/CloseDocumentFormat.php index 7550444c..08addcc6 100644 --- a/src/FedEx/CloseService/ComplexType/CloseDocumentFormat.php +++ b/src/FedEx/CloseService/ComplexType/CloseDocumentFormat.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Specifies characteristics of a shipping document to be produced. + * Specifies characteristics of a close document to be produced. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -52,7 +52,7 @@ public function setTopOfPageOffset(LinearMeasure $topOfPageOffset) } /** - * The type of image or printer commands the image is to be formatted in. + * Set ImageType * * @param \FedEx\CloseService\SimpleType\ShippingDocumentImageType|string $imageType * @return $this diff --git a/src/FedEx/CloseService/ComplexType/CloseDocumentSpecification.php b/src/FedEx/CloseService/ComplexType/CloseDocumentSpecification.php index bad696da..349be2c4 100644 --- a/src/FedEx/CloseService/ComplexType/CloseDocumentSpecification.php +++ b/src/FedEx/CloseService/ComplexType/CloseDocumentSpecification.php @@ -11,6 +11,9 @@ * @subpackage Close Service * * @property \FedEx\CloseService\SimpleType\CloseDocumentType|string[] $CloseDocumentTypes + * @property DetailedDeliveryManifestDetail $DetailedDeliveryManifestDetail + * @property HazardousMaterialsCertificationDetail $HazardousMaterialsCertificationDetail + * @property ManifestDetail $ManifestDetail * @property Op950Detail $Op950Detail */ @@ -35,6 +38,42 @@ public function setCloseDocumentTypes(array $closeDocumentTypes) return $this; } + /** + * Set DetailedDeliveryManifestDetail + * + * @param DetailedDeliveryManifestDetail $detailedDeliveryManifestDetail + * @return $this + */ + public function setDetailedDeliveryManifestDetail(DetailedDeliveryManifestDetail $detailedDeliveryManifestDetail) + { + $this->values['DetailedDeliveryManifestDetail'] = $detailedDeliveryManifestDetail; + return $this; + } + + /** + * Set HazardousMaterialsCertificationDetail + * + * @param HazardousMaterialsCertificationDetail $hazardousMaterialsCertificationDetail + * @return $this + */ + public function setHazardousMaterialsCertificationDetail(HazardousMaterialsCertificationDetail $hazardousMaterialsCertificationDetail) + { + $this->values['HazardousMaterialsCertificationDetail'] = $hazardousMaterialsCertificationDetail; + return $this; + } + + /** + * Set ManifestDetail + * + * @param ManifestDetail $manifestDetail + * @return $this + */ + public function setManifestDetail(ManifestDetail $manifestDetail) + { + $this->values['ManifestDetail'] = $manifestDetail; + return $this; + } + /** * Specifies the production of the OP-950 document for hazardous materials. * diff --git a/src/FedEx/CloseService/ComplexType/CloseManifestReferenceDetail.php b/src/FedEx/CloseService/ComplexType/CloseManifestReferenceDetail.php new file mode 100644 index 00000000..ffe059b4 --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/CloseManifestReferenceDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property \FedEx\CloseService\SimpleType\CustomerReferenceType|string $Type + * @property string $Value + + */ +class CloseManifestReferenceDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CloseManifestReferenceDetail'; + + /** + * This identifies which customer reference field used as the manifest ID. + * + * @param \FedEx\CloseService\SimpleType\CustomerReferenceType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Value + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/CloseSmartPostDetail.php b/src/FedEx/CloseService/ComplexType/CloseSmartPostDetail.php new file mode 100644 index 00000000..9b86ff7e --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/CloseSmartPostDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property string $HubId + * @property string $CustomerId + * @property string $CustomerManifestId + * @property string $DestinationCountryCode + * @property \FedEx\CloseService\SimpleType\CarrierCodeType|string $PickupCarrier + + */ +class CloseSmartPostDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CloseSmartPostDetail'; + + /** + * Set HubId + * + * @param string $hubId + * @return $this + */ + public function setHubId($hubId) + { + $this->values['HubId'] = $hubId; + return $this; + } + + /** + * Set CustomerId + * + * @param string $customerId + * @return $this + */ + public function setCustomerId($customerId) + { + $this->values['CustomerId'] = $customerId; + return $this; + } + + /** + * Set CustomerManifestId + * + * @param string $customerManifestId + * @return $this + */ + public function setCustomerManifestId($customerManifestId) + { + $this->values['CustomerManifestId'] = $customerManifestId; + return $this; + } + + /** + * Set DestinationCountryCode + * + * @param string $destinationCountryCode + * @return $this + */ + public function setDestinationCountryCode($destinationCountryCode) + { + $this->values['DestinationCountryCode'] = $destinationCountryCode; + return $this; + } + + /** + * Set PickupCarrier + * + * @param \FedEx\CloseService\SimpleType\CarrierCodeType|string $pickupCarrier + * @return $this + */ + public function setPickupCarrier($pickupCarrier) + { + $this->values['PickupCarrier'] = $pickupCarrier; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/CloseWithDocumentsProcessingOptionsRequested.php b/src/FedEx/CloseService/ComplexType/CloseWithDocumentsProcessingOptionsRequested.php new file mode 100644 index 00000000..740fc17d --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/CloseWithDocumentsProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property \FedEx\CloseService\SimpleType\CloseWithDocumentsProcessingOptionType|string[] $Options + + */ +class CloseWithDocumentsProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CloseWithDocumentsProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\CloseService\SimpleType\CloseWithDocumentsProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/CloseWithDocumentsReply.php b/src/FedEx/CloseService/ComplexType/CloseWithDocumentsReply.php new file mode 100644 index 00000000..0fe308a4 --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/CloseWithDocumentsReply.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property \FedEx\CloseService\SimpleType\NotificationSeverityType|string $HighestSeverity + * @property Notification[] $Notifications + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property CloseDocument[] $Documents + + */ +class CloseWithDocumentsReply extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CloseWithDocumentsReply'; + + /** + * Set HighestSeverity + * + * @param \FedEx\CloseService\SimpleType\NotificationSeverityType|string $highestSeverity + * @return $this + */ + public function setHighestSeverity($highestSeverity) + { + $this->values['HighestSeverity'] = $highestSeverity; + return $this; + } + + /** + * Set Notifications + * + * @param Notification[] $notifications + * @return $this + */ + public function setNotifications(array $notifications) + { + $this->values['Notifications'] = $notifications; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Set Documents + * + * @param CloseDocument[] $documents + * @return $this + */ + public function setDocuments(array $documents) + { + $this->values['Documents'] = $documents; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/CloseWithDocumentsRequest.php b/src/FedEx/CloseService/ComplexType/CloseWithDocumentsRequest.php new file mode 100644 index 00000000..32e13455 --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/CloseWithDocumentsRequest.php @@ -0,0 +1,179 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property WebAuthenticationDetail $WebAuthenticationDetail + * @property ClientDetail $ClientDetail + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property \FedEx\CloseService\SimpleType\CloseActionType|string $ActionType + * @property CloseWithDocumentsProcessingOptionsRequested $ProcessingOptions + * @property \FedEx\CloseService\SimpleType\CarrierCodeType|string $CarrierCode + * @property string $ShippingCycle + * @property string $ReprintCloseDate + * @property CloseManifestReferenceDetail $ManifestReferenceDetail + * @property CloseSmartPostDetail $SmartPostDetail + * @property CloseDocumentSpecification $CloseDocumentSpecification + + */ +class CloseWithDocumentsRequest extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CloseWithDocumentsRequest'; + + /** + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * + * @param WebAuthenticationDetail $webAuthenticationDetail + * @return $this + */ + public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) + { + $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; + return $this; + } + + /** + * Set ClientDetail + * + * @param ClientDetail $clientDetail + * @return $this + */ + public function setClientDetail(ClientDetail $clientDetail) + { + $this->values['ClientDetail'] = $clientDetail; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Set ActionType + * + * @param \FedEx\CloseService\SimpleType\CloseActionType|string $actionType + * @return $this + */ + public function setActionType($actionType) + { + $this->values['ActionType'] = $actionType; + return $this; + } + + /** + * Set ProcessingOptions + * + * @param CloseWithDocumentsProcessingOptionsRequested $processingOptions + * @return $this + */ + public function setProcessingOptions(CloseWithDocumentsProcessingOptionsRequested $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } + + /** + * Set CarrierCode + * + * @param \FedEx\CloseService\SimpleType\CarrierCodeType|string $carrierCode + * @return $this + */ + public function setCarrierCode($carrierCode) + { + $this->values['CarrierCode'] = $carrierCode; + return $this; + } + + /** + * Set ShippingCycle + * + * @param string $shippingCycle + * @return $this + */ + public function setShippingCycle($shippingCycle) + { + $this->values['ShippingCycle'] = $shippingCycle; + return $this; + } + + /** + * Set ReprintCloseDate + * + * @param string $reprintCloseDate + * @return $this + */ + public function setReprintCloseDate($reprintCloseDate) + { + $this->values['ReprintCloseDate'] = $reprintCloseDate; + return $this; + } + + /** + * Set ManifestReferenceDetail + * + * @param CloseManifestReferenceDetail $manifestReferenceDetail + * @return $this + */ + public function setManifestReferenceDetail(CloseManifestReferenceDetail $manifestReferenceDetail) + { + $this->values['ManifestReferenceDetail'] = $manifestReferenceDetail; + return $this; + } + + /** + * Set SmartPostDetail + * + * @param CloseSmartPostDetail $smartPostDetail + * @return $this + */ + public function setSmartPostDetail(CloseSmartPostDetail $smartPostDetail) + { + $this->values['SmartPostDetail'] = $smartPostDetail; + return $this; + } + + /** + * Set CloseDocumentSpecification + * + * @param CloseDocumentSpecification $closeDocumentSpecification + * @return $this + */ + public function setCloseDocumentSpecification(CloseDocumentSpecification $closeDocumentSpecification) + { + $this->values['CloseDocumentSpecification'] = $closeDocumentSpecification; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/DetailedDeliveryManifestDetail.php b/src/FedEx/CloseService/ComplexType/DetailedDeliveryManifestDetail.php new file mode 100644 index 00000000..6c7bf746 --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/DetailedDeliveryManifestDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property CloseDocumentFormat $Format + * @property string $ClientTimeZoneOffset + + */ +class DetailedDeliveryManifestDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DetailedDeliveryManifestDetail'; + + /** + * Set Format + * + * @param CloseDocumentFormat $format + * @return $this + */ + public function setFormat(CloseDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } + + /** + * This field provides a mechanism for the client to specify their time zone offset relative to GMT. This governs the printed on time for this report. If this field is left empty, then the server time will be used. The value of this field must be in the format '(+|-)[hh]:[mm]', '(+|-)[hh][mm]', '(+|-)[hh]', or 'Z' (for GMT time). An offset of zero, in addition to having the special representation 'Z', can also be stated numerically as '+00:00', '+0000', or '+00'. However, it is not permitted to state it numerically with a negative sign. + * + * @param string $clientTimeZoneOffset + * @return $this + */ + public function setClientTimeZoneOffset($clientTimeZoneOffset) + { + $this->values['ClientTimeZoneOffset'] = $clientTimeZoneOffset; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/GroundCloseDocumentsReply.php b/src/FedEx/CloseService/ComplexType/GroundCloseDocumentsReply.php index 2405b254..efede2d2 100644 --- a/src/FedEx/CloseService/ComplexType/GroundCloseDocumentsReply.php +++ b/src/FedEx/CloseService/ComplexType/GroundCloseDocumentsReply.php @@ -27,7 +27,7 @@ class GroundCloseDocumentsReply extends AbstractComplexType protected $name = 'GroundCloseDocumentsReply'; /** - * This indicates the highest level of severity of all the notifications returned in this reply. + * Set HighestSeverity * * @param \FedEx\CloseService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -39,7 +39,7 @@ public function setHighestSeverity($highestSeverity) } /** - * The descriptive data regarding the results of the submitted transaction. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -51,7 +51,7 @@ public function setNotifications(array $notifications) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -63,7 +63,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this diff --git a/src/FedEx/CloseService/ComplexType/GroundCloseReportsReprintRequest.php b/src/FedEx/CloseService/ComplexType/GroundCloseReportsReprintRequest.php index 7f3e1f02..57f08e35 100644 --- a/src/FedEx/CloseService/ComplexType/GroundCloseReportsReprintRequest.php +++ b/src/FedEx/CloseService/ComplexType/GroundCloseReportsReprintRequest.php @@ -29,7 +29,7 @@ class GroundCloseReportsReprintRequest extends AbstractComplexType protected $name = 'GroundCloseReportsReprintRequest'; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). * * @param WebAuthenticationDetail $webAuthenticationDetail * @return $this diff --git a/src/FedEx/CloseService/ComplexType/GroundCloseRequest.php b/src/FedEx/CloseService/ComplexType/GroundCloseRequest.php index 8e6b56f8..516652a2 100644 --- a/src/FedEx/CloseService/ComplexType/GroundCloseRequest.php +++ b/src/FedEx/CloseService/ComplexType/GroundCloseRequest.php @@ -14,7 +14,9 @@ * @property ClientDetail $ClientDetail * @property TransactionDetail $TransactionDetail * @property VersionId $Version + * @property \FedEx\CloseService\SimpleType\CloseGroupingType|string $CloseGrouping * @property string $TimeUpToWhichShipmentsAreToBeClosed + * @property CloseManifestReferenceDetail $ManifestReferenceDetail */ class GroundCloseRequest extends AbstractComplexType @@ -27,7 +29,7 @@ class GroundCloseRequest extends AbstractComplexType protected $name = 'GroundCloseRequest'; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). * * @param WebAuthenticationDetail $webAuthenticationDetail * @return $this @@ -75,7 +77,19 @@ public function setVersion(VersionId $version) } /** - * Identifies the date and time up to which unclosed shipments are to be closed. Both the date and time portions of the string are expected to be used. The time is the local time based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2009-04-26). The time component must be in the format: HH:MM:SS using a 24 hour clock (e.g. 11:00 a.m. is 11:00:00, whereas 5:00 p.m. is 17:00:00). The date and time parts are separated by a T (e.g. 2009-04-26T17:00:00). + * Set CloseGrouping + * + * @param \FedEx\CloseService\SimpleType\CloseGroupingType|string $closeGrouping + * @return $this + */ + public function setCloseGrouping($closeGrouping) + { + $this->values['CloseGrouping'] = $closeGrouping; + return $this; + } + + /** + * Set TimeUpToWhichShipmentsAreToBeClosed * * @param string $timeUpToWhichShipmentsAreToBeClosed * @return $this @@ -85,4 +99,16 @@ public function setTimeUpToWhichShipmentsAreToBeClosed($timeUpToWhichShipmentsAr $this->values['TimeUpToWhichShipmentsAreToBeClosed'] = $timeUpToWhichShipmentsAreToBeClosed; return $this; } + + /** + * Set ManifestReferenceDetail + * + * @param CloseManifestReferenceDetail $manifestReferenceDetail + * @return $this + */ + public function setManifestReferenceDetail(CloseManifestReferenceDetail $manifestReferenceDetail) + { + $this->values['ManifestReferenceDetail'] = $manifestReferenceDetail; + return $this; + } } diff --git a/src/FedEx/CloseService/ComplexType/GroundCloseWithDocumentsRequest.php b/src/FedEx/CloseService/ComplexType/GroundCloseWithDocumentsRequest.php index 257eb9e2..267121ee 100644 --- a/src/FedEx/CloseService/ComplexType/GroundCloseWithDocumentsRequest.php +++ b/src/FedEx/CloseService/ComplexType/GroundCloseWithDocumentsRequest.php @@ -28,7 +28,7 @@ class GroundCloseWithDocumentsRequest extends AbstractComplexType protected $name = 'GroundCloseWithDocumentsRequest'; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). * * @param WebAuthenticationDetail $webAuthenticationDetail * @return $this @@ -40,7 +40,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -52,7 +52,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -64,7 +64,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -76,7 +76,7 @@ public function setVersion(VersionId $version) } /** - * Date on which shipments were closed. + * Cutoff date for closing and reports. * * @param string $closeDate * @return $this diff --git a/src/FedEx/CloseService/ComplexType/HazardousMaterialsCertificationDetail.php b/src/FedEx/CloseService/ComplexType/HazardousMaterialsCertificationDetail.php new file mode 100644 index 00000000..784c18a0 --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/HazardousMaterialsCertificationDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property CloseDocumentFormat $Format + + */ +class HazardousMaterialsCertificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'HazardousMaterialsCertificationDetail'; + + /** + * Set Format + * + * @param CloseDocumentFormat $format + * @return $this + */ + public function setFormat(CloseDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/Localization.php b/src/FedEx/CloseService/ComplexType/Localization.php index e38dc691..e8ee3db0 100644 --- a/src/FedEx/CloseService/ComplexType/Localization.php +++ b/src/FedEx/CloseService/ComplexType/Localization.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Localization + * Identifies the representation of human-readable text. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class Localization extends AbstractComplexType protected $name = 'Localization'; /** - * Set LanguageCode + * Two-letter code for language (e.g. EN, FR, etc.) * * @param string $languageCode * @return $this @@ -36,7 +36,7 @@ public function setLanguageCode($languageCode) } /** - * Set LocaleCode + * Two-letter code for the region (e.g. us, ca, etc..). * * @param string $localeCode * @return $this diff --git a/src/FedEx/CloseService/ComplexType/ManifestDetail.php b/src/FedEx/CloseService/ComplexType/ManifestDetail.php new file mode 100644 index 00000000..04c2f433 --- /dev/null +++ b/src/FedEx/CloseService/ComplexType/ManifestDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + * + * @property CloseDocumentFormat $Format + + */ +class ManifestDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ManifestDetail'; + + /** + * Set Format + * + * @param CloseDocumentFormat $format + * @return $this + */ + public function setFormat(CloseDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } +} diff --git a/src/FedEx/CloseService/ComplexType/Notification.php b/src/FedEx/CloseService/ComplexType/Notification.php index e1294586..cebbea7f 100644 --- a/src/FedEx/CloseService/ComplexType/Notification.php +++ b/src/FedEx/CloseService/ComplexType/Notification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Notification + * The descriptive data regarding the result of the submitted transaction. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -28,7 +28,7 @@ class Notification extends AbstractComplexType protected $name = 'Notification'; /** - * Set Severity + * The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later * * @param \FedEx\CloseService\SimpleType\NotificationSeverityType|string $severity * @return $this @@ -40,7 +40,7 @@ public function setSeverity($severity) } /** - * Set Source + * Indicates the source of this notification. Combined with the Code it uniquely identifies this notification * * @param string $source * @return $this @@ -52,7 +52,7 @@ public function setSource($source) } /** - * Set Code + * A code that represents this notification. Combined with the Source it uniquely identifies this notification. * * @param string $code * @return $this @@ -64,7 +64,7 @@ public function setCode($code) } /** - * Set Message + * Human-readable text that explains this notification. * * @param string $message * @return $this @@ -76,7 +76,7 @@ public function setMessage($message) } /** - * Set LocalizedMessage + * The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. * * @param string $localizedMessage * @return $this @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/CloseService/ComplexType/NotificationParameter.php b/src/FedEx/CloseService/ComplexType/NotificationParameter.php index cba163f3..473d9f2e 100644 --- a/src/FedEx/CloseService/ComplexType/NotificationParameter.php +++ b/src/FedEx/CloseService/ComplexType/NotificationParameter.php @@ -24,7 +24,7 @@ class NotificationParameter extends AbstractComplexType protected $name = 'NotificationParameter'; /** - * Set Id + * Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). * * @param string $id * @return $this @@ -36,7 +36,7 @@ public function setId($id) } /** - * Set Value + * The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). * * @param string $value * @return $this diff --git a/src/FedEx/CloseService/ComplexType/ReprintGroundCloseDocumentsRequest.php b/src/FedEx/CloseService/ComplexType/ReprintGroundCloseDocumentsRequest.php index 33289104..ca7a347b 100644 --- a/src/FedEx/CloseService/ComplexType/ReprintGroundCloseDocumentsRequest.php +++ b/src/FedEx/CloseService/ComplexType/ReprintGroundCloseDocumentsRequest.php @@ -30,7 +30,7 @@ class ReprintGroundCloseDocumentsRequest extends AbstractComplexType protected $name = 'ReprintGroundCloseDocumentsRequest'; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). * * @param WebAuthenticationDetail $webAuthenticationDetail * @return $this @@ -42,7 +42,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -54,7 +54,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -66,7 +66,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -90,7 +90,7 @@ public function setReprintOption($reprintOption) } /** - * Date on which shipments were closed. + * Date on which shipments were closed * * @param string $closeDate * @return $this diff --git a/src/FedEx/CloseService/ComplexType/ShippingDocumentEMailDetail.php b/src/FedEx/CloseService/ComplexType/ShippingDocumentEMailDetail.php index 72c0b722..5d729962 100644 --- a/src/FedEx/CloseService/ComplexType/ShippingDocumentEMailDetail.php +++ b/src/FedEx/CloseService/ComplexType/ShippingDocumentEMailDetail.php @@ -12,6 +12,7 @@ * * @property ShippingDocumentEMailRecipient[] $EMailRecipients * @property \FedEx\CloseService\SimpleType\ShippingDocumentEMailGroupingType|string $Grouping + * @property Localization $Localization */ class ShippingDocumentEMailDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setGrouping($grouping) $this->values['Grouping'] = $grouping; return $this; } + + /** + * Specifies the language in which the email containing the document is requested to be composed. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } } diff --git a/src/FedEx/CloseService/ComplexType/SmartPostCloseRequest.php b/src/FedEx/CloseService/ComplexType/SmartPostCloseRequest.php index 5f62642e..32fdc027 100644 --- a/src/FedEx/CloseService/ComplexType/SmartPostCloseRequest.php +++ b/src/FedEx/CloseService/ComplexType/SmartPostCloseRequest.php @@ -18,6 +18,7 @@ * @property string $CustomerManifestId * @property string $DestinationCountryCode * @property \FedEx\CloseService\SimpleType\CarrierCodeType|string $PickUpCarrier + * @property CloseManifestReferenceDetail $ManifestReferenceDetail */ class SmartPostCloseRequest extends AbstractComplexType @@ -30,7 +31,7 @@ class SmartPostCloseRequest extends AbstractComplexType protected $name = 'SmartPostCloseRequest'; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). * * @param WebAuthenticationDetail $webAuthenticationDetail * @return $this @@ -124,4 +125,16 @@ public function setPickUpCarrier($pickUpCarrier) $this->values['PickUpCarrier'] = $pickUpCarrier; return $this; } + + /** + * Set ManifestReferenceDetail + * + * @param CloseManifestReferenceDetail $manifestReferenceDetail + * @return $this + */ + public function setManifestReferenceDetail(CloseManifestReferenceDetail $manifestReferenceDetail) + { + $this->values['ManifestReferenceDetail'] = $manifestReferenceDetail; + return $this; + } } diff --git a/src/FedEx/CloseService/ComplexType/TransactionDetail.php b/src/FedEx/CloseService/ComplexType/TransactionDetail.php index 6fc22744..1445678b 100644 --- a/src/FedEx/CloseService/ComplexType/TransactionDetail.php +++ b/src/FedEx/CloseService/ComplexType/TransactionDetail.php @@ -24,7 +24,7 @@ class TransactionDetail extends AbstractComplexType protected $name = 'TransactionDetail'; /** - * Set CustomerTransactionId + * Free form text to be echoed back in the reply. Used to match requests and replies. * * @param string $customerTransactionId * @return $this diff --git a/src/FedEx/CloseService/ComplexType/VersionId.php b/src/FedEx/CloseService/ComplexType/VersionId.php index ea75928f..d2f24f9b 100644 --- a/src/FedEx/CloseService/ComplexType/VersionId.php +++ b/src/FedEx/CloseService/ComplexType/VersionId.php @@ -26,7 +26,7 @@ class VersionId extends AbstractComplexType protected $name = 'VersionId'; /** - * Set ServiceId + * Identifies a system or sub-system which performs an operation. * * @param string $serviceId * @return $this @@ -38,7 +38,7 @@ public function setServiceId($serviceId) } /** - * Service business level. + * Identifies the service business level. * * @param int $major * @return $this @@ -50,7 +50,7 @@ public function setMajor($major) } /** - * Service interface level. + * Identifies the service interface level. * * @param int $intermediate * @return $this @@ -62,7 +62,7 @@ public function setIntermediate($intermediate) } /** - * Service code level. + * Identifies the service code level. * * @param int $minor * @return $this diff --git a/src/FedEx/CloseService/ComplexType/WebAuthenticationCredential.php b/src/FedEx/CloseService/ComplexType/WebAuthenticationCredential.php index f8c601ca..c875ab10 100644 --- a/src/FedEx/CloseService/ComplexType/WebAuthenticationCredential.php +++ b/src/FedEx/CloseService/ComplexType/WebAuthenticationCredential.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Two part authentication string used for the sender's identity. + * Two part authentication string used for the sender's identity * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class WebAuthenticationCredential extends AbstractComplexType protected $name = 'WebAuthenticationCredential'; /** - * Publicly known part of authentication key used for authentication. This value is provided by FedEx after registration. + * Identifying part of authentication credential. This value is provided by FedEx after registration * * @param string $key * @return $this @@ -36,7 +36,7 @@ public function setKey($key) } /** - * Secret part of authentication key used for authentication. This value is provided by FedEx after registration. + * Secret part of authentication key. This value is provided by FedEx after registration. * * @param string $password * @return $this diff --git a/src/FedEx/CloseService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/CloseService/ComplexType/WebAuthenticationDetail.php index 1f208bbe..58c4a77a 100644 --- a/src/FedEx/CloseService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/CloseService/ComplexType/WebAuthenticationDetail.php @@ -4,12 +4,13 @@ use FedEx\AbstractComplexType; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Used in authentication of the sender's identity. * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Close Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/CloseService/Request.php b/src/FedEx/CloseService/Request.php index 56b97311..d95ed96d 100644 --- a/src/FedEx/CloseService/Request.php +++ b/src/FedEx/CloseService/Request.php @@ -12,10 +12,29 @@ */ class Request extends AbstractRequest { - const PRODUCTION_URL = 'https://gateway.fedex.com:443/web-services/close'; - const TESTING_URL = 'https://gatewaybeta.fedex.com:443/web-services/close'; + const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/close'; + const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/close'; - protected static $wsdlFileName = 'CloseService_v2.wsdl'; + protected static $wsdlFileName = 'CloseService_v5.wsdl'; + + /** + * Sends the CloseWithDocumentsRequest and returns the response + * + * @param ComplexType\CloseWithDocumentsRequest $closeWithDocumentsRequest + * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient + * @return ComplexType\CloseWithDocumentsReply|stdClass + */ + public function getCloseWithDocumentsReply(ComplexType\CloseWithDocumentsRequest $closeWithDocumentsRequest, $returnStdClass = false) + { + $response = $this->getSoapClient()->closeWithDocuments($closeWithDocumentsRequest->toArray()); + if ($returnStdClass) { + return $response; + } + + $closeWithDocumentsReply = new ComplexType\CloseWithDocumentsReply; + $closeWithDocumentsReply->populateFromStdClass($response); + return $closeWithDocumentsReply; + } /** * Sends the SmartPostCloseRequest and returns the response @@ -55,25 +74,6 @@ public function getGroundCloseReply(ComplexType\GroundCloseRequest $groundCloseR return $groundCloseReply; } - /** - * Sends the GroundCloseReportsReprintRequest and returns the response - * - * @param ComplexType\GroundCloseReportsReprintRequest $groundCloseReportsReprintRequest - * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\GroundCloseReportsReprintReply|stdClass - */ - public function getGroundCloseReportsReprintReply(ComplexType\GroundCloseReportsReprintRequest $groundCloseReportsReprintRequest, $returnStdClass = false) - { - $response = $this->getSoapClient()->groundCloseReportsReprint($groundCloseReportsReprintRequest->toArray()); - if ($returnStdClass) { - return $response; - } - - $groundCloseReportsReprintReply = new ComplexType\GroundCloseReportsReprintReply; - $groundCloseReportsReprintReply->populateFromStdClass($response); - return $groundCloseReportsReprintReply; - } - /** * Sends the GroundCloseWithDocumentsRequest and returns the response * @@ -111,4 +111,23 @@ public function getReprintGroundCloseDocumentsReply(ComplexType\ReprintGroundClo $groundCloseDocumentsReply->populateFromStdClass($response); return $groundCloseDocumentsReply; } + + /** + * Sends the GroundCloseReportsReprintRequest and returns the response + * + * @param ComplexType\GroundCloseReportsReprintRequest $groundCloseReportsReprintRequest + * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient + * @return ComplexType\GroundCloseReportsReprintReply|stdClass + */ + public function getGroundCloseReportsReprintReply(ComplexType\GroundCloseReportsReprintRequest $groundCloseReportsReprintRequest, $returnStdClass = false) + { + $response = $this->getSoapClient()->groundCloseReportsReprint($groundCloseReportsReprintRequest->toArray()); + if ($returnStdClass) { + return $response; + } + + $groundCloseReportsReprintReply = new ComplexType\GroundCloseReportsReprintReply; + $groundCloseReportsReprintReply->populateFromStdClass($response); + return $groundCloseReportsReprintReply; + } } diff --git a/src/FedEx/CloseService/SimpleType/CloseActionType.php b/src/FedEx/CloseService/SimpleType/CloseActionType.php new file mode 100644 index 00000000..2637486b --- /dev/null +++ b/src/FedEx/CloseService/SimpleType/CloseActionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + */ +class CloseActionType extends AbstractSimpleType +{ + const _CLOSE = 'CLOSE'; + const _PREVIEW_CLOSE_DOCUMENTS = 'PREVIEW_CLOSE_DOCUMENTS'; + const _REPRINT_CLOSE_DOCUMENTS = 'REPRINT_CLOSE_DOCUMENTS'; +} diff --git a/src/FedEx/CloseService/SimpleType/CloseDocumentType.php b/src/FedEx/CloseService/SimpleType/CloseDocumentType.php index 2fc16522..fc93123e 100644 --- a/src/FedEx/CloseService/SimpleType/CloseDocumentType.php +++ b/src/FedEx/CloseService/SimpleType/CloseDocumentType.php @@ -13,6 +13,8 @@ class CloseDocumentType extends AbstractSimpleType { const _COD_REPORT = 'COD_REPORT'; + const _DETAILED_DELIVERY_MANIFEST = 'DETAILED_DELIVERY_MANIFEST'; + const _HAZARDOUS_MATERIALS_CERTIFICATION = 'HAZARDOUS_MATERIALS_CERTIFICATION'; const _MANIFEST = 'MANIFEST'; const _MULTIWEIGHT_REPORT = 'MULTIWEIGHT_REPORT'; const _OP_950 = 'OP_950'; diff --git a/src/FedEx/CloseService/SimpleType/CloseGroupingType.php b/src/FedEx/CloseService/SimpleType/CloseGroupingType.php new file mode 100644 index 00000000..780fffdc --- /dev/null +++ b/src/FedEx/CloseService/SimpleType/CloseGroupingType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + */ +class CloseGroupingType extends AbstractSimpleType +{ + const _MANIFEST_REFERENCE = 'MANIFEST_REFERENCE'; + const _SHIPPING_CYCLE = 'SHIPPING_CYCLE'; + const _TIME = 'TIME'; +} diff --git a/src/FedEx/CloseService/SimpleType/CloseWithDocumentsProcessingOptionType.php b/src/FedEx/CloseService/SimpleType/CloseWithDocumentsProcessingOptionType.php new file mode 100644 index 00000000..0767e14c --- /dev/null +++ b/src/FedEx/CloseService/SimpleType/CloseWithDocumentsProcessingOptionType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + */ +class CloseWithDocumentsProcessingOptionType extends AbstractSimpleType +{ + const _ERROR_IF_OPEN_SHIPMENTS_FOUND = 'ERROR_IF_OPEN_SHIPMENTS_FOUND'; + const _WARNING_IF_OPEN_SHIPMENTS_FOUND = 'WARNING_IF_OPEN_SHIPMENTS_FOUND'; +} diff --git a/src/FedEx/CloseService/SimpleType/CustomerReferenceType.php b/src/FedEx/CloseService/SimpleType/CustomerReferenceType.php new file mode 100644 index 00000000..a5448ee6 --- /dev/null +++ b/src/FedEx/CloseService/SimpleType/CustomerReferenceType.php @@ -0,0 +1,26 @@ + + * @package PHP FedEx API wrapper + * @subpackage Close Service + */ +class CustomerReferenceType extends AbstractSimpleType +{ + const _BILL_OF_LADING = 'BILL_OF_LADING'; + const _CUSTOMER_REFERENCE = 'CUSTOMER_REFERENCE'; + const _DEPARTMENT_NUMBER = 'DEPARTMENT_NUMBER'; + const _ELECTRONIC_PRODUCT_CODE = 'ELECTRONIC_PRODUCT_CODE'; + const _INTRACOUNTRY_REGULATORY_REFERENCE = 'INTRACOUNTRY_REGULATORY_REFERENCE'; + const _INVOICE_NUMBER = 'INVOICE_NUMBER'; + const _PACKING_SLIP_NUMBER = 'PACKING_SLIP_NUMBER'; + const _P_O_NUMBER = 'P_O_NUMBER'; + const _RMA_ASSOCIATION = 'RMA_ASSOCIATION'; + const _SHIPMENT_INTEGRITY = 'SHIPMENT_INTEGRITY'; + const _STORE_NUMBER = 'STORE_NUMBER'; +} diff --git a/src/FedEx/CloseService/SimpleType/EMailNotificationRecipientType.php b/src/FedEx/CloseService/SimpleType/EMailNotificationRecipientType.php index 65d96e04..727cfbbe 100644 --- a/src/FedEx/CloseService/SimpleType/EMailNotificationRecipientType.php +++ b/src/FedEx/CloseService/SimpleType/EMailNotificationRecipientType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. + * EMailNotificationRecipientType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/CloseService/SimpleType/LinearUnits.php b/src/FedEx/CloseService/SimpleType/LinearUnits.php index 4feca4ac..f53d9255 100644 --- a/src/FedEx/CloseService/SimpleType/LinearUnits.php +++ b/src/FedEx/CloseService/SimpleType/LinearUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * CM = centimeters, IN = inches + * LinearUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/CloseService/SimpleType/ShippingDocumentDispositionType.php b/src/FedEx/CloseService/SimpleType/ShippingDocumentDispositionType.php index 31421f77..4770f6f1 100644 --- a/src/FedEx/CloseService/SimpleType/ShippingDocumentDispositionType.php +++ b/src/FedEx/CloseService/SimpleType/ShippingDocumentDispositionType.php @@ -13,7 +13,9 @@ class ShippingDocumentDispositionType extends AbstractSimpleType { const _CONFIRMED = 'CONFIRMED'; - const _DEFERRED = 'DEFERRED'; + const _DEFERRED_QUEUED = 'DEFERRED_QUEUED'; + const _DEFERRED_RETURNED = 'DEFERRED_RETURNED'; + const _DEFERRED_STORED = 'DEFERRED_STORED'; const _EMAILED = 'EMAILED'; const _QUEUED = 'QUEUED'; const _RETURNED = 'RETURNED'; diff --git a/src/FedEx/CloseService/SimpleType/ShippingDocumentEMailGroupingType.php b/src/FedEx/CloseService/SimpleType/ShippingDocumentEMailGroupingType.php index 48a8b10e..8472b6db 100644 --- a/src/FedEx/CloseService/SimpleType/ShippingDocumentEMailGroupingType.php +++ b/src/FedEx/CloseService/SimpleType/ShippingDocumentEMailGroupingType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the convention by which documents are to be grouped as e-mail attachments. + * ShippingDocumentEMailGroupingType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/CloseService/SimpleType/ShippingDocumentGroupingType.php b/src/FedEx/CloseService/SimpleType/ShippingDocumentGroupingType.php index 77692dd7..5e1a8b58 100644 --- a/src/FedEx/CloseService/SimpleType/ShippingDocumentGroupingType.php +++ b/src/FedEx/CloseService/SimpleType/ShippingDocumentGroupingType.php @@ -13,5 +13,6 @@ class ShippingDocumentGroupingType extends AbstractSimpleType { const _CONSOLIDATED_BY_DOCUMENT_TYPE = 'CONSOLIDATED_BY_DOCUMENT_TYPE'; + const _CONSOLIDATED_BY_IMAGE_TYPE = 'CONSOLIDATED_BY_IMAGE_TYPE'; const _INDIVIDUAL = 'INDIVIDUAL'; } diff --git a/src/FedEx/CloseService/SimpleType/ShippingDocumentStockType.php b/src/FedEx/CloseService/SimpleType/ShippingDocumentStockType.php index 3aa84076..996181ec 100644 --- a/src/FedEx/CloseService/SimpleType/ShippingDocumentStockType.php +++ b/src/FedEx/CloseService/SimpleType/ShippingDocumentStockType.php @@ -13,9 +13,12 @@ class ShippingDocumentStockType extends AbstractSimpleType { const _OP_900_LG = 'OP_900_LG'; + const _OP_900_LG_B = 'OP_900_LG_B'; const _OP_900_LL = 'OP_900_LL'; + const _OP_900_LL_B = 'OP_900_LL_B'; const _OP_950 = 'OP_950'; const _PAPER_4X6 = 'PAPER_4X6'; + const _PAPER_4_PER_PAGE_PORTRAIT = 'PAPER_4_PER_PAGE_PORTRAIT'; const _PAPER_LETTER = 'PAPER_LETTER'; const _STOCK_4X6 = 'STOCK_4X6'; const _STOCK_4X6POINT75_LEADING_DOC_TAB = 'STOCK_4X6.75_LEADING_DOC_TAB'; diff --git a/src/FedEx/_wsdl/CloseService_v2.wsdl b/src/FedEx/_wsdl/CloseService_v2.wsdl deleted file mode 100644 index debefe73..00000000 --- a/src/FedEx/_wsdl/CloseService_v2.wsdl +++ /dev/null @@ -1,833 +0,0 @@ - - - - - - - - - - - - - - - - Identification of a FedEx operating company (transportation). - - - - - - - - - - - - - Descriptive data for the client submitting a transaction. - - - - - - - Only used in transactions which require identification of the Fed Ex Office integrator. - - - - - The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - - - - - - - - - - The client's shipping cycle to which this shipment belongs. - - - - - - The name under which a STORED or DEFERRED document is written. - - - - - Specifies the image resolution in DPI (dots per inch). - - - - - Number of copies to print. - - - - - One or more document parts which make up a single logical document, such as multiple pages of a single form. - - - - - - - Specifies characteristics of a shipping document to be produced. - - - - - Specifies how to create, organize, and return the document. - - - - - Specifies how far down the page to move the beginning of the image; allows for printing on letterhead and other pre-printed stock. - - - - - The type of image or printer commands the image is to be formatted in. - - - - - - For those shipping document types which have both a "form" and "instructions" component (e.g. NAFTA Certificate of Origin and General Agency Agreement), this field indicates whether to provide the instructions. - - - - - Governs the language to be used for this individual document, independently from other content returned for the same shipment. - - - - - - - Contains all data required for close-time documents to be produced in conjunction with a specific set of shipments. For January 2010, there are no applicable options for the COD report, the Manifest, or the Multiweight Report (they will only be available in TEXT format). Detail specifications will be added for those report types when customer-selectable options are implemented. - - - - - Indicates the types of close documents requested by the caller. - - - - - Specifies the production of the OP-950 document for hazardous materials. - - - - - - - - - - - - - - - - - - - - - - - - - - - - Internal Id used by INET to identify customer provided images during documents generation. Ex COO etc ... - - - - - Internal image type used by INET to identify customer provided images during documents generation. Ex COO etc .. - - - - - - - - - - - - - Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. - - - - - - - - - - - - - - This indicates the highest level of severity of all the notifications returned in this reply. - - - - - The descriptive data regarding the results of the submitted transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - The actual document contents for all provided reports. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - - - - - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - - - - Identifies the date and time up to which unclosed shipments are to be closed. Both the date and time portions of the string are expected to be used. The time is the local time based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2009-04-26). The time component must be in the format: HH:MM:SS using a 24 hour clock (e.g. 11:00 a.m. is 11:00:00, whereas 5:00 p.m. is 17:00:00). The date and time parts are separated by a T (e.g. 2009-04-26T17:00:00). - - - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Date on which shipments were closed. - - - - - Specifies characteristics of document(s) to be returned for this request. - - - - - - - - - - - - - - - - - - - - - - Represents a one-dimensional measurement in small units (e.g. suitable for measuring a package or document), contrasted with Distance, which represents a large one-dimensional measurement (e.g. distance between cities). - - - - - The numerical quantity of this measurement. - - - - - The units for this measurement. - - - - - - - CM = centimeters, IN = inches - - - - - - - - - - - - - - - - - - - - - - - - - - - - A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. - - - - - - - - - - - - - - - - - - - - - - The instructions indicating how to print the OP-950 form for hazardous materials. - - - - - Specifies characteristics of a shipping document to be produced. - - - - - Specifies the usage and identification of a customer supplied image to be used on this document. - - - - - Data field to be used when a name is to be printed in the document instead of (or in addition to) a signature image. - - - - - - - Identifies the requested options to reprinting Ground Close Documents - - - - - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - - Date on which shipments were closed. - - - - - - Specifies characteristics of document(s) to be returned for this request. - - - - - - - Each occurrence of this class specifies a particular way in which a kind of shipping document is to be produced and provided. - - - - - Values in this field specify how to create and return the document. - - - - - Specifies how to organize all documents of this type. - - - - - Specifies how to store document images. - - - - - Specifies how to e-mail document images. - - - - - Specifies how a queued document is to be printed. - - - - - - - Specifies how to return a shipping document to the caller. - - - - - - - - - - - - - Specifies how to e-mail shipping documents. - - - - - Provides the roles and email addresses for e-mail recipients. - - - - - Identifies the convention by which documents are to be grouped as e-mail attachments. - - - - - - - Identifies the convention by which documents are to be grouped as e-mail attachments. - - - - - - - - - Specifies an individual recipient of e-mailed shipping document(s). - - - - - Identifies the relationship of this recipient in the shipment. - - - - - Address to which the document is to be sent. - - - - - - - Specifies how to organize all shipping documents of the same type. - - - - - - - - - Specifies the image format used for a shipping document. - - - - - - - - - - - - - - - - - Identifies the convention by which file names are constructed for STORED or DEFERRED documents. - - - - - - - - - A single part of a shipping document, such as one page of a multiple-page document whose format requires a separate image per page. - - - - - The one-origin position of this part within a document. - - - - - Graphic or printer commands for this image within a document. - - - - - - - Specifies printing options for a shipping document. - - - - - Provides environment-specific printer identification. - - - - - - - Specifies the type of paper (stock) on which a document will be printed. - - - - - - - - - - - - - - - - - - Specifies how to store shipping documents. - - - - - Provides the path to be used for STORED or DEFERRED documents. - - - - - Identifies the convention by which file names are constructed for STORED or DEFERRED documents. - - - - - Suffix to be placed at the end of the file name; required on some platforms to determine file type. - - - - - - - - - - - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - - - - - - - - - - - - - Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). - - - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - - Service business level. - - - - - Service interface level. - - - - - Service code level. - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Credential used to authenticate a specific software application. This value is provided by FedEx after registration. - - - - - - - Two part authentication string used for the sender's identity. - - - - - Publicly known part of authentication key used for authentication. This value is provided by FedEx after registration. - - 16 - - - - - - Secret part of authentication key used for authentication. This value is provided by FedEx after registration. - - 25 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/FedEx/_wsdl/CloseService_v5.wsdl b/src/FedEx/_wsdl/CloseService_v5.wsdl new file mode 100755 index 00000000..3dab68aa --- /dev/null +++ b/src/FedEx/_wsdl/CloseService_v5.wsdl @@ -0,0 +1,983 @@ + + + + + + + + + + + + + + + + + Identification of a FedEx operating company (transportation). + + + + + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + + + + + + + + + + + Identifies the shipping cycle covered by the content of this document. + + + + + + The name under which a STORED or DEFERRED document is written. + + + + + Specifies the image resolution in DPI (dots per inch). + + + + + Can be zero for documents whose disposition implies that no content is included. + + + + + One or more document parts which make up a single logical document, such as multiple pages of a single form. + + + + + + + Specifies characteristics of a close document to be produced. + + + + + Specifies how to create, organize, and return the document. + + + + + Specifies how far down the page to move the beginning of the image; allows for printing on letterhead and other pre-printed stock. + + + + + + + For those shipping document types which have both a "form" and "instructions" component (e.g. NAFTA Certificate of Origin and General Agency Agreement), this field indicates whether to provide the instructions. + + + + + Governs the language to be used for this individual document, independently from other content returned for the same shipment. + + + + + + + Contains all data required for close-time documents to be produced in conjunction with a specific set of shipments. For January 2010, there are no applicable options for the COD report, the Manifest, or the Multiweight Report (they will only be available in TEXT format). Detail specifications will be added for those report types when customer-selectable options are implemented. + + + + + Indicates the types of close documents requested by the caller. + + + + + + + + Specifies the production of the OP-950 document for hazardous materials. + + + + + + + + + + + + + + + + + Specifies how the shipment close requests are grouped. + + + + + + + + + + + + This identifies which customer reference field used as the manifest ID. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + + + + + + + + + Internal Id used by INET to identify customer provided images during documents generation. Ex COO etc ... + + + + + Internal image type used by INET to identify customer provided images during documents generation. Ex COO etc .. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This field provides a mechanism for the client to specify their time zone offset relative to GMT. This governs the printed on time for this report. If this field is left empty, then the server time will be used. The value of this field must be in the format '(+|-)[hh]:[mm]', '(+|-)[hh][mm]', '(+|-)[hh]', or 'Z' (for GMT time). An offset of zero, in addition to having the special representation 'Z', can also be stated numerically as '+00:00', '+0000', or '+00'. However, it is not permitted to state it numerically with a negative sign. + + + + + + + + + + + + + + + + + + + + + + The actual document contents for all provided reports. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + Cutoff date for closing and reports. + + + + + Specifies characteristics of document(s) to be returned for this request. + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a one-dimensional measurement in small units (e.g. suitable for measuring a package or document), contrasted with Distance, which represents a large one-dimensional measurement (e.g. distance between cities). + + + + + The numerical quantity of this measurement. + + + + + The units for this measurement. + + + + + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + + + + + + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + The instructions indicating how to print the OP-950 form for hazardous materials. + + + + + Specifies characteristics of a shipping document to be produced. + + + + + Specifies the usage and identification of a customer supplied image to be used on this document. + + + + + Data field to be used when a name is to be printed in the document instead of (or in addition to) a signature image. + + + + + + + Identifies the requested options to reprinting Ground Close Documents + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + Date on which shipments were closed + + + + + + Specifies characteristics of document(s) to be returned for this request. + + + + + + + Each occurrence of this class specifies a particular way in which a kind of shipping document is to be produced and provided. + + + + + Values in this field specify how to create and return the document. + + + + + Specifies how to organize all documents of this type. + + + + + Specifies how to store document images. + + + + + Specifies how to e-mail document images. + + + + + Specifies how a queued document is to be printed. + + + + + + + Specifies how to return a shipping document to the caller. + + + + + + + + + + + + + + + Specifies how to e-mail shipping documents. + + + + + Provides the roles and email addresses for e-mail recipients. + + + + + Identifies the convention by which documents are to be grouped as e-mail attachments. + + + + + Specifies the language in which the email containing the document is requested to be composed. + + + + + + + + + + + + + Specifies an individual recipient of e-mailed shipping document(s). + + + + + Identifies the relationship of this recipient in the shipment. + + + + + Address to which the document is to be sent. + + + + + + + Specifies how to organize all shipping documents of the same type. + + + + + + + + + + Specifies the image format used for a shipping document. + + + + + + + + + + + + + + + + + Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + + + + + + + + + A single part of a shipping document, such as one page of a multiple-page document whose format requires a separate image per page. + + + + + The one-origin position of this part within a document. + + + + + Graphic or printer commands for this image within a document. + + + + + + + Specifies printing options for a shipping document. + + + + + Provides environment-specific printer identification. + + + + + + + Specifies the type of paper (stock) on which a document will be printed. + + + + + + + + + + + + + + + + + + + + + Specifies how to store shipping documents. + + + + + Provides the path to be used for STORED or DEFERRED documents. + + + + + Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + + + + + Suffix to be placed at the end of the file name; required on some platforms to determine file type. + + + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index e7a5633f..ad61be3a 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -202,7 +202,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //CloseService - $wsdlPath = $fedexSrcDir . '/_wsdl/CloseService_v2.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/CloseService_v5.wsdl'; $baseNamespace = 'FedEx\CloseService'; $subPackageName = 'Close Service'; From 875be613b13f649af0eb3fd15b57199340407499 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 4 Nov 2017 08:20:01 -0500 Subject: [PATCH 02/33] Updated Pickup Service to version 15. --- CHANGELOG.md | 24 + .../PickupService/ComplexType/Address.php | 26 + .../ComplexType/CancelPickupReply.php | 10 +- .../ComplexType/CancelPickupRequest.php | 18 +- .../ComplexType/ClientDetail.php | 2 +- .../CodAddTransportationChargesDetail.php | 15 +- .../PickupService/ComplexType/CodDetail.php | 39 + .../PickupService/ComplexType/Contact.php | 13 + .../ComplexType/ContactAndAddress.php | 6 +- .../ComplexType/CreatePickupReply.php | 16 +- .../ComplexType/CreatePickupRequest.php | 52 +- .../PickupService/ComplexType/CreditCard.php | 88 - .../CreditCardTransactionDetail.php | 62 - .../CreditFraudDetectionDetail.php | 62 - .../PickupService/ComplexType/DateRange.php | 4 +- .../DeliveryOnInvoiceAcceptanceDetail.php | 49 + .../PickupService/ComplexType/Dimensions.php | 10 +- .../PickupService/ComplexType/EMailDetail.php | 49 + .../ComplexType/EMailLabelDetail.php | 22 +- .../ComplexType/EMailNotificationDetail.php | 62 - .../EMailNotificationRecipient.php | 88 - .../ComplexType/EMailRecipient.php | 75 + .../ComplexType/EmailOptionsRequested.php | 36 + .../PickupService/ComplexType/EtdDetail.php | 13 + .../ExpressFreightPickupDetail.php | 12 +- .../PickupService/ComplexType/FaxDetail.php | 36 + .../ComplexType/FlatbedTrailerDetail.php | 2 +- .../ComplexType/FreightGuaranteeDetail.php | 17 +- .../ComplexType/FreightPickupDetail.php | 27 +- .../ComplexType/FreightPickupLineItem.php | 42 +- .../ComplexType/HoldAtLocationDetail.php | 2 +- .../ComplexType/HomeDeliveryPremiumDetail.php | 8 +- ...nationalTrafficInArmsRegulationsDetail.php | 36 + src/FedEx/PickupService/ComplexType/Money.php | 6 +- .../ComplexType/Notification.php | 2 +- .../ComplexType/NotificationDetail.php | 88 + .../ComplexType/ParsedContact.php | 114 - .../ComplexType/ParsedContactAndAddress.php | 49 - .../ComplexType/ParsedPersonName.php | 62 - src/FedEx/PickupService/ComplexType/Party.php | 8 +- .../PickupService/ComplexType/Payment.php | 34 +- src/FedEx/PickupService/ComplexType/Payor.php | 25 +- .../ComplexType/PendingShipmentDetail.php | 41 +- ...dingShipmentProcessingOptionsRequested.php | 36 + .../ComplexType/PickupAvailabilityReply.php | 27 +- .../ComplexType/PickupAvailabilityRequest.php | 49 +- .../PickupDangerousGoodsDetail.php | 62 + .../ComplexType/PickupOriginDetail.php | 14 +- .../PickupPackageSpecialServicesRequested.php | 62 + .../ComplexType/PickupScheduleOption.php | 19 +- .../ComplexType/PickupShipmentAttributes.php | 6 +- .../ComplexType/PriorityAlertDetail.php | 49 + .../RecommendedDocumentSpecification.php | 36 + .../RequestedPickupPackageDetail.php | 49 + .../ComplexType/ReturnAssociationDetail.php | 49 + .../ComplexType/ReturnEMailDetail.php | 4 +- .../ComplexType/ReturnShipmentDetail.php | 21 +- src/FedEx/PickupService/ComplexType/Rma.php | 17 +- .../ComplexType/ShipmentDryIceDetail.php | 13 + ...ipmentDryIceProcessingOptionsRequested.php | 36 + .../ShipmentEventNotificationDetail.php | 62 + ...ShipmentEventNotificationSpecification.php | 75 + ...hipmentNotificationFormatSpecification.php | 36 + .../ShipmentSpecialServicesRequested.php | 50 +- .../PickupService/ComplexType/SmsDetail.php | 49 + .../ComplexType/TaxpayerIdentification.php | 32 +- .../PickupService/ComplexType/TrackingId.php | 75 + .../ComplexType/TransactionDetail.php | 2 +- .../ComplexType/UploadDocumentDetail.php | 13 + .../UploadDocumentReferenceDetail.php | 13 + .../ComplexType/WebAuthenticationDetail.php | 13 + src/FedEx/PickupService/Request.php | 6 +- .../SimpleType/AccessorRoleType.php | 17 + .../AssociatedAccountNumberType.php | 1 - .../SimpleType/BuildingPartCode.php | 2 +- .../CodReturnReferenceIndicatorType.php | 2 +- .../CreditCardAuthorizationType.php | 18 - .../SimpleType/CreditCardType.php | 20 - ...hp => DangerousGoodsAccessibilityType.php} | 8 +- .../SimpleType/DistanceUnits.php | 2 +- .../SimpleType/EmailOptionType.php | 18 + .../SimpleType/EtdAttributeType.php | 16 + .../SimpleType/FedExLocationType.php | 7 + .../SimpleType/FlatbedTrailerOption.php | 2 +- .../SimpleType/FreightGuaranteeType.php | 3 +- .../SimpleType/FreightShipmentRoleType.php | 1 - .../HazardousCommodityOptionType.php | 21 + .../HazardousCommodityRegulationType.php | 19 + .../SimpleType/HomeDeliveryPremiumType.php | 2 +- .../PickupService/SimpleType/LinearUnits.php | 2 +- ...ventType.php => NotificationEventType.php} | 5 +- ...matType.php => NotificationFormatType.php} | 5 +- .../SimpleType/NotificationSeverityType.php | 2 +- .../SimpleType/NotificationType.php | 18 + .../SimpleType/PackageSpecialServiceType.php | 25 + .../SimpleType/PackagingType.php | 4 + .../PickupService/SimpleType/PaymentType.php | 2 +- .../PendingShipmentProcessingOptionType.php | 16 + .../SimpleType/PendingShipmentType.php | 2 +- .../SimpleType/PhysicalPackagingType.php | 8 + .../SimpleType/PickupBuildingLocationType.php | 2 +- .../SimpleType/PickupEventType.php | 2 +- .../SimpleType/PickupRequestType.php | 4 +- .../SimpleType/PickupServiceCategoryType.php | 23 + .../PickupService/SimpleType/PickupType.php | 17 + .../PriorityAlertEnhancementType.php | 16 + .../SimpleType/RateLevelBasisType.php | 17 + .../SimpleType/RecommendedDocumentType.php | 41 + .../RequestedShippingDocumentType.php | 3 + .../PickupService/SimpleType/ReturnType.php | 2 +- .../PickupService/SimpleType/ServiceType.php | 32 +- .../ShipmentDryIceProcessingOptionType.php | 16 + ...> ShipmentNotificationAggregationType.php} | 4 +- ...e.php => ShipmentNotificationRoleType.php} | 4 +- .../SimpleType/ShipmentSpecialServiceType.php | 11 +- .../PickupService/SimpleType/TinType.php | 2 +- .../SimpleType/TrackingIdType.php | 20 + .../SimpleType/TrailerSizeType.php | 2 +- .../PickupService/SimpleType/TruckType.php | 2 +- .../SimpleType/UploadDocumentIdProducer.php | 6 +- .../SimpleType/UploadDocumentProducerType.php | 1 + .../SimpleType/UploadDocumentType.php | 1 + .../PickupService/SimpleType/WeightUnits.php | 2 +- src/FedEx/_wsdl/PickupService_v15.wsdl | 2408 ++++++++++++++ src/FedEx/_wsdl/PickupService_v3.wsdl | 2761 ----------------- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 126 files changed, 4408 insertions(+), 3668 deletions(-) delete mode 100644 src/FedEx/PickupService/ComplexType/CreditCard.php delete mode 100644 src/FedEx/PickupService/ComplexType/CreditCardTransactionDetail.php delete mode 100644 src/FedEx/PickupService/ComplexType/CreditFraudDetectionDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/EMailDetail.php delete mode 100644 src/FedEx/PickupService/ComplexType/EMailNotificationDetail.php delete mode 100644 src/FedEx/PickupService/ComplexType/EMailNotificationRecipient.php create mode 100644 src/FedEx/PickupService/ComplexType/EMailRecipient.php create mode 100644 src/FedEx/PickupService/ComplexType/EmailOptionsRequested.php create mode 100644 src/FedEx/PickupService/ComplexType/FaxDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/NotificationDetail.php delete mode 100644 src/FedEx/PickupService/ComplexType/ParsedContact.php delete mode 100644 src/FedEx/PickupService/ComplexType/ParsedContactAndAddress.php delete mode 100644 src/FedEx/PickupService/ComplexType/ParsedPersonName.php create mode 100644 src/FedEx/PickupService/ComplexType/PendingShipmentProcessingOptionsRequested.php create mode 100644 src/FedEx/PickupService/ComplexType/PickupDangerousGoodsDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/PickupPackageSpecialServicesRequested.php create mode 100644 src/FedEx/PickupService/ComplexType/PriorityAlertDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/RecommendedDocumentSpecification.php create mode 100644 src/FedEx/PickupService/ComplexType/RequestedPickupPackageDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/ReturnAssociationDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php create mode 100644 src/FedEx/PickupService/ComplexType/ShipmentEventNotificationDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/ShipmentEventNotificationSpecification.php create mode 100644 src/FedEx/PickupService/ComplexType/ShipmentNotificationFormatSpecification.php create mode 100644 src/FedEx/PickupService/ComplexType/SmsDetail.php create mode 100644 src/FedEx/PickupService/ComplexType/TrackingId.php create mode 100644 src/FedEx/PickupService/SimpleType/AccessorRoleType.php delete mode 100644 src/FedEx/PickupService/SimpleType/CreditCardAuthorizationType.php delete mode 100644 src/FedEx/PickupService/SimpleType/CreditCardType.php rename src/FedEx/PickupService/SimpleType/{FreightAccountPaymentType.php => DangerousGoodsAccessibilityType.php} (53%) create mode 100644 src/FedEx/PickupService/SimpleType/EmailOptionType.php create mode 100644 src/FedEx/PickupService/SimpleType/EtdAttributeType.php create mode 100644 src/FedEx/PickupService/SimpleType/HazardousCommodityOptionType.php create mode 100644 src/FedEx/PickupService/SimpleType/HazardousCommodityRegulationType.php rename src/FedEx/PickupService/SimpleType/{EMailNotificationEventType.php => NotificationEventType.php} (72%) rename src/FedEx/PickupService/SimpleType/{EMailNotificationFormatType.php => NotificationFormatType.php} (68%) create mode 100644 src/FedEx/PickupService/SimpleType/NotificationType.php create mode 100644 src/FedEx/PickupService/SimpleType/PackageSpecialServiceType.php create mode 100644 src/FedEx/PickupService/SimpleType/PendingShipmentProcessingOptionType.php create mode 100644 src/FedEx/PickupService/SimpleType/PickupServiceCategoryType.php create mode 100644 src/FedEx/PickupService/SimpleType/PickupType.php create mode 100644 src/FedEx/PickupService/SimpleType/PriorityAlertEnhancementType.php create mode 100644 src/FedEx/PickupService/SimpleType/RateLevelBasisType.php create mode 100644 src/FedEx/PickupService/SimpleType/RecommendedDocumentType.php create mode 100644 src/FedEx/PickupService/SimpleType/ShipmentDryIceProcessingOptionType.php rename src/FedEx/PickupService/SimpleType/{EMailNotificationAggregationType.php => ShipmentNotificationAggregationType.php} (73%) rename src/FedEx/PickupService/SimpleType/{EMailNotificationRecipientType.php => ShipmentNotificationRoleType.php} (51%) create mode 100644 src/FedEx/PickupService/SimpleType/TrackingIdType.php create mode 100755 src/FedEx/_wsdl/PickupService_v15.wsdl delete mode 100644 src/FedEx/_wsdl/PickupService_v3.wsdl diff --git a/CHANGELOG.md b/CHANGELOG.md index f84d017c..c1936b23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,29 @@ # CHANGELOG +## 3.0 (released 2017-11-04) +- Updated Upload Document Service +- Updated Pickup Service + +|Service|Version| +|---|---| +|Address Validation|2| +|Close|5| +|Courier Dispatch|3| +|Locator|2| +|Package Movement Information|5| +|Pickup|15| +|Rate|10| +|Return Tag|1| +|Ship|12| +|Track|5| +|Upload Document|11| +|Open Ship|11| +|Validation Availability and Commitment Service|6| +|ASYNC Transaction Service|4| +|In Flight Shipment Service|1| +|DGLD Service|1| +|DGDS Service|4| + ## 2.6 (released 2017-11-02) - Added Dangerous Goods Data Service diff --git a/src/FedEx/PickupService/ComplexType/Address.php b/src/FedEx/PickupService/ComplexType/Address.php index 33586eb8..052ee7cd 100644 --- a/src/FedEx/PickupService/ComplexType/Address.php +++ b/src/FedEx/PickupService/ComplexType/Address.php @@ -16,7 +16,9 @@ * @property string $PostalCode * @property string $UrbanizationCode * @property string $CountryCode + * @property string $CountryName * @property boolean $Residential + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -100,6 +102,18 @@ public function setCountryCode($countryCode) return $this; } + /** + * The fully spelt out name of a country. + * + * @param string $countryName + * @return $this + */ + public function setCountryName($countryName) + { + $this->values['CountryName'] = $countryName; + return $this; + } + /** * Indicates whether this address residential (as opposed to commercial). * @@ -111,4 +125,16 @@ public function setResidential($residential) $this->values['Residential'] = $residential; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/CancelPickupReply.php b/src/FedEx/PickupService/ComplexType/CancelPickupReply.php index 33ee02e4..2eae833a 100644 --- a/src/FedEx/PickupService/ComplexType/CancelPickupReply.php +++ b/src/FedEx/PickupService/ComplexType/CancelPickupReply.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data returned to a client in response to a cancel dispatch request. + * CancelPickupReply * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -27,7 +27,7 @@ class CancelPickupReply extends AbstractComplexType protected $name = 'CancelPickupReply'; /** - * Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. + * Set HighestSeverity * * @param \FedEx\PickupService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -39,7 +39,7 @@ public function setHighestSeverity($highestSeverity) } /** - * The descriptive data detailing the status of a sumbitted transaction. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -51,7 +51,7 @@ public function setNotifications(array $notifications) } /** - * Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -63,7 +63,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this diff --git a/src/FedEx/PickupService/ComplexType/CancelPickupRequest.php b/src/FedEx/PickupService/ComplexType/CancelPickupRequest.php index 5a659891..7ea5022c 100644 --- a/src/FedEx/PickupService/ComplexType/CancelPickupRequest.php +++ b/src/FedEx/PickupService/ComplexType/CancelPickupRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data to cancel a shipment pickup request. + * CancelPickupRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -49,7 +49,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * The descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -61,7 +61,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -73,7 +73,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -85,7 +85,7 @@ public function setVersion(VersionId $version) } /** - * Identifies the FedEx operating company (transportation) that was sent the pickup that is being canceled. + * Set CarrierCode * * @param \FedEx\PickupService\SimpleType\CarrierCodeType|string $carrierCode * @return $this @@ -97,7 +97,7 @@ public function setCarrierCode($carrierCode) } /** - * Identifies the pickup confirmation number that is being canceled. The pickup confirmation number was returned to the client when the pickup was requested. + * Set PickupConfirmationNumber * * @param string $pickupConfirmationNumber * @return $this @@ -109,7 +109,7 @@ public function setPickupConfirmationNumber($pickupConfirmationNumber) } /** - * Identifies the scheduled date for the pickup that is being canceled. The scheduled date was provided by the client when the pickup was requested. + * The local date which the pickup was originally scheduled to be picked up on. The date provided is the local to the client of the request. The date specification does not include any time zone designators. * * @param string $scheduledDate * @return $this @@ -133,7 +133,7 @@ public function setEndDate($endDate) } /** - * Identifies the FedEx location identifier responsible for processing the package pickup that is being canceled. The FedEx location identifier was returned to the client when the pickup was requested. Required for Express service type. + * Set Location * * @param string $location * @return $this @@ -145,7 +145,7 @@ public function setLocation($location) } /** - * Identifies comments the customer wants to convey to the FedEx courier regarding the package pickup. + * Set Remarks * * @param string $remarks * @return $this diff --git a/src/FedEx/PickupService/ComplexType/ClientDetail.php b/src/FedEx/PickupService/ComplexType/ClientDetail.php index 2226a552..3340d9b0 100644 --- a/src/FedEx/PickupService/ComplexType/ClientDetail.php +++ b/src/FedEx/PickupService/ComplexType/ClientDetail.php @@ -64,7 +64,7 @@ public function setMeterInstance($meterInstance) } /** - * Only used in transactions which require identification of the Fed Ex Office integrator. + * Only used in transactions which require identification of the FedEx Office integrator. * * @param string $integratorId * @return $this diff --git a/src/FedEx/PickupService/ComplexType/CodAddTransportationChargesDetail.php b/src/FedEx/PickupService/ComplexType/CodAddTransportationChargesDetail.php index 24fefa98..ffec0147 100644 --- a/src/FedEx/PickupService/ComplexType/CodAddTransportationChargesDetail.php +++ b/src/FedEx/PickupService/ComplexType/CodAddTransportationChargesDetail.php @@ -13,6 +13,7 @@ * @property \FedEx\PickupService\SimpleType\RateTypeBasisType|string $RateTypeBasis * @property \FedEx\PickupService\SimpleType\CodAddTransportationChargeBasisType|string $ChargeBasis * @property \FedEx\PickupService\SimpleType\ChargeBasisLevelType|string $ChargeBasisLevel + * @property \FedEx\PickupService\SimpleType\RateLevelBasisType|string $RateLevelBasis */ class CodAddTransportationChargesDetail extends AbstractComplexType @@ -25,7 +26,7 @@ class CodAddTransportationChargesDetail extends AbstractComplexType protected $name = 'CodAddTransportationChargesDetail'; /** - * Set RateTypeBasis + * Select the type of rate from which the element is to be selected. * * @param \FedEx\PickupService\SimpleType\RateTypeBasisType|string $rateTypeBasis * @return $this @@ -59,4 +60,16 @@ public function setChargeBasisLevel($chargeBasisLevel) $this->values['ChargeBasisLevel'] = $chargeBasisLevel; return $this; } + + /** + * Select the type of rate used to calculate the percentage value of variable handling. + * + * @param \FedEx\PickupService\SimpleType\RateLevelBasisType|string $rateLevelBasis + * @return $this + */ + public function setRateLevelBasis($rateLevelBasis) + { + $this->values['RateLevelBasis'] = $rateLevelBasis; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/CodDetail.php b/src/FedEx/PickupService/ComplexType/CodDetail.php index 75b63f8d..93c0bd59 100644 --- a/src/FedEx/PickupService/ComplexType/CodDetail.php +++ b/src/FedEx/PickupService/ComplexType/CodDetail.php @@ -14,7 +14,10 @@ * @property CodAddTransportationChargesDetail $AddTransportationChargesDetail * @property \FedEx\PickupService\SimpleType\CodCollectionType|string $CollectionType * @property Party $CodRecipient + * @property ContactAndAddress $FinancialInstitutionContactAndAddress + * @property string $RemitToName * @property \FedEx\PickupService\SimpleType\CodReturnReferenceIndicatorType|string $ReferenceIndicator + * @property TrackingId $ReturnTrackingId */ class CodDetail extends AbstractComplexType @@ -74,6 +77,30 @@ public function setCodRecipient(Party $codRecipient) return $this; } + /** + * When the FedEx COD payment type is not CASH, indicates the contact and address of the financial institution used to service the payment of the COD. + * + * @param ContactAndAddress $financialInstitutionContactAndAddress + * @return $this + */ + public function setFinancialInstitutionContactAndAddress(ContactAndAddress $financialInstitutionContactAndAddress) + { + $this->values['FinancialInstitutionContactAndAddress'] = $financialInstitutionContactAndAddress; + return $this; + } + + /** + * Specifies the name of person or company receiving the secured/unsecured funds payment + * + * @param string $remitToName + * @return $this + */ + public function setRemitToName($remitToName) + { + $this->values['RemitToName'] = $remitToName; + return $this; + } + /** * Indicates which type of reference information to include on the COD return shipping label. * @@ -85,4 +112,16 @@ public function setReferenceIndicator($referenceIndicator) $this->values['ReferenceIndicator'] = $referenceIndicator; return $this; } + + /** + * Only used with multi-piece COD shipments sent in multiple transactions. Required on last transaction only. + * + * @param TrackingId $returnTrackingId + * @return $this + */ + public function setReturnTrackingId(TrackingId $returnTrackingId) + { + $this->values['ReturnTrackingId'] = $returnTrackingId; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/Contact.php b/src/FedEx/PickupService/ComplexType/Contact.php index 8ef2402d..1892eb8c 100644 --- a/src/FedEx/PickupService/ComplexType/Contact.php +++ b/src/FedEx/PickupService/ComplexType/Contact.php @@ -16,6 +16,7 @@ * @property string $CompanyName * @property string $PhoneNumber * @property string $PhoneExtension + * @property string $TollFreePhoneNumber * @property string $PagerNumber * @property string $FaxNumber * @property string $EMailAddress @@ -102,6 +103,18 @@ public function setPhoneExtension($phoneExtension) return $this; } + /** + * Identifies a toll free number, if any, associated with this contact. + * + * @param string $tollFreePhoneNumber + * @return $this + */ + public function setTollFreePhoneNumber($tollFreePhoneNumber) + { + $this->values['TollFreePhoneNumber'] = $tollFreePhoneNumber; + return $this; + } + /** * Identifies the pager number associated with this contact. * diff --git a/src/FedEx/PickupService/ComplexType/ContactAndAddress.php b/src/FedEx/PickupService/ComplexType/ContactAndAddress.php index 0cca2a29..f0abe654 100644 --- a/src/FedEx/PickupService/ComplexType/ContactAndAddress.php +++ b/src/FedEx/PickupService/ComplexType/ContactAndAddress.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for a person or company entitiy doing business with FedEx. + * ContactAndAddress * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class ContactAndAddress extends AbstractComplexType protected $name = 'ContactAndAddress'; /** - * Descriptive data identifying the point-of-contact person. + * Set Contact * * @param Contact $contact * @return $this @@ -36,7 +36,7 @@ public function setContact(Contact $contact) } /** - * The descriptive data for a physical location. + * Set Address * * @param Address $address * @return $this diff --git a/src/FedEx/PickupService/ComplexType/CreatePickupReply.php b/src/FedEx/PickupService/ComplexType/CreatePickupReply.php index cac4e5f2..26b18292 100644 --- a/src/FedEx/PickupService/ComplexType/CreatePickupReply.php +++ b/src/FedEx/PickupService/ComplexType/CreatePickupReply.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data returned to a client in response to a shipment pickup request. + * CreatePickupReply * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -33,7 +33,7 @@ class CreatePickupReply extends AbstractComplexType protected $name = 'CreatePickupReply'; /** - * Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. + * Set HighestSeverity * * @param \FedEx\PickupService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -45,7 +45,7 @@ public function setHighestSeverity($highestSeverity) } /** - * The descriptive data detailing the status of a sumbitted transaction. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -57,7 +57,7 @@ public function setNotifications(array $notifications) } /** - * Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -69,7 +69,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -81,7 +81,7 @@ public function setVersion(VersionId $version) } /** - * Identifies the confirmation number assigned by FedEx for the request. + * Set PickupConfirmationNumber * * @param string $pickupConfirmationNumber * @return $this @@ -93,7 +93,7 @@ public function setPickupConfirmationNumber($pickupConfirmationNumber) } /** - * Identifies the FedEx Location identifier responsible for processing the pickup of the package. + * Set Location * * @param string $location * @return $this @@ -153,7 +153,7 @@ public function setLastAccessTime($lastAccessTime) } /** - * Data resulting from the processing of an LTL Freight pickup request. + * Set CompletedFreightPickupDetail * * @param CompletedFreightPickupDetail $completedFreightPickupDetail * @return $this diff --git a/src/FedEx/PickupService/ComplexType/CreatePickupRequest.php b/src/FedEx/PickupService/ComplexType/CreatePickupRequest.php index 67d1e06a..539656a8 100644 --- a/src/FedEx/PickupService/ComplexType/CreatePickupRequest.php +++ b/src/FedEx/PickupService/ComplexType/CreatePickupRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data to schedule a FedEx package pickup request. + * CreatePickupRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -15,7 +15,9 @@ * @property TransactionDetail $TransactionDetail * @property VersionId $Version * @property AssociatedAccount $AssociatedAccountNumber + * @property string $TrackingNumber * @property PickupOriginDetail $OriginDetail + * @property \FedEx\PickupService\SimpleType\PickupServiceCategoryType|string $PickupServiceCategory * @property FreightPickupDetail $FreightPickupDetail * @property ExpressFreightPickupDetail $ExpressFreightDetail * @property int $PackageCount @@ -49,7 +51,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * The descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -61,7 +63,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -73,7 +75,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -97,7 +99,19 @@ public function setAssociatedAccountNumber(AssociatedAccount $associatedAccountN } /** - * Descriptive data about the origin of the shipment being picked up by FedEx. + * Specifies the tracking number to be used for processing a pickup for a return shipment. + * + * @param string $trackingNumber + * @return $this + */ + public function setTrackingNumber($trackingNumber) + { + $this->values['TrackingNumber'] = $trackingNumber; + return $this; + } + + /** + * Set OriginDetail * * @param PickupOriginDetail $originDetail * @return $this @@ -109,7 +123,19 @@ public function setOriginDetail(PickupOriginDetail $originDetail) } /** - * Descriptive data for a freight shipment being picked up by FedEx. This is element is only required when requesting a freight service pickup and should not be used for other types of pickups including express freight pickups. + * Set PickupServiceCategory + * + * @param \FedEx\PickupService\SimpleType\PickupServiceCategoryType|string $pickupServiceCategory + * @return $this + */ + public function setPickupServiceCategory($pickupServiceCategory) + { + $this->values['PickupServiceCategory'] = $pickupServiceCategory; + return $this; + } + + /** + * Set FreightPickupDetail * * @param FreightPickupDetail $freightPickupDetail * @return $this @@ -121,7 +147,7 @@ public function setFreightPickupDetail(FreightPickupDetail $freightPickupDetail) } /** - * Descriptive data for an express freight shipment being picked up by FedEx. This is element is only required when requesting a express freight service pickup and should not be used for other types of pickups. + * Set ExpressFreightDetail * * @param ExpressFreightPickupDetail $expressFreightDetail * @return $this @@ -133,7 +159,7 @@ public function setExpressFreightDetail(ExpressFreightPickupDetail $expressFreig } /** - * Identifies the number of packages that are being tendered to FedEx for this pickup request. + * Set PackageCount * * @param int $packageCount * @return $this @@ -145,7 +171,7 @@ public function setPackageCount($packageCount) } /** - * Identifies the total weight of the package or packages being tendered to FedEx for this pickup request. + * Set TotalWeight * * @param Weight $totalWeight * @return $this @@ -157,7 +183,7 @@ public function setTotalWeight(Weight $totalWeight) } /** - * Identifies the FedEx operating company (transportation) that is being sent the package pickup request. + * Set CarrierCode * * @param \FedEx\PickupService\SimpleType\CarrierCodeType|string $carrierCode * @return $this @@ -169,7 +195,7 @@ public function setCarrierCode($carrierCode) } /** - * Identifies the number of oversize packages that are being tendered to FedEx for this pickup request. Please refer to the FedEx Service Guide for package size limits to determine if a package is oversized for the service being shipped. + * Set OversizePackageCount * * @param int $oversizePackageCount * @return $this @@ -181,7 +207,7 @@ public function setOversizePackageCount($oversizePackageCount) } /** - * Identifies any remarks or comments to be passed to the FedEx courier picking up the shipment. + * This field is being deprecated and will not be removed in the June 2014 load. * * @param string $remarks * @return $this @@ -193,7 +219,7 @@ public function setRemarks($remarks) } /** - * Identifies the type of commodity being shipped. This element is required for an international shipment. + * Set CommodityDescription * * @param string $commodityDescription * @return $this diff --git a/src/FedEx/PickupService/ComplexType/CreditCard.php b/src/FedEx/PickupService/ComplexType/CreditCard.php deleted file mode 100644 index 9ec74269..00000000 --- a/src/FedEx/PickupService/ComplexType/CreditCard.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property string $Number - * @property \FedEx\PickupService\SimpleType\CreditCardType|string $CreditCardType - * @property string $ExpirationDate - * @property string $VerificationCode - * @property ParsedContactAndAddress $CreditCardHolder - - */ -class CreditCard extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CreditCard'; - - /** - * Set Number - * - * @param string $number - * @return $this - */ - public function setNumber($number) - { - $this->values['Number'] = $number; - return $this; - } - - /** - * Set CreditCardType - * - * @param \FedEx\PickupService\SimpleType\CreditCardType|string $creditCardType - * @return $this - */ - public function setCreditCardType($creditCardType) - { - $this->values['CreditCardType'] = $creditCardType; - return $this; - } - - /** - * Must be in one of the following formats: YYMM, YYYYMM, or YYYYMMDD. - * - * @param string $expirationDate - * @return $this - */ - public function setExpirationDate($expirationDate) - { - $this->values['ExpirationDate'] = $expirationDate; - return $this; - } - - /** - * Set VerificationCode - * - * @param string $verificationCode - * @return $this - */ - public function setVerificationCode($verificationCode) - { - $this->values['VerificationCode'] = $verificationCode; - return $this; - } - - /** - * Set CreditCardHolder - * - * @param ParsedContactAndAddress $creditCardHolder - * @return $this - */ - public function setCreditCardHolder(ParsedContactAndAddress $creditCardHolder) - { - $this->values['CreditCardHolder'] = $creditCardHolder; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/CreditCardTransactionDetail.php b/src/FedEx/PickupService/ComplexType/CreditCardTransactionDetail.php deleted file mode 100644 index 3179d493..00000000 --- a/src/FedEx/PickupService/ComplexType/CreditCardTransactionDetail.php +++ /dev/null @@ -1,62 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property string $AuthorizationId - * @property \FedEx\PickupService\SimpleType\CreditCardAuthorizationType|string $AuthorizationType - * @property CreditFraudDetectionDetail $FraudDetectionDetail - - */ -class CreditCardTransactionDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CreditCardTransactionDetail'; - - /** - * Set AuthorizationId - * - * @param string $authorizationId - * @return $this - */ - public function setAuthorizationId($authorizationId) - { - $this->values['AuthorizationId'] = $authorizationId; - return $this; - } - - /** - * Set AuthorizationType - * - * @param \FedEx\PickupService\SimpleType\CreditCardAuthorizationType|string $authorizationType - * @return $this - */ - public function setAuthorizationType($authorizationType) - { - $this->values['AuthorizationType'] = $authorizationType; - return $this; - } - - /** - * Set FraudDetectionDetail - * - * @param CreditFraudDetectionDetail $fraudDetectionDetail - * @return $this - */ - public function setFraudDetectionDetail(CreditFraudDetectionDetail $fraudDetectionDetail) - { - $this->values['FraudDetectionDetail'] = $fraudDetectionDetail; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/CreditFraudDetectionDetail.php b/src/FedEx/PickupService/ComplexType/CreditFraudDetectionDetail.php deleted file mode 100644 index bf1007ba..00000000 --- a/src/FedEx/PickupService/ComplexType/CreditFraudDetectionDetail.php +++ /dev/null @@ -1,62 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property string $IpAddress - * @property boolean $ClientCookiesEnabled - * @property string $DevicePrint - - */ -class CreditFraudDetectionDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CreditFraudDetectionDetail'; - - /** - * Set IpAddress - * - * @param string $ipAddress - * @return $this - */ - public function setIpAddress($ipAddress) - { - $this->values['IpAddress'] = $ipAddress; - return $this; - } - - /** - * Set ClientCookiesEnabled - * - * @param boolean $clientCookiesEnabled - * @return $this - */ - public function setClientCookiesEnabled($clientCookiesEnabled) - { - $this->values['ClientCookiesEnabled'] = $clientCookiesEnabled; - return $this; - } - - /** - * Set DevicePrint - * - * @param string $devicePrint - * @return $this - */ - public function setDevicePrint($devicePrint) - { - $this->values['DevicePrint'] = $devicePrint; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/DateRange.php b/src/FedEx/PickupService/ComplexType/DateRange.php index d4ece0b7..6d34d230 100644 --- a/src/FedEx/PickupService/ComplexType/DateRange.php +++ b/src/FedEx/PickupService/ComplexType/DateRange.php @@ -24,7 +24,7 @@ class DateRange extends AbstractComplexType protected $name = 'DateRange'; /** - * The beginning date in a date range. + * Set Begins * * @param string $begins * @return $this @@ -36,7 +36,7 @@ public function setBegins($begins) } /** - * The end date in a date range. + * Set Ends * * @param string $ends * @return $this diff --git a/src/FedEx/PickupService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php b/src/FedEx/PickupService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php new file mode 100644 index 00000000..5731bc48 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property Party $Recipient + * @property TrackingId $TrackingId + + */ +class DeliveryOnInvoiceAcceptanceDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DeliveryOnInvoiceAcceptanceDetail'; + + /** + * Set Recipient + * + * @param Party $recipient + * @return $this + */ + public function setRecipient(Party $recipient) + { + $this->values['Recipient'] = $recipient; + return $this; + } + + /** + * Specifies the tracking id for the return, if preassigned. + * + * @param TrackingId $trackingId + * @return $this + */ + public function setTrackingId(TrackingId $trackingId) + { + $this->values['TrackingId'] = $trackingId; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/Dimensions.php b/src/FedEx/PickupService/ComplexType/Dimensions.php index 3aac0f96..2c250ca3 100644 --- a/src/FedEx/PickupService/ComplexType/Dimensions.php +++ b/src/FedEx/PickupService/ComplexType/Dimensions.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data detailing the length, width, and height of a package. + * Dimensions * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class Dimensions extends AbstractComplexType protected $name = 'Dimensions'; /** - * Identifies the length of the package. + * Set Length * * @param int $length * @return $this @@ -38,7 +38,7 @@ public function setLength($length) } /** - * Identifies the width of the package. + * Set Width * * @param int $width * @return $this @@ -50,7 +50,7 @@ public function setWidth($width) } /** - * Identifies the height of the package. + * Set Height * * @param int $height * @return $this @@ -62,7 +62,7 @@ public function setHeight($height) } /** - * Identifies the unit of measure associated with a dimensional values. See LinearUnits for valid values. + * Set Units * * @param \FedEx\PickupService\SimpleType\LinearUnits|string $units * @return $this diff --git a/src/FedEx/PickupService/ComplexType/EMailDetail.php b/src/FedEx/PickupService/ComplexType/EMailDetail.php new file mode 100644 index 00000000..a7a830d0 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/EMailDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property string $EmailAddress + * @property string $Name + + */ +class EMailDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EMailDetail'; + + /** + * Set EmailAddress + * + * @param string $emailAddress + * @return $this + */ + public function setEmailAddress($emailAddress) + { + $this->values['EmailAddress'] = $emailAddress; + return $this; + } + + /** + * Specifies the name associated with the email address. + * + * @param string $name + * @return $this + */ + public function setName($name) + { + $this->values['Name'] = $name; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/EMailLabelDetail.php b/src/FedEx/PickupService/ComplexType/EMailLabelDetail.php index cceb47fa..0727d6e3 100644 --- a/src/FedEx/PickupService/ComplexType/EMailLabelDetail.php +++ b/src/FedEx/PickupService/ComplexType/EMailLabelDetail.php @@ -4,14 +4,14 @@ use FedEx\AbstractComplexType; /** - * Describes specific information about the email label shipment. + * EMailLabelDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service * - * @property string $NotificationEMailAddress - * @property string $NotificationMessage + * @property string $Message + * @property EMailRecipient[] $Recipients */ class EMailLabelDetail extends AbstractComplexType @@ -24,26 +24,26 @@ class EMailLabelDetail extends AbstractComplexType protected $name = 'EMailLabelDetail'; /** - * Notification email will be sent to this email address + * Content of the email message. * - * @param string $notificationEMailAddress + * @param string $message * @return $this */ - public function setNotificationEMailAddress($notificationEMailAddress) + public function setMessage($message) { - $this->values['NotificationEMailAddress'] = $notificationEMailAddress; + $this->values['Message'] = $message; return $this; } /** - * Message to be sent in the notification email + * Set Recipients * - * @param string $notificationMessage + * @param EMailRecipient[] $recipients * @return $this */ - public function setNotificationMessage($notificationMessage) + public function setRecipients(array $recipients) { - $this->values['NotificationMessage'] = $notificationMessage; + $this->values['Recipients'] = $recipients; return $this; } } diff --git a/src/FedEx/PickupService/ComplexType/EMailNotificationDetail.php b/src/FedEx/PickupService/ComplexType/EMailNotificationDetail.php deleted file mode 100644 index 0eb9f64b..00000000 --- a/src/FedEx/PickupService/ComplexType/EMailNotificationDetail.php +++ /dev/null @@ -1,62 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property \FedEx\PickupService\SimpleType\EMailNotificationAggregationType|string $AggregationType - * @property string $PersonalMessage - * @property EMailNotificationRecipient[] $Recipients - - */ -class EMailNotificationDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationDetail'; - - /** - * Specifies whether/how email notifications are grouped. - * - * @param \FedEx\PickupService\SimpleType\EMailNotificationAggregationType|string $aggregationType - * @return $this - */ - public function setAggregationType($aggregationType) - { - $this->values['AggregationType'] = $aggregationType; - return $this; - } - - /** - * A message that will be included in the email notifications - * - * @param string $personalMessage - * @return $this - */ - public function setPersonalMessage($personalMessage) - { - $this->values['PersonalMessage'] = $personalMessage; - return $this; - } - - /** - * Information describing the destination of the email, format of the email and events to be notified on - * - * @param EMailNotificationRecipient[] $recipients - * @return $this - */ - public function setRecipients(array $recipients) - { - $this->values['Recipients'] = $recipients; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/EMailNotificationRecipient.php b/src/FedEx/PickupService/ComplexType/EMailNotificationRecipient.php deleted file mode 100644 index c160e2bc..00000000 --- a/src/FedEx/PickupService/ComplexType/EMailNotificationRecipient.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property \FedEx\PickupService\SimpleType\EMailNotificationRecipientType|string $EMailNotificationRecipientType - * @property string $EMailAddress - * @property \FedEx\PickupService\SimpleType\EMailNotificationEventType|string[] $NotificationEventsRequested - * @property \FedEx\PickupService\SimpleType\EMailNotificationFormatType|string $Format - * @property Localization $Localization - - */ -class EMailNotificationRecipient extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationRecipient'; - - /** - * Identifies the relationship this email recipient has to the shipment. - * - * @param \FedEx\PickupService\SimpleType\EMailNotificationRecipientType|string $eMailNotificationRecipientType - * @return $this - */ - public function setEMailNotificationRecipientType($eMailNotificationRecipientType) - { - $this->values['EMailNotificationRecipientType'] = $eMailNotificationRecipientType; - return $this; - } - - /** - * The email address to send the notification to - * - * @param string $eMailAddress - * @return $this - */ - public function setEMailAddress($eMailAddress) - { - $this->values['EMailAddress'] = $eMailAddress; - return $this; - } - - /** - * The types of email notifications being requested for this recipient. - * - * @param \FedEx\PickupService\SimpleType\EMailNotificationEventType[]|string[] $notificationEventsRequested - * @return $this - */ - public function setNotificationEventsRequested(array $notificationEventsRequested) - { - $this->values['NotificationEventsRequested'] = $notificationEventsRequested; - return $this; - } - - /** - * The format of the email notification. - * - * @param \FedEx\PickupService\SimpleType\EMailNotificationFormatType|string $format - * @return $this - */ - public function setFormat($format) - { - $this->values['Format'] = $format; - return $this; - } - - /** - * The language/locale to be used in this email notification. - * - * @param Localization $localization - * @return $this - */ - public function setLocalization(Localization $localization) - { - $this->values['Localization'] = $localization; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/EMailRecipient.php b/src/FedEx/PickupService/ComplexType/EMailRecipient.php new file mode 100644 index 00000000..523821e7 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/EMailRecipient.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property string $EmailAddress + * @property \FedEx\PickupService\SimpleType\AccessorRoleType|string $Role + * @property EmailOptionsRequested $OptionsRequested + * @property Localization $Localization + + */ +class EMailRecipient extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EMailRecipient'; + + /** + * EMail address of the recipient. + * + * @param string $emailAddress + * @return $this + */ + public function setEmailAddress($emailAddress) + { + $this->values['EmailAddress'] = $emailAddress; + return $this; + } + + /** + * The relationship that the customer has to the pending shipment. + * + * @param \FedEx\PickupService\SimpleType\AccessorRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Specifies how the email notification for the pending shipment need to be processed. + * + * @param EmailOptionsRequested $optionsRequested + * @return $this + */ + public function setOptionsRequested(EmailOptionsRequested $optionsRequested) + { + $this->values['OptionsRequested'] = $optionsRequested; + return $this; + } + + /** + * Localization and language details specified by the recipient of the EMail. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/EmailOptionsRequested.php b/src/FedEx/PickupService/ComplexType/EmailOptionsRequested.php new file mode 100644 index 00000000..7a511e1d --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/EmailOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\EmailOptionType|string[] $Options + + */ +class EmailOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EmailOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\PickupService\SimpleType\EmailOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/EtdDetail.php b/src/FedEx/PickupService/ComplexType/EtdDetail.php index 4e7d4e64..a88a1511 100644 --- a/src/FedEx/PickupService/ComplexType/EtdDetail.php +++ b/src/FedEx/PickupService/ComplexType/EtdDetail.php @@ -11,6 +11,7 @@ * @subpackage Pickup Service * * @property \FedEx\PickupService\SimpleType\EtdConfirmationType|string $Confirmation + * @property \FedEx\PickupService\SimpleType\EtdAttributeType|string[] $Attributes * @property \FedEx\PickupService\SimpleType\RequestedShippingDocumentType|string[] $RequestedDocumentCopies * @property UploadDocumentDetail[] $Documents * @property UploadDocumentReferenceDetail[] $DocumentReferences @@ -37,6 +38,18 @@ public function setConfirmation($confirmation) return $this; } + /** + * Set Attributes + * + * @param \FedEx\PickupService\SimpleType\EtdAttributeType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } + /** * Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. * diff --git a/src/FedEx/PickupService/ComplexType/ExpressFreightPickupDetail.php b/src/FedEx/PickupService/ComplexType/ExpressFreightPickupDetail.php index 470a60c4..81eceb38 100644 --- a/src/FedEx/PickupService/ComplexType/ExpressFreightPickupDetail.php +++ b/src/FedEx/PickupService/ComplexType/ExpressFreightPickupDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data regarding an express freight service pickup request. + * ExpressFreightPickupDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -27,7 +27,7 @@ class ExpressFreightPickupDetail extends AbstractComplexType protected $name = 'ExpressFreightPickupDetail'; /** - * Identifies the collection of available FedEx transportation service options. Must be a valid FedEx freight service identifier. + * Set Service * * @param \FedEx\PickupService\SimpleType\ServiceType|string $service * @return $this @@ -39,7 +39,7 @@ public function setService($service) } /** - * Identifies the FedEx freight booking number. This element should contain numeric values only. + * Set BookingNumber * * @param string $bookingNumber * @return $this @@ -51,7 +51,7 @@ public function setBookingNumber($bookingNumber) } /** - * Descriptive data detailing the length, width, and height of the freight package or shipment being picked up by FedEx. + * Set Dimensions * * @param Dimensions $dimensions * @return $this @@ -63,7 +63,7 @@ public function setDimensions(Dimensions $dimensions) } /** - * Identifies the type of truck that is needed for FedEx to pick up the freight shipment. See TruckType for valid values. + * Set TruckType * * @param \FedEx\PickupService\SimpleType\TruckType|string $truckType * @return $this @@ -75,7 +75,7 @@ public function setTruckType($truckType) } /** - * Identifies the tailer size needed for FedEx to pick up a freight shipment. See TrailerSizeType for valid values. + * Set TrailerSize * * @param \FedEx\PickupService\SimpleType\TrailerSizeType|string $trailerSize * @return $this diff --git a/src/FedEx/PickupService/ComplexType/FaxDetail.php b/src/FedEx/PickupService/ComplexType/FaxDetail.php new file mode 100644 index 00000000..ddfbd895 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/FaxDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property string $PhoneNumber + + */ +class FaxDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'FaxDetail'; + + /** + * Set PhoneNumber + * + * @param string $phoneNumber + * @return $this + */ + public function setPhoneNumber($phoneNumber) + { + $this->values['PhoneNumber'] = $phoneNumber; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/FlatbedTrailerDetail.php b/src/FedEx/PickupService/ComplexType/FlatbedTrailerDetail.php index 3d04b174..5f0693ce 100644 --- a/src/FedEx/PickupService/ComplexType/FlatbedTrailerDetail.php +++ b/src/FedEx/PickupService/ComplexType/FlatbedTrailerDetail.php @@ -23,7 +23,7 @@ class FlatbedTrailerDetail extends AbstractComplexType protected $name = 'FlatbedTrailerDetail'; /** - * Specifies the optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. + * Set Options * * @param \FedEx\PickupService\SimpleType\FlatbedTrailerOption[]|string[] $options * @return $this diff --git a/src/FedEx/PickupService/ComplexType/FreightGuaranteeDetail.php b/src/FedEx/PickupService/ComplexType/FreightGuaranteeDetail.php index cc3c4905..546d42b1 100644 --- a/src/FedEx/PickupService/ComplexType/FreightGuaranteeDetail.php +++ b/src/FedEx/PickupService/ComplexType/FreightGuaranteeDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data regarding a FedEx freight service pickup request. + * FreightGuaranteeDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,6 +12,7 @@ * * @property \FedEx\PickupService\SimpleType\FreightGuaranteeType|string $Type * @property string $Date + * @property string $Time */ class FreightGuaranteeDetail extends AbstractComplexType @@ -24,7 +25,7 @@ class FreightGuaranteeDetail extends AbstractComplexType protected $name = 'FreightGuaranteeDetail'; /** - * Description of Guarantee + * Set Type * * @param \FedEx\PickupService\SimpleType\FreightGuaranteeType|string $type * @return $this @@ -46,4 +47,16 @@ public function setDate($date) $this->values['Date'] = $date; return $this; } + + /** + * Time for GUARANTEED_TIME only. + * + * @param string $time + * @return $this + */ + public function setTime($time) + { + $this->values['Time'] = $time; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/FreightPickupDetail.php b/src/FedEx/PickupService/ComplexType/FreightPickupDetail.php index ef7d7260..c1491067 100644 --- a/src/FedEx/PickupService/ComplexType/FreightPickupDetail.php +++ b/src/FedEx/PickupService/ComplexType/FreightPickupDetail.php @@ -4,15 +4,16 @@ use FedEx\AbstractComplexType; /** - * Descriptive data regarding a FedEx freight service pickup request. + * FreightPickupDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service * * @property Contact $ApprovedBy - * @property \FedEx\PickupService\SimpleType\FreightAccountPaymentType|string $Payment + * @property \FedEx\PickupService\SimpleType\PaymentType|string $Payment * @property \FedEx\PickupService\SimpleType\FreightShipmentRoleType|string $Role + * @property Party $AlternateBilling * @property Contact $SubmittedBy * @property FreightPickupLineItem[] $LineItems @@ -39,9 +40,9 @@ public function setApprovedBy(Contact $approvedBy) } /** - * Identifies the type of payment to be tendered for the pickup. + * Set Payment * - * @param \FedEx\PickupService\SimpleType\FreightAccountPaymentType|string $payment + * @param \FedEx\PickupService\SimpleType\PaymentType|string $payment * @return $this */ public function setPayment($payment) @@ -51,7 +52,7 @@ public function setPayment($payment) } /** - * Indicates the role of the party submitting the transaction. + * Set Role * * @param \FedEx\PickupService\SimpleType\FreightShipmentRoleType|string $role * @return $this @@ -63,7 +64,19 @@ public function setRole($role) } /** - * Contact Information of the person submitting the pickup. + * Used in connection with "Send Bill To" (SBT) identification of customer's account used for billing. + * + * @param Party $alternateBilling + * @return $this + */ + public function setAlternateBilling(Party $alternateBilling) + { + $this->values['AlternateBilling'] = $alternateBilling; + return $this; + } + + /** + * Set SubmittedBy * * @param Contact $submittedBy * @return $this @@ -75,7 +88,7 @@ public function setSubmittedBy(Contact $submittedBy) } /** - * Identifies the details about the contents of the shipments to be picked up. + * Set LineItems * * @param FreightPickupLineItem[] $lineItems * @return $this diff --git a/src/FedEx/PickupService/ComplexType/FreightPickupLineItem.php b/src/FedEx/PickupService/ComplexType/FreightPickupLineItem.php index 1f9fc6eb..4d1cb2f8 100644 --- a/src/FedEx/PickupService/ComplexType/FreightPickupLineItem.php +++ b/src/FedEx/PickupService/ComplexType/FreightPickupLineItem.php @@ -4,12 +4,13 @@ use FedEx\AbstractComplexType; /** - * Identifies details about the contents of the shipment to be picked up. + * FreightPickupLineItem * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service * + * @property string $TrackingNumber * @property \FedEx\PickupService\SimpleType\ServiceType|string $Service * @property int $SequenceNumber * @property Address $Destination @@ -20,7 +21,6 @@ * @property string $PurchaseOrderNumber * @property boolean $JustOneMore * @property ShipmentSpecialServicesRequested $SpecialServicesRequested - * @property FreightGuaranteeDetail $FreightGuaranteeDetail * @property string $Description */ @@ -33,6 +33,18 @@ class FreightPickupLineItem extends AbstractComplexType */ protected $name = 'FreightPickupLineItem'; + /** + * Set TrackingNumber + * + * @param string $trackingNumber + * @return $this + */ + public function setTrackingNumber($trackingNumber) + { + $this->values['TrackingNumber'] = $trackingNumber; + return $this; + } + /** * Set Service * @@ -58,7 +70,7 @@ public function setSequenceNumber($sequenceNumber) } /** - * Identifies the destination of the shipment. + * Set Destination * * @param Address $destination * @return $this @@ -70,7 +82,7 @@ public function setDestination(Address $destination) } /** - * Identifies the physical packaging of the shipment. + * Set Packaging * * @param \FedEx\PickupService\SimpleType\PhysicalPackagingType|string $packaging * @return $this @@ -82,7 +94,7 @@ public function setPackaging($packaging) } /** - * Identifies number of items contained in the packaging. + * Set Pieces * * @param int $pieces * @return $this @@ -94,7 +106,7 @@ public function setPieces($pieces) } /** - * Identifies the total weight of the item being tendered to FedEx for this pickup request. + * Set Weight * * @param Weight $weight * @return $this @@ -106,7 +118,7 @@ public function setWeight(Weight $weight) } /** - * Identifies number of items to be moved. + * Set TotalHandlingUnits * * @param int $totalHandlingUnits * @return $this @@ -142,7 +154,7 @@ public function setJustOneMore($justOneMore) } /** - * These special services are available at the shipment level for some or all service types. If the shipper is requesting a special service which requires additional data (such as the COD amount), the shipment special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. + * Set SpecialServicesRequested * * @param ShipmentSpecialServicesRequested $specialServicesRequested * @return $this @@ -154,19 +166,7 @@ public function setSpecialServicesRequested(ShipmentSpecialServicesRequested $sp } /** - * Identifies the delivery guarantee information. - * - * @param FreightGuaranteeDetail $freightGuaranteeDetail - * @return $this - */ - public function setFreightGuaranteeDetail(FreightGuaranteeDetail $freightGuaranteeDetail) - { - $this->values['FreightGuaranteeDetail'] = $freightGuaranteeDetail; - return $this; - } - - /** - * Describes the contents of the package. + * Set Description * * @param string $description * @return $this diff --git a/src/FedEx/PickupService/ComplexType/HoldAtLocationDetail.php b/src/FedEx/PickupService/ComplexType/HoldAtLocationDetail.php index 96b43376..82bd744b 100644 --- a/src/FedEx/PickupService/ComplexType/HoldAtLocationDetail.php +++ b/src/FedEx/PickupService/ComplexType/HoldAtLocationDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. + * HoldAtLocationDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/ComplexType/HomeDeliveryPremiumDetail.php b/src/FedEx/PickupService/ComplexType/HomeDeliveryPremiumDetail.php index 5935fb11..0a537b21 100644 --- a/src/FedEx/PickupService/ComplexType/HomeDeliveryPremiumDetail.php +++ b/src/FedEx/PickupService/ComplexType/HomeDeliveryPremiumDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required by FedEx for home delivery services. + * HomeDeliveryPremiumDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -25,7 +25,7 @@ class HomeDeliveryPremiumDetail extends AbstractComplexType protected $name = 'HomeDeliveryPremiumDetail'; /** - * The type of Home Delivery Premium service being requested. + * Set HomeDeliveryPremiumType * * @param \FedEx\PickupService\SimpleType\HomeDeliveryPremiumType|string $homeDeliveryPremiumType * @return $this @@ -37,7 +37,7 @@ public function setHomeDeliveryPremiumType($homeDeliveryPremiumType) } /** - * Required for Date Certain Home Delivery. + * Set Date * * @param string $date * @return $this @@ -49,7 +49,7 @@ public function setDate($date) } /** - * Required for Date Certain and Appointment Home Delivery. + * Set PhoneNumber * * @param string $phoneNumber * @return $this diff --git a/src/FedEx/PickupService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php b/src/FedEx/PickupService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php new file mode 100644 index 00000000..98c778e5 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property string $LicenseOrExemptionNumber + + */ +class InternationalTrafficInArmsRegulationsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'InternationalTrafficInArmsRegulationsDetail'; + + /** + * Set LicenseOrExemptionNumber + * + * @param string $licenseOrExemptionNumber + * @return $this + */ + public function setLicenseOrExemptionNumber($licenseOrExemptionNumber) + { + $this->values['LicenseOrExemptionNumber'] = $licenseOrExemptionNumber; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/Money.php b/src/FedEx/PickupService/ComplexType/Money.php index 8ee6617c..e3f84b24 100644 --- a/src/FedEx/PickupService/ComplexType/Money.php +++ b/src/FedEx/PickupService/ComplexType/Money.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the medium of exchange for FedEx services. + * Money * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class Money extends AbstractComplexType protected $name = 'Money'; /** - * Identifies the currency of the monetary amount. + * Set Currency * * @param string $currency * @return $this @@ -36,7 +36,7 @@ public function setCurrency($currency) } /** - * Identifies the monetary amount. + * Set Amount * * @param float $amount * @return $this diff --git a/src/FedEx/PickupService/ComplexType/Notification.php b/src/FedEx/PickupService/ComplexType/Notification.php index 90de04d7..f593e62a 100644 --- a/src/FedEx/PickupService/ComplexType/Notification.php +++ b/src/FedEx/PickupService/ComplexType/Notification.php @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/PickupService/ComplexType/NotificationDetail.php b/src/FedEx/PickupService/ComplexType/NotificationDetail.php new file mode 100644 index 00000000..a39b80c3 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/NotificationDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\NotificationType|string $NotificationType + * @property EMailDetail $EmailDetail + * @property FaxDetail $FaxDetail + * @property SmsDetail $SmsDetail + * @property Localization $Localization + + */ +class NotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NotificationDetail'; + + /** + * Indicates the type of notification that will be sent. + * + * @param \FedEx\PickupService\SimpleType\NotificationType|string $notificationType + * @return $this + */ + public function setNotificationType($notificationType) + { + $this->values['NotificationType'] = $notificationType; + return $this; + } + + /** + * Specifies the email notification details. + * + * @param EMailDetail $emailDetail + * @return $this + */ + public function setEmailDetail(EMailDetail $emailDetail) + { + $this->values['EmailDetail'] = $emailDetail; + return $this; + } + + /** + * Specifies the fax notification details. + * + * @param FaxDetail $faxDetail + * @return $this + */ + public function setFaxDetail(FaxDetail $faxDetail) + { + $this->values['FaxDetail'] = $faxDetail; + return $this; + } + + /** + * Specifies the SMS notification details. + * + * @param SmsDetail $smsDetail + * @return $this + */ + public function setSmsDetail(SmsDetail $smsDetail) + { + $this->values['SmsDetail'] = $smsDetail; + return $this; + } + + /** + * Specifies the localization for this notification. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ParsedContact.php b/src/FedEx/PickupService/ComplexType/ParsedContact.php deleted file mode 100644 index fa981c13..00000000 --- a/src/FedEx/PickupService/ComplexType/ParsedContact.php +++ /dev/null @@ -1,114 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property ParsedPersonName $PersonName - * @property string $Title - * @property string $CompanyName - * @property string $PhoneNumber - * @property string $PagerNumber - * @property string $FaxNumber - * @property string $EMailAddress - - */ -class ParsedContact extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ParsedContact'; - - /** - * The name of the person. - * - * @param ParsedPersonName $personName - * @return $this - */ - public function setPersonName(ParsedPersonName $personName) - { - $this->values['PersonName'] = $personName; - return $this; - } - - /** - * The title of the person. - * - * @param string $title - * @return $this - */ - public function setTitle($title) - { - $this->values['Title'] = $title; - return $this; - } - - /** - * The name of the company, this person is working for. - * - * @param string $companyName - * @return $this - */ - public function setCompanyName($companyName) - { - $this->values['CompanyName'] = $companyName; - return $this; - } - - /** - * Phone number of the person. - * - * @param string $phoneNumber - * @return $this - */ - public function setPhoneNumber($phoneNumber) - { - $this->values['PhoneNumber'] = $phoneNumber; - return $this; - } - - /** - * Pager number of the person. - * - * @param string $pagerNumber - * @return $this - */ - public function setPagerNumber($pagerNumber) - { - $this->values['PagerNumber'] = $pagerNumber; - return $this; - } - - /** - * Fax number of the person. - * - * @param string $faxNumber - * @return $this - */ - public function setFaxNumber($faxNumber) - { - $this->values['FaxNumber'] = $faxNumber; - return $this; - } - - /** - * Email address information. - * - * @param string $eMailAddress - * @return $this - */ - public function setEMailAddress($eMailAddress) - { - $this->values['EMailAddress'] = $eMailAddress; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/ParsedContactAndAddress.php b/src/FedEx/PickupService/ComplexType/ParsedContactAndAddress.php deleted file mode 100644 index 5211d2c3..00000000 --- a/src/FedEx/PickupService/ComplexType/ParsedContactAndAddress.php +++ /dev/null @@ -1,49 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property ParsedContact $Contact - * @property Address $Address - - */ -class ParsedContactAndAddress extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ParsedContactAndAddress'; - - /** - * Set Contact - * - * @param ParsedContact $contact - * @return $this - */ - public function setContact(ParsedContact $contact) - { - $this->values['Contact'] = $contact; - return $this; - } - - /** - * Set Address - * - * @param Address $address - * @return $this - */ - public function setAddress(Address $address) - { - $this->values['Address'] = $address; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/ParsedPersonName.php b/src/FedEx/PickupService/ComplexType/ParsedPersonName.php deleted file mode 100644 index 1388cd64..00000000 --- a/src/FedEx/PickupService/ComplexType/ParsedPersonName.php +++ /dev/null @@ -1,62 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - * - * @property string $FirstName - * @property string $MiddleName - * @property string $LastName - - */ -class ParsedPersonName extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ParsedPersonName'; - - /** - * The First name of the person. - * - * @param string $firstName - * @return $this - */ - public function setFirstName($firstName) - { - $this->values['FirstName'] = $firstName; - return $this; - } - - /** - * The middle name of the person. - * - * @param string $middleName - * @return $this - */ - public function setMiddleName($middleName) - { - $this->values['MiddleName'] = $middleName; - return $this; - } - - /** - * The last name of the person. - * - * @param string $lastName - * @return $this - */ - public function setLastName($lastName) - { - $this->values['LastName'] = $lastName; - return $this; - } -} diff --git a/src/FedEx/PickupService/ComplexType/Party.php b/src/FedEx/PickupService/ComplexType/Party.php index 90fb2a13..477a1a7e 100644 --- a/src/FedEx/PickupService/ComplexType/Party.php +++ b/src/FedEx/PickupService/ComplexType/Party.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for a person or company entitiy doing business with FedEx. + * Party * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class Party extends AbstractComplexType protected $name = 'Party'; /** - * Identifies the FedEx account number assigned to the customer. + * Set AccountNumber * * @param string $accountNumber * @return $this @@ -50,7 +50,7 @@ public function setTins(array $tins) } /** - * Descriptive data identifying the point-of-contact person. + * Set Contact * * @param Contact $contact * @return $this @@ -62,7 +62,7 @@ public function setContact(Contact $contact) } /** - * The descriptive data for a physical location. + * Set Address * * @param Address $address * @return $this diff --git a/src/FedEx/PickupService/ComplexType/Payment.php b/src/FedEx/PickupService/ComplexType/Payment.php index 9c2c5813..08f47cab 100644 --- a/src/FedEx/PickupService/ComplexType/Payment.php +++ b/src/FedEx/PickupService/ComplexType/Payment.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the monetary compensation given to FedEx for services rendered to the customer. + * Payment * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,8 +12,6 @@ * * @property \FedEx\PickupService\SimpleType\PaymentType|string $PaymentType * @property Payor $Payor - * @property CreditCard $CreditCard - * @property CreditCardTransactionDetail $CreditCardTransactionDetail * @property Money $Amount */ @@ -27,7 +25,7 @@ class Payment extends AbstractComplexType protected $name = 'Payment'; /** - * Identifies the method of payment for a service. See PaymentType for list of valid enumerated values. + * Set PaymentType * * @param \FedEx\PickupService\SimpleType\PaymentType|string $paymentType * @return $this @@ -39,7 +37,7 @@ public function setPaymentType($paymentType) } /** - * Descriptive data identifying the party responsible for payment for a service. + * Set Payor * * @param Payor $payor * @return $this @@ -51,31 +49,7 @@ public function setPayor(Payor $payor) } /** - * Set CreditCard - * - * @param CreditCard $creditCard - * @return $this - */ - public function setCreditCard(CreditCard $creditCard) - { - $this->values['CreditCard'] = $creditCard; - return $this; - } - - /** - * Set CreditCardTransactionDetail - * - * @param CreditCardTransactionDetail $creditCardTransactionDetail - * @return $this - */ - public function setCreditCardTransactionDetail(CreditCardTransactionDetail $creditCardTransactionDetail) - { - $this->values['CreditCardTransactionDetail'] = $creditCardTransactionDetail; - return $this; - } - - /** - * Descriptive data for the payor's cash payment. + * Set Amount * * @param Money $amount * @return $this diff --git a/src/FedEx/PickupService/ComplexType/Payor.php b/src/FedEx/PickupService/ComplexType/Payor.php index bb2127fb..f608a1a8 100644 --- a/src/FedEx/PickupService/ComplexType/Payor.php +++ b/src/FedEx/PickupService/ComplexType/Payor.php @@ -4,14 +4,13 @@ use FedEx\AbstractComplexType; /** - * The descriptive data identifying the party responsible for payment for a service. + * Payor * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service * - * @property string $AccountNumber - * @property string $CountryCode + * @property Party $ResponsibleParty * @property AssociatedAccount[] $AssociatedAccounts */ @@ -25,26 +24,14 @@ class Payor extends AbstractComplexType protected $name = 'Payor'; /** - * Identifies the FedEx account number assigned to the payor. + * Set ResponsibleParty * - * @param string $accountNumber + * @param Party $responsibleParty * @return $this */ - public function setAccountNumber($accountNumber) + public function setResponsibleParty(Party $responsibleParty) { - $this->values['AccountNumber'] = $accountNumber; - return $this; - } - - /** - * Identifies the country of the payor. - * - * @param string $countryCode - * @return $this - */ - public function setCountryCode($countryCode) - { - $this->values['CountryCode'] = $countryCode; + $this->values['ResponsibleParty'] = $responsibleParty; return $this; } diff --git a/src/FedEx/PickupService/ComplexType/PendingShipmentDetail.php b/src/FedEx/PickupService/ComplexType/PendingShipmentDetail.php index d6fdeb30..e356b5bb 100644 --- a/src/FedEx/PickupService/ComplexType/PendingShipmentDetail.php +++ b/src/FedEx/PickupService/ComplexType/PendingShipmentDetail.php @@ -13,6 +13,9 @@ * @property \FedEx\PickupService\SimpleType\PendingShipmentType|string $Type * @property string $ExpirationDate * @property EMailLabelDetail $EmailLabelDetail + * @property PendingShipmentProcessingOptionsRequested $ProcessingOptions + * @property RecommendedDocumentSpecification $RecommendedDocumentSpecification + * @property UploadDocumentReferenceDetail[] $DocumentReferences */ class PendingShipmentDetail extends AbstractComplexType @@ -25,7 +28,7 @@ class PendingShipmentDetail extends AbstractComplexType protected $name = 'PendingShipmentDetail'; /** - * Identifies the type of FedEx pending shipment + * Set Type * * @param \FedEx\PickupService\SimpleType\PendingShipmentType|string $type * @return $this @@ -59,4 +62,40 @@ public function setEmailLabelDetail(EMailLabelDetail $emailLabelDetail) $this->values['EmailLabelDetail'] = $emailLabelDetail; return $this; } + + /** + * Set ProcessingOptions + * + * @param PendingShipmentProcessingOptionsRequested $processingOptions + * @return $this + */ + public function setProcessingOptions(PendingShipmentProcessingOptionsRequested $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } + + /** + * These are documents that are recommended to be included with the shipment. + * + * @param RecommendedDocumentSpecification $recommendedDocumentSpecification + * @return $this + */ + public function setRecommendedDocumentSpecification(RecommendedDocumentSpecification $recommendedDocumentSpecification) + { + $this->values['RecommendedDocumentSpecification'] = $recommendedDocumentSpecification; + return $this; + } + + /** + * Upload document details provided by the initator of the shipment. + * + * @param UploadDocumentReferenceDetail[] $documentReferences + * @return $this + */ + public function setDocumentReferences(array $documentReferences) + { + $this->values['DocumentReferences'] = $documentReferences; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/PendingShipmentProcessingOptionsRequested.php b/src/FedEx/PickupService/ComplexType/PendingShipmentProcessingOptionsRequested.php new file mode 100644 index 00000000..cf776bba --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/PendingShipmentProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\PendingShipmentProcessingOptionType|string[] $Options + + */ +class PendingShipmentProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PendingShipmentProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\PickupService\SimpleType\PendingShipmentProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/PickupAvailabilityReply.php b/src/FedEx/PickupService/ComplexType/PickupAvailabilityReply.php index a8cb528e..ca46ef67 100644 --- a/src/FedEx/PickupService/ComplexType/PickupAvailabilityReply.php +++ b/src/FedEx/PickupService/ComplexType/PickupAvailabilityReply.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data returned to a client in response to a cancel dispatch request. + * PickupAvailabilityReply * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -18,6 +18,7 @@ * @property PickupScheduleOption[] $Options * @property \FedEx\PickupService\SimpleType\CloseTimeType|string $CloseTimeType * @property string $CloseTime + * @property string $OpenTime * @property string $LocalTime */ @@ -31,7 +32,7 @@ class PickupAvailabilityReply extends AbstractComplexType protected $name = 'PickupAvailabilityReply'; /** - * Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. + * Set HighestSeverity * * @param \FedEx\PickupService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -43,7 +44,7 @@ public function setHighestSeverity($highestSeverity) } /** - * The descriptive data detailing the status of a sumbitted transaction. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -55,7 +56,7 @@ public function setNotifications(array $notifications) } /** - * Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -67,7 +68,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -79,7 +80,7 @@ public function setVersion(VersionId $version) } /** - * the point in time when the request was processed + * Set RequestTimestamp * * @param string $requestTimestamp * @return $this @@ -91,7 +92,7 @@ public function setRequestTimestamp($requestTimestamp) } /** - * Identifies the options for picking up the shipment. + * Set Options * * @param PickupScheduleOption[] $options * @return $this @@ -126,6 +127,18 @@ public function setCloseTime($closeTime) return $this; } + /** + * Set OpenTime + * + * @param string $openTime + * @return $this + */ + public function setOpenTime($openTime) + { + $this->values['OpenTime'] = $openTime; + return $this; + } + /** * Local time of the service center that will service the pickup * diff --git a/src/FedEx/PickupService/ComplexType/PickupAvailabilityRequest.php b/src/FedEx/PickupService/ComplexType/PickupAvailabilityRequest.php index 6d2ca442..20642877 100644 --- a/src/FedEx/PickupService/ComplexType/PickupAvailabilityRequest.php +++ b/src/FedEx/PickupService/ComplexType/PickupAvailabilityRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data to request availability of pickup. + * PickupAvailabilityRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,6 +14,7 @@ * @property ClientDetail $ClientDetail * @property TransactionDetail $TransactionDetail * @property VersionId $Version + * @property \FedEx\PickupService\SimpleType\PickupType|string $PickupType * @property AssociatedAccount $AccountNumber * @property Address $PickupAddress * @property \FedEx\PickupService\SimpleType\PickupRequestType|string[] $PickupRequestType @@ -23,6 +24,7 @@ * @property string $CustomerCloseTime * @property \FedEx\PickupService\SimpleType\CarrierCodeType|string[] $Carriers * @property PickupShipmentAttributes $ShipmentAttributes + * @property RequestedPickupPackageDetail[] $PackageDetails */ class PickupAvailabilityRequest extends AbstractComplexType @@ -47,7 +49,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * The descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -59,7 +61,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -71,7 +73,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -82,6 +84,18 @@ public function setVersion(VersionId $version) return $this; } + /** + * Set PickupType + * + * @param \FedEx\PickupService\SimpleType\PickupType|string $pickupType + * @return $this + */ + public function setPickupType($pickupType) + { + $this->values['PickupType'] = $pickupType; + return $this; + } + /** * Identifies the account number for Freight Pickup Availability * @@ -95,7 +109,7 @@ public function setAccountNumber(AssociatedAccount $accountNumber) } /** - * Descriptive data providing information about address to pickup from. + * Set PickupAddress * * @param Address $pickupAddress * @return $this @@ -107,8 +121,7 @@ public function setPickupAddress(Address $pickupAddress) } /** - * An array of PickupRequestType. If SAME_DAY is included, Options with ScheduleDay of SAME_DAY will be included in the reply. -If FUTURE_DAY is included, Options with ScheduleDay of FUTURE_DAY will be included in the reply. + * Set PickupRequestType * * @param \FedEx\PickupService\SimpleType\PickupRequestType[]|string[] $pickupRequestType * @return $this @@ -120,7 +133,7 @@ public function setPickupRequestType(array $pickupRequestType) } /** - * The dispatch date (in the local time zone) for the pickup whose availability is being requested. + * Set DispatchDate * * @param string $dispatchDate * @return $this @@ -144,7 +157,7 @@ public function setNumberOfBusinessDays($numberOfBusinessDays) } /** - * The time when the package will be ready to be picked up. The time is local to the pickup postal code, in 24-hour form (e.g. 13:00:00). It should not contain a TZD. If a TZD is included, it will be ignored + * Set PackageReadyTime * * @param string $packageReadyTime * @return $this @@ -156,7 +169,7 @@ public function setPackageReadyTime($packageReadyTime) } /** - * The lastest time at which the courier will be able to gain access to pick up the package(s). The time is local to the pickup postal code, in 24-hour form (e.g. 17:00:00). It should not contain a TZD. If a TZD is included, it will be ignored + * Set CustomerCloseTime * * @param string $customerCloseTime * @return $this @@ -168,7 +181,7 @@ public function setCustomerCloseTime($customerCloseTime) } /** - * The FedEx carrier(s) for which availability is requested. + * Set Carriers * * @param \FedEx\PickupService\SimpleType\CarrierCodeType[]|string[] $carriers * @return $this @@ -180,7 +193,7 @@ public function setCarriers(array $carriers) } /** - * Descriptive information about the shipment. + * Set ShipmentAttributes * * @param PickupShipmentAttributes $shipmentAttributes * @return $this @@ -190,4 +203,16 @@ public function setShipmentAttributes(PickupShipmentAttributes $shipmentAttribut $this->values['ShipmentAttributes'] = $shipmentAttributes; return $this; } + + /** + * Set PackageDetails + * + * @param RequestedPickupPackageDetail[] $packageDetails + * @return $this + */ + public function setPackageDetails(array $packageDetails) + { + $this->values['PackageDetails'] = $packageDetails; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/PickupDangerousGoodsDetail.php b/src/FedEx/PickupService/ComplexType/PickupDangerousGoodsDetail.php new file mode 100644 index 00000000..bbdde44a --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/PickupDangerousGoodsDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\HazardousCommodityRegulationType|string $Regulation + * @property \FedEx\PickupService\SimpleType\DangerousGoodsAccessibilityType|string $Accessibility + * @property \FedEx\PickupService\SimpleType\HazardousCommodityOptionType|string[] $Options + + */ +class PickupDangerousGoodsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PickupDangerousGoodsDetail'; + + /** + * Describes the regulation type the pickup dangerous goods. + * + * @param \FedEx\PickupService\SimpleType\HazardousCommodityRegulationType|string $regulation + * @return $this + */ + public function setRegulation($regulation) + { + $this->values['Regulation'] = $regulation; + return $this; + } + + /** + * Set Accessibility + * + * @param \FedEx\PickupService\SimpleType\DangerousGoodsAccessibilityType|string $accessibility + * @return $this + */ + public function setAccessibility($accessibility) + { + $this->values['Accessibility'] = $accessibility; + return $this; + } + + /** + * Specifies the option types of the pickup dangerous goods. + * + * @param \FedEx\PickupService\SimpleType\HazardousCommodityOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/PickupOriginDetail.php b/src/FedEx/PickupService/ComplexType/PickupOriginDetail.php index b0893b4f..02e5d7c7 100644 --- a/src/FedEx/PickupService/ComplexType/PickupOriginDetail.php +++ b/src/FedEx/PickupService/ComplexType/PickupOriginDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data about the origin of the shipment being picked up by FedEx. + * PickupOriginDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -38,7 +38,7 @@ class PickupOriginDetail extends AbstractComplexType protected $name = 'PickupOriginDetail'; /** - * Flag identifies if customer wants to use Account address or send and alternate address for pickup. + * Set UseAccountAddress * * @param boolean $useAccountAddress * @return $this @@ -62,7 +62,7 @@ public function setAddressId($addressId) } /** - * Descriptive data about the physical location of the package being picked up by FedEx. + * Set PickupLocation * * @param ContactAndAddress $pickupLocation * @return $this @@ -74,7 +74,7 @@ public function setPickupLocation(ContactAndAddress $pickupLocation) } /** - * Identifies the physical location where the courier should pick up the shipment. See CourierDispatchBuildingLocationType for valid values. + * Set PackageLocation * * @param \FedEx\PickupService\SimpleType\PickupBuildingLocationType|string $packageLocation * @return $this @@ -98,7 +98,7 @@ public function setBuildingPart($buildingPart) } /** - * Identifies additional descriptive information associated with the BuildingPartCode to assist the FedEx courier in finding the pickup location. + * Set BuildingPartDescription * * @param string $buildingPartDescription * @return $this @@ -110,7 +110,7 @@ public function setBuildingPartDescription($buildingPartDescription) } /** - * Identifies the date and time the package will be ready for pickup by FedEx. Both the date and time portions of the string are expected to be used. The date should not be a past date or a date more than 10 days in the future. The time is the local time of the pickup based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2006-06-26). The time component must be in the format: HH:MM:SS in 24-hour form. The date and time parts are separated by the letter T (e.g. 2006-06-26T17:00:00). Because this is a local time, no TZD should be included. If a TZD is included, it will be ignored, and the time treated as local to the pickup postal code. + * Set ReadyTimestamp * * @param string $readyTimestamp * @return $this @@ -122,7 +122,7 @@ public function setReadyTimestamp($readyTimestamp) } /** - * Identifies the close time of the company requesting the pickup. The time is the local time of the pickup based on the shipper's time zone. The time component must be in the format: HH:MM:SS in 24-hour form (e.g. 17:00:00). Because this is a local time, no TZD should be included. If a TZD is included, it will be ignored, and the time treated as local to the pickup postal code. + * Set CompanyCloseTime * * @param string $companyCloseTime * @return $this diff --git a/src/FedEx/PickupService/ComplexType/PickupPackageSpecialServicesRequested.php b/src/FedEx/PickupService/ComplexType/PickupPackageSpecialServicesRequested.php new file mode 100644 index 00000000..5a289919 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/PickupPackageSpecialServicesRequested.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\PackageSpecialServiceType|string[] $SpecialServiceTypes + * @property PickupDangerousGoodsDetail $DangerousGoodsDetail + * @property PriorityAlertDetail $PriorityAlertDetail + + */ +class PickupPackageSpecialServicesRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PickupPackageSpecialServicesRequested'; + + /** + * Set SpecialServiceTypes + * + * @param \FedEx\PickupService\SimpleType\PackageSpecialServiceType[]|string[] $specialServiceTypes + * @return $this + */ + public function setSpecialServiceTypes(array $specialServiceTypes) + { + $this->values['SpecialServiceTypes'] = $specialServiceTypes; + return $this; + } + + /** + * Set DangerousGoodsDetail + * + * @param PickupDangerousGoodsDetail $dangerousGoodsDetail + * @return $this + */ + public function setDangerousGoodsDetail(PickupDangerousGoodsDetail $dangerousGoodsDetail) + { + $this->values['DangerousGoodsDetail'] = $dangerousGoodsDetail; + return $this; + } + + /** + * Set PriorityAlertDetail + * + * @param PriorityAlertDetail $priorityAlertDetail + * @return $this + */ + public function setPriorityAlertDetail(PriorityAlertDetail $priorityAlertDetail) + { + $this->values['PriorityAlertDetail'] = $priorityAlertDetail; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/PickupScheduleOption.php b/src/FedEx/PickupService/ComplexType/PickupScheduleOption.php index 12c8c959..c1b9a80b 100644 --- a/src/FedEx/PickupService/ComplexType/PickupScheduleOption.php +++ b/src/FedEx/PickupService/ComplexType/PickupScheduleOption.php @@ -4,10 +4,7 @@ use FedEx\AbstractComplexType; /** - * The constraints on the scheduling of a dispatch, where that dispatch would be made by the Carrier, occur on the PickupDate, -and would be scheduled (created by means of a CourierDispatchRequest) on a date related to the PickupDate as described -by the "ScheduleDay" (SAME_DAY meaning that the creation would occur on the PickupDate, and FUTURE_DAY meaning that the creation -would occur on a date prior to the PickupDate). + * PickupScheduleOption * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -34,7 +31,7 @@ class PickupScheduleOption extends AbstractComplexType protected $name = 'PickupScheduleOption'; /** - * the carrier to which this PickupScheduleOption applies + * Set Carrier * * @param \FedEx\PickupService\SimpleType\CarrierCodeType|string $carrier * @return $this @@ -46,7 +43,7 @@ public function setCarrier($carrier) } /** - * Descriptive information about the shipment. + * Set Description * * @param string $description * @return $this @@ -58,7 +55,7 @@ public function setDescription($description) } /** - * Tells whether this option describes a dispatch created on the dispatch date (SAME_DAY), or on a prior date (FUTURE_DAY) + * Set ScheduleDay * * @param \FedEx\PickupService\SimpleType\PickupRequestType|string $scheduleDay * @return $this @@ -70,7 +67,7 @@ public function setScheduleDay($scheduleDay) } /** - * True if this pickup option is available. + * Set Available * * @param boolean $available * @return $this @@ -82,7 +79,7 @@ public function setAvailable($available) } /** - * Identifies the date (in the postal code's time zone) to which this PickupScheduleOption refers. + * Set PickupDate * * @param string $pickupDate * @return $this @@ -94,7 +91,7 @@ public function setPickupDate($pickupDate) } /** - * Identifies the latest allowed ready time (in the postal code's time zone) for a postal code. As a local time, it will not include a Time Zone Designator + * Set CutOffTime * * @param string $cutOffTime * @return $this @@ -106,7 +103,7 @@ public function setCutOffTime($cutOffTime) } /** - * Identifies the minimum required length of the window of time between the ReadyTime and the CustomerCloseTime. + * Set AccessTime * * @param string $accessTime * @return $this diff --git a/src/FedEx/PickupService/ComplexType/PickupShipmentAttributes.php b/src/FedEx/PickupService/ComplexType/PickupShipmentAttributes.php index de875fa6..187420e0 100644 --- a/src/FedEx/PickupService/ComplexType/PickupShipmentAttributes.php +++ b/src/FedEx/PickupService/ComplexType/PickupShipmentAttributes.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive information about the shipment. + * PickupShipmentAttributes * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -50,7 +50,7 @@ public function setPackagingType($packagingType) } /** - * Descriptive information about the dimensions of the package. + * Set Dimensions * * @param Dimensions $dimensions * @return $this @@ -62,7 +62,7 @@ public function setDimensions(Dimensions $dimensions) } /** - * Descriptive information about the weight of the package. + * Set Weight * * @param Weight $weight * @return $this diff --git a/src/FedEx/PickupService/ComplexType/PriorityAlertDetail.php b/src/FedEx/PickupService/ComplexType/PriorityAlertDetail.php new file mode 100644 index 00000000..e93f3e0d --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/PriorityAlertDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\PriorityAlertEnhancementType|string[] $EnhancementTypes + * @property string[] $Content + + */ +class PriorityAlertDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PriorityAlertDetail'; + + /** + * Set EnhancementTypes + * + * @param \FedEx\PickupService\SimpleType\PriorityAlertEnhancementType[]|string[] $enhancementTypes + * @return $this + */ + public function setEnhancementTypes(array $enhancementTypes) + { + $this->values['EnhancementTypes'] = $enhancementTypes; + return $this; + } + + /** + * Set Content + * + * @param string $content + * @return $this + */ + public function setContent($content) + { + $this->values['Content'] = $content; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/RecommendedDocumentSpecification.php b/src/FedEx/PickupService/ComplexType/RecommendedDocumentSpecification.php new file mode 100644 index 00000000..77ff66f9 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/RecommendedDocumentSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\RecommendedDocumentType|string[] $Types + + */ +class RecommendedDocumentSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RecommendedDocumentSpecification'; + + /** + * Set Types + * + * @param \FedEx\PickupService\SimpleType\RecommendedDocumentType[]|string[] $types + * @return $this + */ + public function setTypes(array $types) + { + $this->values['Types'] = $types; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/RequestedPickupPackageDetail.php b/src/FedEx/PickupService/ComplexType/RequestedPickupPackageDetail.php new file mode 100644 index 00000000..2c22d075 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/RequestedPickupPackageDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property PickupPackageSpecialServicesRequested $PackageSpecialServices + * @property Weight $Weight + + */ +class RequestedPickupPackageDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RequestedPickupPackageDetail'; + + /** + * Set PackageSpecialServices + * + * @param PickupPackageSpecialServicesRequested $packageSpecialServices + * @return $this + */ + public function setPackageSpecialServices(PickupPackageSpecialServicesRequested $packageSpecialServices) + { + $this->values['PackageSpecialServices'] = $packageSpecialServices; + return $this; + } + + /** + * Set Weight + * + * @param Weight $weight + * @return $this + */ + public function setWeight(Weight $weight) + { + $this->values['Weight'] = $weight; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ReturnAssociationDetail.php b/src/FedEx/PickupService/ComplexType/ReturnAssociationDetail.php new file mode 100644 index 00000000..5dffb7a0 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/ReturnAssociationDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property string $TrackingNumber + * @property string $ShipDate + + */ +class ReturnAssociationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ReturnAssociationDetail'; + + /** + * Specifies the tracking number of the master associated with the return shipment. + * + * @param string $trackingNumber + * @return $this + */ + public function setTrackingNumber($trackingNumber) + { + $this->values['TrackingNumber'] = $trackingNumber; + return $this; + } + + /** + * Set ShipDate + * + * @param string $shipDate + * @return $this + */ + public function setShipDate($shipDate) + { + $this->values['ShipDate'] = $shipDate; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ReturnEMailDetail.php b/src/FedEx/PickupService/ComplexType/ReturnEMailDetail.php index ebfbce02..fd0f1b43 100644 --- a/src/FedEx/PickupService/ComplexType/ReturnEMailDetail.php +++ b/src/FedEx/PickupService/ComplexType/ReturnEMailDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Return Email Details + * ReturnEMailDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class ReturnEMailDetail extends AbstractComplexType protected $name = 'ReturnEMailDetail'; /** - * Phone number of the merchant + * Set MerchantPhoneNumber * * @param string $merchantPhoneNumber * @return $this diff --git a/src/FedEx/PickupService/ComplexType/ReturnShipmentDetail.php b/src/FedEx/PickupService/ComplexType/ReturnShipmentDetail.php index e77c8249..22033ced 100644 --- a/src/FedEx/PickupService/ComplexType/ReturnShipmentDetail.php +++ b/src/FedEx/PickupService/ComplexType/ReturnShipmentDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Information relating to a return shipment. + * ReturnShipmentDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,7 @@ * @property \FedEx\PickupService\SimpleType\ReturnType|string $ReturnType * @property Rma $Rma * @property ReturnEMailDetail $ReturnEMailDetail + * @property ReturnAssociationDetail $ReturnAssociation */ class ReturnShipmentDetail extends AbstractComplexType @@ -25,7 +26,7 @@ class ReturnShipmentDetail extends AbstractComplexType protected $name = 'ReturnShipmentDetail'; /** - * The type of return shipment that is being requested. + * Set ReturnType * * @param \FedEx\PickupService\SimpleType\ReturnType|string $returnType * @return $this @@ -37,7 +38,7 @@ public function setReturnType($returnType) } /** - * Return Merchant Authorization + * Set Rma * * @param Rma $rma * @return $this @@ -49,7 +50,7 @@ public function setRma(Rma $rma) } /** - * Describes specific information about the email label shipment. + * Set ReturnEMailDetail * * @param ReturnEMailDetail $returnEMailDetail * @return $this @@ -59,4 +60,16 @@ public function setReturnEMailDetail(ReturnEMailDetail $returnEMailDetail) $this->values['ReturnEMailDetail'] = $returnEMailDetail; return $this; } + + /** + * Set ReturnAssociation + * + * @param ReturnAssociationDetail $returnAssociation + * @return $this + */ + public function setReturnAssociation(ReturnAssociationDetail $returnAssociation) + { + $this->values['ReturnAssociation'] = $returnAssociation; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/Rma.php b/src/FedEx/PickupService/ComplexType/Rma.php index 64fbfdb6..86016d35 100644 --- a/src/FedEx/PickupService/ComplexType/Rma.php +++ b/src/FedEx/PickupService/ComplexType/Rma.php @@ -4,13 +4,12 @@ use FedEx\AbstractComplexType; /** - * Return Merchant Authorization + * June 2011 ITG 121203 IR-RMA number has been removed from this structure and added as a new customer reference type. The structure remains because of the reason field below. * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service * - * @property string $Number * @property string $Reason */ @@ -24,19 +23,7 @@ class Rma extends AbstractComplexType protected $name = 'Rma'; /** - * The RMA number. - * - * @param string $number - * @return $this - */ - public function setNumber($number) - { - $this->values['Number'] = $number; - return $this; - } - - /** - * The reason for the return. + * Set Reason * * @param string $reason * @return $this diff --git a/src/FedEx/PickupService/ComplexType/ShipmentDryIceDetail.php b/src/FedEx/PickupService/ComplexType/ShipmentDryIceDetail.php index 3d3bcd3b..6634a40f 100644 --- a/src/FedEx/PickupService/ComplexType/ShipmentDryIceDetail.php +++ b/src/FedEx/PickupService/ComplexType/ShipmentDryIceDetail.php @@ -12,6 +12,7 @@ * * @property int $PackageCount * @property Weight $TotalWeight + * @property ShipmentDryIceProcessingOptionsRequested $ProcessingOptions */ class ShipmentDryIceDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setTotalWeight(Weight $totalWeight) $this->values['TotalWeight'] = $totalWeight; return $this; } + + /** + * Set ProcessingOptions + * + * @param ShipmentDryIceProcessingOptionsRequested $processingOptions + * @return $this + */ + public function setProcessingOptions(ShipmentDryIceProcessingOptionsRequested $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php b/src/FedEx/PickupService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php new file mode 100644 index 00000000..60712010 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\ShipmentDryIceProcessingOptionType|string[] $Options + + */ +class ShipmentDryIceProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentDryIceProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\PickupService\SimpleType\ShipmentDryIceProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ShipmentEventNotificationDetail.php b/src/FedEx/PickupService/ComplexType/ShipmentEventNotificationDetail.php new file mode 100644 index 00000000..3a44e50d --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/ShipmentEventNotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\ShipmentNotificationAggregationType|string $AggregationType + * @property string $PersonalMessage + * @property ShipmentEventNotificationSpecification[] $EventNotifications + + */ +class ShipmentEventNotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationDetail'; + + /** + * Set AggregationType + * + * @param \FedEx\PickupService\SimpleType\ShipmentNotificationAggregationType|string $aggregationType + * @return $this + */ + public function setAggregationType($aggregationType) + { + $this->values['AggregationType'] = $aggregationType; + return $this; + } + + /** + * Set PersonalMessage + * + * @param string $personalMessage + * @return $this + */ + public function setPersonalMessage($personalMessage) + { + $this->values['PersonalMessage'] = $personalMessage; + return $this; + } + + /** + * Set EventNotifications + * + * @param ShipmentEventNotificationSpecification[] $eventNotifications + * @return $this + */ + public function setEventNotifications(array $eventNotifications) + { + $this->values['EventNotifications'] = $eventNotifications; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ShipmentEventNotificationSpecification.php b/src/FedEx/PickupService/ComplexType/ShipmentEventNotificationSpecification.php new file mode 100644 index 00000000..22071bc3 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/ShipmentEventNotificationSpecification.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\ShipmentNotificationRoleType|string $Role + * @property \FedEx\PickupService\SimpleType\NotificationEventType|string[] $Events + * @property NotificationDetail $NotificationDetail + * @property ShipmentNotificationFormatSpecification $FormatSpecification + + */ +class ShipmentEventNotificationSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationSpecification'; + + /** + * Set Role + * + * @param \FedEx\PickupService\SimpleType\ShipmentNotificationRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Set Events + * + * @param \FedEx\PickupService\SimpleType\NotificationEventType[]|string[] $events + * @return $this + */ + public function setEvents(array $events) + { + $this->values['Events'] = $events; + return $this; + } + + /** + * Set NotificationDetail + * + * @param NotificationDetail $notificationDetail + * @return $this + */ + public function setNotificationDetail(NotificationDetail $notificationDetail) + { + $this->values['NotificationDetail'] = $notificationDetail; + return $this; + } + + /** + * Set FormatSpecification + * + * @param ShipmentNotificationFormatSpecification $formatSpecification + * @return $this + */ + public function setFormatSpecification(ShipmentNotificationFormatSpecification $formatSpecification) + { + $this->values['FormatSpecification'] = $formatSpecification; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ShipmentNotificationFormatSpecification.php b/src/FedEx/PickupService/ComplexType/ShipmentNotificationFormatSpecification.php new file mode 100644 index 00000000..aaff6f7e --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/ShipmentNotificationFormatSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\NotificationFormatType|string $Type + + */ +class ShipmentNotificationFormatSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentNotificationFormatSpecification'; + + /** + * Set Type + * + * @param \FedEx\PickupService\SimpleType\NotificationFormatType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/ShipmentSpecialServicesRequested.php b/src/FedEx/PickupService/ComplexType/ShipmentSpecialServicesRequested.php index e764baab..a92f941d 100644 --- a/src/FedEx/PickupService/ComplexType/ShipmentSpecialServicesRequested.php +++ b/src/FedEx/PickupService/ComplexType/ShipmentSpecialServicesRequested.php @@ -12,11 +12,13 @@ * * @property \FedEx\PickupService\SimpleType\ShipmentSpecialServiceType|string[] $SpecialServiceTypes * @property CodDetail $CodDetail + * @property DeliveryOnInvoiceAcceptanceDetail $DeliveryOnInvoiceAcceptanceDetail * @property HoldAtLocationDetail $HoldAtLocationDetail - * @property EMailNotificationDetail $EMailNotificationDetail + * @property ShipmentEventNotificationDetail $EventNotificationDetail * @property ReturnShipmentDetail $ReturnShipmentDetail * @property PendingShipmentDetail $PendingShipmentDetail * @property InternationalControlledExportDetail $InternationalControlledExportDetail + * @property InternationalTrafficInArmsRegulationsDetail $InternationalTrafficInArmsRegulationsDetail * @property ShipmentDryIceDetail $ShipmentDryIceDetail * @property HomeDeliveryPremiumDetail $HomeDeliveryPremiumDetail * @property FlatbedTrailerDetail $FlatbedTrailerDetail @@ -58,7 +60,7 @@ public function setSpecialServiceTypes(array $specialServiceTypes) } /** - * Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. This element is required when SpecialServiceType.COD is present in the SpecialServiceTypes collection. + * Set CodDetail * * @param CodDetail $codDetail * @return $this @@ -70,7 +72,19 @@ public function setCodDetail(CodDetail $codDetail) } /** - * Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. This element is required when SpecialServiceType.HOLD_AT_LOCATION is present in the SpecialServiceTypes collection. + * Set DeliveryOnInvoiceAcceptanceDetail + * + * @param DeliveryOnInvoiceAcceptanceDetail $deliveryOnInvoiceAcceptanceDetail + * @return $this + */ + public function setDeliveryOnInvoiceAcceptanceDetail(DeliveryOnInvoiceAcceptanceDetail $deliveryOnInvoiceAcceptanceDetail) + { + $this->values['DeliveryOnInvoiceAcceptanceDetail'] = $deliveryOnInvoiceAcceptanceDetail; + return $this; + } + + /** + * Set HoldAtLocationDetail * * @param HoldAtLocationDetail $holdAtLocationDetail * @return $this @@ -82,19 +96,19 @@ public function setHoldAtLocationDetail(HoldAtLocationDetail $holdAtLocationDeta } /** - * Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This element is required when SpecialServiceType.EMAIL_NOTIFICATION is present in the SpecialServiceTypes collection. + * This replaces eMailNotificationDetail * - * @param EMailNotificationDetail $eMailNotificationDetail + * @param ShipmentEventNotificationDetail $eventNotificationDetail * @return $this */ - public function setEMailNotificationDetail(EMailNotificationDetail $eMailNotificationDetail) + public function setEventNotificationDetail(ShipmentEventNotificationDetail $eventNotificationDetail) { - $this->values['EMailNotificationDetail'] = $eMailNotificationDetail; + $this->values['EventNotificationDetail'] = $eventNotificationDetail; return $this; } /** - * The descriptive data required for FedEx Printed Return Label. This element is required when SpecialServiceType.PRINTED_RETURN_LABEL is present in the SpecialServiceTypes collection + * Set ReturnShipmentDetail * * @param ReturnShipmentDetail $returnShipmentDetail * @return $this @@ -130,7 +144,19 @@ public function setInternationalControlledExportDetail(InternationalControlledEx } /** - * Number of packages in this shipment which contain dry ice and the total weight of the dry ice for this shipment. + * Set InternationalTrafficInArmsRegulationsDetail + * + * @param InternationalTrafficInArmsRegulationsDetail $internationalTrafficInArmsRegulationsDetail + * @return $this + */ + public function setInternationalTrafficInArmsRegulationsDetail(InternationalTrafficInArmsRegulationsDetail $internationalTrafficInArmsRegulationsDetail) + { + $this->values['InternationalTrafficInArmsRegulationsDetail'] = $internationalTrafficInArmsRegulationsDetail; + return $this; + } + + /** + * Set ShipmentDryIceDetail * * @param ShipmentDryIceDetail $shipmentDryIceDetail * @return $this @@ -142,7 +168,7 @@ public function setShipmentDryIceDetail(ShipmentDryIceDetail $shipmentDryIceDeta } /** - * The descriptive data required for FedEx Home Delivery options. This element is required when SpecialServiceType.HOME_DELIVERY_PREMIUM is present in the SpecialServiceTypes collection + * Set HomeDeliveryPremiumDetail * * @param HomeDeliveryPremiumDetail $homeDeliveryPremiumDetail * @return $this @@ -154,7 +180,7 @@ public function setHomeDeliveryPremiumDetail(HomeDeliveryPremiumDetail $homeDeli } /** - * Identifies the delivery guarantee information. + * Set FlatbedTrailerDetail * * @param FlatbedTrailerDetail $flatbedTrailerDetail * @return $this @@ -166,7 +192,7 @@ public function setFlatbedTrailerDetail(FlatbedTrailerDetail $flatbedTrailerDeta } /** - * Identifies the delivery guarantee information. + * Set FreightGuaranteeDetail * * @param FreightGuaranteeDetail $freightGuaranteeDetail * @return $this diff --git a/src/FedEx/PickupService/ComplexType/SmsDetail.php b/src/FedEx/PickupService/ComplexType/SmsDetail.php new file mode 100644 index 00000000..48f537ed --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/SmsDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property string $PhoneNumber + * @property string $PhoneNumberCountryCode + + */ +class SmsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SmsDetail'; + + /** + * Set PhoneNumber + * + * @param string $phoneNumber + * @return $this + */ + public function setPhoneNumber($phoneNumber) + { + $this->values['PhoneNumber'] = $phoneNumber; + return $this; + } + + /** + * Set PhoneNumberCountryCode + * + * @param string $phoneNumberCountryCode + * @return $this + */ + public function setPhoneNumberCountryCode($phoneNumberCountryCode) + { + $this->values['PhoneNumberCountryCode'] = $phoneNumberCountryCode; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/TaxpayerIdentification.php b/src/FedEx/PickupService/ComplexType/TaxpayerIdentification.php index 5cd6519b..0f8c9692 100644 --- a/src/FedEx/PickupService/ComplexType/TaxpayerIdentification.php +++ b/src/FedEx/PickupService/ComplexType/TaxpayerIdentification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for taxpayer identification information. + * TaxpayerIdentification * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,8 @@ * @property \FedEx\PickupService\SimpleType\TinType|string $TinType * @property string $Number * @property string $Usage + * @property string $EffectiveDate + * @property string $ExpirationDate */ class TaxpayerIdentification extends AbstractComplexType @@ -25,7 +27,7 @@ class TaxpayerIdentification extends AbstractComplexType protected $name = 'TaxpayerIdentification'; /** - * Identifies the category of the taxpayer identification number. See TinType for the list of values. + * Set TinType * * @param \FedEx\PickupService\SimpleType\TinType|string $tinType * @return $this @@ -37,7 +39,7 @@ public function setTinType($tinType) } /** - * Identifies the taxpayer identification number. + * Set Number * * @param string $number * @return $this @@ -59,4 +61,28 @@ public function setUsage($usage) $this->values['Usage'] = $usage; return $this; } + + /** + * Set EffectiveDate + * + * @param string $effectiveDate + * @return $this + */ + public function setEffectiveDate($effectiveDate) + { + $this->values['EffectiveDate'] = $effectiveDate; + return $this; + } + + /** + * Set ExpirationDate + * + * @param string $expirationDate + * @return $this + */ + public function setExpirationDate($expirationDate) + { + $this->values['ExpirationDate'] = $expirationDate; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/TrackingId.php b/src/FedEx/PickupService/ComplexType/TrackingId.php new file mode 100644 index 00000000..884fc608 --- /dev/null +++ b/src/FedEx/PickupService/ComplexType/TrackingId.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + * + * @property \FedEx\PickupService\SimpleType\TrackingIdType|string $TrackingIdType + * @property string $FormId + * @property string $UspsApplicationId + * @property string $TrackingNumber + + */ +class TrackingId extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingId'; + + /** + * Set TrackingIdType + * + * @param \FedEx\PickupService\SimpleType\TrackingIdType|string $trackingIdType + * @return $this + */ + public function setTrackingIdType($trackingIdType) + { + $this->values['TrackingIdType'] = $trackingIdType; + return $this; + } + + /** + * Set FormId + * + * @param string $formId + * @return $this + */ + public function setFormId($formId) + { + $this->values['FormId'] = $formId; + return $this; + } + + /** + * For use with SmartPost tracking IDs only + * + * @param string $uspsApplicationId + * @return $this + */ + public function setUspsApplicationId($uspsApplicationId) + { + $this->values['UspsApplicationId'] = $uspsApplicationId; + return $this; + } + + /** + * Set TrackingNumber + * + * @param string $trackingNumber + * @return $this + */ + public function setTrackingNumber($trackingNumber) + { + $this->values['TrackingNumber'] = $trackingNumber; + return $this; + } +} diff --git a/src/FedEx/PickupService/ComplexType/TransactionDetail.php b/src/FedEx/PickupService/ComplexType/TransactionDetail.php index ae297a23..3f5a8266 100644 --- a/src/FedEx/PickupService/ComplexType/TransactionDetail.php +++ b/src/FedEx/PickupService/ComplexType/TransactionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data that governs data payload language/translations. + * TransactionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/ComplexType/UploadDocumentDetail.php b/src/FedEx/PickupService/ComplexType/UploadDocumentDetail.php index f242b94c..2fec68bd 100644 --- a/src/FedEx/PickupService/ComplexType/UploadDocumentDetail.php +++ b/src/FedEx/PickupService/ComplexType/UploadDocumentDetail.php @@ -16,6 +16,7 @@ * @property \FedEx\PickupService\SimpleType\UploadDocumentType|string $DocumentType * @property string $FileName * @property string $DocumentContent + * @property string $ExpirationDate */ class UploadDocumentDetail extends AbstractComplexType @@ -98,4 +99,16 @@ public function setDocumentContent($documentContent) $this->values['DocumentContent'] = $documentContent; return $this; } + + /** + * Specifies the date until which the document is available + * + * @param string $expirationDate + * @return $this + */ + public function setExpirationDate($expirationDate) + { + $this->values['ExpirationDate'] = $expirationDate; + return $this; + } } diff --git a/src/FedEx/PickupService/ComplexType/UploadDocumentReferenceDetail.php b/src/FedEx/PickupService/ComplexType/UploadDocumentReferenceDetail.php index f36763cd..1368d869 100644 --- a/src/FedEx/PickupService/ComplexType/UploadDocumentReferenceDetail.php +++ b/src/FedEx/PickupService/ComplexType/UploadDocumentReferenceDetail.php @@ -12,6 +12,7 @@ * * @property int $LineNumber * @property string $CustomerReference + * @property string $Description * @property \FedEx\PickupService\SimpleType\UploadDocumentProducerType|string $DocumentProducer * @property \FedEx\PickupService\SimpleType\UploadDocumentType|string $DocumentType * @property string $DocumentId @@ -51,6 +52,18 @@ public function setCustomerReference($customerReference) return $this; } + /** + * Description of the uploaded document. + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + /** * Set DocumentProducer * diff --git a/src/FedEx/PickupService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/PickupService/ComplexType/WebAuthenticationDetail.php index 30a14df3..2c105d68 100644 --- a/src/FedEx/PickupService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/PickupService/ComplexType/WebAuthenticationDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Pickup Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/PickupService/Request.php b/src/FedEx/PickupService/Request.php index 47ae5d54..f07a8f48 100644 --- a/src/FedEx/PickupService/Request.php +++ b/src/FedEx/PickupService/Request.php @@ -12,10 +12,10 @@ */ class Request extends AbstractRequest { - const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services'; - const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services'; + const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/pickup'; + const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/pickup'; - protected static $wsdlFileName = 'PickupService_v3.wsdl'; + protected static $wsdlFileName = 'PickupService_v15.wsdl'; /** * Sends the PickupAvailabilityRequest and returns the response diff --git a/src/FedEx/PickupService/SimpleType/AccessorRoleType.php b/src/FedEx/PickupService/SimpleType/AccessorRoleType.php new file mode 100644 index 00000000..d44a4238 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/AccessorRoleType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class AccessorRoleType extends AbstractSimpleType +{ + const _SHIPMENT_COMPLETOR = 'SHIPMENT_COMPLETOR'; + const _SHIPMENT_INITIATOR = 'SHIPMENT_INITIATOR'; +} diff --git a/src/FedEx/PickupService/SimpleType/AssociatedAccountNumberType.php b/src/FedEx/PickupService/SimpleType/AssociatedAccountNumberType.php index 72822475..d770caed 100644 --- a/src/FedEx/PickupService/SimpleType/AssociatedAccountNumberType.php +++ b/src/FedEx/PickupService/SimpleType/AssociatedAccountNumberType.php @@ -15,6 +15,5 @@ class AssociatedAccountNumberType extends AbstractSimpleType const _FEDEX_EXPRESS = 'FEDEX_EXPRESS'; const _FEDEX_FREIGHT = 'FEDEX_FREIGHT'; const _FEDEX_GROUND = 'FEDEX_GROUND'; - const _FEDEX_NATIONAL_FREIGHT = 'FEDEX_NATIONAL_FREIGHT'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; } diff --git a/src/FedEx/PickupService/SimpleType/BuildingPartCode.php b/src/FedEx/PickupService/SimpleType/BuildingPartCode.php index 795674c3..e3a7dd00 100644 --- a/src/FedEx/PickupService/SimpleType/BuildingPartCode.php +++ b/src/FedEx/PickupService/SimpleType/BuildingPartCode.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the valid set of building part types when requesting a package pickup. + * BuildingPartCode * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/CodReturnReferenceIndicatorType.php b/src/FedEx/PickupService/SimpleType/CodReturnReferenceIndicatorType.php index 4c638626..deff4470 100644 --- a/src/FedEx/PickupService/SimpleType/CodReturnReferenceIndicatorType.php +++ b/src/FedEx/PickupService/SimpleType/CodReturnReferenceIndicatorType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates which type of reference information to include on the COD return shipping label. + * CodReturnReferenceIndicatorType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/CreditCardAuthorizationType.php b/src/FedEx/PickupService/SimpleType/CreditCardAuthorizationType.php deleted file mode 100644 index c8b61c7d..00000000 --- a/src/FedEx/PickupService/SimpleType/CreditCardAuthorizationType.php +++ /dev/null @@ -1,18 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - */ -class CreditCardAuthorizationType extends AbstractSimpleType -{ - const _AUTHORIZE_NON_ACCOUNT = 'AUTHORIZE_NON_ACCOUNT'; - const _AUTHORIZE_WITH_ACCOUNT = 'AUTHORIZE_WITH_ACCOUNT'; - const _VERIFY_WITH_ACCOUNT = 'VERIFY_WITH_ACCOUNT'; -} diff --git a/src/FedEx/PickupService/SimpleType/CreditCardType.php b/src/FedEx/PickupService/SimpleType/CreditCardType.php deleted file mode 100644 index 2be59ea3..00000000 --- a/src/FedEx/PickupService/SimpleType/CreditCardType.php +++ /dev/null @@ -1,20 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Pickup Service - */ -class CreditCardType extends AbstractSimpleType -{ - const _AMEX = 'AMEX'; - const _DINERS = 'DINERS'; - const _DISCOVER = 'DISCOVER'; - const _MASTERCARD = 'MASTERCARD'; - const _VISA = 'VISA'; -} diff --git a/src/FedEx/PickupService/SimpleType/FreightAccountPaymentType.php b/src/FedEx/PickupService/SimpleType/DangerousGoodsAccessibilityType.php similarity index 53% rename from src/FedEx/PickupService/SimpleType/FreightAccountPaymentType.php rename to src/FedEx/PickupService/SimpleType/DangerousGoodsAccessibilityType.php index 43eb1df8..9e12b022 100644 --- a/src/FedEx/PickupService/SimpleType/FreightAccountPaymentType.php +++ b/src/FedEx/PickupService/SimpleType/DangerousGoodsAccessibilityType.php @@ -4,14 +4,14 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of payment to be tendered for the pickup. + * DangerousGoodsAccessibilityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service */ -class FreightAccountPaymentType extends AbstractSimpleType +class DangerousGoodsAccessibilityType extends AbstractSimpleType { - const _COLLECT = 'COLLECT'; - const _PREPAID = 'PREPAID'; + const _ACCESSIBLE = 'ACCESSIBLE'; + const _INACCESSIBLE = 'INACCESSIBLE'; } diff --git a/src/FedEx/PickupService/SimpleType/DistanceUnits.php b/src/FedEx/PickupService/SimpleType/DistanceUnits.php index dc5b3574..f788ec79 100644 --- a/src/FedEx/PickupService/SimpleType/DistanceUnits.php +++ b/src/FedEx/PickupService/SimpleType/DistanceUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the unit of measure for the distance value. + * DistanceUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/EmailOptionType.php b/src/FedEx/PickupService/SimpleType/EmailOptionType.php new file mode 100644 index 00000000..b4e58075 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/EmailOptionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class EmailOptionType extends AbstractSimpleType +{ + const _PRODUCE_PAPERLESS_SHIPPING_FORMAT = 'PRODUCE_PAPERLESS_SHIPPING_FORMAT'; + const _SUPPRESS_ACCESS_EMAILS = 'SUPPRESS_ACCESS_EMAILS'; + const _SUPPRESS_ADDITIONAL_LANGUAGES = 'SUPPRESS_ADDITIONAL_LANGUAGES'; +} diff --git a/src/FedEx/PickupService/SimpleType/EtdAttributeType.php b/src/FedEx/PickupService/SimpleType/EtdAttributeType.php new file mode 100644 index 00000000..9859b459 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/EtdAttributeType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class EtdAttributeType extends AbstractSimpleType +{ + const _POST_SHIPMENT_UPLOAD_REQUESTED = 'POST_SHIPMENT_UPLOAD_REQUESTED'; +} diff --git a/src/FedEx/PickupService/SimpleType/FedExLocationType.php b/src/FedEx/PickupService/SimpleType/FedExLocationType.php index 6b51a527..5a30403d 100644 --- a/src/FedEx/PickupService/SimpleType/FedExLocationType.php +++ b/src/FedEx/PickupService/SimpleType/FedExLocationType.php @@ -12,7 +12,14 @@ */ class FedExLocationType extends AbstractSimpleType { + const _FEDEX_AUTHORIZED_SHIP_CENTER = 'FEDEX_AUTHORIZED_SHIP_CENTER'; const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; + const _FEDEX_FACILITY = 'FEDEX_FACILITY'; + const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; + const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; + const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/PickupService/SimpleType/FlatbedTrailerOption.php b/src/FedEx/PickupService/SimpleType/FlatbedTrailerOption.php index fe29579a..875f1197 100644 --- a/src/FedEx/PickupService/SimpleType/FlatbedTrailerOption.php +++ b/src/FedEx/PickupService/SimpleType/FlatbedTrailerOption.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. + * FlatbedTrailerOption * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/FreightGuaranteeType.php b/src/FedEx/PickupService/SimpleType/FreightGuaranteeType.php index 9982da60..1d4e3b88 100644 --- a/src/FedEx/PickupService/SimpleType/FreightGuaranteeType.php +++ b/src/FedEx/PickupService/SimpleType/FreightGuaranteeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of Delivery Guarantee made. + * FreightGuaranteeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,4 +14,5 @@ class FreightGuaranteeType extends AbstractSimpleType { const _GUARANTEED_DATE = 'GUARANTEED_DATE'; const _GUARANTEED_MORNING = 'GUARANTEED_MORNING'; + const _GUARANTEED_TIME = 'GUARANTEED_TIME'; } diff --git a/src/FedEx/PickupService/SimpleType/FreightShipmentRoleType.php b/src/FedEx/PickupService/SimpleType/FreightShipmentRoleType.php index 343a9638..1e0ed5c9 100644 --- a/src/FedEx/PickupService/SimpleType/FreightShipmentRoleType.php +++ b/src/FedEx/PickupService/SimpleType/FreightShipmentRoleType.php @@ -14,5 +14,4 @@ class FreightShipmentRoleType extends AbstractSimpleType { const _CONSIGNEE = 'CONSIGNEE'; const _SHIPPER = 'SHIPPER'; - const _THIRD_PARTY = 'THIRD_PARTY'; } diff --git a/src/FedEx/PickupService/SimpleType/HazardousCommodityOptionType.php b/src/FedEx/PickupService/SimpleType/HazardousCommodityOptionType.php new file mode 100644 index 00000000..6dc24015 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/HazardousCommodityOptionType.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class HazardousCommodityOptionType extends AbstractSimpleType +{ + const _BATTERY = 'BATTERY'; + const _HAZARDOUS_MATERIALS = 'HAZARDOUS_MATERIALS'; + const _LIMITED_QUANTITIES_COMMODITIES = 'LIMITED_QUANTITIES_COMMODITIES'; + const _ORM_D = 'ORM_D'; + const _REPORTABLE_QUANTITIES = 'REPORTABLE_QUANTITIES'; + const _SMALL_QUANTITY_EXCEPTION = 'SMALL_QUANTITY_EXCEPTION'; +} diff --git a/src/FedEx/PickupService/SimpleType/HazardousCommodityRegulationType.php b/src/FedEx/PickupService/SimpleType/HazardousCommodityRegulationType.php new file mode 100644 index 00000000..4628cfef --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/HazardousCommodityRegulationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class HazardousCommodityRegulationType extends AbstractSimpleType +{ + const _ADR = 'ADR'; + const _DOT = 'DOT'; + const _IATA = 'IATA'; + const _ORMD = 'ORMD'; +} diff --git a/src/FedEx/PickupService/SimpleType/HomeDeliveryPremiumType.php b/src/FedEx/PickupService/SimpleType/HomeDeliveryPremiumType.php index e94df9b2..077a9444 100644 --- a/src/FedEx/PickupService/SimpleType/HomeDeliveryPremiumType.php +++ b/src/FedEx/PickupService/SimpleType/HomeDeliveryPremiumType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of Home Delivery Premium service being requested. + * HomeDeliveryPremiumType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/LinearUnits.php b/src/FedEx/PickupService/SimpleType/LinearUnits.php index bbdde2da..a0f057e3 100644 --- a/src/FedEx/PickupService/SimpleType/LinearUnits.php +++ b/src/FedEx/PickupService/SimpleType/LinearUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of linear units of measure for a package dimension. + * LinearUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/EMailNotificationEventType.php b/src/FedEx/PickupService/SimpleType/NotificationEventType.php similarity index 72% rename from src/FedEx/PickupService/SimpleType/EMailNotificationEventType.php rename to src/FedEx/PickupService/SimpleType/NotificationEventType.php index 81b72734..e9123b9f 100644 --- a/src/FedEx/PickupService/SimpleType/EMailNotificationEventType.php +++ b/src/FedEx/PickupService/SimpleType/NotificationEventType.php @@ -4,15 +4,16 @@ use FedEx\AbstractSimpleType; /** - * EMailNotificationEventType + * NotificationEventType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service */ -class EMailNotificationEventType extends AbstractSimpleType +class NotificationEventType extends AbstractSimpleType { const _ON_DELIVERY = 'ON_DELIVERY'; + const _ON_ESTIMATED_DELIVERY = 'ON_ESTIMATED_DELIVERY'; const _ON_EXCEPTION = 'ON_EXCEPTION'; const _ON_SHIPMENT = 'ON_SHIPMENT'; const _ON_TENDER = 'ON_TENDER'; diff --git a/src/FedEx/PickupService/SimpleType/EMailNotificationFormatType.php b/src/FedEx/PickupService/SimpleType/NotificationFormatType.php similarity index 68% rename from src/FedEx/PickupService/SimpleType/EMailNotificationFormatType.php rename to src/FedEx/PickupService/SimpleType/NotificationFormatType.php index 3a2fc535..3bdca085 100644 --- a/src/FedEx/PickupService/SimpleType/EMailNotificationFormatType.php +++ b/src/FedEx/PickupService/SimpleType/NotificationFormatType.php @@ -4,15 +4,14 @@ use FedEx\AbstractSimpleType; /** - * The format of the email + * NotificationFormatType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service */ -class EMailNotificationFormatType extends AbstractSimpleType +class NotificationFormatType extends AbstractSimpleType { const _HTML = 'HTML'; const _TEXT = 'TEXT'; - const _WIRELESS = 'WIRELESS'; } diff --git a/src/FedEx/PickupService/SimpleType/NotificationSeverityType.php b/src/FedEx/PickupService/SimpleType/NotificationSeverityType.php index 36863777..713fdf36 100644 --- a/src/FedEx/PickupService/SimpleType/NotificationSeverityType.php +++ b/src/FedEx/PickupService/SimpleType/NotificationSeverityType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of severity values for a Notification. + * NotificationSeverityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/NotificationType.php b/src/FedEx/PickupService/SimpleType/NotificationType.php new file mode 100644 index 00000000..e7c8d345 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/NotificationType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class NotificationType extends AbstractSimpleType +{ + const _EMAIL = 'EMAIL'; + const _FAX = 'FAX'; + const _SMS_TEXT_MESSAGE = 'SMS_TEXT_MESSAGE'; +} diff --git a/src/FedEx/PickupService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/PickupService/SimpleType/PackageSpecialServiceType.php new file mode 100644 index 00000000..b1a0ca47 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/PackageSpecialServiceType.php @@ -0,0 +1,25 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class PackageSpecialServiceType extends AbstractSimpleType +{ + const _ALCOHOL = 'ALCOHOL'; + const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _BATTERY = 'BATTERY'; + const _COD = 'COD'; + const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; + const _DRY_ICE = 'DRY_ICE'; + const _NON_STANDARD_CONTAINER = 'NON_STANDARD_CONTAINER'; + const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; + const _PRIORITY_ALERT = 'PRIORITY_ALERT'; + const _SIGNATURE_OPTION = 'SIGNATURE_OPTION'; +} diff --git a/src/FedEx/PickupService/SimpleType/PackagingType.php b/src/FedEx/PickupService/SimpleType/PackagingType.php index c1cb1aea..2bb08a43 100644 --- a/src/FedEx/PickupService/SimpleType/PackagingType.php +++ b/src/FedEx/PickupService/SimpleType/PackagingType.php @@ -16,7 +16,11 @@ class PackagingType extends AbstractSimpleType const _FEDEX_25KG_BOX = 'FEDEX_25KG_BOX'; const _FEDEX_BOX = 'FEDEX_BOX'; const _FEDEX_ENVELOPE = 'FEDEX_ENVELOPE'; + const _FEDEX_EXTRA_LARGE_BOX = 'FEDEX_EXTRA_LARGE_BOX'; + const _FEDEX_LARGE_BOX = 'FEDEX_LARGE_BOX'; + const _FEDEX_MEDIUM_BOX = 'FEDEX_MEDIUM_BOX'; const _FEDEX_PAK = 'FEDEX_PAK'; + const _FEDEX_SMALL_BOX = 'FEDEX_SMALL_BOX'; const _FEDEX_TUBE = 'FEDEX_TUBE'; const _YOUR_PACKAGING = 'YOUR_PACKAGING'; } diff --git a/src/FedEx/PickupService/SimpleType/PaymentType.php b/src/FedEx/PickupService/SimpleType/PaymentType.php index 55a96a81..77f63ade 100644 --- a/src/FedEx/PickupService/SimpleType/PaymentType.php +++ b/src/FedEx/PickupService/SimpleType/PaymentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the method of payment for a service. + * PaymentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/PendingShipmentProcessingOptionType.php b/src/FedEx/PickupService/SimpleType/PendingShipmentProcessingOptionType.php new file mode 100644 index 00000000..3e4236cb --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/PendingShipmentProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class PendingShipmentProcessingOptionType extends AbstractSimpleType +{ + const _ALLOW_MODIFICATIONS = 'ALLOW_MODIFICATIONS'; +} diff --git a/src/FedEx/PickupService/SimpleType/PendingShipmentType.php b/src/FedEx/PickupService/SimpleType/PendingShipmentType.php index 0bcdfdbf..9e1c4969 100644 --- a/src/FedEx/PickupService/SimpleType/PendingShipmentType.php +++ b/src/FedEx/PickupService/SimpleType/PendingShipmentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of service for a pending shipment. + * PendingShipmentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/PhysicalPackagingType.php b/src/FedEx/PickupService/SimpleType/PhysicalPackagingType.php index 87f7ac74..459311f6 100644 --- a/src/FedEx/PickupService/SimpleType/PhysicalPackagingType.php +++ b/src/FedEx/PickupService/SimpleType/PhysicalPackagingType.php @@ -18,8 +18,10 @@ class PhysicalPackagingType extends AbstractSimpleType const _BOX = 'BOX'; const _BUCKET = 'BUCKET'; const _BUNDLE = 'BUNDLE'; + const _CAGE = 'CAGE'; const _CARTON = 'CARTON'; const _CASE = 'CASE'; + const _CHEST = 'CHEST'; const _CONTAINER = 'CONTAINER'; const _CRATE = 'CRATE'; const _CYLINDER = 'CYLINDER'; @@ -27,12 +29,18 @@ class PhysicalPackagingType extends AbstractSimpleType const _ENVELOPE = 'ENVELOPE'; const _HAMPER = 'HAMPER'; const _OTHER = 'OTHER'; + const _PACKAGE = 'PACKAGE'; const _PAIL = 'PAIL'; const _PALLET = 'PALLET'; + const _PARCEL = 'PARCEL'; const _PIECE = 'PIECE'; const _REEL = 'REEL'; const _ROLL = 'ROLL'; + const _SACK = 'SACK'; + const _SHRINK_WRAPPED = 'SHRINK_WRAPPED'; const _SKID = 'SKID'; const _TANK = 'TANK'; + const _TOTE_BIN = 'TOTE_BIN'; const _TUBE = 'TUBE'; + const _UNIT = 'UNIT'; } diff --git a/src/FedEx/PickupService/SimpleType/PickupBuildingLocationType.php b/src/FedEx/PickupService/SimpleType/PickupBuildingLocationType.php index c6abaee1..92650617 100644 --- a/src/FedEx/PickupService/SimpleType/PickupBuildingLocationType.php +++ b/src/FedEx/PickupService/SimpleType/PickupBuildingLocationType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the valid set of valid building locations for package pickup. + * PickupBuildingLocationType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/PickupEventType.php b/src/FedEx/PickupService/SimpleType/PickupEventType.php index 23ce3826..20355e58 100644 --- a/src/FedEx/PickupService/SimpleType/PickupEventType.php +++ b/src/FedEx/PickupService/SimpleType/PickupEventType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Status of the pickup + * PickupEventType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/PickupRequestType.php b/src/FedEx/PickupService/SimpleType/PickupRequestType.php index fcf33d75..d614634d 100644 --- a/src/FedEx/PickupService/SimpleType/PickupRequestType.php +++ b/src/FedEx/PickupService/SimpleType/PickupRequestType.php @@ -4,9 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Describes the relationship between the date on which a dispatch occurs and the date on which it is created (scheduled) -by means of a CourierDispatchRequest. FUTURE_DAY means that the dispatch date is later than the date on which it is created. -SAME_DAY means that the dispatch is to occur on the date on which it is created. + * PickupRequestType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/PickupServiceCategoryType.php b/src/FedEx/PickupService/SimpleType/PickupServiceCategoryType.php new file mode 100644 index 00000000..222a81b3 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/PickupServiceCategoryType.php @@ -0,0 +1,23 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class PickupServiceCategoryType extends AbstractSimpleType +{ + const _FEDEX_DISTANCE_DEFERRED = 'FEDEX_DISTANCE_DEFERRED'; + const _FEDEX_NEXT_DAY_AFTERNOON = 'FEDEX_NEXT_DAY_AFTERNOON'; + const _FEDEX_NEXT_DAY_EARLY_MORNING = 'FEDEX_NEXT_DAY_EARLY_MORNING'; + const _FEDEX_NEXT_DAY_END_OF_DAY = 'FEDEX_NEXT_DAY_END_OF_DAY'; + const _FEDEX_NEXT_DAY_FREIGHT = 'FEDEX_NEXT_DAY_FREIGHT'; + const _FEDEX_NEXT_DAY_MID_MORNING = 'FEDEX_NEXT_DAY_MID_MORNING'; + const _SAME_DAY = 'SAME_DAY'; + const _SAME_DAY_CITY = 'SAME_DAY_CITY'; +} diff --git a/src/FedEx/PickupService/SimpleType/PickupType.php b/src/FedEx/PickupService/SimpleType/PickupType.php new file mode 100644 index 00000000..5da236b5 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/PickupType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class PickupType extends AbstractSimpleType +{ + const _ON_CALL = 'ON_CALL'; + const _TAG = 'TAG'; +} diff --git a/src/FedEx/PickupService/SimpleType/PriorityAlertEnhancementType.php b/src/FedEx/PickupService/SimpleType/PriorityAlertEnhancementType.php new file mode 100644 index 00000000..5c207d33 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/PriorityAlertEnhancementType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class PriorityAlertEnhancementType extends AbstractSimpleType +{ + const _PRIORITY_ALERT_PLUS = 'PRIORITY_ALERT_PLUS'; +} diff --git a/src/FedEx/PickupService/SimpleType/RateLevelBasisType.php b/src/FedEx/PickupService/SimpleType/RateLevelBasisType.php new file mode 100644 index 00000000..176002e5 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/RateLevelBasisType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class RateLevelBasisType extends AbstractSimpleType +{ + const _BUNDLED_RATE = 'BUNDLED_RATE'; + const _INDIVIDUAL_PACKAGE_RATE = 'INDIVIDUAL_PACKAGE_RATE'; +} diff --git a/src/FedEx/PickupService/SimpleType/RecommendedDocumentType.php b/src/FedEx/PickupService/SimpleType/RecommendedDocumentType.php new file mode 100644 index 00000000..f5901d8d --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/RecommendedDocumentType.php @@ -0,0 +1,41 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class RecommendedDocumentType extends AbstractSimpleType +{ + const _ANTIQUE_STATEMENT_EUROPEAN_UNION = 'ANTIQUE_STATEMENT_EUROPEAN_UNION'; + const _ANTIQUE_STATEMENT_UNITED_STATES = 'ANTIQUE_STATEMENT_UNITED_STATES'; + const _ASSEMBLER_DECLARATION = 'ASSEMBLER_DECLARATION'; + const _BEARING_WORKSHEET = 'BEARING_WORKSHEET'; + const _CERTIFICATE_OF_SHIPMENTS_TO_SYRIA = 'CERTIFICATE_OF_SHIPMENTS_TO_SYRIA'; + const _COMMERCIAL_INVOICE_FOR_THE_CARIBBEAN_COMMON_MARKET = 'COMMERCIAL_INVOICE_FOR_THE_CARIBBEAN_COMMON_MARKET'; + const _CONIFEROUS_SOLID_WOOD_PACKAGING_MATERIAL_TO_THE_PEOPLES_REPUBLIC_OF_CHINA = 'CONIFEROUS_SOLID_WOOD_PACKAGING_MATERIAL_TO_THE_PEOPLES_REPUBLIC_OF_CHINA'; + const _DECLARATION_FOR_FREE_ENTRY_OF_RETURNED_AMERICAN_PRODUCTS = 'DECLARATION_FOR_FREE_ENTRY_OF_RETURNED_AMERICAN_PRODUCTS'; + const _DECLARATION_OF_BIOLOGICAL_STANDARDS = 'DECLARATION_OF_BIOLOGICAL_STANDARDS'; + const _DECLARATION_OF_IMPORTED_ELECTRONIC_PRODUCTS_SUBJECT_TO_RADIATION_CONTROL_STANDARD = 'DECLARATION_OF_IMPORTED_ELECTRONIC_PRODUCTS_SUBJECT_TO_RADIATION_CONTROL_STANDARD'; + const _ELECTRONIC_INTEGRATED_CIRCUIT_WORKSHEET = 'ELECTRONIC_INTEGRATED_CIRCUIT_WORKSHEET'; + const _FILM_AND_VIDEO_CERTIFICATE = 'FILM_AND_VIDEO_CERTIFICATE'; + const _INTERIM_FOOTWEAR_INVOICE = 'INTERIM_FOOTWEAR_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_ENGLISH = 'NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_ENGLISH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_FRENCH = 'NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_FRENCH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_SPANISH = 'NAFTA_CERTIFICATE_OF_ORIGIN_SPANISH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_UNITED_STATES = 'NAFTA_CERTIFICATE_OF_ORIGIN_UNITED_STATES'; + const _PACKING_LIST = 'PACKING_LIST'; + const _PRINTED_CIRCUIT_BOARD_WORKSHEET = 'PRINTED_CIRCUIT_BOARD_WORKSHEET'; + const _REPAIRED_WATCH_BREAKOUT_WORKSHEET = 'REPAIRED_WATCH_BREAKOUT_WORKSHEET'; + const _STATEMENT_REGARDING_THE_IMPORT_OF_RADIO_FREQUENCY_DEVICES = 'STATEMENT_REGARDING_THE_IMPORT_OF_RADIO_FREQUENCY_DEVICES'; + const _TOXIC_SUBSTANCES_CONTROL_ACT = 'TOXIC_SUBSTANCES_CONTROL_ACT'; + const _UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_NON_TEXTILES = 'UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_NON_TEXTILES'; + const _UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_TEXTILES = 'UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_TEXTILES'; + const _UNITED_STATES_NEW_WATCH_WORKSHEET = 'UNITED_STATES_NEW_WATCH_WORKSHEET'; + const _UNITED_STATES_WATCH_REPAIR_DECLARATION = 'UNITED_STATES_WATCH_REPAIR_DECLARATION'; +} diff --git a/src/FedEx/PickupService/SimpleType/RequestedShippingDocumentType.php b/src/FedEx/PickupService/SimpleType/RequestedShippingDocumentType.php index 96908f99..35aebbad 100644 --- a/src/FedEx/PickupService/SimpleType/RequestedShippingDocumentType.php +++ b/src/FedEx/PickupService/SimpleType/RequestedShippingDocumentType.php @@ -17,11 +17,14 @@ class RequestedShippingDocumentType extends AbstractSimpleType const _CUSTOMER_SPECIFIED_LABELS = 'CUSTOMER_SPECIFIED_LABELS'; const _CUSTOM_PACKAGE_DOCUMENT = 'CUSTOM_PACKAGE_DOCUMENT'; const _CUSTOM_SHIPMENT_DOCUMENT = 'CUSTOM_SHIPMENT_DOCUMENT'; + const _DANGEROUS_GOODS_SHIPPERS_DECLARATION = 'DANGEROUS_GOODS_SHIPPERS_DECLARATION'; + const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _LABEL = 'LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; const _OP_900 = 'OP_900'; + const _PENDING_SHIPMENT_EMAIL_NOTIFICATION = 'PENDING_SHIPMENT_EMAIL_NOTIFICATION'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; const _RETURN_INSTRUCTIONS = 'RETURN_INSTRUCTIONS'; } diff --git a/src/FedEx/PickupService/SimpleType/ReturnType.php b/src/FedEx/PickupService/SimpleType/ReturnType.php index b2bf7a4c..28a9c6bb 100644 --- a/src/FedEx/PickupService/SimpleType/ReturnType.php +++ b/src/FedEx/PickupService/SimpleType/ReturnType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of return shipment that is being requested. + * ReturnType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/ServiceType.php b/src/FedEx/PickupService/SimpleType/ServiceType.php index befe3169..e1e14cc6 100644 --- a/src/FedEx/PickupService/SimpleType/ServiceType.php +++ b/src/FedEx/PickupService/SimpleType/ServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of available FedEx transportation service options. + * ServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -18,13 +18,35 @@ class ServiceType extends AbstractSimpleType const _FEDEX_2_DAY_AM = 'FEDEX_2_DAY_AM'; const _FEDEX_2_DAY_FREIGHT = 'FEDEX_2_DAY_FREIGHT'; const _FEDEX_3_DAY_FREIGHT = 'FEDEX_3_DAY_FREIGHT'; + const _FEDEX_CARGO_AIRPORT_TO_AIRPORT = 'FEDEX_CARGO_AIRPORT_TO_AIRPORT'; + const _FEDEX_CARGO_FREIGHT_FORWARDING = 'FEDEX_CARGO_FREIGHT_FORWARDING'; + const _FEDEX_CARGO_INTERNATIONAL_EXPRESS_FREIGHT = 'FEDEX_CARGO_INTERNATIONAL_EXPRESS_FREIGHT'; + const _FEDEX_CARGO_INTERNATIONAL_PREMIUM = 'FEDEX_CARGO_INTERNATIONAL_PREMIUM'; + const _FEDEX_CARGO_MAIL = 'FEDEX_CARGO_MAIL'; + const _FEDEX_CARGO_REGISTERED_MAIL = 'FEDEX_CARGO_REGISTERED_MAIL'; + const _FEDEX_CARGO_SURFACE_MAIL = 'FEDEX_CARGO_SURFACE_MAIL'; + const _FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE = 'FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE'; + const _FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_EXCLUSIVE_USE = 'FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_EXCLUSIVE_USE'; + const _FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_NETWORK = 'FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_NETWORK'; + const _FEDEX_CUSTOM_CRITICAL_CHARTER_AIR = 'FEDEX_CUSTOM_CRITICAL_CHARTER_AIR'; + const _FEDEX_CUSTOM_CRITICAL_POINT_TO_POINT = 'FEDEX_CUSTOM_CRITICAL_POINT_TO_POINT'; + const _FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE = 'FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE'; + const _FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE_EXCLUSIVE_USE = 'FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE_EXCLUSIVE_USE'; + const _FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_AIR = 'FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_AIR'; + const _FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_VALIDATED_AIR = 'FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_VALIDATED_AIR'; + const _FEDEX_CUSTOM_CRITICAL_WHITE_GLOVE_SERVICES = 'FEDEX_CUSTOM_CRITICAL_WHITE_GLOVE_SERVICES'; + const _FEDEX_DISTANCE_DEFERRED = 'FEDEX_DISTANCE_DEFERRED'; const _FEDEX_EXPRESS_SAVER = 'FEDEX_EXPRESS_SAVER'; const _FEDEX_FIRST_FREIGHT = 'FEDEX_FIRST_FREIGHT'; - const _FEDEX_FREIGHT = 'FEDEX_FREIGHT'; const _FEDEX_FREIGHT_ECONOMY = 'FEDEX_FREIGHT_ECONOMY'; const _FEDEX_FREIGHT_PRIORITY = 'FEDEX_FREIGHT_PRIORITY'; const _FEDEX_GROUND = 'FEDEX_GROUND'; - const _FEDEX_NATIONAL_FREIGHT = 'FEDEX_NATIONAL_FREIGHT'; + const _FEDEX_INTERNATIONAL_PRIORITY_PLUS = 'FEDEX_INTERNATIONAL_PRIORITY_PLUS'; + const _FEDEX_NEXT_DAY_AFTERNOON = 'FEDEX_NEXT_DAY_AFTERNOON'; + const _FEDEX_NEXT_DAY_EARLY_MORNING = 'FEDEX_NEXT_DAY_EARLY_MORNING'; + const _FEDEX_NEXT_DAY_END_OF_DAY = 'FEDEX_NEXT_DAY_END_OF_DAY'; + const _FEDEX_NEXT_DAY_FREIGHT = 'FEDEX_NEXT_DAY_FREIGHT'; + const _FEDEX_NEXT_DAY_MID_MORNING = 'FEDEX_NEXT_DAY_MID_MORNING'; const _FIRST_OVERNIGHT = 'FIRST_OVERNIGHT'; const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; const _INTERNATIONAL_DISTRIBUTION_FREIGHT = 'INTERNATIONAL_DISTRIBUTION_FREIGHT'; @@ -32,11 +54,13 @@ class ServiceType extends AbstractSimpleType const _INTERNATIONAL_ECONOMY_DISTRIBUTION = 'INTERNATIONAL_ECONOMY_DISTRIBUTION'; const _INTERNATIONAL_ECONOMY_FREIGHT = 'INTERNATIONAL_ECONOMY_FREIGHT'; const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; - const _INTERNATIONAL_GROUND = 'INTERNATIONAL_GROUND'; const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; + const _SAME_DAY = 'SAME_DAY'; + const _SAME_DAY_CITY = 'SAME_DAY_CITY'; const _SAME_DAY_METRO_AFTERNOON = 'SAME_DAY_METRO_AFTERNOON'; const _SAME_DAY_METRO_MORNING = 'SAME_DAY_METRO_MORNING'; const _SAME_DAY_METRO_RUSH = 'SAME_DAY_METRO_RUSH'; diff --git a/src/FedEx/PickupService/SimpleType/ShipmentDryIceProcessingOptionType.php b/src/FedEx/PickupService/SimpleType/ShipmentDryIceProcessingOptionType.php new file mode 100644 index 00000000..52656d18 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/ShipmentDryIceProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class ShipmentDryIceProcessingOptionType extends AbstractSimpleType +{ + const _SHIPMENT_LEVEL_DRY_ICE_ONLY = 'SHIPMENT_LEVEL_DRY_ICE_ONLY'; +} diff --git a/src/FedEx/PickupService/SimpleType/EMailNotificationAggregationType.php b/src/FedEx/PickupService/SimpleType/ShipmentNotificationAggregationType.php similarity index 73% rename from src/FedEx/PickupService/SimpleType/EMailNotificationAggregationType.php rename to src/FedEx/PickupService/SimpleType/ShipmentNotificationAggregationType.php index d694f0f8..d84a02e5 100644 --- a/src/FedEx/PickupService/SimpleType/EMailNotificationAggregationType.php +++ b/src/FedEx/PickupService/SimpleType/ShipmentNotificationAggregationType.php @@ -4,13 +4,13 @@ use FedEx\AbstractSimpleType; /** - * EMailNotificationAggregationType + * ShipmentNotificationAggregationType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service */ -class EMailNotificationAggregationType extends AbstractSimpleType +class ShipmentNotificationAggregationType extends AbstractSimpleType { const _PER_PACKAGE = 'PER_PACKAGE'; const _PER_SHIPMENT = 'PER_SHIPMENT'; diff --git a/src/FedEx/PickupService/SimpleType/EMailNotificationRecipientType.php b/src/FedEx/PickupService/SimpleType/ShipmentNotificationRoleType.php similarity index 51% rename from src/FedEx/PickupService/SimpleType/EMailNotificationRecipientType.php rename to src/FedEx/PickupService/SimpleType/ShipmentNotificationRoleType.php index 0890a463..1fdde7bc 100644 --- a/src/FedEx/PickupService/SimpleType/EMailNotificationRecipientType.php +++ b/src/FedEx/PickupService/SimpleType/ShipmentNotificationRoleType.php @@ -4,13 +4,13 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. + * ShipmentNotificationRoleType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Pickup Service */ -class EMailNotificationRecipientType extends AbstractSimpleType +class ShipmentNotificationRoleType extends AbstractSimpleType { const _BROKER = 'BROKER'; const _OTHER = 'OTHER'; diff --git a/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php index 8aec4296..0cdd8a13 100644 --- a/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of special service offered by FedEx. BROKER_SELECT_OPTION should be used for Express shipments only. + * ShipmentSpecialServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -27,8 +27,8 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _DRY_ICE = 'DRY_ICE'; const _EAST_COAST_SPECIAL = 'EAST_COAST_SPECIAL'; const _ELECTRONIC_TRADE_DOCUMENTS = 'ELECTRONIC_TRADE_DOCUMENTS'; - const _EMAIL_NOTIFICATION = 'EMAIL_NOTIFICATION'; - const _EMAIL_NOTIFICATION_AGGREGATED = 'EMAIL_NOTIFICATION_AGGREGATED'; + const _EVENT_NOTIFICATION = 'EVENT_NOTIFICATION'; + const _EXCLUDE_FROM_CONSOLIDATION = 'EXCLUDE_FROM_CONSOLIDATION'; const _EXCLUSIVE_USE = 'EXCLUSIVE_USE'; const _EXHIBITION_DELIVERY = 'EXHIBITION_DELIVERY'; const _EXHIBITION_PICKUP = 'EXHIBITION_PICKUP'; @@ -38,6 +38,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _EXPEDITED_STANDARD_DAY_EARLY_DELIVERY = 'EXPEDITED_STANDARD_DAY_EARLY_DELIVERY'; const _EXTRA_LABOR = 'EXTRA_LABOR'; const _EXTREME_LENGTH = 'EXTREME_LENGTH'; + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FLATBED_TRAILER = 'FLATBED_TRAILER'; const _FOOD = 'FOOD'; const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; @@ -51,6 +52,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _INSIDE_PICKUP = 'INSIDE_PICKUP'; const _INTERNATIONAL_CONTROLLED_EXPORT_SERVICE = 'INTERNATIONAL_CONTROLLED_EXPORT_SERVICE'; const _INTERNATIONAL_MAIL_SERVICE = 'INTERNATIONAL_MAIL_SERVICE'; + const _INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS = 'INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS'; const _LIFTGATE_DELIVERY = 'LIFTGATE_DELIVERY'; const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; @@ -63,6 +65,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _PENDING_COMPLETE = 'PENDING_COMPLETE'; const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; const _PERMIT = 'PERMIT'; + const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; const _POISON = 'POISON'; const _PORT_DELIVERY = 'PORT_DELIVERY'; const _PORT_PICKUP = 'PORT_PICKUP'; @@ -72,6 +75,8 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; const _REGIONAL_MALL_DELIVERY = 'REGIONAL_MALL_DELIVERY'; const _REGIONAL_MALL_PICKUP = 'REGIONAL_MALL_PICKUP'; + const _RETURNS_CLEARANCE = 'RETURNS_CLEARANCE'; + const _RETURNS_CLEARANCE_SPECIAL_ROUTING_REQUIRED = 'RETURNS_CLEARANCE_SPECIAL_ROUTING_REQUIRED'; const _RETURN_SHIPMENT = 'RETURN_SHIPMENT'; const _SATURDAY_DELIVERY = 'SATURDAY_DELIVERY'; const _SATURDAY_PICKUP = 'SATURDAY_PICKUP'; diff --git a/src/FedEx/PickupService/SimpleType/TinType.php b/src/FedEx/PickupService/SimpleType/TinType.php index 008cb88a..ef144857 100644 --- a/src/FedEx/PickupService/SimpleType/TinType.php +++ b/src/FedEx/PickupService/SimpleType/TinType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the category of the taxpayer identification number. + * TinType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/TrackingIdType.php b/src/FedEx/PickupService/SimpleType/TrackingIdType.php new file mode 100644 index 00000000..9fbd6374 --- /dev/null +++ b/src/FedEx/PickupService/SimpleType/TrackingIdType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Pickup Service + */ +class TrackingIdType extends AbstractSimpleType +{ + const _EXPRESS = 'EXPRESS'; + const _FEDEX = 'FEDEX'; + const _FREIGHT = 'FREIGHT'; + const _GROUND = 'GROUND'; + const _USPS = 'USPS'; +} diff --git a/src/FedEx/PickupService/SimpleType/TrailerSizeType.php b/src/FedEx/PickupService/SimpleType/TrailerSizeType.php index cc27b15b..43e5c51e 100644 --- a/src/FedEx/PickupService/SimpleType/TrailerSizeType.php +++ b/src/FedEx/PickupService/SimpleType/TrailerSizeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the valid set of tractor tailer sizes supported by FedEx. This type is appropriate only for freight pickup requests. + * TrailerSizeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/TruckType.php b/src/FedEx/PickupService/SimpleType/TruckType.php index 09a0cc95..68a00287 100644 --- a/src/FedEx/PickupService/SimpleType/TruckType.php +++ b/src/FedEx/PickupService/SimpleType/TruckType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the valid set of truck types supported by FedEx. This type is appropriate only for freight pickup requests. + * TruckType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/PickupService/SimpleType/UploadDocumentIdProducer.php b/src/FedEx/PickupService/SimpleType/UploadDocumentIdProducer.php index 5ba51c81..55b89e04 100644 --- a/src/FedEx/PickupService/SimpleType/UploadDocumentIdProducer.php +++ b/src/FedEx/PickupService/SimpleType/UploadDocumentIdProducer.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * UploadDocumentIdProducer + * Specifies the application that is responsible for managing the document id. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,10 @@ class UploadDocumentIdProducer extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; + const _FEDEX_CAFE = 'FEDEX_CAFE'; const _FEDEX_CSHP = 'FEDEX_CSHP'; + const _FEDEX_FXRS = 'FEDEX_FXRS'; + const _FEDEX_GSMW = 'FEDEX_GSMW'; const _FEDEX_GTM = 'FEDEX_GTM'; + const _FEDEX_INET = 'FEDEX_INET'; } diff --git a/src/FedEx/PickupService/SimpleType/UploadDocumentProducerType.php b/src/FedEx/PickupService/SimpleType/UploadDocumentProducerType.php index 7d7a61aa..2472f8a5 100644 --- a/src/FedEx/PickupService/SimpleType/UploadDocumentProducerType.php +++ b/src/FedEx/PickupService/SimpleType/UploadDocumentProducerType.php @@ -17,6 +17,7 @@ class UploadDocumentProducerType extends AbstractSimpleType const _FEDEX_CLS = 'FEDEX_CLS'; const _FEDEX_FIDT = 'FEDEX_FIDT'; const _FEDEX_FXRS = 'FEDEX_FXRS'; + const _FEDEX_GSMW = 'FEDEX_GSMW'; const _FEDEX_GTM = 'FEDEX_GTM'; const _OTHER = 'OTHER'; } diff --git a/src/FedEx/PickupService/SimpleType/UploadDocumentType.php b/src/FedEx/PickupService/SimpleType/UploadDocumentType.php index 288193f8..792c4e9f 100644 --- a/src/FedEx/PickupService/SimpleType/UploadDocumentType.php +++ b/src/FedEx/PickupService/SimpleType/UploadDocumentType.php @@ -16,6 +16,7 @@ class UploadDocumentType extends AbstractSimpleType const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; const _ETD_LABEL = 'ETD_LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _NET_RATE_SHEET = 'NET_RATE_SHEET'; const _OTHER = 'OTHER'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; } diff --git a/src/FedEx/PickupService/SimpleType/WeightUnits.php b/src/FedEx/PickupService/SimpleType/WeightUnits.php index 52bf6260..8e969a67 100644 --- a/src/FedEx/PickupService/SimpleType/WeightUnits.php +++ b/src/FedEx/PickupService/SimpleType/WeightUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of units of measure that can be associated with a weight value. + * WeightUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/_wsdl/PickupService_v15.wsdl b/src/FedEx/_wsdl/PickupService_v15.wsdl new file mode 100755 index 00000000..a6040bda --- /dev/null +++ b/src/FedEx/_wsdl/PickupService_v15.wsdl @@ -0,0 +1,2408 @@ + + + + + + + + + + + + Specifies the role that identifies the permissions the accessor of the pending shipment. + + + + + + + + + Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). + + + + + Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + + + + + Name of city, town, etc. + + + + + Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + + + + + Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + + + + + Relevant only to addresses in Puerto Rico. + + + + + The two-letter code used to identify a country. + + + + + The fully spelt out name of a country. + + + + + Indicates whether this address residential (as opposed to commercial). + + + + + The geographic coordinates cooresponding to this address. + + + + + + + + + + + + + This enumeration represents a kind of "legacy" account number from a FedEx operating entity. + + + + + + + + + + + + + + + + + + + + + + + + + + + Human readable message from dispatch system. + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + The local date which the pickup was originally scheduled to be picked up on. The date provided is the local to the client of the request. The date specification does not include any time zone designators. + + + + + + + + + The reason for canceling the pickup request. + + + + + Identifies the name of the person that requested pickup cancellation. + + + + + Identifies the phone number of the person that requested pickup cancellation. + + + + + Identifies the phone extension of the person that requested pickup cancellation. + + + + + + + Identification of a FedEx operating company (transportation). + + + + + + + + + + + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + Indicates the region from which the transaction is submitted. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + + + + + + + + + + + + + + + + + Select the type of rate from which the element is to be selected. + + + + + + + Select the type of rate used to calculate the percentage value of variable handling. + + + + + + + Identifies the type of funds FedEx should collect upon shipment delivery. + + + + + + + + + + + + Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. + + + + + + Specifies the details of the charges are to be added to the COD collect amount. + + + + + Identifies the type of funds FedEx should collect upon package delivery + + + + + For Express this is the descriptive data that is used for the recipient of the FedEx Letter containing the COD payment. For Ground this is the descriptive data for the party to receive the payment that prints the COD receipt. + + + + + When the FedEx COD payment type is not CASH, indicates the contact and address of the financial institution used to service the payment of the COD. + + + + + Specifies the name of person or company receiving the secured/unsecured funds payment + + + + + Indicates which type of reference information to include on the COD return shipping label. + + + + + Only used with multi-piece COD shipments sent in multiple transactions. Required on last transaction only. + + + + + + + + + + + + + + + Data resulting from the processing of an LTL Freight pickup request. + + + + + Describes the origin service center handling the pickup. + + + + + Describes the results for each line item in the original request. + + + + + Total number of pieces from all line items from request. + + + + + Total weight from all line items from request. + + + + + Total handling units from all line items from request. + + + + + Resulting status of pickup. + + + + + + + Data resulting from the processing of an individual line item in a LTL Freight pickup request. + + + + + Identifies the line item, to match reply line with request line. + + + + + Describes the destination service center handling the delivery of this line item. + + + + + Total travel time for this line item. + + + + + Identifies estimated delivery date and time for each line item. + + + + + + + The descriptive data for a point-of-contact person. + + + + + Client provided identifier corresponding to this contact information. + + + + + Identifies the contact person's name. + + + + + Identifies the contact person's title. + + + + + Identifies the company this contact is associated with. + + + + + Identifies the phone number associated with this contact. + + + + + Identifies the phone extension associated with this contact. + + + + + Identifies a toll free number, if any, associated with this contact. + + + + + Identifies the pager number associated with this contact. + + + + + Identifies the fax number associated with this contact. + + + + + Identifies the email address associated with this contact. + + + + + + + + + + + + + Describes relationship between origin and destination countries. + + + + + + + + + + + + + + + + + Coded value supplied by dispatch system. + + + + + Message supplied by dispatch system. + + + + + Package Return Program control number + + + + + Used with "stay late" requests; postal-code specific. + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + Specifies the tracking number to be used for processing a pickup for a return shipment. + + + + + + + + + + + + + This field is being deprecated and will not be removed in the June 2014 load. + + + + + + Describes the country relationship (domestic and/or international) among the shipments being picked up. + + + + + + + + + Indicates the type of custom delivery being requested. + + + + + Time by which delivery is requested. + + + + + Range of dates for custom delivery request; only used if type is BETWEEN. + + + + + Date for custom delivery request; only used for types of ON, BETWEEN, or AFTER. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the tracking id for the return, if preassigned. + + + + + + + Specifications for pup/set or vehicle delayed for loading or unloading. + + + + + Amount of time involved in the detention. + + + + + + + + + + + + + + + Driving or other transportation distances, distinct from dimension measurements. + + + + + Identifies the distance quantity. + + + + + Identifies the unit of measure for the distance value. + + + + + + + + + + + + + + + + Specifies the name associated with the email address. + + + + + + + + + Content of the email message. + + + + + + + + Information describing the address of of the email recipient, role of the email recipient and languages that are requested to be supported. + + + + + EMail address of the recipient. + + + + + The relationship that the customer has to the pending shipment. + + + + + Specifies how the email notification for the pending shipment need to be processed. + + + + + Localization and language details specified by the recipient of the EMail. + + + + + + + + + + + + + + Specifies how to apply the localization detail to the current context. + + + + + + + + + + + + + Specifies whether to confirm documents prior to processing a shipment with the ELECTRONIC_TRADE_DOCUMENTS special service. + + + + + + + + + Electronic Trade document references used with the ETD special service. + + + + + Specifies client's intent for whether all documents must be confirmed before shipment processing. + + + + + + Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. + + + + + + + + + + + + + + + + + + Indicates a FedEx Express operating region. + + + + + + + + + + + + Specification for labor time spent handling shipment. + + + + + Total labor time. + + + + + + + + + + + + Identifies a kind of FedEx facility. + + + + + + + + + + + + + + + + + Specifies the optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. + + + + + + + + + + + + + + + + + Date for all Freight guarantee types. + + + + + Time for GUARANTEED_TIME only. + + + + + + + + + + + + + + + + Contact Information of origin service center representative that authorized the pickup + + + + + + + Used in connection with "Send Bill To" (SBT) identification of customer's account used for billing. + + + + + + + + + + + + + Identifies the line item, to match reply line with request line. + + + + + + + + + + + + + + + + This class describes the relationship between a customer-specified address and the FedEx Freight / FedEx National Freight Service Center that supports that address. + + + + + Freight Industry standard non-FedEx carrier identification + + + + + The name of the Interline carrier. + + + + + Additional time it might take at the origin or destination to pickup or deliver the freight. This is usually due to the remoteness of the location. This time is included in the total transit time. + + + + + Service branding which may be used for local pickup or delivery, distinct from service used for line-haul of customer's shipment. + + + + + Distance between customer address (pickup or delivery) and the supporting Freight / National Freight service center. + + + + + Time to travel between customer address (pickup or delivery) and the supporting Freight / National Freight service center. + + + + + Specifies when/how the customer can arrange for pickup or delivery. + + + + + Specifies days of operation if localServiceScheduling is LIMITED. + + + + + Freight service center that is a gateway on the border of Canada or Mexico. + + + + + Alphabetical code identifying a Freight Service Center + + + + + Freight service center Contact and Address + + + + + + + Specifies the type of service scheduling offered from a Freight or National Freight Service Center to a customer-supplied address. + + + + + + + + + + Indicates the role of the party submitting the transaction. + + + + + + + + + Indicates which kind of hazardous content is being reported. + + + + + + + + + + + + + Identifies the source of regulation for hazardous commodity data. + + + + + + + + + + + + + Contact phone number for recipient of shipment. + + + + + Contact and address of FedEx facility at which shipment is to be held. + + + + + Type of facility at which package/shipment is to be held. + + + + + Location identification (for facilities identified by an alphanumeric location code). + + + + + Location identification (for facilities identified by an numeric location code). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + Specification for marking or tagging of pieces in shipment. + + + + + Number of pieces to be marked or tagged by FedEx. + + + + + + + + + + + + + Specification for services performed during non-business hours and/or days. + + + + + Total number of person days for full non-business days. + + + + + Total number of person hours (whole or partial hours) for non-business hours. + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Indicates the type of notification that will be sent. + + + + + Specifies the email notification details. + + + + + Specifies the fax notification details. + + + + + Specifies the SMS notification details. + + + + + Specifies the localization for this notification. + + + + + + + + + + + + + + + + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifications for pallets to be shrinkwrapped as part of a Freight shipment. + + + + + Number of pallets to be shrinkwrapped. + + + + + + + Specifications for pallets to be provided on Freight shipment. + + + + + Number of pallets to be provided. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This information describes the kind of pending shipment being requested. + + + + + + Date after which the pending shipment will no longer be available for completion. + + + + + Only used with type of EMAIL. + + + + + + These are documents that are recommended to be included with the shipment. + + + + + Upload document details provided by the initator of the shipment. + + + + + + + + + + + + + + + + + + + + + + This enumeration rationalizes the former FedEx Express international "admissibility package" types (based on ANSI X.12) and the FedEx Freight packaging types. The values represented are those common to both carriers. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identifies whether the close time is specified by the customer or is the default time. + + + + + Close time corresponding to the above specified type + + + + + + Local time of the service center that will service the pickup + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + Identifies the account number for Freight Pickup Availability + + + + + + + + Number of business days to consider when checking availability. + + + + + + + + + + + + + + + + + + + + + + Describes the regulation type the pickup dangerous goods. + + + + + + Specifies the option types of the pickup dangerous goods. + + + + + + + + + + + + + + + + + + + FedEx USE ONLY (with IVR client) + + + + + + + + + + + FedEx IVR Only. Customer is willing to stay late for pickup. + + + + + FedEx USE ONLY (with IVR client) + + + + + FedEx IVR Only + + + + + Alternate postal code tied to pickup location (European pickups) + + + + + FedEx USE ONLY + + + + + FedEx USE ONLY (with IVR client) + + + + + + Applies only to Europe + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates whether residential pickup is available for the requested postal code. + + + + + Describes the country relationship (domestic and/or international) among the shipments being picked up. + + + + + + + Specifies the service category for the pick up being scheduled. + + + + + + + + + + + + + + + + + + + + + + + These values indicate the type of pickup being requested. + + + + + + + + + + + + + + + + + + + + + + + + + + Select the type of rate from which the element is to be selected. + + + + + + + + + + + + Specifies the details about documents that are recommended to be included with the shipment for ease of shipment processing and transportation. + + + + + + + + Type of documents that are recommended to be included with the shipment. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the tracking number of the master associated with the return shipment. + + + + + + + + These values are used to control the availability of certain special services at the time when a customer uses the e-mail label link to create a return shipment. + + + + + + + + + + + + Identifies the allowed (merchant-authorized) special services which may be selected when the subsequent shipment is created. Only services represented in EMailLabelAllowedSpecialServiceType will be controlled by this list. + + + + + + + + + + + + + + + + + + + + + + + + June 2011 ITG 121203 IR-RMA number has been removed from this structure and added as a new customer reference type. The structure remains because of the reason field below. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specification for assembly performed on shipment. + + + + + Number of pieces or packages to be assembled + + + + + Total weight of pieces or packages to be assembled + + + + + + + Shipment-level totals of dry ice data across all packages. + + + + + Total number of packages in the shipment that contain dry ice. + + + + + Total shipment dry ice weight for all packages. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + These special services are available at the shipment level for some or all service types. If the shipper is requesting a special service which requires additional data (such as the COD amount), the shipment special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. + + + + + The types of all special services requested for the enclosing shipment (or other shipment-level transaction). + + + + + + + + This replaces eMailNotificationDetail + + + + + + This field should be populated for pending shipments (e.g. e-mail label) It is required by a PENDING_SHIPMENT special service type. + + + + + + + + + + + Electronic Trade document references. + + + + + Specification for labor to be performed with the shipment. + + + + + Specifications for pallets to be shrinkwrapped as part of a Freight shipment. + + + + + Specifications for pallets to be provided on Freight shipment. + + + + + Specifications for pup/set or vehicle delayed for loading or unloading. + + + + + Specification for marking or tagging of pieces in shipment. + + + + + Specification for services performed during non-business hours and/or days. + + + + + Specification for assembly performed on shipment. + + + + + Specification for sorting and/or segregating performed on shipment. + + + + + Specification for special equipment used in loading/unloading shipment. + + + + + Specification for storage provided for shipment. + + + + + Specification for weighing services provided for shipment. + + + + + Specification for date or range of dates on which delivery is to be attempted. + + + + + + + + + + + + + Specification for sorting and/or segregating performed on shipment. + + + + + Number of pieces or packages to be sorted/segregated + + + + + Total weight of pieces or packages to be sorted/segregated + + + + + + + Specification for special equipment used in loading/unloading shipment. + + + + + Contains an entry for each type of special equipment used with shipment + + + + + + + Specifies the usage of a single type of special equipment while loading/unloading a shipment + + + + + Type of equipment used + + + + + Total amount of time the equipment was used + + + + + + + Identifies types of special equipment used in loading/unloading Freight shipments + + + + + + + + Specification for storage provided for shipment. + + + + + Total time shipment is held by carrier. + + + + + + + + + + + Identifies the usage of Tax Identification Number in Shipment processing + + + + + + + + + + + + + + + + + + + + + + For use with SmartPost tracking IDs only + + + + + + + + + + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + + + + + + + + + + + + + + + + Specifies the date until which the document is available + + + + + + + Specifies the application that is responsible for managing the document id. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Description of the uploaded document. + + + + + + + + + + + + + + + + + + + + + + Specifies a single type of weighing performed on a shipment + + + + + Type of scale used + + + + + + + Identifies types of scales used in weighing Freight shipments + + + + + + + + + The descriptive data for the heaviness of an object. + + + + + Identifies the unit of measure associated with a weight value. + + + + + Identifies the weight value of a package/shipment. + + + + + + + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FedEx/_wsdl/PickupService_v3.wsdl b/src/FedEx/_wsdl/PickupService_v3.wsdl deleted file mode 100644 index 1dc63ecd..00000000 --- a/src/FedEx/_wsdl/PickupService_v3.wsdl +++ /dev/null @@ -1,2761 +0,0 @@ - - - - - - - - - - - - Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). - - - - - Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. - - - - - Name of city, town, etc. - - - - - Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. - - - - - Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. - - - - - Relevant only to addresses in Puerto Rico. - - - - - The two-letter code used to identify a country. - - - - - Indicates whether this address residential (as opposed to commercial). - - - - - - - - - - - - - This enumeration represents a kind of "legacy" account number from a FedEx operating entity. - - - - - - - - - - - - Identifies the valid set of building part types when requesting a package pickup. - - - - - - - - - - - - - The descriptive data returned to a client in response to a cancel dispatch request. - - - - - Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - - - - - The descriptive data detailing the status of a sumbitted transaction. - - - - - Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Human readable message from dispatch system. - - - - - - - The descriptive data to cancel a shipment pickup request. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - The descriptive data identifying the client submitting the transaction. - - - - - The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies the FedEx operating company (transportation) that was sent the pickup that is being canceled. - - - - - Identifies the pickup confirmation number that is being canceled. The pickup confirmation number was returned to the client when the pickup was requested. - - 30 - - - - - - Identifies the scheduled date for the pickup that is being canceled. The scheduled date was provided by the client when the pickup was requested. - - - - - - Identifies the FedEx location identifier responsible for processing the package pickup that is being canceled. The FedEx location identifier was returned to the client when the pickup was requested. Required for Express service type. - - 5 - - - - - - Identifies comments the customer wants to convey to the FedEx courier regarding the package pickup. - - 60 - - - - - - - The reason for canceling the pickup request. - - - - - Identifies the name of the person that requested pickup cancellation. - - - - - Identifies the phone number of the person that requested pickup cancellation. - - - - - Identifies the phone extension of the person that requested pickup cancellation. - - - - - - - Identification of a FedEx operating company (transportation). - - - - - - - - - - - - - - - - - - - Descriptive data for the client submitting a transaction. - - - - - The FedEx account number associated with this transaction. - - - - - This number is assigned by FedEx and identifies the unique device from which the request is originating - - - - - - Only used in transactions which require identification of the Fed Ex Office integrator. - - - - - Indicates the region from which the transaction is submitted. - - - - - The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - - - - - - - - - - - - - - - - - - - - - - - - - - - - Identifies the type of funds FedEx should collect upon shipment delivery. - - - - - - - - - - - - Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. - - - - - - Specifies the details of the charges are to be added to the COD collect amount. - - - - - Identifies the type of funds FedEx should collect upon package delivery - - - - - For Express this is the descriptive data that is used for the recipient of the FedEx Letter containing the COD payment. For Ground this is the descriptive data for the party to receive the payment that prints the COD receipt. - - - - - Indicates which type of reference information to include on the COD return shipping label. - - - - - - - Indicates which type of reference information to include on the COD return shipping label. - - - - - - - - - - - Data resulting from the processing of an LTL Freight pickup request. - - - - - Describes the origin service center handling the pickup. - - - - - Describes the results for each line item in the original request. - - - - - Total number of pieces from all line items from request. - - - - - Total weight from all line items from request. - - - - - Total handling units from all line items from request. - - - - - Resulting status of pickup. - - - - - - - Data resulting from the processing of an individual line item in a LTL Freight pickup request. - - - - - Identifies the line item, to match reply line with request line. - - - - - Describes the destination service center handling the delivery of this line item. - - - - - Total travel time for this line item. - - - - - Identifies estimated delivery date and time for each line item. - - - - - - - The descriptive data for a point-of-contact person. - - - - - Client provided identifier corresponding to this contact information. - - - - - Identifies the contact person's name. - - - - - Identifies the contact person's title. - - - - - Identifies the company this contact is associated with. - - - - - Identifies the phone number associated with this contact. - - - - - Identifies the phone extension associated with this contact. - - - - - Identifies the pager number associated with this contact. - - - - - Identifies the fax number associated with this contact. - - - - - Identifies the email address associated with this contact. - - - - - - - The descriptive data for a person or company entitiy doing business with FedEx. - - - - - Descriptive data identifying the point-of-contact person. - - - - - The descriptive data for a physical location. - - - - - - - Describes relationship between origin and destination countries. - - - - - - - - - The descriptive data returned to a client in response to a shipment pickup request. - - - - - Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - - - - - The descriptive data detailing the status of a sumbitted transaction. - - - - - Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies the confirmation number assigned by FedEx for the request. - - 30 - - - - - - Identifies the FedEx Location identifier responsible for processing the pickup of the package. - - 5 - - - - - - Coded value supplied by dispatch system. - - - - - Message supplied by dispatch system. - - - - - Package Return Program control number - - - - - Used with "stay late" requests; postal-code specific. - - - - - Data resulting from the processing of an LTL Freight pickup request. - - - - - - - The descriptive data to schedule a FedEx package pickup request. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - The descriptive data identifying the client submitting the transaction. - - - - - The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - - Descriptive data about the origin of the shipment being picked up by FedEx. - - - - - Descriptive data for a freight shipment being picked up by FedEx. This is element is only required when requesting a freight service pickup and should not be used for other types of pickups including express freight pickups. - - - - - Descriptive data for an express freight shipment being picked up by FedEx. This is element is only required when requesting a express freight service pickup and should not be used for other types of pickups. - - - - - Identifies the number of packages that are being tendered to FedEx for this pickup request. - - - - - Identifies the total weight of the package or packages being tendered to FedEx for this pickup request. - - - - - Identifies the FedEx operating company (transportation) that is being sent the package pickup request. - - - - - Identifies the number of oversize packages that are being tendered to FedEx for this pickup request. Please refer to the FedEx Service Guide for package size limits to determine if a package is oversized for the service being shipped. - - - - - Identifies any remarks or comments to be passed to the FedEx courier picking up the shipment. - - 60 - - - - - - Identifies the type of commodity being shipped. This element is required for an international shipment. - - 20 - - - - - - Describes the country relationship (domestic and/or international) among the shipments being picked up. - - - - - - - - - - - Must be in one of the following formats: YYMM, YYYYMM, or YYYYMMDD. - - - - - - - - - - - - - - - - This class represents data tied to the use of a credit card in a specific transaction. - - - - - - - - - - - - - - - - - - - This class is a rename of the previous VerifyCreditFraudDetail; the name change reflects the fact that it is no longer tied to a "verify" usage. - - - - - - - - - - - - Indicates the type of custom delivery being requested. - - - - - Time by which delivery is requested. - - - - - Range of dates for custom delivery request; only used if type is BETWEEN. - - - - - Date for custom delivery request; only used for types of ON, BETWEEN, or AFTER. - - - - - - - - - - - - - - - - - The beginning date in a date range. - - - - - The end date in a date range. - - - - - - - - - - - - - - - - - - Specifications for pup/set or vehicle delayed for loading or unloading. - - - - - Amount of time involved in the detention. - - - - - - - Descriptive data detailing the length, width, and height of a package. - - - - - Identifies the length of the package. - - - - - Identifies the width of the package. - - - - - Identifies the height of the package. - - - - - Identifies the unit of measure associated with a dimensional values. See LinearUnits for valid values. - - - - - - - Driving or other transportation distances, distinct from dimension measurements. - - - - - Identifies the distance quantity. - - - - - Identifies the unit of measure for the distance value. - - - - - - - Identifies the unit of measure for the distance value. - - - - - - - - - Describes specific information about the email label shipment. - - - - - Notification email will be sent to this email address - - - - - Message to be sent in the notification email - - - - - - - - - - - - - Information describing email notifications that will be sent in relation to events that occur during package movement - - - - - Specifies whether/how email notifications are grouped. - - - - - A message that will be included in the email notifications - - - - - Information describing the destination of the email, format of the email and events to be notified on - - - - - - - - - - - - - - - The format of the email - - - - - - - - - - The descriptive data for a FedEx email notification recipient. - - - - - Identifies the relationship this email recipient has to the shipment. - - - - - The email address to send the notification to - - - - - The types of email notifications being requested for this recipient. - - - - - The format of the email notification. - - - - - The language/locale to be used in this email notification. - - - - - - - Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. - - - - - - - - - - - - Specifies whether to confirm documents prior to processing a shipment with the ELECTRONIC_TRADE_DOCUMENTS special service. - - - - - - - - - Electronic Trade document references used with the ETD special service. - - - - - Specifies client's intent for whether all documents must be confirmed before shipment processing. - - - - - Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. - - - - - - - - - Descriptive data regarding an express freight service pickup request. - - - - - Identifies the collection of available FedEx transportation service options. Must be a valid FedEx freight service identifier. - - - - - Identifies the FedEx freight booking number. This element should contain numeric values only. - - 8 - - - - - - Descriptive data detailing the length, width, and height of the freight package or shipment being picked up by FedEx. - - - - - Identifies the type of truck that is needed for FedEx to pick up the freight shipment. See TruckType for valid values. - - - - - Identifies the tailer size needed for FedEx to pick up a freight shipment. See TrailerSizeType for valid values. - - - - - - - Indicates a FedEx Express operating region. - - - - - - - - - - - - Specification for labor time spent handling shipment. - - - - - Total labor time. - - - - - - - Identifies a kind of FedEx facility. - - - - - - - - - - Specifies the optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. - - - - - Specifies the optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. - - - - - - - Optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. - - - - - - - - - Identifies the type of payment to be tendered for the pickup. - - - - - - - - - Descriptive data regarding a FedEx freight service pickup request. - - - - - Description of Guarantee - - - - - Date for all Freight guarantee types. - - - - - - - Identifies the type of Delivery Guarantee made. - - - - - - - - - Descriptive data regarding a FedEx freight service pickup request. - - - - - Contact Information of origin service center representative that authorized the pickup - - - - - Identifies the type of payment to be tendered for the pickup. - - - - - Indicates the role of the party submitting the transaction. - - - - - Contact Information of the person submitting the pickup. - - - - - Identifies the details about the contents of the shipments to be picked up. - - - - - - - Identifies details about the contents of the shipment to be picked up. - - - - - - Identifies the line item, to match reply line with request line. - - - - - Identifies the destination of the shipment. - - - - - Identifies the physical packaging of the shipment. - - - - - Identifies number of items contained in the packaging. - - - - - Identifies the total weight of the item being tendered to FedEx for this pickup request. - - - - - Identifies number of items to be moved. - - - - - - - These special services are available at the shipment level for some or all service types. If the shipper is requesting a special service which requires additional data (such as the COD amount), the shipment special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. - - - - - Identifies the delivery guarantee information. - - - - - Describes the contents of the package. - - - - - - - This class describes the relationship between a customer-specified address and the FedEx Freight / FedEx National Freight Service Center that supports that address. - - - - - Freight Industry standard non-FedEx carrier identification - - - - - The name of the Interline carrier. - - - - - Additional time it might take at the origin or destination to pickup or deliver the freight. This is usually due to the remoteness of the location. This time is included in the total transit time. - - - - - Service branding which may be used for local pickup or delivery, distinct from service used for line-haul of customer's shipment. - - - - - Distance between customer address (pickup or delivery) and the supporting Freight / National Freight service center. - - - - - Time to travel between customer address (pickup or delivery) and the supporting Freight / National Freight service center. - - - - - Specifies when/how the customer can arrange for pickup or delivery. - - - - - Specifies days of operation if localServiceScheduling is LIMITED. - - - - - Freight service center that is a gateway on the border of Canada or Mexico. - - - - - Alphabetical code identifying a Freight Service Center - - - - - Freight service center Contact and Address - - - - - - - Specifies the type of service scheduling offered from a Freight or National Freight Service Center to a customer-supplied address. - - - - - - - - - - Indicates the role of the party submitting the transaction. - - - - - - - - - - Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. - - - - - Contact phone number for recipient of shipment. - - - - - Contact and address of FedEx facility at which shipment is to be held. - - - - - Type of facility at which package/shipment is to be held. - - - - - Location identification (for facilities identified by an alphanumeric location code). - - - - - Location identification (for facilities identified by an numeric location code). - - - - - - - The descriptive data required by FedEx for home delivery services. - - - - - The type of Home Delivery Premium service being requested. - - - - - Required for Date Certain Home Delivery. - - - - - Required for Date Certain and Appointment Home Delivery. - - 15 - - - - - - - - The type of Home Delivery Premium service being requested. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Identifies the collection of linear units of measure for a package dimension. - - - - - - - - - Identifies the representation of human-readable text. - - - - - Two-letter code for language (e.g. EN, FR, etc.) - - - - - Two-letter code for the region (e.g. us, ca, etc..). - - - - - - - Specification for marking or tagging of pieces in shipment. - - - - - Number of pieces to be marked or tagged by FedEx. - - - - - - - The descriptive data for the medium of exchange for FedEx services. - - - - - Identifies the currency of the monetary amount. - - 3 - - - - - - Identifies the monetary amount. - - - - - - - Specification for services performed during non-business hours and/or days. - - - - - Total number of person days for full non-business days. - - - - - Total number of person hours (whole or partial hours) for non-business hours. - - - - - - - The descriptive data regarding the result of the submitted transaction. - - - - - The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later - - - - - Indicates the source of this notification. Combined with the Code it uniquely identifies this notification - - - - - A code that represents this notification. Combined with the Source it uniquely identifies this notification. - - - - - Human-readable text that explains this notification. - - - - - The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. - - - - - A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. - - - - - - - - - Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). - - - - - The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). - - - - - - - Identifies the set of severity values for a Notification. - - - - - - - - - - - - - - - - - - - - - - - Specifications for pallets to be shrinkwrapped as part of a Freight shipment. - - - - - Number of pallets to be shrinkwrapped. - - - - - - - Specifications for pallets to be provided on Freight shipment. - - - - - Number of pallets to be provided. - - - - - - - This type contains equivalent data to Contact, but uses a form of person name with separate first and last names. - - - - - The name of the person. - - - - - The title of the person. - - - - - The name of the company, this person is working for. - - - - - Phone number of the person. - - - - - Pager number of the person. - - - - - Fax number of the person. - - - - - Email address information. - - - - - - - This type contains equivalent data to ContactAndAddress, but uses a form of person name with separate first, middle and last names. - - - - - - - - - Middle name added to support credit card fraud detection. - - - - - The First name of the person. - - - - - The middle name of the person. - - - - - The last name of the person. - - - - - - - The descriptive data for a person or company entitiy doing business with FedEx. - - - - - Identifies the FedEx account number assigned to the customer. - - 12 - - - - - - - Descriptive data identifying the point-of-contact person. - - - - - The descriptive data for a physical location. - - - - - - - The descriptive data for the monetary compensation given to FedEx for services rendered to the customer. - - - - - Identifies the method of payment for a service. See PaymentType for list of valid enumerated values. - - - - - Descriptive data identifying the party responsible for payment for a service. - - - - - - - Descriptive data for the payor's cash payment. - - - - - - - Identifies the method of payment for a service. - - - - - - - - - - - - - - The descriptive data identifying the party responsible for payment for a service. - - - - - Identifies the FedEx account number assigned to the payor. - - 12 - - - - - - Identifies the country of the payor. - - 2 -` - - - - - - - - This information describes the kind of pending shipment being requested. - - - - - Identifies the type of FedEx pending shipment - - - - - Date after which the pending shipment will no longer be available for completion. - - - - - Only used with type of EMAIL. - - - - - - - Identifies the type of service for a pending shipment. - - - - - - - - This enumeration rationalizes the former FedEx Express international "admissibility package" types (based on ANSI X.12) and the FedEx Freight packaging types. The values represented are those common to both carriers. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - The descriptive data returned to a client in response to a cancel dispatch request. - - - - - Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - - - - - The descriptive data detailing the status of a sumbitted transaction. - - - - - Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - the point in time when the request was processed - - - - - Identifies the options for picking up the shipment. - - - - - Identifies whether the close time is specified by the customer or is the default time. - - - - - Close time corresponding to the above specified type - - - - - Local time of the service center that will service the pickup - - - - - - - The descriptive data to request availability of pickup. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - The descriptive data identifying the client submitting the transaction. - - - - - The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies the account number for Freight Pickup Availability - - - - - Descriptive data providing information about address to pickup from. - - - - - An array of PickupRequestType. If SAME_DAY is included, Options with ScheduleDay of SAME_DAY will be included in the reply. - If FUTURE_DAY is included, Options with ScheduleDay of FUTURE_DAY will be included in the reply. - - - - - The dispatch date (in the local time zone) for the pickup whose availability is being requested. - - - - - Number of business days to consider when checking availability. - - - - - The time when the package will be ready to be picked up. The time is local to the pickup postal code, in 24-hour form (e.g. 13:00:00). It should not contain a TZD. If a TZD is included, it will be ignored - - - - - The lastest time at which the courier will be able to gain access to pick up the package(s). The time is local to the pickup postal code, in 24-hour form (e.g. 17:00:00). It should not contain a TZD. If a TZD is included, it will be ignored - - - - - The FedEx carrier(s) for which availability is requested. - - - - - Descriptive information about the shipment. - - - - - - - Identifies the valid set of valid building locations for package pickup. - - - - - - - - - - - Status of the pickup - - - - - - - - - - - - Descriptive data about the origin of the shipment being picked up by FedEx. - - - - - Flag identifies if customer wants to use Account address or send and alternate address for pickup. - - - - - FedEx USE ONLY (with IVR client) - - - - - Descriptive data about the physical location of the package being picked up by FedEx. - - - - - Identifies the physical location where the courier should pick up the shipment. See CourierDispatchBuildingLocationType for valid values. - - - - - - Identifies additional descriptive information associated with the BuildingPartCode to assist the FedEx courier in finding the pickup location. - - - - - Identifies the date and time the package will be ready for pickup by FedEx. Both the date and time portions of the string are expected to be used. The date should not be a past date or a date more than 10 days in the future. The time is the local time of the pickup based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2006-06-26). The time component must be in the format: HH:MM:SS in 24-hour form. The date and time parts are separated by the letter T (e.g. 2006-06-26T17:00:00). Because this is a local time, no TZD should be included. If a TZD is included, it will be ignored, and the time treated as local to the pickup postal code. - - - - - Identifies the close time of the company requesting the pickup. The time is the local time of the pickup based on the shipper's time zone. The time component must be in the format: HH:MM:SS in 24-hour form (e.g. 17:00:00). Because this is a local time, no TZD should be included. If a TZD is included, it will be ignored, and the time treated as local to the pickup postal code. - - - - - FedEx IVR Only. Customer is willing to stay late for pickup. - - - - - FedEx USE ONLY (with IVR client) - - - - - FedEx IVR Only - - - - - Alternate postal code tied to pickup location (European pickups) - - - - - FedEx USE ONLY - - - - - FedEx USE ONLY (with IVR client) - - - - - - Applies only to Europe - - - - - - - Describes the relationship between the date on which a dispatch occurs and the date on which it is created (scheduled) - by means of a CourierDispatchRequest. FUTURE_DAY means that the dispatch date is later than the date on which it is created. - SAME_DAY means that the dispatch is to occur on the date on which it is created. - - - - - - - - - - The constraints on the scheduling of a dispatch, where that dispatch would be made by the Carrier, occur on the PickupDate, - and would be scheduled (created by means of a CourierDispatchRequest) on a date related to the PickupDate as described - by the "ScheduleDay" (SAME_DAY meaning that the creation would occur on the PickupDate, and FUTURE_DAY meaning that the creation - would occur on a date prior to the PickupDate). - - - - - the carrier to which this PickupScheduleOption applies - - - - - Descriptive information about the shipment. - - - - - Tells whether this option describes a dispatch created on the dispatch date (SAME_DAY), or on a prior date (FUTURE_DAY) - - - - - True if this pickup option is available. - - - - - Identifies the date (in the postal code's time zone) to which this PickupScheduleOption refers. - - - - - Identifies the latest allowed ready time (in the postal code's time zone) for a postal code. As a local time, it will not include a Time Zone Designator - - - - - Identifies the minimum required length of the window of time between the ReadyTime and the CustomerCloseTime. - - - - - Indicates whether residential pickup is available for the requested postal code. - - - - - Describes the country relationship (domestic and/or international) among the shipments being picked up. - - - - - - - Descriptive information about the shipment. - - - - - - - Descriptive information about the dimensions of the package. - - - - - Descriptive information about the weight of the package. - - - - - - - Select the type of rate from which the element is to be selected. - - - - - - - - - - - - - - - - - - - - - - - - - - - - These values are used to control the availability of certain special services at the time when a customer uses the e-mail label link to create a return shipment. - - - - - - - - - Return Email Details - - - - - Phone number of the merchant - - - - - Identifies the allowed (merchant-authorized) special services which may be selected when the subsequent shipment is created. Only services represented in EMailLabelAllowedSpecialServiceType will be controlled by this list. - - - - - - - Information relating to a return shipment. - - - - - The type of return shipment that is being requested. - - - - - Return Merchant Authorization - - - - - Describes specific information about the email label shipment. - - - - - - - The type of return shipment that is being requested. - - - - - - - - - - - - Return Merchant Authorization - - - - - The RMA number. - - 20 - - - - - - The reason for the return. - - 60 - - - - - - - - Identifies the collection of available FedEx transportation service options. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Specification for assembly performed on shipment. - - - - - Number of pieces or packages to be assembled - - - - - Total weight of pieces or packages to be assembled - - - - - - - Shipment-level totals of dry ice data across all packages. - - - - - Total number of packages in the shipment that contain dry ice. - - - - - Total shipment dry ice weight for all packages. - - - - - - - Identifies the collection of special service offered by FedEx. BROKER_SELECT_OPTION should be used for Express shipments only. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - These special services are available at the shipment level for some or all service types. If the shipper is requesting a special service which requires additional data (such as the COD amount), the shipment special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. - - - - - The types of all special services requested for the enclosing shipment (or other shipment-level transaction). - - - - - Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. This element is required when SpecialServiceType.COD is present in the SpecialServiceTypes collection. - - - - - Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. This element is required when SpecialServiceType.HOLD_AT_LOCATION is present in the SpecialServiceTypes collection. - - - - - Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This element is required when SpecialServiceType.EMAIL_NOTIFICATION is present in the SpecialServiceTypes collection. - - - - - The descriptive data required for FedEx Printed Return Label. This element is required when SpecialServiceType.PRINTED_RETURN_LABEL is present in the SpecialServiceTypes collection - - - - - This field should be populated for pending shipments (e.g. e-mail label) It is required by a PENDING_SHIPMENT special service type. - - - - - - Number of packages in this shipment which contain dry ice and the total weight of the dry ice for this shipment. - - - - - The descriptive data required for FedEx Home Delivery options. This element is required when SpecialServiceType.HOME_DELIVERY_PREMIUM is present in the SpecialServiceTypes collection - - - - - Identifies the delivery guarantee information. - - - - - Identifies the delivery guarantee information. - - - - - Electronic Trade document references. - - - - - Specification for labor to be performed with the shipment. - - - - - Specifications for pallets to be shrinkwrapped as part of a Freight shipment. - - - - - Specifications for pallets to be provided on Freight shipment. - - - - - Specifications for pup/set or vehicle delayed for loading or unloading. - - - - - Specification for marking or tagging of pieces in shipment. - - - - - Specification for services performed during non-business hours and/or days. - - - - - Specification for assembly performed on shipment. - - - - - Specification for sorting and/or segregating performed on shipment. - - - - - Specification for special equipment used in loading/unloading shipment. - - - - - Specification for storage provided for shipment. - - - - - Specification for weighing services provided for shipment. - - - - - Specification for date or range of dates on which delivery is to be attempted. - - - - - - - Specification for sorting and/or segregating performed on shipment. - - - - - Number of pieces or packages to be sorted/segregated - - - - - Total weight of pieces or packages to be sorted/segregated - - - - - - - Specification for special equipment used in loading/unloading shipment. - - - - - Contains an entry for each type of special equipment used with shipment - - - - - - - Specifies the usage of a single type of special equipment while loading/unloading a shipment - - - - - Type of equipment used - - - - - Total amount of time the equipment was used - - - - - - - Identifies types of special equipment used in loading/unloading Freight shipments - - - - - - - - Specification for storage provided for shipment. - - - - - Total time shipment is held by carrier. - - - - - - - The descriptive data for taxpayer identification information. - - - - - Identifies the category of the taxpayer identification number. See TinType for the list of values. - - - - - Identifies the taxpayer identification number. - - 15 - - - - - - Identifies the usage of Tax Identification Number in Shipment processing - - - - - - - Identifies the category of the taxpayer identification number. - - - - - - - - - - - - Identifies the valid set of tractor tailer sizes supported by FedEx. This type is appropriate only for freight pickup requests. - - - - - - - - - - The descriptive data that governs data payload language/translations. - - - - - Free form text to be echoed back in the reply. Used to match requests and replies. - - - - - Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). - - - - - - - Identifies the valid set of truck types supported by FedEx. This type is appropriate only for freight pickup requests. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Specifies a single type of weighing performed on a shipment - - - - - Type of scale used - - - - - - - Identifies types of scales used in weighing Freight shipments - - - - - - - - - The descriptive data for the heaviness of an object. - - - - - Identifies the unit of measure associated with a weight value. - - - - - Identifies the weight value of a package/shipment. - - - - - - - Identifies the collection of units of measure that can be associated with a weight value. - - - - - - - - - Used in authentication of the sender's identity. - - - - - Credential used to authenticate a specific software application. This value is provided by FedEx after registration. - - - - - - - Two part authentication string used for the sender's identity - - - - - Identifying part of authentication credential. This value is provided by FedEx after registration - - - - - Secret part of authentication key. This value is provided by FedEx after registration. - - - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies a system or sub-system which performs an operation. - - - - - Identifies the service business level. - - - - - Identifies the service interface level. - - - - - Identifies the service code level. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index ad61be3a..a3f97300 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -268,7 +268,7 @@ protected function execute(InputInterface $input, OutputInterface $output) $generateComplexTypes->run(); //PickupService - $wsdlPath = $fedexSrcDir . '/_wsdl/PickupService_v3.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/PickupService_v15.wsdl'; $baseNamespace = 'FedEx\PickupService'; $subPackageName = 'Pickup Service'; From f440cc1b7efbc2dc01e50244436005a9b06dfd06 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 4 Nov 2017 08:22:22 -0500 Subject: [PATCH 03/33] Updated Ship Service to version 21. --- CHANGELOG.md | 3 +- examples/ship.php | 6 +- src/FedEx/ShipService/ComplexType/Address.php | 13 + .../ComplexType/AdrLicenseDetail.php | 36 + .../ShipService/ComplexType/AlcoholDetail.php | 36 + .../ComplexType/AncillaryFeeAndTax.php | 62 + .../BatteryClassificationDetail.php | 62 + .../ShipService/ComplexType/ClientDetail.php | 2 +- .../ComplexType/CodReturnPackageDetail.php | 6 +- .../ComplexType/CommercialInvoice.php | 6 +- .../ShipService/ComplexType/Commodity.php | 52 +- .../ComplexType/CompletedEtdDetail.php | 13 + .../CompletedHazardousPackageDetail.php | 13 + .../CompletedHazardousShipmentDetail.php | 13 + .../ComplexType/CompletedPackageDetail.php | 8 +- .../ComplexType/CompletedShipmentDetail.php | 27 +- .../ComplexType/CompletedTagDetail.php | 2 +- .../ConfigurableLabelReferenceEntry.php | 10 +- .../ShipService/ComplexType/ContentRecord.php | 10 +- .../ComplexType/CurrencyExchangeRate.php | 2 +- .../ComplexType/CustomDocumentDetail.php | 13 + .../ComplexType/CustomLabelDetail.php | 13 + .../ComplexType/CustomLabelTextBoxEntry.php | 140 + .../ComplexType/CustomLabelTextEntry.php | 13 + .../ComplexType/CustomerReference.php | 4 +- .../CustomerSpecifiedLabelDetail.php | 30 +- .../ComplexType/CustomsClearanceDetail.php | 13 + .../CustomsDeclarationStatementDetail.php | 49 + .../ComplexType/DangerousGoodsDetail.php | 30 +- .../ShipService/ComplexType/DateRange.php | 4 +- .../ComplexType/DeleteShipmentRequest.php | 14 +- .../ComplexType/DeleteTagRequest.php | 8 +- .../ComplexType/DestinationControlDetail.php | 2 +- .../ShipService/ComplexType/Dimensions.php | 2 +- .../ShipService/ComplexType/DocTabContent.php | 6 +- .../ComplexType/DocTabZoneSpecification.php | 10 +- .../DocumentFormatOptionsRequested.php | 36 + .../ComplexType/DocumentGenerationDetail.php | 75 + .../DocumentRequirementsDetail.php | 62 + .../ShipService/ComplexType/EMailDetail.php | 49 + .../ComplexType/EMailLabelDetail.php | 22 +- .../ComplexType/EMailRecipient.php | 75 + .../ComplexType/EmailOptionsRequested.php | 36 + .../ShipService/ComplexType/EtdDetail.php | 13 + .../ComplexType/ExportDeclarationDetail.php | 49 + .../ShipService/ComplexType/ExportDetail.php | 9 +- .../ComplexType/ExpressFreightDetail.php | 11 +- .../ComplexType/FreightAddressLabelDetail.php | 26 + .../ComplexType/FreightShipmentLineItem.php | 2 +- .../ComplexType/HazardousCommodityContent.php | 26 + ...azardousCommodityInnerReceptacleDetail.php | 36 + .../ComplexType/HoldAtLocationDetail.php | 2 +- .../ComplexType/HomeDeliveryPremiumDetail.php | 8 +- .../ComplexType/LabelSpecification.php | 27 +- .../ComplexType/LicenseOrPermitDetail.php | 62 + src/FedEx/ShipService/ComplexType/Money.php | 6 +- .../ComplexType/NaftaCommodityDetail.php | 2 +- .../NaftaLowValueStatementDetail.php | 36 + .../ShipService/ComplexType/NaftaProducer.php | 2 +- .../ComplexType/NetExplosiveDetail.php | 62 + .../ShipService/ComplexType/Notification.php | 2 +- .../ComplexType/NotificationDetail.php | 62 + .../ComplexType/PackageRateDetail.php | 6 +- .../PackageSpecialServicesRequested.php | 34 +- src/FedEx/ShipService/ComplexType/Party.php | 8 +- src/FedEx/ShipService/ComplexType/Payment.php | 6 +- src/FedEx/ShipService/ComplexType/Payor.php | 2 +- .../PendingShipmentAccessDetail.php | 49 +- .../PendingShipmentAccessorDetail.php | 75 + .../ComplexType/PendingShipmentDetail.php | 41 +- ...dingShipmentProcessingOptionsRequested.php | 36 + .../ShipService/ComplexType/PickupDetail.php | 4 +- .../ComplexType/ProcessShipmentReply.php | 10 +- .../ComplexType/ProcessShipmentRequest.php | 10 +- .../ComplexType/ProcessTagRequest.php | 10 +- .../ShipService/ComplexType/RateDiscount.php | 8 +- .../RecommendedDocumentSpecification.php | 36 + .../RegulatoryLabelContentDetail.php | 49 + .../ComplexType/RequestedPackageLineItem.php | 15 +- .../ComplexType/RequestedShipment.php | 69 +- .../ComplexType/ReturnEMailDetail.php | 4 +- .../ComplexType/ReturnShipmentDetail.php | 8 +- src/FedEx/ShipService/ComplexType/Rma.php | 2 +- .../ShipmentAuthorizationDetail.php | 36 + .../ComplexType/ShipmentDryIceDetail.php | 13 + ...ipmentDryIceProcessingOptionsRequested.php | 36 + .../ShipmentEventNotificationDetail.php | 62 + ...ShipmentEventNotificationSpecification.php | 75 + .../ComplexType/ShipmentManifestDetail.php | 36 + ...hipmentNotificationFormatSpecification.php | 36 + .../ComplexType/ShipmentOperationalDetail.php | 13 + .../ComplexType/ShipmentRateDetail.php | 61 +- .../ShipService/ComplexType/ShipmentReply.php | 8 +- .../ShipmentSpecialServicesRequested.php | 20 +- .../ComplexType/ShippingDocument.php | 19 +- .../ShippingDocumentDispositionDetail.php | 13 + .../ShippingDocumentEMailDetail.php | 13 + .../ComplexType/ShippingDocumentFormat.php | 13 + .../ShippingDocumentSpecification.php | 15 +- .../ShippingDocumentStorageDetail.php | 75 + .../ComplexType/SignatureOptionDetail.php | 6 +- .../ComplexType/SmartPostShipmentDetail.php | 18 +- ...PostShipmentProcessingOptionsRequested.php | 36 + .../ShipService/ComplexType/Surcharge.php | 6 +- src/FedEx/ShipService/ComplexType/Tax.php | 6 +- .../ComplexType/TaxpayerIdentification.php | 32 +- .../ComplexType/TransactionDetail.php | 2 +- .../UploadDocumentReferenceDetail.php | 13 + .../ComplexType/ValidateShipmentRequest.php | 10 +- .../ValidatedHazardousCommodityContent.php | 26 + ...ValidatedHazardousCommodityDescription.php | 26 + .../VariableHandlingChargeDetail.php | 4 +- .../ComplexType/VariableHandlingCharges.php | 6 +- .../ComplexType/WebAuthenticationDetail.php | 13 + src/FedEx/ShipService/Request.php | 40 +- .../SimpleType/AccessorRoleType.php | 17 + .../SimpleType/AdditionalLabelsType.php | 2 +- .../SimpleType/AlcoholRecipientType.php | 17 + .../SimpleType/AncillaryFeeAndTaxType.php | 19 + .../SimpleType/B13AFilingOptionType.php | 3 +- .../SimpleType/BarcodeSymbologyType.php | 9 + .../SimpleType/BatteryMaterialType.php | 17 + .../SimpleType/BatteryPackingType.php | 17 + .../SimpleType/BatteryRegulatorySubType.php | 16 + .../CodReturnReferenceIndicatorType.php | 2 +- .../SimpleType/CommodityPurposeType.php | 17 + .../SimpleType/CompletedEtdType.php | 17 + .../SimpleType/CustomLabelCoordinateUnits.php | 2 +- .../SimpleType/CustomerReferenceType.php | 5 +- ...omerSpecifiedLabelGenerationOptionType.php | 18 + .../CustomsDeclarationStatementType.php | 16 + .../SimpleType/CustomsRoleType.php | 19 + .../ShipService/SimpleType/DayOfWeekType.php | 2 +- .../DestinationControlStatementType.php | 2 +- .../SimpleType/DocTabContentType.php | 1 + .../SimpleType/DocumentFormatOptionType.php | 16 + .../ShipService/SimpleType/DropoffType.php | 2 +- .../EMailNotificationRecipientType.php | 2 +- .../SimpleType/EmailOptionType.php | 17 + .../SimpleType/EnterpriseDocumentType.php | 20 + .../SimpleType/EtdAttributeType.php | 16 + .../SimpleType/FedExLocationType.php | 2 + .../HazardousCommodityAttributeType.php | 17 + .../HazardousCommodityOptionType.php | 5 +- .../HazardousCommodityRegulationType.php | 19 + .../SimpleType/HomeDeliveryPremiumType.php | 2 +- .../InternationalDocumentContentType.php | 2 +- .../SimpleType/LabelFormatType.php | 2 +- .../SimpleType/LabelMaskableDataType.php | 1 + .../ShipService/SimpleType/LabelOrderType.php | 17 + .../LabelPrintingOrientationType.php | 2 +- .../ShipService/SimpleType/LabelStockType.php | 2 +- .../ShipService/SimpleType/LinearUnits.php | 2 +- .../SimpleType/MinimumChargeType.php | 2 +- .../SimpleType/NaftaNetCostMethodCode.php | 2 +- .../NaftaProducerSpecificationType.php | 2 +- .../NetExplosiveClassificationType.php | 19 + .../SimpleType/NotificationEventType.php | 20 + .../SimpleType/NotificationFormatType.php | 17 + .../SimpleType/NotificationSeverityType.php | 2 +- .../SimpleType/NotificationType.php | 16 + .../SimpleType/OversizeClassType.php | 2 +- .../SimpleType/PackageSpecialServiceType.php | 3 +- .../ShipService/SimpleType/PackagingType.php | 6 +- .../ShipService/SimpleType/PaymentType.php | 2 +- .../PendingShipmentProcessingOptionType.php | 16 + .../SimpleType/PendingShipmentType.php | 2 +- .../SimpleType/PickupRequestSourceType.php | 2 +- .../SimpleType/PickupRequestType.php | 2 +- .../SimpleType/PricingCodeType.php | 2 +- .../SimpleType/PurposeOfShipmentType.php | 2 +- .../SimpleType/RateDiscountType.php | 2 +- .../SimpleType/RateRequestType.php | 4 +- .../SimpleType/RatedWeightMethod.php | 3 +- .../SimpleType/RecipientCustomsIdType.php | 2 +- .../SimpleType/RecommendedDocumentType.php | 41 + .../SimpleType/RegulatoryControlType.php | 5 +- .../SimpleType/RegulatoryLabelType.php | 16 + .../RelativeVerticalPositionType.php | 17 + .../RequestedShippingDocumentType.php | 1 + .../SimpleType/RequiredDocumentType.php | 21 + .../SimpleType/RequirementType.php | 18 + .../ShipService/SimpleType/ReturnType.php | 2 +- .../SimpleType/ReturnedRateType.php | 6 +- .../ReturnedShippingDocumentType.php | 3 +- .../ShipService/SimpleType/RotationType.php | 19 + .../ShipService/SimpleType/ServiceType.php | 11 +- .../ShipmentDryIceProcessingOptionType.php | 16 + .../ShipmentNotificationAggregationType.php | 17 + .../ShipmentNotificationRoleType.php | 20 + .../SimpleType/ShipmentSpecialServiceType.php | 10 +- .../ShippingDocumentDispositionType.php | 2 - .../SimpleType/ShippingDocumentImageType.php | 1 - .../SimpleType/ShippingDocumentNamingType.php | 17 + .../ShippingDocumentStorageDetailType.php | 17 + .../SimpleType/SignatureOptionType.php | 2 +- .../SmartPostShipmentProcessingOptionType.php | 16 + .../SimpleType/SpecialRatingAppliedType.php | 3 +- .../ShipService/SimpleType/SurchargeType.php | 8 +- src/FedEx/ShipService/SimpleType/TaxType.php | 2 +- src/FedEx/ShipService/SimpleType/TinType.php | 2 +- .../SimpleType/TransitTimeType.php | 2 +- .../SimpleType/UploadDocumentIdProducer.php | 4 +- .../SimpleType/UploadDocumentProducerType.php | 3 - .../SimpleType/UploadDocumentType.php | 1 + .../ShipService/SimpleType/WeightUnits.php | 2 +- ...pService_v12.wsdl => ShipService_v21.wsdl} | 2408 +++++++---------- tests/FedEx/Tests/ShipServiceTest.php | 4 - .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 209 files changed, 4205 insertions(+), 1809 deletions(-) create mode 100644 src/FedEx/ShipService/ComplexType/AdrLicenseDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/AlcoholDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/AncillaryFeeAndTax.php create mode 100644 src/FedEx/ShipService/ComplexType/BatteryClassificationDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/CustomLabelTextBoxEntry.php create mode 100644 src/FedEx/ShipService/ComplexType/CustomsDeclarationStatementDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/DocumentFormatOptionsRequested.php create mode 100644 src/FedEx/ShipService/ComplexType/DocumentGenerationDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/DocumentRequirementsDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/EMailDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/EMailRecipient.php create mode 100644 src/FedEx/ShipService/ComplexType/EmailOptionsRequested.php create mode 100644 src/FedEx/ShipService/ComplexType/ExportDeclarationDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/HazardousCommodityInnerReceptacleDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/LicenseOrPermitDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/NaftaLowValueStatementDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/NetExplosiveDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/NotificationDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/PendingShipmentAccessorDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/PendingShipmentProcessingOptionsRequested.php create mode 100644 src/FedEx/ShipService/ComplexType/RecommendedDocumentSpecification.php create mode 100644 src/FedEx/ShipService/ComplexType/RegulatoryLabelContentDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/ShipmentAuthorizationDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php create mode 100644 src/FedEx/ShipService/ComplexType/ShipmentEventNotificationDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/ShipmentEventNotificationSpecification.php create mode 100644 src/FedEx/ShipService/ComplexType/ShipmentManifestDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/ShipmentNotificationFormatSpecification.php create mode 100644 src/FedEx/ShipService/ComplexType/ShippingDocumentStorageDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php create mode 100644 src/FedEx/ShipService/SimpleType/AccessorRoleType.php create mode 100644 src/FedEx/ShipService/SimpleType/AlcoholRecipientType.php create mode 100644 src/FedEx/ShipService/SimpleType/AncillaryFeeAndTaxType.php create mode 100644 src/FedEx/ShipService/SimpleType/BatteryMaterialType.php create mode 100644 src/FedEx/ShipService/SimpleType/BatteryPackingType.php create mode 100644 src/FedEx/ShipService/SimpleType/BatteryRegulatorySubType.php create mode 100644 src/FedEx/ShipService/SimpleType/CommodityPurposeType.php create mode 100644 src/FedEx/ShipService/SimpleType/CompletedEtdType.php create mode 100644 src/FedEx/ShipService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php create mode 100644 src/FedEx/ShipService/SimpleType/CustomsDeclarationStatementType.php create mode 100644 src/FedEx/ShipService/SimpleType/CustomsRoleType.php create mode 100644 src/FedEx/ShipService/SimpleType/DocumentFormatOptionType.php create mode 100644 src/FedEx/ShipService/SimpleType/EmailOptionType.php create mode 100644 src/FedEx/ShipService/SimpleType/EnterpriseDocumentType.php create mode 100644 src/FedEx/ShipService/SimpleType/EtdAttributeType.php create mode 100644 src/FedEx/ShipService/SimpleType/HazardousCommodityAttributeType.php create mode 100644 src/FedEx/ShipService/SimpleType/HazardousCommodityRegulationType.php create mode 100644 src/FedEx/ShipService/SimpleType/LabelOrderType.php create mode 100644 src/FedEx/ShipService/SimpleType/NetExplosiveClassificationType.php create mode 100644 src/FedEx/ShipService/SimpleType/NotificationEventType.php create mode 100644 src/FedEx/ShipService/SimpleType/NotificationFormatType.php create mode 100644 src/FedEx/ShipService/SimpleType/NotificationType.php create mode 100644 src/FedEx/ShipService/SimpleType/PendingShipmentProcessingOptionType.php create mode 100644 src/FedEx/ShipService/SimpleType/RecommendedDocumentType.php create mode 100644 src/FedEx/ShipService/SimpleType/RegulatoryLabelType.php create mode 100644 src/FedEx/ShipService/SimpleType/RelativeVerticalPositionType.php create mode 100644 src/FedEx/ShipService/SimpleType/RequiredDocumentType.php create mode 100644 src/FedEx/ShipService/SimpleType/RequirementType.php create mode 100644 src/FedEx/ShipService/SimpleType/RotationType.php create mode 100644 src/FedEx/ShipService/SimpleType/ShipmentDryIceProcessingOptionType.php create mode 100644 src/FedEx/ShipService/SimpleType/ShipmentNotificationAggregationType.php create mode 100644 src/FedEx/ShipService/SimpleType/ShipmentNotificationRoleType.php create mode 100644 src/FedEx/ShipService/SimpleType/ShippingDocumentNamingType.php create mode 100644 src/FedEx/ShipService/SimpleType/ShippingDocumentStorageDetailType.php create mode 100644 src/FedEx/ShipService/SimpleType/SmartPostShipmentProcessingOptionType.php rename src/FedEx/_wsdl/{ShipService_v12.wsdl => ShipService_v21.wsdl} (79%) mode change 100644 => 100755 diff --git a/CHANGELOG.md b/CHANGELOG.md index c1936b23..4bbc3917 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## 3.0 (released 2017-11-04) - Updated Upload Document Service - Updated Pickup Service +- Updated Ship Service |Service|Version| |---|---| @@ -14,7 +15,7 @@ |Pickup|15| |Rate|10| |Return Tag|1| -|Ship|12| +|Ship|21**| |Track|5| |Upload Document|11| |Open Ship|11| diff --git a/examples/ship.php b/examples/ship.php index b74303fc..2cc87e2d 100644 --- a/examples/ship.php +++ b/examples/ship.php @@ -27,8 +27,8 @@ $version = new ComplexType\VersionId(); $version - ->setMajor(12) - ->setIntermediate(1) + ->setMajor(21) + ->setIntermediate(0) ->setMinor(0) ->setServiceId('ship'); @@ -108,7 +108,7 @@ $requestedShipment->setShipper($shipper); $requestedShipment->setRecipient($recipient); $requestedShipment->setLabelSpecification($labelSpecification); -$requestedShipment->setRateRequestTypes(array(new SimpleType\RateRequestType(SimpleType\RateRequestType::_ACCOUNT))); +$requestedShipment->setRateRequestTypes(array(new SimpleType\RateRequestType(SimpleType\RateRequestType::_PREFERRED))); $requestedShipment->setPackageCount(1); $requestedShipment->setRequestedPackageLineItems([ $packageLineItem1 diff --git a/src/FedEx/ShipService/ComplexType/Address.php b/src/FedEx/ShipService/ComplexType/Address.php index 66296e36..5b007f2e 100644 --- a/src/FedEx/ShipService/ComplexType/Address.php +++ b/src/FedEx/ShipService/ComplexType/Address.php @@ -18,6 +18,7 @@ * @property string $CountryCode * @property string $CountryName * @property boolean $Residential + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -124,4 +125,16 @@ public function setResidential($residential) $this->values['Residential'] = $residential; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/AdrLicenseDetail.php b/src/FedEx/ShipService/ComplexType/AdrLicenseDetail.php new file mode 100644 index 00000000..f0cd955b --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/AdrLicenseDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property LicenseOrPermitDetail $LicenseOrPermitDetail + + */ +class AdrLicenseDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AdrLicenseDetail'; + + /** + * Set LicenseOrPermitDetail + * + * @param LicenseOrPermitDetail $licenseOrPermitDetail + * @return $this + */ + public function setLicenseOrPermitDetail(LicenseOrPermitDetail $licenseOrPermitDetail) + { + $this->values['LicenseOrPermitDetail'] = $licenseOrPermitDetail; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/AlcoholDetail.php b/src/FedEx/ShipService/ComplexType/AlcoholDetail.php new file mode 100644 index 00000000..8b66c58d --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/AlcoholDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\AlcoholRecipientType|string $RecipientType + + */ +class AlcoholDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AlcoholDetail'; + + /** + * The license type that the recipient of the alcohol package. + * + * @param \FedEx\ShipService\SimpleType\AlcoholRecipientType|string $recipientType + * @return $this + */ + public function setRecipientType($recipientType) + { + $this->values['RecipientType'] = $recipientType; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/AncillaryFeeAndTax.php b/src/FedEx/ShipService/ComplexType/AncillaryFeeAndTax.php new file mode 100644 index 00000000..8775847f --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/AncillaryFeeAndTax.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\AncillaryFeeAndTaxType|string $Type + * @property string $Description + * @property Money $Amount + + */ +class AncillaryFeeAndTax extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AncillaryFeeAndTax'; + + /** + * Set Type + * + * @param \FedEx\ShipService\SimpleType\AncillaryFeeAndTaxType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set Amount + * + * @param Money $amount + * @return $this + */ + public function setAmount(Money $amount) + { + $this->values['Amount'] = $amount; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/BatteryClassificationDetail.php b/src/FedEx/ShipService/ComplexType/BatteryClassificationDetail.php new file mode 100644 index 00000000..0595bc9e --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/BatteryClassificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\BatteryMaterialType|string $Material + * @property \FedEx\ShipService\SimpleType\BatteryPackingType|string $Packing + * @property \FedEx\ShipService\SimpleType\BatteryRegulatorySubType|string $RegulatorySubType + + */ +class BatteryClassificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'BatteryClassificationDetail'; + + /** + * Describes the material composition of the battery or cell. + * + * @param \FedEx\ShipService\SimpleType\BatteryMaterialType|string $material + * @return $this + */ + public function setMaterial($material) + { + $this->values['Material'] = $material; + return $this; + } + + /** + * Describes the packing arrangement of the battery or cell with respect to other items within the same package. + * + * @param \FedEx\ShipService\SimpleType\BatteryPackingType|string $packing + * @return $this + */ + public function setPacking($packing) + { + $this->values['Packing'] = $packing; + return $this; + } + + /** + * A regulation specific classification for the battery or cell. + * + * @param \FedEx\ShipService\SimpleType\BatteryRegulatorySubType|string $regulatorySubType + * @return $this + */ + public function setRegulatorySubType($regulatorySubType) + { + $this->values['RegulatorySubType'] = $regulatorySubType; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ClientDetail.php b/src/FedEx/ShipService/ComplexType/ClientDetail.php index 0c2eefce..e2df13d3 100644 --- a/src/FedEx/ShipService/ComplexType/ClientDetail.php +++ b/src/FedEx/ShipService/ComplexType/ClientDetail.php @@ -50,7 +50,7 @@ public function setMeterNumber($meterNumber) } /** - * Only used in transactions which require identification of the Fed Ex Office integrator. + * Only used in transactions which require identification of the FedEx Office integrator. * * @param string $integratorId * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CodReturnPackageDetail.php b/src/FedEx/ShipService/ComplexType/CodReturnPackageDetail.php index e47c40ba..358bcdb5 100644 --- a/src/FedEx/ShipService/ComplexType/CodReturnPackageDetail.php +++ b/src/FedEx/ShipService/ComplexType/CodReturnPackageDetail.php @@ -27,7 +27,7 @@ class CodReturnPackageDetail extends AbstractComplexType protected $name = 'CodReturnPackageDetail'; /** - * The COD amount (after any accumulations) that must be collected upon delivery of a package shipped using the COD special service. + * Set CollectionAmount * * @param Money $collectionAmount * @return $this @@ -63,7 +63,7 @@ public function setElectronic($electronic) } /** - * Contains the data which form the Astra and 2DCommon barcodes that print on the COD return label. + * Set Barcodes * * @param PackageBarcodes $barcodes * @return $this @@ -75,7 +75,7 @@ public function setBarcodes(PackageBarcodes $barcodes) } /** - * The label image or printer commands to print the label. + * Set Label * * @param ShippingDocument $label * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CommercialInvoice.php b/src/FedEx/ShipService/ComplexType/CommercialInvoice.php index 06a4a638..2bfb492a 100644 --- a/src/FedEx/ShipService/ComplexType/CommercialInvoice.php +++ b/src/FedEx/ShipService/ComplexType/CommercialInvoice.php @@ -22,7 +22,7 @@ * @property \FedEx\ShipService\SimpleType\PurposeOfShipmentType|string $Purpose * @property CustomerReference[] $CustomerReferences * @property string $OriginatorName - * @property \FedEx\ShipService\SimpleType\TermsOfSaleType|string $TermsOfSale + * @property string $TermsOfSale */ class CommercialInvoice extends AbstractComplexType @@ -179,9 +179,9 @@ public function setOriginatorName($originatorName) } /** - * Required for dutiable international Express or Ground shipment. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice + * Required for dutiable international Express or Ground shipments. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice. * - * @param \FedEx\ShipService\SimpleType\TermsOfSaleType|string $termsOfSale + * @param string $termsOfSale * @return $this */ public function setTermsOfSale($termsOfSale) diff --git a/src/FedEx/ShipService/ComplexType/Commodity.php b/src/FedEx/ShipService/ComplexType/Commodity.php index b5b407ad..1f15dcc1 100644 --- a/src/FedEx/ShipService/ComplexType/Commodity.php +++ b/src/FedEx/ShipService/ComplexType/Commodity.php @@ -4,8 +4,7 @@ use FedEx\AbstractComplexType; /** - * For international multiple piece shipments, commodity information must be passed in the Master and on each child transaction. - If this shipment cotains more than four commodities line items, the four highest valued should be included in the first 4 occurances for this request. + * Commodity * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,10 +13,11 @@ * @property string $Name * @property int $NumberOfPieces * @property string $Description + * @property \FedEx\ShipService\SimpleType\CommodityPurposeType|string $Purpose * @property string $CountryOfManufacture * @property string $HarmonizedCode * @property Weight $Weight - * @property int $Quantity + * @property float $Quantity * @property string $QuantityUnits * @property Measure[] $AdditionalMeasures * @property Money $UnitPrice @@ -40,7 +40,7 @@ class Commodity extends AbstractComplexType protected $name = 'Commodity'; /** - * Name of this commodity. + * Set Name * * @param string $name * @return $this @@ -52,7 +52,7 @@ public function setName($name) } /** - * Total number of pieces of this commodity + * Set NumberOfPieces * * @param int $numberOfPieces * @return $this @@ -64,7 +64,7 @@ public function setNumberOfPieces($numberOfPieces) } /** - * Complete and accurate description of this commodity. + * Set Description * * @param string $description * @return $this @@ -76,7 +76,19 @@ public function setDescription($description) } /** - * Country code where commodity contents were produced or manufactured in their final form. + * Set Purpose + * + * @param \FedEx\ShipService\SimpleType\CommodityPurposeType|string $purpose + * @return $this + */ + public function setPurpose($purpose) + { + $this->values['Purpose'] = $purpose; + return $this; + } + + /** + * Set CountryOfManufacture * * @param string $countryOfManufacture * @return $this @@ -88,8 +100,7 @@ public function setCountryOfManufacture($countryOfManufacture) } /** - * Unique alpha/numeric representing commodity item. - At least one occurrence is required for US Export shipments if the Customs Value is greater than $2500 or if a valid US Export license is required. + * Set HarmonizedCode * * @param string $harmonizedCode * @return $this @@ -101,7 +112,7 @@ public function setHarmonizedCode($harmonizedCode) } /** - * Total weight of this commodity. 1 explicit decimal position. Max length 11 including decimal. + * Set Weight * * @param Weight $weight * @return $this @@ -113,9 +124,9 @@ public function setWeight(Weight $weight) } /** - * This field is used for enterprise transactions. + * Set Quantity * - * @param int $quantity + * @param float $quantity * @return $this */ public function setQuantity($quantity) @@ -125,7 +136,7 @@ public function setQuantity($quantity) } /** - * Unit of measure used to express the quantity of this commodity line item. + * Set QuantityUnits * * @param string $quantityUnits * @return $this @@ -149,7 +160,7 @@ public function setAdditionalMeasures(array $additionalMeasures) } /** - * Value of each unit in Quantity. Six explicit decimal positions, Max length 18 including decimal. + * Set UnitPrice * * @param Money $unitPrice * @return $this @@ -161,9 +172,7 @@ public function setUnitPrice(Money $unitPrice) } /** - * Total customs value for this line item. - It should equal the commodity unit quantity times commodity unit value. - Six explicit decimal positions, max length 18 including decimal. + * Set CustomsValue * * @param Money $customsValue * @return $this @@ -187,7 +196,7 @@ public function setExciseConditions(array $exciseConditions) } /** - * Applicable to US export shipping only. + * Set ExportLicenseNumber * * @param string $exportLicenseNumber * @return $this @@ -199,10 +208,7 @@ public function setExportLicenseNumber($exportLicenseNumber) } /** - * Date of expiration. Must be at least 1 day into future. - The date that the Commerce Export License expires. Export License commodities may not be exported from the U.S. on an expired license. - Applicable to US Export shipping only. - Required only if commodity is shipped on commerce export license, and Export License Number is supplied. + * Set ExportLicenseExpirationDate * * @param string $exportLicenseExpirationDate * @return $this @@ -214,7 +220,7 @@ public function setExportLicenseExpirationDate($exportLicenseExpirationDate) } /** - * An identifying mark or number used on the packaging of a shipment to help customers identify a particular shipment. + * Set CIMarksAndNumbers * * @param string $cIMarksAndNumbers * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CompletedEtdDetail.php b/src/FedEx/ShipService/ComplexType/CompletedEtdDetail.php index 323bb128..cc7968d6 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedEtdDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedEtdDetail.php @@ -11,6 +11,7 @@ * @subpackage Ship Service * * @property string $FolderId + * @property \FedEx\ShipService\SimpleType\CompletedEtdType|string $Type * @property UploadDocumentReferenceDetail[] $UploadDocumentReferenceDetails */ @@ -35,6 +36,18 @@ public function setFolderId($folderId) return $this; } + /** + * Set Type + * + * @param \FedEx\ShipService\SimpleType\CompletedEtdType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + /** * Set UploadDocumentReferenceDetails * diff --git a/src/FedEx/ShipService/ComplexType/CompletedHazardousPackageDetail.php b/src/FedEx/ShipService/ComplexType/CompletedHazardousPackageDetail.php index 4ac8c53d..11d22999 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedHazardousPackageDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedHazardousPackageDetail.php @@ -13,6 +13,7 @@ * @property string $ReferenceId * @property \FedEx\ShipService\SimpleType\DangerousGoodsAccessibilityType|string $Accessibility * @property boolean $CargoAircraftOnly + * @property \FedEx\ShipService\SimpleType\HazardousCommodityRegulationType|string $Regulation * @property float $RadioactiveTransportIndex * @property \FedEx\ShipService\SimpleType\RadioactiveLabelType|string $LabelType * @property ValidatedHazardousContainer[] $Containers @@ -63,6 +64,18 @@ public function setCargoAircraftOnly($cargoAircraftOnly) return $this; } + /** + * Set Regulation + * + * @param \FedEx\ShipService\SimpleType\HazardousCommodityRegulationType|string $regulation + * @return $this + */ + public function setRegulation($regulation) + { + $this->values['Regulation'] = $regulation; + return $this; + } + /** * Specifies the maximum radiation level from the package (measured in microSieverts per hour at a distance of one meter from the external surface of the package, divided by 10). * diff --git a/src/FedEx/ShipService/ComplexType/CompletedHazardousShipmentDetail.php b/src/FedEx/ShipService/ComplexType/CompletedHazardousShipmentDetail.php index 52227b2f..feb44d9d 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedHazardousShipmentDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedHazardousShipmentDetail.php @@ -12,6 +12,7 @@ * * @property CompletedHazardousSummaryDetail $HazardousSummaryDetail * @property ShipmentDryIceDetail $DryIceDetail + * @property AdrLicenseDetail $AdrLicense */ class CompletedHazardousShipmentDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setDryIceDetail(ShipmentDryIceDetail $dryIceDetail) $this->values['DryIceDetail'] = $dryIceDetail; return $this; } + + /** + * This contains the ADR License information, which identifies the license number and ADR category under which the customer is allowed to ship. + * + * @param AdrLicenseDetail $adrLicense + * @return $this + */ + public function setAdrLicense(AdrLicenseDetail $adrLicense) + { + $this->values['AdrLicense'] = $adrLicense; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/CompletedPackageDetail.php b/src/FedEx/ShipService/ComplexType/CompletedPackageDetail.php index e396c782..f6a9ebac 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedPackageDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedPackageDetail.php @@ -34,7 +34,7 @@ class CompletedPackageDetail extends AbstractComplexType protected $name = 'CompletedPackageDetail'; /** - * The package sequence number of this package in a multiple piece shipment. + * Set SequenceNumber * * @param int $sequenceNumber * @return $this @@ -46,7 +46,7 @@ public function setSequenceNumber($sequenceNumber) } /** - * The Tracking number and form id for this package. + * Set TrackingIds * * @param TrackingId[] $trackingIds * @return $this @@ -70,7 +70,7 @@ public function setGroupNumber($groupNumber) } /** - * Oversize class for this package. + * Set OversizeClass * * @param \FedEx\ShipService\SimpleType\OversizeClassType|string $oversizeClass * @return $this @@ -106,7 +106,7 @@ public function setOperationalDetail(PackageOperationalDetail $operationalDetail } /** - * The label image or printer commands to print the label. + * Set Label * * @param ShippingDocument $label * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php b/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php index 7c37e849..960713fb 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php @@ -23,6 +23,7 @@ * @property ShipmentRating $ShipmentRating * @property CompletedHoldAtLocationDetail $CompletedHoldAtLocationDetail * @property string $ExportComplianceStatement + * @property DocumentRequirementsDetail $DocumentRequirements * @property CompletedEtdDetail $CompletedEtdDetail * @property ShippingDocument[] $ShipmentDocuments * @property AssociatedShipmentDetail[] $AssociatedShipments @@ -40,7 +41,7 @@ class CompletedShipmentDetail extends AbstractComplexType protected $name = 'CompletedShipmentDetail'; /** - * Indicates whether or not this is a US Domestic shipment. + * Set UsDomestic * * @param boolean $usDomestic * @return $this @@ -52,7 +53,7 @@ public function setUsDomestic($usDomestic) } /** - * Indicates the carrier that will be used to deliver this shipment. + * Set CarrierCode * * @param \FedEx\ShipService\SimpleType\CarrierCodeType|string $carrierCode * @return $this @@ -64,7 +65,7 @@ public function setCarrierCode($carrierCode) } /** - * The master tracking number and form id of this multiple piece shipment. This information is to be provided for each subsequent of a multiple piece shipment. + * Set MasterTrackingId * * @param TrackingId $masterTrackingId * @return $this @@ -76,7 +77,7 @@ public function setMasterTrackingId(TrackingId $masterTrackingId) } /** - * Description of the FedEx service used for this shipment. Currently not supported. + * Set ServiceTypeDescription * * @param string $serviceTypeDescription * @return $this @@ -88,7 +89,7 @@ public function setServiceTypeDescription($serviceTypeDescription) } /** - * Description of the packaging used for this shipment. Currently not supported. + * Set PackagingDescription * * @param string $packagingDescription * @return $this @@ -136,7 +137,7 @@ public function setTagDetail(CompletedTagDetail $tagDetail) } /** - * Provides reply information specific to SmartPost shipments. + * Set SmartPostDetail * * @param CompletedSmartPostDetail $smartPostDetail * @return $this @@ -195,6 +196,18 @@ public function setExportComplianceStatement($exportComplianceStatement) return $this; } + /** + * This specifies what rules or requirements for documents are applicable for this shipment. This may identify required or prohibited documents. + * + * @param DocumentRequirementsDetail $documentRequirements + * @return $this + */ + public function setDocumentRequirements(DocumentRequirementsDetail $documentRequirements) + { + $this->values['DocumentRequirements'] = $documentRequirements; + return $this; + } + /** * Set CompletedEtdDetail * @@ -244,7 +257,7 @@ public function setCompletedCodDetail(CompletedCodDetail $completedCodDetail) } /** - * Package level details about this package. + * Set CompletedPackageDetails * * @param CompletedPackageDetail[] $completedPackageDetails * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CompletedTagDetail.php b/src/FedEx/ShipService/ComplexType/CompletedTagDetail.php index 713aefaa..c0d9c7fd 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedTagDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedTagDetail.php @@ -28,7 +28,7 @@ class CompletedTagDetail extends AbstractComplexType protected $name = 'CompletedTagDetail'; /** - * . + * Set ConfirmationNumber * * @param string $confirmationNumber * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ConfigurableLabelReferenceEntry.php b/src/FedEx/ShipService/ComplexType/ConfigurableLabelReferenceEntry.php index 207955e8..13c35f83 100644 --- a/src/FedEx/ShipService/ComplexType/ConfigurableLabelReferenceEntry.php +++ b/src/FedEx/ShipService/ComplexType/ConfigurableLabelReferenceEntry.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. + * ConfigurableLabelReferenceEntry * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class ConfigurableLabelReferenceEntry extends AbstractComplexType protected $name = 'ConfigurableLabelReferenceEntry'; /** - * 1 of 12 possible zones to position data. + * Set ZoneNumber * * @param int $zoneNumber * @return $this @@ -38,7 +38,7 @@ public function setZoneNumber($zoneNumber) } /** - * The identifiying text for the data in this zone. + * Set Header * * @param string $header * @return $this @@ -50,7 +50,7 @@ public function setHeader($header) } /** - * A reference to a field in either the request or reply to print in this zone following the header. + * Set DataField * * @param string $dataField * @return $this @@ -62,7 +62,7 @@ public function setDataField($dataField) } /** - * A literal value to print after the header in this zone. + * Set LiteralValue * * @param string $literalValue * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ContentRecord.php b/src/FedEx/ShipService/ComplexType/ContentRecord.php index 3a65eac5..b2f07ebb 100644 --- a/src/FedEx/ShipService/ComplexType/ContentRecord.php +++ b/src/FedEx/ShipService/ComplexType/ContentRecord.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Content Record. + * ContentRecord * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class ContentRecord extends AbstractComplexType protected $name = 'ContentRecord'; /** - * Part Number. + * Set PartNumber * * @param string $partNumber * @return $this @@ -38,7 +38,7 @@ public function setPartNumber($partNumber) } /** - * Item Number. + * Set ItemNumber * * @param string $itemNumber * @return $this @@ -50,7 +50,7 @@ public function setItemNumber($itemNumber) } /** - * Received Quantity. + * Set ReceivedQuantity * * @param int $receivedQuantity * @return $this @@ -62,7 +62,7 @@ public function setReceivedQuantity($receivedQuantity) } /** - * Description. + * Set Description * * @param string $description * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CurrencyExchangeRate.php b/src/FedEx/ShipService/ComplexType/CurrencyExchangeRate.php index e74d7091..7756c554 100644 --- a/src/FedEx/ShipService/ComplexType/CurrencyExchangeRate.php +++ b/src/FedEx/ShipService/ComplexType/CurrencyExchangeRate.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Currency exchange rate information. + * CurrencyExchangeRate * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/CustomDocumentDetail.php b/src/FedEx/ShipService/ComplexType/CustomDocumentDetail.php index dbdc6404..13e6b96d 100644 --- a/src/FedEx/ShipService/ComplexType/CustomDocumentDetail.php +++ b/src/FedEx/ShipService/ComplexType/CustomDocumentDetail.php @@ -16,6 +16,7 @@ * @property string $SpecificationId * @property string $CustomDocumentIdentifier * @property DocTabContent $DocTabContent + * @property CustomLabelDetail $CustomContent */ class CustomDocumentDetail extends AbstractComplexType @@ -98,4 +99,16 @@ public function setDocTabContent(DocTabContent $docTabContent) $this->values['DocTabContent'] = $docTabContent; return $this; } + + /** + * Set CustomContent + * + * @param CustomLabelDetail $customContent + * @return $this + */ + public function setCustomContent(CustomLabelDetail $customContent) + { + $this->values['CustomContent'] = $customContent; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/CustomLabelDetail.php b/src/FedEx/ShipService/ComplexType/CustomLabelDetail.php index d3745a0a..add694c6 100644 --- a/src/FedEx/ShipService/ComplexType/CustomLabelDetail.php +++ b/src/FedEx/ShipService/ComplexType/CustomLabelDetail.php @@ -14,6 +14,7 @@ * @property CustomLabelTextEntry[] $TextEntries * @property CustomLabelGraphicEntry[] $GraphicEntries * @property CustomLabelBoxEntry[] $BoxEntries + * @property CustomLabelTextBoxEntry[] $TextBoxEntries * @property CustomLabelBarcodeEntry[] $BarcodeEntries */ @@ -74,6 +75,18 @@ public function setBoxEntries(array $boxEntries) return $this; } + /** + * Set TextBoxEntries + * + * @param CustomLabelTextBoxEntry[] $textBoxEntries + * @return $this + */ + public function setTextBoxEntries(array $textBoxEntries) + { + $this->values['TextBoxEntries'] = $textBoxEntries; + return $this; + } + /** * Set BarcodeEntries * diff --git a/src/FedEx/ShipService/ComplexType/CustomLabelTextBoxEntry.php b/src/FedEx/ShipService/ComplexType/CustomLabelTextBoxEntry.php new file mode 100644 index 00000000..5176cda3 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/CustomLabelTextBoxEntry.php @@ -0,0 +1,140 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property CustomLabelPosition $TopLeftCorner + * @property CustomLabelPosition $BottomRightCorner + * @property CustomLabelPosition $Position + * @property string $Format + * @property string[] $DataFields + * @property string $ThermalFontId + * @property string $FontName + * @property int $FontSize + * @property \FedEx\ShipService\SimpleType\RotationType|string $Rotation + + */ +class CustomLabelTextBoxEntry extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CustomLabelTextBoxEntry'; + + /** + * Set TopLeftCorner + * + * @param CustomLabelPosition $topLeftCorner + * @return $this + */ + public function setTopLeftCorner(CustomLabelPosition $topLeftCorner) + { + $this->values['TopLeftCorner'] = $topLeftCorner; + return $this; + } + + /** + * Set BottomRightCorner + * + * @param CustomLabelPosition $bottomRightCorner + * @return $this + */ + public function setBottomRightCorner(CustomLabelPosition $bottomRightCorner) + { + $this->values['BottomRightCorner'] = $bottomRightCorner; + return $this; + } + + /** + * Set Position + * + * @param CustomLabelPosition $position + * @return $this + */ + public function setPosition(CustomLabelPosition $position) + { + $this->values['Position'] = $position; + return $this; + } + + /** + * Set Format + * + * @param string $format + * @return $this + */ + public function setFormat($format) + { + $this->values['Format'] = $format; + return $this; + } + + /** + * Set DataFields + * + * @param string $dataFields + * @return $this + */ + public function setDataFields($dataFields) + { + $this->values['DataFields'] = $dataFields; + return $this; + } + + /** + * Printer-specific font name for use with thermal printer labels. + * + * @param string $thermalFontId + * @return $this + */ + public function setThermalFontId($thermalFontId) + { + $this->values['ThermalFontId'] = $thermalFontId; + return $this; + } + + /** + * Generic font name for use with plain paper labels. + * + * @param string $fontName + * @return $this + */ + public function setFontName($fontName) + { + $this->values['FontName'] = $fontName; + return $this; + } + + /** + * Generic font size for use with plain paper labels. + * + * @param int $fontSize + * @return $this + */ + public function setFontSize($fontSize) + { + $this->values['FontSize'] = $fontSize; + return $this; + } + + /** + * Set Rotation + * + * @param \FedEx\ShipService\SimpleType\RotationType|string $rotation + * @return $this + */ + public function setRotation($rotation) + { + $this->values['Rotation'] = $rotation; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/CustomLabelTextEntry.php b/src/FedEx/ShipService/ComplexType/CustomLabelTextEntry.php index 7a0c32e9..24f6bd73 100644 --- a/src/FedEx/ShipService/ComplexType/CustomLabelTextEntry.php +++ b/src/FedEx/ShipService/ComplexType/CustomLabelTextEntry.php @@ -16,6 +16,7 @@ * @property string $ThermalFontId * @property string $FontName * @property int $FontSize + * @property \FedEx\ShipService\SimpleType\RotationType|string $Rotation */ class CustomLabelTextEntry extends AbstractComplexType @@ -98,4 +99,16 @@ public function setFontSize($fontSize) $this->values['FontSize'] = $fontSize; return $this; } + + /** + * Set Rotation + * + * @param \FedEx\ShipService\SimpleType\RotationType|string $rotation + * @return $this + */ + public function setRotation($rotation) + { + $this->values['Rotation'] = $rotation; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/CustomerReference.php b/src/FedEx/ShipService/ComplexType/CustomerReference.php index 57a75d49..7c5e5a9e 100644 --- a/src/FedEx/ShipService/ComplexType/CustomerReference.php +++ b/src/FedEx/ShipService/ComplexType/CustomerReference.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Reference information to be associated with this package. + * CustomerReference * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class CustomerReference extends AbstractComplexType protected $name = 'CustomerReference'; /** - * The reference type to be associated with this reference data. + * Set CustomerReferenceType * * @param \FedEx\ShipService\SimpleType\CustomerReferenceType|string $customerReferenceType * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CustomerSpecifiedLabelDetail.php b/src/FedEx/ShipService/ComplexType/CustomerSpecifiedLabelDetail.php index 5dfad682..5c583131 100644 --- a/src/FedEx/ShipService/ComplexType/CustomerSpecifiedLabelDetail.php +++ b/src/FedEx/ShipService/ComplexType/CustomerSpecifiedLabelDetail.php @@ -11,11 +11,13 @@ * @subpackage Ship Service * * @property DocTabContent $DocTabContent + * @property \FedEx\ShipService\SimpleType\RelativeVerticalPositionType|string $CustomContentPosition * @property CustomLabelDetail $CustomContent * @property ConfigurableLabelReferenceEntry[] $ConfigurableReferenceEntries * @property \FedEx\ShipService\SimpleType\LabelMaskableDataType|string[] $MaskedData * @property \FedEx\ShipService\SimpleType\SecondaryBarcodeType|string $SecondaryBarcode * @property Localization $TermsAndConditionsLocalization + * @property RegulatoryLabelContentDetail[] $RegulatoryLabels * @property AdditionalLabelsDetail[] $AdditionalLabels * @property int $AirWaybillSuppressionCount @@ -42,7 +44,19 @@ public function setDocTabContent(DocTabContent $docTabContent) } /** - * Defines any custom content to print on the label. + * Controls the position of the customer specified content relative to the FedEx portion. + * + * @param \FedEx\ShipService\SimpleType\RelativeVerticalPositionType|string $customContentPosition + * @return $this + */ + public function setCustomContentPosition($customContentPosition) + { + $this->values['CustomContentPosition'] = $customContentPosition; + return $this; + } + + /** + * Set CustomContent * * @param CustomLabelDetail $customContent * @return $this @@ -54,7 +68,7 @@ public function setCustomContent(CustomLabelDetail $customContent) } /** - * Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. + * Set ConfigurableReferenceEntries * * @param ConfigurableLabelReferenceEntry[] $configurableReferenceEntries * @return $this @@ -101,6 +115,18 @@ public function setTermsAndConditionsLocalization(Localization $termsAndConditio return $this; } + /** + * Set RegulatoryLabels + * + * @param RegulatoryLabelContentDetail[] $regulatoryLabels + * @return $this + */ + public function setRegulatoryLabels(array $regulatoryLabels) + { + $this->values['RegulatoryLabels'] = $regulatoryLabels; + return $this; + } + /** * Controls the number of additional copies of supplemental labels. * diff --git a/src/FedEx/ShipService/ComplexType/CustomsClearanceDetail.php b/src/FedEx/ShipService/ComplexType/CustomsClearanceDetail.php index e5ab1cf4..83305c64 100644 --- a/src/FedEx/ShipService/ComplexType/CustomsClearanceDetail.php +++ b/src/FedEx/ShipService/ComplexType/CustomsClearanceDetail.php @@ -25,6 +25,7 @@ * @property Commodity[] $Commodities * @property ExportDetail $ExportDetail * @property \FedEx\ShipService\SimpleType\RegulatoryControlType|string[] $RegulatoryControls + * @property CustomsDeclarationStatementDetail $DeclarationStatementDetail */ class CustomsClearanceDetail extends AbstractComplexType @@ -215,4 +216,16 @@ public function setRegulatoryControls(array $regulatoryControls) $this->values['RegulatoryControls'] = $regulatoryControls; return $this; } + + /** + * Set DeclarationStatementDetail + * + * @param CustomsDeclarationStatementDetail $declarationStatementDetail + * @return $this + */ + public function setDeclarationStatementDetail(CustomsDeclarationStatementDetail $declarationStatementDetail) + { + $this->values['DeclarationStatementDetail'] = $declarationStatementDetail; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/CustomsDeclarationStatementDetail.php b/src/FedEx/ShipService/ComplexType/CustomsDeclarationStatementDetail.php new file mode 100644 index 00000000..0e76e99e --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/CustomsDeclarationStatementDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\CustomsDeclarationStatementType|string[] $Types + * @property NaftaLowValueStatementDetail $NaftaLowValueStatementDetail + + */ +class CustomsDeclarationStatementDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CustomsDeclarationStatementDetail'; + + /** + * This indicates the different statements, declarations, acts, and/or certifications that apply to this shipment. + * + * @param \FedEx\ShipService\SimpleType\CustomsDeclarationStatementType[]|string[] $types + * @return $this + */ + public function setTypes(array $types) + { + $this->values['Types'] = $types; + return $this; + } + + /** + * Specifies the NAFTA low value statement information. + * + * @param NaftaLowValueStatementDetail $naftaLowValueStatementDetail + * @return $this + */ + public function setNaftaLowValueStatementDetail(NaftaLowValueStatementDetail $naftaLowValueStatementDetail) + { + $this->values['NaftaLowValueStatementDetail'] = $naftaLowValueStatementDetail; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/DangerousGoodsDetail.php b/src/FedEx/ShipService/ComplexType/DangerousGoodsDetail.php index 7e786af3..b70879ff 100644 --- a/src/FedEx/ShipService/ComplexType/DangerousGoodsDetail.php +++ b/src/FedEx/ShipService/ComplexType/DangerousGoodsDetail.php @@ -4,12 +4,14 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required for a FedEx shipment containing dangerous goods (hazardous materials). + * DangerousGoodsDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Ship Service * + * @property string $UploadedTrackingNumber + * @property \FedEx\ShipService\SimpleType\HazardousCommodityRegulationType|string $Regulation * @property \FedEx\ShipService\SimpleType\DangerousGoodsAccessibilityType|string $Accessibility * @property boolean $CargoAircraftOnly * @property \FedEx\ShipService\SimpleType\HazardousCommodityOptionType|string[] $Options @@ -35,7 +37,31 @@ class DangerousGoodsDetail extends AbstractComplexType protected $name = 'DangerousGoodsDetail'; /** - * Identifies whether or not the products being shipped are required to be accessible during delivery. + * This field is used to identify an instance of an uploaded dangerous goods handling unit. + * + * @param string $uploadedTrackingNumber + * @return $this + */ + public function setUploadedTrackingNumber($uploadedTrackingNumber) + { + $this->values['UploadedTrackingNumber'] = $uploadedTrackingNumber; + return $this; + } + + /** + * Set Regulation + * + * @param \FedEx\ShipService\SimpleType\HazardousCommodityRegulationType|string $regulation + * @return $this + */ + public function setRegulation($regulation) + { + $this->values['Regulation'] = $regulation; + return $this; + } + + /** + * Set Accessibility * * @param \FedEx\ShipService\SimpleType\DangerousGoodsAccessibilityType|string $accessibility * @return $this diff --git a/src/FedEx/ShipService/ComplexType/DateRange.php b/src/FedEx/ShipService/ComplexType/DateRange.php index f4196ebf..c2709f3f 100644 --- a/src/FedEx/ShipService/ComplexType/DateRange.php +++ b/src/FedEx/ShipService/ComplexType/DateRange.php @@ -24,7 +24,7 @@ class DateRange extends AbstractComplexType protected $name = 'DateRange'; /** - * The beginning date in a date range. + * Set Begins * * @param string $begins * @return $this @@ -36,7 +36,7 @@ public function setBegins($begins) } /** - * The end date in a date range. + * Set Ends * * @param string $ends * @return $this diff --git a/src/FedEx/ShipService/ComplexType/DeleteShipmentRequest.php b/src/FedEx/ShipService/ComplexType/DeleteShipmentRequest.php index 56a910ee..e92b2d29 100644 --- a/src/FedEx/ShipService/ComplexType/DeleteShipmentRequest.php +++ b/src/FedEx/ShipService/ComplexType/DeleteShipmentRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data sent to FedEx by a customer in order to delete a package. + * DeleteShipmentRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -41,7 +41,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -53,7 +53,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -65,7 +65,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -77,7 +77,7 @@ public function setVersion(VersionId $version) } /** - * The timestamp of the shipment request. + * Set ShipTimestamp * * @param string $shipTimestamp * @return $this @@ -89,7 +89,7 @@ public function setShipTimestamp($shipTimestamp) } /** - * Identifies the FedEx tracking number of the package being cancelled. + * Set TrackingId * * @param TrackingId $trackingId * @return $this @@ -101,7 +101,7 @@ public function setTrackingId(TrackingId $trackingId) } /** - * Determines the type of deletion to be performed in relation to package level vs shipment level. + * Set DeletionControl * * @param \FedEx\ShipService\SimpleType\DeletionControlType|string $deletionControl * @return $this diff --git a/src/FedEx/ShipService/ComplexType/DeleteTagRequest.php b/src/FedEx/ShipService/ComplexType/DeleteTagRequest.php index 46d7ed0d..d6c0f47e 100644 --- a/src/FedEx/ShipService/ComplexType/DeleteTagRequest.php +++ b/src/FedEx/ShipService/ComplexType/DeleteTagRequest.php @@ -42,7 +42,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -54,7 +54,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -66,7 +66,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -114,7 +114,7 @@ public function setPayment(Payment $payment) } /** - * Also known as Pickup Confirmation Number or Dispatch Number + * Set ConfirmationNumber * * @param string $confirmationNumber * @return $this diff --git a/src/FedEx/ShipService/ComplexType/DestinationControlDetail.php b/src/FedEx/ShipService/ComplexType/DestinationControlDetail.php index fe0b7aa6..8616c9bf 100644 --- a/src/FedEx/ShipService/ComplexType/DestinationControlDetail.php +++ b/src/FedEx/ShipService/ComplexType/DestinationControlDetail.php @@ -25,7 +25,7 @@ class DestinationControlDetail extends AbstractComplexType protected $name = 'DestinationControlDetail'; /** - * List of applicable Statment types. + * Set StatementTypes * * @param \FedEx\ShipService\SimpleType\DestinationControlStatementType[]|string[] $statementTypes * @return $this diff --git a/src/FedEx/ShipService/ComplexType/Dimensions.php b/src/FedEx/ShipService/ComplexType/Dimensions.php index 5078e187..1272b9ea 100644 --- a/src/FedEx/ShipService/ComplexType/Dimensions.php +++ b/src/FedEx/ShipService/ComplexType/Dimensions.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The dimensions of this package and the unit type used for the measurements. + * Dimensions * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/DocTabContent.php b/src/FedEx/ShipService/ComplexType/DocTabContent.php index 6f120081..1b7601e8 100644 --- a/src/FedEx/ShipService/ComplexType/DocTabContent.php +++ b/src/FedEx/ShipService/ComplexType/DocTabContent.php @@ -25,7 +25,7 @@ class DocTabContent extends AbstractComplexType protected $name = 'DocTabContent'; /** - * The DocTabContentType options available. + * Set DocTabContentType * * @param \FedEx\ShipService\SimpleType\DocTabContentType|string $docTabContentType * @return $this @@ -37,7 +37,7 @@ public function setDocTabContentType($docTabContentType) } /** - * The DocTabContentType should be set to ZONE001 to specify additional Zone details. + * Set Zone001 * * @param DocTabContentZone001 $zone001 * @return $this @@ -49,7 +49,7 @@ public function setZone001(DocTabContentZone001 $zone001) } /** - * The DocTabContentType should be set to BARCODED to specify additional BarCoded details. + * Set Barcoded * * @param DocTabContentBarcoded $barcoded * @return $this diff --git a/src/FedEx/ShipService/ComplexType/DocTabZoneSpecification.php b/src/FedEx/ShipService/ComplexType/DocTabZoneSpecification.php index 396ae06a..701e71be 100644 --- a/src/FedEx/ShipService/ComplexType/DocTabZoneSpecification.php +++ b/src/FedEx/ShipService/ComplexType/DocTabZoneSpecification.php @@ -27,7 +27,7 @@ class DocTabZoneSpecification extends AbstractComplexType protected $name = 'DocTabZoneSpecification'; /** - * Zone number can be between 1 and 12. + * Set ZoneNumber * * @param int $zoneNumber * @return $this @@ -39,7 +39,7 @@ public function setZoneNumber($zoneNumber) } /** - * Header value on this zone. + * Set Header * * @param string $header * @return $this @@ -51,7 +51,7 @@ public function setHeader($header) } /** - * Reference path to the element in the request/reply whose value should be printed on this zone. + * Set DataField * * @param string $dataField * @return $this @@ -63,7 +63,7 @@ public function setDataField($dataField) } /** - * Free form-text to be printed in this zone. + * Set LiteralValue * * @param string $literalValue * @return $this @@ -75,7 +75,7 @@ public function setLiteralValue($literalValue) } /** - * Justification for the text printed on this zone. + * Set Justification * * @param \FedEx\ShipService\SimpleType\DocTabZoneJustificationType|string $justification * @return $this diff --git a/src/FedEx/ShipService/ComplexType/DocumentFormatOptionsRequested.php b/src/FedEx/ShipService/ComplexType/DocumentFormatOptionsRequested.php new file mode 100644 index 00000000..92ba8d3e --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/DocumentFormatOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\DocumentFormatOptionType|string[] $Options + + */ +class DocumentFormatOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentFormatOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\ShipService\SimpleType\DocumentFormatOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/DocumentGenerationDetail.php b/src/FedEx/ShipService/ComplexType/DocumentGenerationDetail.php new file mode 100644 index 00000000..245fb3c1 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/DocumentGenerationDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\EnterpriseDocumentType|string $Type + * @property int $MinimumCopiesRequired + * @property \FedEx\ShipService\SimpleType\RequirementType|string $Letterhead + * @property \FedEx\ShipService\SimpleType\RequirementType|string $ElectronicSignature + + */ +class DocumentGenerationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentGenerationDetail'; + + /** + * Set Type + * + * @param \FedEx\ShipService\SimpleType\EnterpriseDocumentType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set MinimumCopiesRequired + * + * @param int $minimumCopiesRequired + * @return $this + */ + public function setMinimumCopiesRequired($minimumCopiesRequired) + { + $this->values['MinimumCopiesRequired'] = $minimumCopiesRequired; + return $this; + } + + /** + * Set Letterhead + * + * @param \FedEx\ShipService\SimpleType\RequirementType|string $letterhead + * @return $this + */ + public function setLetterhead($letterhead) + { + $this->values['Letterhead'] = $letterhead; + return $this; + } + + /** + * Set ElectronicSignature + * + * @param \FedEx\ShipService\SimpleType\RequirementType|string $electronicSignature + * @return $this + */ + public function setElectronicSignature($electronicSignature) + { + $this->values['ElectronicSignature'] = $electronicSignature; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/DocumentRequirementsDetail.php b/src/FedEx/ShipService/ComplexType/DocumentRequirementsDetail.php new file mode 100644 index 00000000..28ceffda --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/DocumentRequirementsDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\RequiredDocumentType|string[] $RequiredDocuments + * @property DocumentGenerationDetail[] $GenerationDetails + * @property \FedEx\ShipService\SimpleType\EnterpriseDocumentType|string[] $ProhibitedDocuments + + */ +class DocumentRequirementsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentRequirementsDetail'; + + /** + * Set RequiredDocuments + * + * @param \FedEx\ShipService\SimpleType\RequiredDocumentType[]|string[] $requiredDocuments + * @return $this + */ + public function setRequiredDocuments(array $requiredDocuments) + { + $this->values['RequiredDocuments'] = $requiredDocuments; + return $this; + } + + /** + * Set GenerationDetails + * + * @param DocumentGenerationDetail[] $generationDetails + * @return $this + */ + public function setGenerationDetails(array $generationDetails) + { + $this->values['GenerationDetails'] = $generationDetails; + return $this; + } + + /** + * Lists the documents that are not accepted by FedEx for this shipment. + * + * @param \FedEx\ShipService\SimpleType\EnterpriseDocumentType[]|string[] $prohibitedDocuments + * @return $this + */ + public function setProhibitedDocuments(array $prohibitedDocuments) + { + $this->values['ProhibitedDocuments'] = $prohibitedDocuments; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/EMailDetail.php b/src/FedEx/ShipService/ComplexType/EMailDetail.php new file mode 100644 index 00000000..9344de52 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/EMailDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property string $EmailAddress + * @property string $Name + + */ +class EMailDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EMailDetail'; + + /** + * Set EmailAddress + * + * @param string $emailAddress + * @return $this + */ + public function setEmailAddress($emailAddress) + { + $this->values['EmailAddress'] = $emailAddress; + return $this; + } + + /** + * Specifies the name associated with the email address. + * + * @param string $name + * @return $this + */ + public function setName($name) + { + $this->values['Name'] = $name; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/EMailLabelDetail.php b/src/FedEx/ShipService/ComplexType/EMailLabelDetail.php index f9492e6c..033585d2 100644 --- a/src/FedEx/ShipService/ComplexType/EMailLabelDetail.php +++ b/src/FedEx/ShipService/ComplexType/EMailLabelDetail.php @@ -4,14 +4,14 @@ use FedEx\AbstractComplexType; /** - * Describes specific information about the email label shipment. + * EMailLabelDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Ship Service * - * @property string $NotificationEMailAddress - * @property string $NotificationMessage + * @property string $Message + * @property EMailRecipient[] $Recipients */ class EMailLabelDetail extends AbstractComplexType @@ -24,26 +24,26 @@ class EMailLabelDetail extends AbstractComplexType protected $name = 'EMailLabelDetail'; /** - * Notification email will be sent to this email address + * Content of the email message. * - * @param string $notificationEMailAddress + * @param string $message * @return $this */ - public function setNotificationEMailAddress($notificationEMailAddress) + public function setMessage($message) { - $this->values['NotificationEMailAddress'] = $notificationEMailAddress; + $this->values['Message'] = $message; return $this; } /** - * Message to be sent in the notification email + * Set Recipients * - * @param string $notificationMessage + * @param EMailRecipient[] $recipients * @return $this */ - public function setNotificationMessage($notificationMessage) + public function setRecipients(array $recipients) { - $this->values['NotificationMessage'] = $notificationMessage; + $this->values['Recipients'] = $recipients; return $this; } } diff --git a/src/FedEx/ShipService/ComplexType/EMailRecipient.php b/src/FedEx/ShipService/ComplexType/EMailRecipient.php new file mode 100644 index 00000000..7565626f --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/EMailRecipient.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property string $EmailAddress + * @property \FedEx\ShipService\SimpleType\AccessorRoleType|string $Role + * @property EmailOptionsRequested $OptionsRequested + * @property Localization $Localization + + */ +class EMailRecipient extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EMailRecipient'; + + /** + * EMail address of the recipient. + * + * @param string $emailAddress + * @return $this + */ + public function setEmailAddress($emailAddress) + { + $this->values['EmailAddress'] = $emailAddress; + return $this; + } + + /** + * The relationship that the customer has to the pending shipment. + * + * @param \FedEx\ShipService\SimpleType\AccessorRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Specifies how the email notification for the pending shipment need to be processed. + * + * @param EmailOptionsRequested $optionsRequested + * @return $this + */ + public function setOptionsRequested(EmailOptionsRequested $optionsRequested) + { + $this->values['OptionsRequested'] = $optionsRequested; + return $this; + } + + /** + * Localization and language details specified by the recipient of the EMail. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/EmailOptionsRequested.php b/src/FedEx/ShipService/ComplexType/EmailOptionsRequested.php new file mode 100644 index 00000000..80a96533 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/EmailOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\EmailOptionType|string[] $Options + + */ +class EmailOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EmailOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\ShipService\SimpleType\EmailOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/EtdDetail.php b/src/FedEx/ShipService/ComplexType/EtdDetail.php index d1d557e7..29f80dba 100644 --- a/src/FedEx/ShipService/ComplexType/EtdDetail.php +++ b/src/FedEx/ShipService/ComplexType/EtdDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Ship Service * + * @property \FedEx\ShipService\SimpleType\EtdAttributeType|string[] $Attributes * @property \FedEx\ShipService\SimpleType\RequestedShippingDocumentType|string[] $RequestedDocumentCopies * @property UploadDocumentReferenceDetail[] $DocumentReferences @@ -23,6 +24,18 @@ class EtdDetail extends AbstractComplexType */ protected $name = 'EtdDetail'; + /** + * Set Attributes + * + * @param \FedEx\ShipService\SimpleType\EtdAttributeType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } + /** * Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. * diff --git a/src/FedEx/ShipService/ComplexType/ExportDeclarationDetail.php b/src/FedEx/ShipService/ComplexType/ExportDeclarationDetail.php new file mode 100644 index 00000000..909fa0e7 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ExportDeclarationDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property ShippingDocumentFormat $DocumentFormat + * @property CustomerImageUsage[] $CustomerImageUsages + + */ +class ExportDeclarationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ExportDeclarationDetail'; + + /** + * Specifies characteristics of a shipping document to be produced. + * + * @param ShippingDocumentFormat $documentFormat + * @return $this + */ + public function setDocumentFormat(ShippingDocumentFormat $documentFormat) + { + $this->values['DocumentFormat'] = $documentFormat; + return $this; + } + + /** + * Specifies the usage and identification of customer supplied images to be used on this document. + * + * @param CustomerImageUsage[] $customerImageUsages + * @return $this + */ + public function setCustomerImageUsages(array $customerImageUsages) + { + $this->values['CustomerImageUsages'] = $customerImageUsages; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ExportDetail.php b/src/FedEx/ShipService/ComplexType/ExportDetail.php index 50e98e54..c3385c43 100644 --- a/src/FedEx/ShipService/ComplexType/ExportDetail.php +++ b/src/FedEx/ShipService/ComplexType/ExportDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Country specific details of an International shipment. + * ExportDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,8 +26,7 @@ class ExportDetail extends AbstractComplexType protected $name = 'ExportDetail'; /** - * Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. + * Set B13AFilingOption * * @param \FedEx\ShipService\SimpleType\B13AFilingOptionType|string $b13AFilingOption * @return $this @@ -51,7 +50,7 @@ public function setExportComplianceStatement($exportComplianceStatement) } /** - * This field is applicable only to Canada export non-document shipments of any value to any destination. No special characters allowed. + * Set PermitNumber * * @param string $permitNumber * @return $this @@ -63,7 +62,7 @@ public function setPermitNumber($permitNumber) } /** - * Department of Commerce/Department of State information about this shipment. + * Set DestinationControlDetail * * @param DestinationControlDetail $destinationControlDetail * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ExpressFreightDetail.php b/src/FedEx/ShipService/ComplexType/ExpressFreightDetail.php index 357283ea..2736636e 100644 --- a/src/FedEx/ShipService/ComplexType/ExpressFreightDetail.php +++ b/src/FedEx/ShipService/ComplexType/ExpressFreightDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Details specific to an Express freight shipment. + * ExpressFreightDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -25,7 +25,7 @@ class ExpressFreightDetail extends AbstractComplexType protected $name = 'ExpressFreightDetail'; /** - * Indicates whether or nor a packing list is enclosed. + * Set PackingListEnclosed * * @param boolean $packingListEnclosed * @return $this @@ -37,10 +37,7 @@ public function setPackingListEnclosed($packingListEnclosed) } /** - * Total shipment pieces. - e.g. 3 boxes and 3 pallets of 100 pieces each = Shippers Load and Count of 303. - Applicable to International Priority Freight and International Economy Freight. - Values must be in the range of 1 - 99999 + * Set ShippersLoadAndCount * * @param int $shippersLoadAndCount * @return $this @@ -52,7 +49,7 @@ public function setShippersLoadAndCount($shippersLoadAndCount) } /** - * Required for International Freight shipping. Values must be 8- 12 characters in length. + * Set BookingConfirmationNumber * * @param string $bookingConfirmationNumber * @return $this diff --git a/src/FedEx/ShipService/ComplexType/FreightAddressLabelDetail.php b/src/FedEx/ShipService/ComplexType/FreightAddressLabelDetail.php index beb50fc1..b7c7d19c 100644 --- a/src/FedEx/ShipService/ComplexType/FreightAddressLabelDetail.php +++ b/src/FedEx/ShipService/ComplexType/FreightAddressLabelDetail.php @@ -14,6 +14,8 @@ * @property int $Copies * @property \FedEx\ShipService\SimpleType\PageQuadrantType|string $StartingPosition * @property DocTabContent $DocTabContent + * @property \FedEx\ShipService\SimpleType\RelativeVerticalPositionType|string $CustomContentPosition + * @property CustomLabelDetail $CustomContent */ class FreightAddressLabelDetail extends AbstractComplexType @@ -72,4 +74,28 @@ public function setDocTabContent(DocTabContent $docTabContent) $this->values['DocTabContent'] = $docTabContent; return $this; } + + /** + * Controls the position of the customer specified content relative to the FedEx portion. + * + * @param \FedEx\ShipService\SimpleType\RelativeVerticalPositionType|string $customContentPosition + * @return $this + */ + public function setCustomContentPosition($customContentPosition) + { + $this->values['CustomContentPosition'] = $customContentPosition; + return $this; + } + + /** + * Set CustomContent + * + * @param CustomLabelDetail $customContent + * @return $this + */ + public function setCustomContent(CustomLabelDetail $customContent) + { + $this->values['CustomContent'] = $customContent; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php b/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php index 73ab1a05..29fa815a 100644 --- a/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php +++ b/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php @@ -154,7 +154,7 @@ public function setWeight(Weight $weight) } /** - * FED EX INTERNAL USE ONLY - Individual line item dimensions. + * Set Dimensions * * @param Dimensions $dimensions * @return $this diff --git a/src/FedEx/ShipService/ComplexType/HazardousCommodityContent.php b/src/FedEx/ShipService/ComplexType/HazardousCommodityContent.php index c068a215..221c12c1 100644 --- a/src/FedEx/ShipService/ComplexType/HazardousCommodityContent.php +++ b/src/FedEx/ShipService/ComplexType/HazardousCommodityContent.php @@ -12,8 +12,10 @@ * * @property HazardousCommodityDescription $Description * @property HazardousCommodityQuantityDetail $Quantity + * @property HazardousCommodityInnerReceptacleDetail[] $InnerReceptacles * @property HazardousCommodityOptionDetail $Options * @property RadionuclideDetail $RadionuclideDetail + * @property NetExplosiveDetail $NetExplosiveDetail */ class HazardousCommodityContent extends AbstractComplexType @@ -49,6 +51,18 @@ public function setQuantity(HazardousCommodityQuantityDetail $quantity) return $this; } + /** + * This describes the inner receptacle details for a hazardous commodity within the dangerous goods container. + * + * @param HazardousCommodityInnerReceptacleDetail[] $innerReceptacles + * @return $this + */ + public function setInnerReceptacles(array $innerReceptacles) + { + $this->values['InnerReceptacles'] = $innerReceptacles; + return $this; + } + /** * Customer-provided specifications for handling individual commodities. * @@ -72,4 +86,16 @@ public function setRadionuclideDetail(RadionuclideDetail $radionuclideDetail) $this->values['RadionuclideDetail'] = $radionuclideDetail; return $this; } + + /** + * The total mass of the contained explosive substances, without the mass of any casings, bullets, shells, etc. + * + * @param NetExplosiveDetail $netExplosiveDetail + * @return $this + */ + public function setNetExplosiveDetail(NetExplosiveDetail $netExplosiveDetail) + { + $this->values['NetExplosiveDetail'] = $netExplosiveDetail; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/HazardousCommodityInnerReceptacleDetail.php b/src/FedEx/ShipService/ComplexType/HazardousCommodityInnerReceptacleDetail.php new file mode 100644 index 00000000..419c5524 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/HazardousCommodityInnerReceptacleDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property HazardousCommodityQuantityDetail $Quantity + + */ +class HazardousCommodityInnerReceptacleDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'HazardousCommodityInnerReceptacleDetail'; + + /** + * This specifies the quantity contained in the inner receptacle. + * + * @param HazardousCommodityQuantityDetail $quantity + * @return $this + */ + public function setQuantity(HazardousCommodityQuantityDetail $quantity) + { + $this->values['Quantity'] = $quantity; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php b/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php index ba50e794..6ed18b60 100644 --- a/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php +++ b/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. + * HoldAtLocationDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/HomeDeliveryPremiumDetail.php b/src/FedEx/ShipService/ComplexType/HomeDeliveryPremiumDetail.php index de71dbb0..0a387182 100644 --- a/src/FedEx/ShipService/ComplexType/HomeDeliveryPremiumDetail.php +++ b/src/FedEx/ShipService/ComplexType/HomeDeliveryPremiumDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required by FedEx for home delivery services. + * HomeDeliveryPremiumDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -25,7 +25,7 @@ class HomeDeliveryPremiumDetail extends AbstractComplexType protected $name = 'HomeDeliveryPremiumDetail'; /** - * The type of Home Delivery Premium service being requested. + * Set HomeDeliveryPremiumType * * @param \FedEx\ShipService\SimpleType\HomeDeliveryPremiumType|string $homeDeliveryPremiumType * @return $this @@ -37,7 +37,7 @@ public function setHomeDeliveryPremiumType($homeDeliveryPremiumType) } /** - * Required for Date Certain Home Delivery. + * Set Date * * @param string $date * @return $this @@ -49,7 +49,7 @@ public function setDate($date) } /** - * Required for Date Certain and Appointment Home Delivery. + * Set PhoneNumber * * @param string $phoneNumber * @return $this diff --git a/src/FedEx/ShipService/ComplexType/LabelSpecification.php b/src/FedEx/ShipService/ComplexType/LabelSpecification.php index 8d62a4c5..2e4e3121 100644 --- a/src/FedEx/ShipService/ComplexType/LabelSpecification.php +++ b/src/FedEx/ShipService/ComplexType/LabelSpecification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Description of shipping label to be returned in the reply + * LabelSpecification * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -15,6 +15,7 @@ * @property \FedEx\ShipService\SimpleType\ShippingDocumentImageType|string $ImageType * @property \FedEx\ShipService\SimpleType\LabelStockType|string $LabelStockType * @property \FedEx\ShipService\SimpleType\LabelPrintingOrientationType|string $LabelPrintingOrientation + * @property \FedEx\ShipService\SimpleType\LabelOrderType|string $LabelOrder * @property ContactAndAddress $PrintedLabelOrigin * @property CustomerSpecifiedLabelDetail $CustomerSpecifiedDetail @@ -41,7 +42,7 @@ public function setDispositions(array $dispositions) } /** - * Specify type of label to be returned + * Set LabelFormatType * * @param \FedEx\ShipService\SimpleType\LabelFormatType|string $labelFormatType * @return $this @@ -53,7 +54,7 @@ public function setLabelFormatType($labelFormatType) } /** - * Specifies the image format used for a shipping document. + * Set ImageType * * @param \FedEx\ShipService\SimpleType\ShippingDocumentImageType|string $imageType * @return $this @@ -65,7 +66,7 @@ public function setImageType($imageType) } /** - * For thermal printer lables this indicates the size of the label and the location of the doc tab if present. + * Set LabelStockType * * @param \FedEx\ShipService\SimpleType\LabelStockType|string $labelStockType * @return $this @@ -77,7 +78,7 @@ public function setLabelStockType($labelStockType) } /** - * This indicates if the top or bottom of the label comes out of the printer first. + * Set LabelPrintingOrientation * * @param \FedEx\ShipService\SimpleType\LabelPrintingOrientationType|string $labelPrintingOrientation * @return $this @@ -89,7 +90,19 @@ public function setLabelPrintingOrientation($labelPrintingOrientation) } /** - * If present, this contact and address information will replace the return address information on the label. + * Specifies the order in which the labels are requested to be returned + * + * @param \FedEx\ShipService\SimpleType\LabelOrderType|string $labelOrder + * @return $this + */ + public function setLabelOrder($labelOrder) + { + $this->values['LabelOrder'] = $labelOrder; + return $this; + } + + /** + * Set PrintedLabelOrigin * * @param ContactAndAddress $printedLabelOrigin * @return $this @@ -101,7 +114,7 @@ public function setPrintedLabelOrigin(ContactAndAddress $printedLabelOrigin) } /** - * Allows customer-specified control of label content. + * Set CustomerSpecifiedDetail * * @param CustomerSpecifiedLabelDetail $customerSpecifiedDetail * @return $this diff --git a/src/FedEx/ShipService/ComplexType/LicenseOrPermitDetail.php b/src/FedEx/ShipService/ComplexType/LicenseOrPermitDetail.php new file mode 100644 index 00000000..40852b1a --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/LicenseOrPermitDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property string $Number + * @property string $EffectiveDate + * @property string $ExpirationDate + + */ +class LicenseOrPermitDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LicenseOrPermitDetail'; + + /** + * License or Permit Number. + * + * @param string $number + * @return $this + */ + public function setNumber($number) + { + $this->values['Number'] = $number; + return $this; + } + + /** + * Specifies the effective date of the license. + * + * @param string $effectiveDate + * @return $this + */ + public function setEffectiveDate($effectiveDate) + { + $this->values['EffectiveDate'] = $effectiveDate; + return $this; + } + + /** + * Specifies the expiration date of the license. + * + * @param string $expirationDate + * @return $this + */ + public function setExpirationDate($expirationDate) + { + $this->values['ExpirationDate'] = $expirationDate; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/Money.php b/src/FedEx/ShipService/ComplexType/Money.php index bc852c29..88d0c377 100644 --- a/src/FedEx/ShipService/ComplexType/Money.php +++ b/src/FedEx/ShipService/ComplexType/Money.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the medium of exchange for FedEx services. + * Money * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class Money extends AbstractComplexType protected $name = 'Money'; /** - * Identifies the currency of the monetary amount. + * Set Currency * * @param string $currency * @return $this @@ -36,7 +36,7 @@ public function setCurrency($currency) } /** - * Identifies the monetary amount. + * Set Amount * * @param float $amount * @return $this diff --git a/src/FedEx/ShipService/ComplexType/NaftaCommodityDetail.php b/src/FedEx/ShipService/ComplexType/NaftaCommodityDetail.php index dc653341..2fb3fbde 100644 --- a/src/FedEx/ShipService/ComplexType/NaftaCommodityDetail.php +++ b/src/FedEx/ShipService/ComplexType/NaftaCommodityDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * This element is currently not supported and is for the future use. + * NaftaCommodityDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/NaftaLowValueStatementDetail.php b/src/FedEx/ShipService/ComplexType/NaftaLowValueStatementDetail.php new file mode 100644 index 00000000..94ff1bb8 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/NaftaLowValueStatementDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\CustomsRoleType|string $Role + + */ +class NaftaLowValueStatementDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NaftaLowValueStatementDetail'; + + /** + * Specifies the NAFTA statement role. + * + * @param \FedEx\ShipService\SimpleType\CustomsRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/NaftaProducer.php b/src/FedEx/ShipService/ComplexType/NaftaProducer.php index de3a75fd..1b679081 100644 --- a/src/FedEx/ShipService/ComplexType/NaftaProducer.php +++ b/src/FedEx/ShipService/ComplexType/NaftaProducer.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * This element is currently not supported and is for the future use. + * NaftaProducer * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/NetExplosiveDetail.php b/src/FedEx/ShipService/ComplexType/NetExplosiveDetail.php new file mode 100644 index 00000000..1e08b29c --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/NetExplosiveDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\NetExplosiveClassificationType|string $Type + * @property float $Amount + * @property string $Units + + */ +class NetExplosiveDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NetExplosiveDetail'; + + /** + * Set Type + * + * @param \FedEx\ShipService\SimpleType\NetExplosiveClassificationType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Amount + * + * @param float $amount + * @return $this + */ + public function setAmount($amount) + { + $this->values['Amount'] = $amount; + return $this; + } + + /** + * Set Units + * + * @param string $units + * @return $this + */ + public function setUnits($units) + { + $this->values['Units'] = $units; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/Notification.php b/src/FedEx/ShipService/ComplexType/Notification.php index 756d2f74..ead8d545 100644 --- a/src/FedEx/ShipService/ComplexType/Notification.php +++ b/src/FedEx/ShipService/ComplexType/Notification.php @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/ShipService/ComplexType/NotificationDetail.php b/src/FedEx/ShipService/ComplexType/NotificationDetail.php new file mode 100644 index 00000000..9a0248cf --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/NotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\NotificationType|string $NotificationType + * @property EMailDetail $EmailDetail + * @property Localization $Localization + + */ +class NotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NotificationDetail'; + + /** + * Indicates the type of notification that will be sent. + * + * @param \FedEx\ShipService\SimpleType\NotificationType|string $notificationType + * @return $this + */ + public function setNotificationType($notificationType) + { + $this->values['NotificationType'] = $notificationType; + return $this; + } + + /** + * Specifies the email notification details. + * + * @param EMailDetail $emailDetail + * @return $this + */ + public function setEmailDetail(EMailDetail $emailDetail) + { + $this->values['EmailDetail'] = $emailDetail; + return $this; + } + + /** + * Specifies the localization for this notification. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/PackageRateDetail.php b/src/FedEx/ShipService/ComplexType/PackageRateDetail.php index 17475feb..56466195 100644 --- a/src/FedEx/ShipService/ComplexType/PackageRateDetail.php +++ b/src/FedEx/ShipService/ComplexType/PackageRateDetail.php @@ -77,7 +77,7 @@ public function setMinimumChargeType($minimumChargeType) } /** - * The weight that was used to calculate the rate. + * Set BillingWeight * * @param Weight $billingWeight * @return $this @@ -197,7 +197,7 @@ public function setNetCharge(Money $netCharge) } /** - * The total sum of all rebates applied to this package. + * Set TotalRebates * * @param Money $totalRebates * @return $this @@ -257,7 +257,7 @@ public function setTaxes(array $taxes) } /** - * The variable handling charges calculated based on the type variable handling charges requested. + * Set VariableHandlingCharges * * @param VariableHandlingCharges $variableHandlingCharges * @return $this diff --git a/src/FedEx/ShipService/ComplexType/PackageSpecialServicesRequested.php b/src/FedEx/ShipService/ComplexType/PackageSpecialServicesRequested.php index 92bfc644..677fd9bd 100644 --- a/src/FedEx/ShipService/ComplexType/PackageSpecialServicesRequested.php +++ b/src/FedEx/ShipService/ComplexType/PackageSpecialServicesRequested.php @@ -13,9 +13,11 @@ * @property \FedEx\ShipService\SimpleType\PackageSpecialServiceType|string[] $SpecialServiceTypes * @property CodDetail $CodDetail * @property DangerousGoodsDetail $DangerousGoodsDetail + * @property BatteryClassificationDetail[] $BatteryDetails * @property Weight $DryIceWeight * @property SignatureOptionDetail $SignatureOptionDetail * @property PriorityAlertDetail $PriorityAlertDetail + * @property AlcoholDetail $AlcoholDetail */ class PackageSpecialServicesRequested extends AbstractComplexType @@ -52,7 +54,7 @@ public function setCodDetail(CodDetail $codDetail) } /** - * Descriptive data required for a FedEx shipment containing dangerous materials. This element is required when SpecialServiceType.DANGEROUS_GOODS or HAZARDOUS_MATERIAL is present in the SpecialServiceTypes collection. + * Set DangerousGoodsDetail * * @param DangerousGoodsDetail $dangerousGoodsDetail * @return $this @@ -64,7 +66,19 @@ public function setDangerousGoodsDetail(DangerousGoodsDetail $dangerousGoodsDeta } /** - * Descriptive data required for a FedEx shipment containing dry ice. This element is required when SpecialServiceType.DRY_ICE is present in the SpecialServiceTypes collection. + * Provides details about the batteries or cells that are contained within this specific package. + * + * @param BatteryClassificationDetail[] $batteryDetails + * @return $this + */ + public function setBatteryDetails(array $batteryDetails) + { + $this->values['BatteryDetails'] = $batteryDetails; + return $this; + } + + /** + * Set DryIceWeight * * @param Weight $dryIceWeight * @return $this @@ -76,7 +90,7 @@ public function setDryIceWeight(Weight $dryIceWeight) } /** - * The descriptive data required for FedEx signature services. This element is required when SpecialServiceType.SIGNATURE_OPTION is present in the SpecialServiceTypes collection. + * Set SignatureOptionDetail * * @param SignatureOptionDetail $signatureOptionDetail * @return $this @@ -88,7 +102,7 @@ public function setSignatureOptionDetail(SignatureOptionDetail $signatureOptionD } /** - * The descriptive data required for FedEx Priority Alert service. This element is required when SpecialServiceType.PRIORITY_ALERT is present in the SpecialServiceTypes collection. + * Set PriorityAlertDetail * * @param PriorityAlertDetail $priorityAlertDetail * @return $this @@ -98,4 +112,16 @@ public function setPriorityAlertDetail(PriorityAlertDetail $priorityAlertDetail) $this->values['PriorityAlertDetail'] = $priorityAlertDetail; return $this; } + + /** + * Set AlcoholDetail + * + * @param AlcoholDetail $alcoholDetail + * @return $this + */ + public function setAlcoholDetail(AlcoholDetail $alcoholDetail) + { + $this->values['AlcoholDetail'] = $alcoholDetail; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/Party.php b/src/FedEx/ShipService/ComplexType/Party.php index ca6da51c..78973313 100644 --- a/src/FedEx/ShipService/ComplexType/Party.php +++ b/src/FedEx/ShipService/ComplexType/Party.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for a person or company entitiy doing business with FedEx. + * Party * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class Party extends AbstractComplexType protected $name = 'Party'; /** - * Identifies the FedEx account number assigned to the customer. + * Set AccountNumber * * @param string $accountNumber * @return $this @@ -50,7 +50,7 @@ public function setTins(array $tins) } /** - * Descriptive data identifying the point-of-contact person. + * Set Contact * * @param Contact $contact * @return $this @@ -62,7 +62,7 @@ public function setContact(Contact $contact) } /** - * The descriptive data for a physical location. + * Set Address * * @param Address $address * @return $this diff --git a/src/FedEx/ShipService/ComplexType/Payment.php b/src/FedEx/ShipService/ComplexType/Payment.php index e4418532..f83cfd61 100644 --- a/src/FedEx/ShipService/ComplexType/Payment.php +++ b/src/FedEx/ShipService/ComplexType/Payment.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the monetary compensation given to FedEx for services rendered to the customer. + * Payment * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class Payment extends AbstractComplexType protected $name = 'Payment'; /** - * Identifies the method of payment for a service. See PaymentType for list of valid enumerated values. + * Set PaymentType * * @param \FedEx\ShipService\SimpleType\PaymentType|string $paymentType * @return $this @@ -36,7 +36,7 @@ public function setPaymentType($paymentType) } /** - * Descriptive data identifying the party responsible for payment for a service. + * Set Payor * * @param Payor $payor * @return $this diff --git a/src/FedEx/ShipService/ComplexType/Payor.php b/src/FedEx/ShipService/ComplexType/Payor.php index afaa5bd5..13ea4796 100644 --- a/src/FedEx/ShipService/ComplexType/Payor.php +++ b/src/FedEx/ShipService/ComplexType/Payor.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data identifying the party responsible for payment for a service. + * Payor * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/PendingShipmentAccessDetail.php b/src/FedEx/ShipService/ComplexType/PendingShipmentAccessDetail.php index 7fbbcf61..06f71173 100644 --- a/src/FedEx/ShipService/ComplexType/PendingShipmentAccessDetail.php +++ b/src/FedEx/ShipService/ComplexType/PendingShipmentAccessDetail.php @@ -10,10 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Ship Service * - * @property string $EmailLabelUrl - * @property string $UserId - * @property string $Password - * @property string $ExpirationTimestamp + * @property PendingShipmentAccessorDetail[] $AccessorDetails */ class PendingShipmentAccessDetail extends AbstractComplexType @@ -26,50 +23,14 @@ class PendingShipmentAccessDetail extends AbstractComplexType protected $name = 'PendingShipmentAccessDetail'; /** - * Only for pending shipment type of "EMAIL" + * Set AccessorDetails * - * @param string $emailLabelUrl + * @param PendingShipmentAccessorDetail[] $accessorDetails * @return $this */ - public function setEmailLabelUrl($emailLabelUrl) + public function setAccessorDetails(array $accessorDetails) { - $this->values['EmailLabelUrl'] = $emailLabelUrl; - return $this; - } - - /** - * Only for pending shipment type of "EMAIL" - * - * @param string $userId - * @return $this - */ - public function setUserId($userId) - { - $this->values['UserId'] = $userId; - return $this; - } - - /** - * Only for pending shipment type of "EMAIL" - * - * @param string $password - * @return $this - */ - public function setPassword($password) - { - $this->values['Password'] = $password; - return $this; - } - - /** - * This element is currently not supported and is for the future use. - * - * @param string $expirationTimestamp - * @return $this - */ - public function setExpirationTimestamp($expirationTimestamp) - { - $this->values['ExpirationTimestamp'] = $expirationTimestamp; + $this->values['AccessorDetails'] = $accessorDetails; return $this; } } diff --git a/src/FedEx/ShipService/ComplexType/PendingShipmentAccessorDetail.php b/src/FedEx/ShipService/ComplexType/PendingShipmentAccessorDetail.php new file mode 100644 index 00000000..c1abdde9 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/PendingShipmentAccessorDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\AccessorRoleType|string $Role + * @property string $UserId + * @property string $Password + * @property string $EmailLabelUrl + + */ +class PendingShipmentAccessorDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PendingShipmentAccessorDetail'; + + /** + * Specifies the role of the user who is trying to access the pending shipment. + * + * @param \FedEx\ShipService\SimpleType\AccessorRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Set UserId + * + * @param string $userId + * @return $this + */ + public function setUserId($userId) + { + $this->values['UserId'] = $userId; + return $this; + } + + /** + * Set Password + * + * @param string $password + * @return $this + */ + public function setPassword($password) + { + $this->values['Password'] = $password; + return $this; + } + + /** + * Set EmailLabelUrl + * + * @param string $emailLabelUrl + * @return $this + */ + public function setEmailLabelUrl($emailLabelUrl) + { + $this->values['EmailLabelUrl'] = $emailLabelUrl; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/PendingShipmentDetail.php b/src/FedEx/ShipService/ComplexType/PendingShipmentDetail.php index 6597a995..a24abdbe 100644 --- a/src/FedEx/ShipService/ComplexType/PendingShipmentDetail.php +++ b/src/FedEx/ShipService/ComplexType/PendingShipmentDetail.php @@ -13,6 +13,9 @@ * @property \FedEx\ShipService\SimpleType\PendingShipmentType|string $Type * @property string $ExpirationDate * @property EMailLabelDetail $EmailLabelDetail + * @property PendingShipmentProcessingOptionsRequested $ProcessingOptions + * @property RecommendedDocumentSpecification $RecommendedDocumentSpecification + * @property UploadDocumentReferenceDetail[] $DocumentReferences */ class PendingShipmentDetail extends AbstractComplexType @@ -25,7 +28,7 @@ class PendingShipmentDetail extends AbstractComplexType protected $name = 'PendingShipmentDetail'; /** - * Identifies the type of FedEx pending shipment + * Set Type * * @param \FedEx\ShipService\SimpleType\PendingShipmentType|string $type * @return $this @@ -59,4 +62,40 @@ public function setEmailLabelDetail(EMailLabelDetail $emailLabelDetail) $this->values['EmailLabelDetail'] = $emailLabelDetail; return $this; } + + /** + * Set ProcessingOptions + * + * @param PendingShipmentProcessingOptionsRequested $processingOptions + * @return $this + */ + public function setProcessingOptions(PendingShipmentProcessingOptionsRequested $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } + + /** + * These are documents that are recommended to be included with the shipment. + * + * @param RecommendedDocumentSpecification $recommendedDocumentSpecification + * @return $this + */ + public function setRecommendedDocumentSpecification(RecommendedDocumentSpecification $recommendedDocumentSpecification) + { + $this->values['RecommendedDocumentSpecification'] = $recommendedDocumentSpecification; + return $this; + } + + /** + * Upload document details provided by the initator of the shipment. + * + * @param UploadDocumentReferenceDetail[] $documentReferences + * @return $this + */ + public function setDocumentReferences(array $documentReferences) + { + $this->values['DocumentReferences'] = $documentReferences; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/PendingShipmentProcessingOptionsRequested.php b/src/FedEx/ShipService/ComplexType/PendingShipmentProcessingOptionsRequested.php new file mode 100644 index 00000000..d9a23e7e --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/PendingShipmentProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\PendingShipmentProcessingOptionType|string[] $Options + + */ +class PendingShipmentProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PendingShipmentProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\ShipService\SimpleType\PendingShipmentProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/PickupDetail.php b/src/FedEx/ShipService/ComplexType/PickupDetail.php index fad7cbfc..49b82fab 100644 --- a/src/FedEx/ShipService/ComplexType/PickupDetail.php +++ b/src/FedEx/ShipService/ComplexType/PickupDetail.php @@ -63,7 +63,7 @@ public function setCourierInstructions($courierInstructions) } /** - * Identifies the type of Pickup request + * Set RequestType * * @param \FedEx\ShipService\SimpleType\PickupRequestType|string $requestType * @return $this @@ -75,7 +75,7 @@ public function setRequestType($requestType) } /** - * Identifies the type of source for Pickup request + * Set RequestSource * * @param \FedEx\ShipService\SimpleType\PickupRequestSourceType|string $requestSource * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ProcessShipmentReply.php b/src/FedEx/ShipService/ComplexType/ProcessShipmentReply.php index 591c7357..b0ed4f21 100644 --- a/src/FedEx/ShipService/ComplexType/ProcessShipmentReply.php +++ b/src/FedEx/ShipService/ComplexType/ProcessShipmentReply.php @@ -29,7 +29,7 @@ class ProcessShipmentReply extends AbstractComplexType protected $name = 'ProcessShipmentReply'; /** - * This indicates the highest level of severity of all the notifications returned in this reply + * Set HighestSeverity * * @param \FedEx\ShipService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -41,7 +41,7 @@ public function setHighestSeverity($highestSeverity) } /** - * The descriptive data regarding the results of the submitted transaction. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -53,7 +53,7 @@ public function setNotifications(array $notifications) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -65,7 +65,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -89,7 +89,7 @@ public function setJobId($jobId) } /** - * The reply payload. All of the returned information about this shipment/package. + * Set CompletedShipmentDetail * * @param CompletedShipmentDetail $completedShipmentDetail * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ProcessShipmentRequest.php b/src/FedEx/ShipService/ComplexType/ProcessShipmentRequest.php index 48cbae5a..7b52fdcc 100644 --- a/src/FedEx/ShipService/ComplexType/ProcessShipmentRequest.php +++ b/src/FedEx/ShipService/ComplexType/ProcessShipmentRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data sent to FedEx by a customer in order to ship a package. + * ProcessShipmentRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -39,7 +39,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -51,7 +51,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -63,7 +63,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -75,7 +75,7 @@ public function setVersion(VersionId $version) } /** - * Descriptive data about the shipment being sent by the requestor. + * Set RequestedShipment * * @param RequestedShipment $requestedShipment * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ProcessTagRequest.php b/src/FedEx/ShipService/ComplexType/ProcessTagRequest.php index 29e97416..221e83c8 100644 --- a/src/FedEx/ShipService/ComplexType/ProcessTagRequest.php +++ b/src/FedEx/ShipService/ComplexType/ProcessTagRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data sent to FedEx by a customer in order to ship a package. + * ProcessTagRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -39,7 +39,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -51,7 +51,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -63,7 +63,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -75,7 +75,7 @@ public function setVersion(VersionId $version) } /** - * Descriptive data about the shipment being sent by the requestor. + * Set RequestedShipment * * @param RequestedShipment $requestedShipment * @return $this diff --git a/src/FedEx/ShipService/ComplexType/RateDiscount.php b/src/FedEx/ShipService/ComplexType/RateDiscount.php index bbf8a171..de02b133 100644 --- a/src/FedEx/ShipService/ComplexType/RateDiscount.php +++ b/src/FedEx/ShipService/ComplexType/RateDiscount.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies a discount applied to the shipment. + * RateDiscount * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class RateDiscount extends AbstractComplexType protected $name = 'RateDiscount'; /** - * Identifies the type of discount applied to the shipment. + * Set RateDiscountType * * @param \FedEx\ShipService\SimpleType\RateDiscountType|string $rateDiscountType * @return $this @@ -50,7 +50,7 @@ public function setDescription($description) } /** - * The amount of the discount applied to the shipment. + * Set Amount * * @param Money $amount * @return $this @@ -62,7 +62,7 @@ public function setAmount(Money $amount) } /** - * The percentage of the discount applied to the shipment. + * Set Percent * * @param float $percent * @return $this diff --git a/src/FedEx/ShipService/ComplexType/RecommendedDocumentSpecification.php b/src/FedEx/ShipService/ComplexType/RecommendedDocumentSpecification.php new file mode 100644 index 00000000..0294e687 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/RecommendedDocumentSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\RecommendedDocumentType|string[] $Types + + */ +class RecommendedDocumentSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RecommendedDocumentSpecification'; + + /** + * Set Types + * + * @param \FedEx\ShipService\SimpleType\RecommendedDocumentType[]|string[] $types + * @return $this + */ + public function setTypes(array $types) + { + $this->values['Types'] = $types; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/RegulatoryLabelContentDetail.php b/src/FedEx/ShipService/ComplexType/RegulatoryLabelContentDetail.php new file mode 100644 index 00000000..761778d9 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/RegulatoryLabelContentDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\RegulatoryLabelType|string $Type + * @property \FedEx\ShipService\SimpleType\CustomerSpecifiedLabelGenerationOptionType|string[] $GenerationOptions + + */ +class RegulatoryLabelContentDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RegulatoryLabelContentDetail'; + + /** + * Set Type + * + * @param \FedEx\ShipService\SimpleType\RegulatoryLabelType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Specifies how the customer requested the regulatory label to be generated. + * + * @param \FedEx\ShipService\SimpleType\CustomerSpecifiedLabelGenerationOptionType[]|string[] $generationOptions + * @return $this + */ + public function setGenerationOptions(array $generationOptions) + { + $this->values['GenerationOptions'] = $generationOptions; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php b/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php index fd4fcbea..06cba8af 100644 --- a/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php +++ b/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php @@ -19,6 +19,7 @@ * @property Dimensions $Dimensions * @property \FedEx\ShipService\SimpleType\PhysicalPackagingType|string $PhysicalPackaging * @property string $ItemDescription + * @property string $ItemDescriptionForClearance * @property CustomerReference[] $CustomerReferences * @property PackageSpecialServicesRequested $SpecialServicesRequested * @property ContentRecord[] $ContentRecords @@ -82,7 +83,7 @@ public function setVariableHandlingChargeDetail(VariableHandlingChargeDetail $va } /** - * Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. + * Specifies the declared value for carriage of the package. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the package. This field is only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. * * @param Money $insuredValue * @return $this @@ -141,6 +142,18 @@ public function setItemDescription($itemDescription) return $this; } + /** + * Human-readable text describing the contents of the package to be used for clearance purposes. + * + * @param string $itemDescriptionForClearance + * @return $this + */ + public function setItemDescriptionForClearance($itemDescriptionForClearance) + { + $this->values['ItemDescriptionForClearance'] = $itemDescriptionForClearance; + return $this; + } + /** * Set CustomerReferences * diff --git a/src/FedEx/ShipService/ComplexType/RequestedShipment.php b/src/FedEx/ShipService/ComplexType/RequestedShipment.php index 15dc13ba..c82a1189 100644 --- a/src/FedEx/ShipService/ComplexType/RequestedShipment.php +++ b/src/FedEx/ShipService/ComplexType/RequestedShipment.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the shipment being tendered to FedEx. + * RequestedShipment * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,13 +14,16 @@ * @property \FedEx\ShipService\SimpleType\DropoffType|string $DropoffType * @property \FedEx\ShipService\SimpleType\ServiceType|string $ServiceType * @property \FedEx\ShipService\SimpleType\PackagingType|string $PackagingType + * @property ShipmentManifestDetail $ManifestDetail * @property Weight $TotalWeight * @property Money $TotalInsuredValue * @property string $PreferredCurrency + * @property ShipmentAuthorizationDetail $ShipmentAuthorizationDetail * @property Party $Shipper * @property Party $Recipient * @property string $RecipientLocationNumber * @property ContactAndAddress $Origin + * @property Party $SoldTo * @property Payment $ShippingChargesPayment * @property ShipmentSpecialServicesRequested $SpecialServicesRequested * @property ExpressFreightDetail $ExpressFreightDetail @@ -51,7 +54,7 @@ class RequestedShipment extends AbstractComplexType protected $name = 'RequestedShipment'; /** - * Identifies the date and time the package is tendered to FedEx. Both the date and time portions of the string are expected to be used. The date should not be a past date or a date more than 10 days in the future. The time is the local time of the shipment based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2006-06-26). The time component must be in the format: HH:MM:SS using a 24 hour clock (e.g. 11:00 a.m. is 11:00:00, whereas 5:00 p.m. is 17:00:00). The date and time parts are separated by the letter T (e.g. 2006-06-26T17:00:00). There is also a UTC offset component indicating the number of hours/mainutes from UTC (e.g 2006-06-26T17:00:00-0400 is defined form June 26, 2006 5:00 pm Eastern Time). + * Set ShipTimestamp * * @param string $shipTimestamp * @return $this @@ -63,7 +66,7 @@ public function setShipTimestamp($shipTimestamp) } /** - * Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. See DropoffType for list of valid enumerated values. + * Set DropoffType * * @param \FedEx\ShipService\SimpleType\DropoffType|string $dropoffType * @return $this @@ -75,7 +78,7 @@ public function setDropoffType($dropoffType) } /** - * Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. + * Set ServiceType * * @param \FedEx\ShipService\SimpleType\ServiceType|string $serviceType * @return $this @@ -87,7 +90,7 @@ public function setServiceType($serviceType) } /** - * Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. + * Set PackagingType * * @param \FedEx\ShipService\SimpleType\PackagingType|string $packagingType * @return $this @@ -99,7 +102,19 @@ public function setPackagingType($packagingType) } /** - * Identifies the total weight of the shipment being conveyed to FedEx.This is only applicable to International shipments and should only be used on the first package of a mutiple piece shipment.This value contains 1 explicit decimal position + * This specifies information related to the manifest associated with the shipment. + * + * @param ShipmentManifestDetail $manifestDetail + * @return $this + */ + public function setManifestDetail(ShipmentManifestDetail $manifestDetail) + { + $this->values['ManifestDetail'] = $manifestDetail; + return $this; + } + + /** + * Set TotalWeight * * @param Weight $totalWeight * @return $this @@ -111,7 +126,7 @@ public function setTotalWeight(Weight $totalWeight) } /** - * Total insured amount. + * Specifies the total declared value for carriage of the shipment. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the shipment. * * @param Money $totalInsuredValue * @return $this @@ -135,7 +150,19 @@ public function setPreferredCurrency($preferredCurrency) } /** - * Descriptive data identifying the party responsible for shipping the package. Shipper and Origin should have the same address. + * Specifies details about the entity responsible for the shipment. + * + * @param ShipmentAuthorizationDetail $shipmentAuthorizationDetail + * @return $this + */ + public function setShipmentAuthorizationDetail(ShipmentAuthorizationDetail $shipmentAuthorizationDetail) + { + $this->values['ShipmentAuthorizationDetail'] = $shipmentAuthorizationDetail; + return $this; + } + + /** + * Set Shipper * * @param Party $shipper * @return $this @@ -147,7 +174,7 @@ public function setShipper(Party $shipper) } /** - * Descriptive data identifying the party receiving the package. + * Set Recipient * * @param Party $recipient * @return $this @@ -159,7 +186,7 @@ public function setRecipient(Party $recipient) } /** - * A unique identifier for a recipient location + * Set RecipientLocationNumber * * @param string $recipientLocationNumber * @return $this @@ -183,7 +210,19 @@ public function setOrigin(ContactAndAddress $origin) } /** - * Descriptive data indicating the method and means of payment to FedEx for providing shipping services. + * Set SoldTo + * + * @param Party $soldTo + * @return $this + */ + public function setSoldTo(Party $soldTo) + { + $this->values['SoldTo'] = $soldTo; + return $this; + } + + /** + * Set ShippingChargesPayment * * @param Payment $shippingChargesPayment * @return $this @@ -195,7 +234,7 @@ public function setShippingChargesPayment(Payment $shippingChargesPayment) } /** - * Descriptive data regarding special services requested by the shipper for this shipment. If the shipper is requesting a special service which requires additional data (e.g. COD), the special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object. For example, to request COD, "COD" must be included in the SpecialServiceTypes collection and the CodDetail object must contain the required data. + * Set SpecialServicesRequested * * @param ShipmentSpecialServicesRequested $specialServicesRequested * @return $this @@ -207,7 +246,7 @@ public function setSpecialServicesRequested(ShipmentSpecialServicesRequested $sp } /** - * Details specific to an Express freight shipment. + * Set ExpressFreightDetail * * @param ExpressFreightDetail $expressFreightDetail * @return $this @@ -243,7 +282,7 @@ public function setDeliveryInstructions($deliveryInstructions) } /** - * Details about how to calculate variable handling charges at the shipment level. + * Set VariableHandlingChargeDetail * * @param VariableHandlingChargeDetail $variableHandlingChargeDetail * @return $this @@ -303,7 +342,7 @@ public function setBlockInsightVisibility($blockInsightVisibility) } /** - * Details about the image format and printer type the label is to returned in. + * Set LabelSpecification * * @param LabelSpecification $labelSpecification * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ReturnEMailDetail.php b/src/FedEx/ShipService/ComplexType/ReturnEMailDetail.php index c6a1b4fa..42e60819 100644 --- a/src/FedEx/ShipService/ComplexType/ReturnEMailDetail.php +++ b/src/FedEx/ShipService/ComplexType/ReturnEMailDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Return Email Details + * ReturnEMailDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class ReturnEMailDetail extends AbstractComplexType protected $name = 'ReturnEMailDetail'; /** - * Phone number of the merchant + * Set MerchantPhoneNumber * * @param string $merchantPhoneNumber * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ReturnShipmentDetail.php b/src/FedEx/ShipService/ComplexType/ReturnShipmentDetail.php index efd5c70f..cf7bde1c 100644 --- a/src/FedEx/ShipService/ComplexType/ReturnShipmentDetail.php +++ b/src/FedEx/ShipService/ComplexType/ReturnShipmentDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Information relating to a return shipment. + * ReturnShipmentDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class ReturnShipmentDetail extends AbstractComplexType protected $name = 'ReturnShipmentDetail'; /** - * The type of return shipment that is being requested. + * Set ReturnType * * @param \FedEx\ShipService\SimpleType\ReturnType|string $returnType * @return $this @@ -38,7 +38,7 @@ public function setReturnType($returnType) } /** - * Return Merchant Authorization + * Set Rma * * @param Rma $rma * @return $this @@ -50,7 +50,7 @@ public function setRma(Rma $rma) } /** - * Describes specific information about the email label for return shipment. + * Set ReturnEMailDetail * * @param ReturnEMailDetail $returnEMailDetail * @return $this diff --git a/src/FedEx/ShipService/ComplexType/Rma.php b/src/FedEx/ShipService/ComplexType/Rma.php index c8712d85..846ef9ec 100644 --- a/src/FedEx/ShipService/ComplexType/Rma.php +++ b/src/FedEx/ShipService/ComplexType/Rma.php @@ -23,7 +23,7 @@ class Rma extends AbstractComplexType protected $name = 'Rma'; /** - * The reason for the return. + * Set Reason * * @param string $reason * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ShipmentAuthorizationDetail.php b/src/FedEx/ShipService/ComplexType/ShipmentAuthorizationDetail.php new file mode 100644 index 00000000..e00e3c43 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShipmentAuthorizationDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property string $AccountNumber + + */ +class ShipmentAuthorizationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentAuthorizationDetail'; + + /** + * Set AccountNumber + * + * @param string $accountNumber + * @return $this + */ + public function setAccountNumber($accountNumber) + { + $this->values['AccountNumber'] = $accountNumber; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShipmentDryIceDetail.php b/src/FedEx/ShipService/ComplexType/ShipmentDryIceDetail.php index 420453ac..d0a46e72 100644 --- a/src/FedEx/ShipService/ComplexType/ShipmentDryIceDetail.php +++ b/src/FedEx/ShipService/ComplexType/ShipmentDryIceDetail.php @@ -12,6 +12,7 @@ * * @property int $PackageCount * @property Weight $TotalWeight + * @property ShipmentDryIceProcessingOptionsRequested $ProcessingOptions */ class ShipmentDryIceDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setTotalWeight(Weight $totalWeight) $this->values['TotalWeight'] = $totalWeight; return $this; } + + /** + * Set ProcessingOptions + * + * @param ShipmentDryIceProcessingOptionsRequested $processingOptions + * @return $this + */ + public function setProcessingOptions(ShipmentDryIceProcessingOptionsRequested $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php b/src/FedEx/ShipService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php new file mode 100644 index 00000000..4ebfacf9 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\ShipmentDryIceProcessingOptionType|string[] $Options + + */ +class ShipmentDryIceProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentDryIceProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\ShipService\SimpleType\ShipmentDryIceProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShipmentEventNotificationDetail.php b/src/FedEx/ShipService/ComplexType/ShipmentEventNotificationDetail.php new file mode 100644 index 00000000..6ee51e0d --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShipmentEventNotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\ShipmentNotificationAggregationType|string $AggregationType + * @property string $PersonalMessage + * @property ShipmentEventNotificationSpecification[] $EventNotifications + + */ +class ShipmentEventNotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationDetail'; + + /** + * Set AggregationType + * + * @param \FedEx\ShipService\SimpleType\ShipmentNotificationAggregationType|string $aggregationType + * @return $this + */ + public function setAggregationType($aggregationType) + { + $this->values['AggregationType'] = $aggregationType; + return $this; + } + + /** + * Set PersonalMessage + * + * @param string $personalMessage + * @return $this + */ + public function setPersonalMessage($personalMessage) + { + $this->values['PersonalMessage'] = $personalMessage; + return $this; + } + + /** + * Set EventNotifications + * + * @param ShipmentEventNotificationSpecification[] $eventNotifications + * @return $this + */ + public function setEventNotifications(array $eventNotifications) + { + $this->values['EventNotifications'] = $eventNotifications; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShipmentEventNotificationSpecification.php b/src/FedEx/ShipService/ComplexType/ShipmentEventNotificationSpecification.php new file mode 100644 index 00000000..ac0c9c99 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShipmentEventNotificationSpecification.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\ShipmentNotificationRoleType|string $Role + * @property \FedEx\ShipService\SimpleType\NotificationEventType|string[] $Events + * @property NotificationDetail $NotificationDetail + * @property ShipmentNotificationFormatSpecification $FormatSpecification + + */ +class ShipmentEventNotificationSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationSpecification'; + + /** + * Set Role + * + * @param \FedEx\ShipService\SimpleType\ShipmentNotificationRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Set Events + * + * @param \FedEx\ShipService\SimpleType\NotificationEventType[]|string[] $events + * @return $this + */ + public function setEvents(array $events) + { + $this->values['Events'] = $events; + return $this; + } + + /** + * Set NotificationDetail + * + * @param NotificationDetail $notificationDetail + * @return $this + */ + public function setNotificationDetail(NotificationDetail $notificationDetail) + { + $this->values['NotificationDetail'] = $notificationDetail; + return $this; + } + + /** + * Set FormatSpecification + * + * @param ShipmentNotificationFormatSpecification $formatSpecification + * @return $this + */ + public function setFormatSpecification(ShipmentNotificationFormatSpecification $formatSpecification) + { + $this->values['FormatSpecification'] = $formatSpecification; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShipmentManifestDetail.php b/src/FedEx/ShipService/ComplexType/ShipmentManifestDetail.php new file mode 100644 index 00000000..9af9be21 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShipmentManifestDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\CustomerReferenceType|string $ManifestReferenceType + + */ +class ShipmentManifestDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentManifestDetail'; + + /** + * This identifies which customer reference field contains the manifest ID. + * + * @param \FedEx\ShipService\SimpleType\CustomerReferenceType|string $manifestReferenceType + * @return $this + */ + public function setManifestReferenceType($manifestReferenceType) + { + $this->values['ManifestReferenceType'] = $manifestReferenceType; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShipmentNotificationFormatSpecification.php b/src/FedEx/ShipService/ComplexType/ShipmentNotificationFormatSpecification.php new file mode 100644 index 00000000..b665b371 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShipmentNotificationFormatSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\NotificationFormatType|string $Type + + */ +class ShipmentNotificationFormatSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentNotificationFormatSpecification'; + + /** + * Set Type + * + * @param \FedEx\ShipService\SimpleType\NotificationFormatType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShipmentOperationalDetail.php b/src/FedEx/ShipService/ComplexType/ShipmentOperationalDetail.php index 3965bec9..3cc4d4e8 100644 --- a/src/FedEx/ShipService/ComplexType/ShipmentOperationalDetail.php +++ b/src/FedEx/ShipService/ComplexType/ShipmentOperationalDetail.php @@ -36,6 +36,7 @@ * @property string $CountryCode * @property string $AirportId * @property string $ServiceCode + * @property string $PackagingCode * @property string $Scac */ @@ -360,6 +361,18 @@ public function setServiceCode($serviceCode) return $this; } + /** + * Set PackagingCode + * + * @param string $packagingCode + * @return $this + */ + public function setPackagingCode($packagingCode) + { + $this->values['PackagingCode'] = $packagingCode; + return $this; + } + /** * Set Scac * diff --git a/src/FedEx/ShipService/ComplexType/ShipmentRateDetail.php b/src/FedEx/ShipService/ComplexType/ShipmentRateDetail.php index 8c58f907..62afb2a9 100644 --- a/src/FedEx/ShipService/ComplexType/ShipmentRateDetail.php +++ b/src/FedEx/ShipService/ComplexType/ShipmentRateDetail.php @@ -32,6 +32,8 @@ * @property Money $TotalNetCharge * @property Money $TotalRebates * @property Money $TotalDutiesAndTaxes + * @property Money $TotalAncillaryFeesAndTaxes + * @property Money $TotalDutiesTaxesAndFees * @property Money $TotalNetChargeWithDutiesAndTaxes * @property ShipmentLegRateDetail[] $ShipmentLegRateDetails * @property FreightRateDetail $FreightRateDetail @@ -40,6 +42,7 @@ * @property Surcharge[] $Surcharges * @property Tax[] $Taxes * @property EdtCommodityTax[] $DutiesAndTaxes + * @property AncillaryFeeAndTax[] $AncillaryFeesAndTaxes * @property VariableHandlingCharges $VariableHandlingCharges * @property VariableHandlingCharges $TotalVariableHandlingCharges @@ -90,7 +93,7 @@ public function setRateZone($rateZone) } /** - * Identifies the type of pricing used for this shipment. + * Set PricingCode * * @param \FedEx\ShipService\SimpleType\PricingCodeType|string $pricingCode * @return $this @@ -150,7 +153,7 @@ public function setSpecialRatingApplied(array $specialRatingApplied) } /** - * The value used to calculate the weight based on the dimensions. + * Set DimDivisor * * @param int $dimDivisor * @return $this @@ -174,7 +177,7 @@ public function setDimDivisorType($dimDivisorType) } /** - * Specifies a fuel surcharge percentage. + * Set FuelSurchargePercent * * @param float $fuelSurchargePercent * @return $this @@ -186,7 +189,7 @@ public function setFuelSurchargePercent($fuelSurchargePercent) } /** - * The weight used to calculate these rates. + * Set TotalBillingWeight * * @param Weight $totalBillingWeight * @return $this @@ -210,7 +213,7 @@ public function setTotalDimWeight(Weight $totalDimWeight) } /** - * The total freight charge that was calculated for this package before surcharges, discounts and taxes. + * Set TotalBaseCharge * * @param Money $totalBaseCharge * @return $this @@ -222,7 +225,7 @@ public function setTotalBaseCharge(Money $totalBaseCharge) } /** - * The total discounts used in the rate calculation. + * Set TotalFreightDiscounts * * @param Money $totalFreightDiscounts * @return $this @@ -234,7 +237,7 @@ public function setTotalFreightDiscounts(Money $totalFreightDiscounts) } /** - * The freight charge minus discounts. + * Set TotalNetFreight * * @param Money $totalNetFreight * @return $this @@ -246,7 +249,7 @@ public function setTotalNetFreight(Money $totalNetFreight) } /** - * The total amount of all surcharges applied to this shipment. + * Set TotalSurcharges * * @param Money $totalSurcharges * @return $this @@ -282,7 +285,7 @@ public function setTotalTaxes(Money $totalTaxes) } /** - * The net charge after applying all discounts and surcharges. + * Set TotalNetCharge * * @param Money $totalNetCharge * @return $this @@ -294,7 +297,7 @@ public function setTotalNetCharge(Money $totalNetCharge) } /** - * The total sum of all rebates applied to this shipment. + * Set TotalRebates * * @param Money $totalRebates * @return $this @@ -318,7 +321,31 @@ public function setTotalDutiesAndTaxes(Money $totalDutiesAndTaxes) } /** - * This shipment's totalNetCharge + totalDutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. + * Identifies the total amount of the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + * + * @param Money $totalAncillaryFeesAndTaxes + * @return $this + */ + public function setTotalAncillaryFeesAndTaxes(Money $totalAncillaryFeesAndTaxes) + { + $this->values['TotalAncillaryFeesAndTaxes'] = $totalAncillaryFeesAndTaxes; + return $this; + } + + /** + * The total of the totalDutiesAndTaxes plus the totalAncillaryFeesAndTaxes. + * + * @param Money $totalDutiesTaxesAndFees + * @return $this + */ + public function setTotalDutiesTaxesAndFees(Money $totalDutiesTaxesAndFees) + { + $this->values['TotalDutiesTaxesAndFees'] = $totalDutiesTaxesAndFees; + return $this; + } + + /** + * This shipment's totalNetCharge + totalDutiesTaxesAndFees; some duties and taxes are only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. * * @param Money $totalNetChargeWithDutiesAndTaxes * @return $this @@ -413,6 +440,18 @@ public function setDutiesAndTaxes(array $dutiesAndTaxes) return $this; } + /** + * Identifies the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + * + * @param AncillaryFeeAndTax[] $ancillaryFeesAndTaxes + * @return $this + */ + public function setAncillaryFeesAndTaxes(array $ancillaryFeesAndTaxes) + { + $this->values['AncillaryFeesAndTaxes'] = $ancillaryFeesAndTaxes; + return $this; + } + /** * The "order level" variable handling charges. * diff --git a/src/FedEx/ShipService/ComplexType/ShipmentReply.php b/src/FedEx/ShipService/ComplexType/ShipmentReply.php index 34a8add9..3bee19cd 100644 --- a/src/FedEx/ShipService/ComplexType/ShipmentReply.php +++ b/src/FedEx/ShipService/ComplexType/ShipmentReply.php @@ -26,7 +26,7 @@ class ShipmentReply extends AbstractComplexType protected $name = 'ShipmentReply'; /** - * This indicates the highest level of severity of all the notifications returned in this reply + * Set HighestSeverity * * @param \FedEx\ShipService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -38,7 +38,7 @@ public function setHighestSeverity($highestSeverity) } /** - * The descriptive data regarding the results of the submitted transaction. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -50,7 +50,7 @@ public function setNotifications(array $notifications) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -62,7 +62,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ShipmentSpecialServicesRequested.php b/src/FedEx/ShipService/ComplexType/ShipmentSpecialServicesRequested.php index 31d98d79..c18c8f12 100644 --- a/src/FedEx/ShipService/ComplexType/ShipmentSpecialServicesRequested.php +++ b/src/FedEx/ShipService/ComplexType/ShipmentSpecialServicesRequested.php @@ -14,7 +14,7 @@ * @property CodDetail $CodDetail * @property DeliveryOnInvoiceAcceptanceDetail $DeliveryOnInvoiceAcceptanceDetail * @property HoldAtLocationDetail $HoldAtLocationDetail - * @property EMailNotificationDetail $EMailNotificationDetail + * @property ShipmentEventNotificationDetail $EventNotificationDetail * @property ReturnShipmentDetail $ReturnShipmentDetail * @property PendingShipmentDetail $PendingShipmentDetail * @property InternationalControlledExportDetail $InternationalControlledExportDetail @@ -48,7 +48,7 @@ public function setSpecialServiceTypes(array $specialServiceTypes) } /** - * Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. This element is required when SpecialServiceType.COD is present in the SpecialServiceTypes collection. + * Set CodDetail * * @param CodDetail $codDetail * @return $this @@ -72,7 +72,7 @@ public function setDeliveryOnInvoiceAcceptanceDetail(DeliveryOnInvoiceAcceptance } /** - * Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. This element is required when SpecialServiceType.HOLD_AT_LOCATION is present in the SpecialServiceTypes collection. + * Set HoldAtLocationDetail * * @param HoldAtLocationDetail $holdAtLocationDetail * @return $this @@ -84,19 +84,19 @@ public function setHoldAtLocationDetail(HoldAtLocationDetail $holdAtLocationDeta } /** - * Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This element is required when SpecialServiceType.EMAIL_NOTIFICATION is present in the SpecialServiceTypes collection. + * This replaces eMailNotificationDetail * - * @param EMailNotificationDetail $eMailNotificationDetail + * @param ShipmentEventNotificationDetail $eventNotificationDetail * @return $this */ - public function setEMailNotificationDetail(EMailNotificationDetail $eMailNotificationDetail) + public function setEventNotificationDetail(ShipmentEventNotificationDetail $eventNotificationDetail) { - $this->values['EMailNotificationDetail'] = $eMailNotificationDetail; + $this->values['EventNotificationDetail'] = $eventNotificationDetail; return $this; } /** - * The descriptive data required for FedEx Printed Return Label. This element is required when SpecialServiceType.PRINTED_RETURN_LABEL is present in the SpecialServiceTypes collection + * Set ReturnShipmentDetail * * @param ReturnShipmentDetail $returnShipmentDetail * @return $this @@ -144,7 +144,7 @@ public function setInternationalTrafficInArmsRegulationsDetail(InternationalTraf } /** - * Number of packages in this shipment which contain dry ice and the total weight of the dry ice for this shipment. + * Set ShipmentDryIceDetail * * @param ShipmentDryIceDetail $shipmentDryIceDetail * @return $this @@ -156,7 +156,7 @@ public function setShipmentDryIceDetail(ShipmentDryIceDetail $shipmentDryIceDeta } /** - * The descriptive data required for FedEx Home Delivery options. This element is required when SpecialServiceType.HOME_DELIVERY_PREMIUM is present in the SpecialServiceTypes collection + * Set HomeDeliveryPremiumDetail * * @param HomeDeliveryPremiumDetail $homeDeliveryPremiumDetail * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocument.php b/src/FedEx/ShipService/ComplexType/ShippingDocument.php index 3477f24e..5ef8ebbd 100644 --- a/src/FedEx/ShipService/ComplexType/ShippingDocument.php +++ b/src/FedEx/ShipService/ComplexType/ShippingDocument.php @@ -4,13 +4,14 @@ use FedEx\AbstractComplexType; /** - * All package-level shipping documents (other than labels and barcodes). + * ShippingDocument * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Ship Service * * @property \FedEx\ShipService\SimpleType\ReturnedShippingDocumentType|string $Type + * @property Localization[] $Localizations * @property \FedEx\ShipService\SimpleType\ShippingDocumentGroupingType|string $Grouping * @property \FedEx\ShipService\SimpleType\ShippingDocumentDispositionType|string $ShippingDocumentDisposition * @property string $AccessReference @@ -30,7 +31,7 @@ class ShippingDocument extends AbstractComplexType protected $name = 'ShippingDocument'; /** - * Shipping Document Type + * Set Type * * @param \FedEx\ShipService\SimpleType\ReturnedShippingDocumentType|string $type * @return $this @@ -41,6 +42,18 @@ public function setType($type) return $this; } + /** + * The localizations are populated if multiple language versions of a shipping document are returned. + * + * @param Localization[] $localizations + * @return $this + */ + public function setLocalizations(array $localizations) + { + $this->values['Localizations'] = $localizations; + return $this; + } + /** * Specifies how this document image/file is organized. * @@ -66,7 +79,7 @@ public function setShippingDocumentDisposition($shippingDocumentDisposition) } /** - * The name under which a STORED or DEFERRED document is written. + * The name under which a STORED, DEFERRED or EMAILED document is written. * * @param string $accessReference * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocumentDispositionDetail.php b/src/FedEx/ShipService/ComplexType/ShippingDocumentDispositionDetail.php index 152b43b4..8d6d8b7e 100644 --- a/src/FedEx/ShipService/ComplexType/ShippingDocumentDispositionDetail.php +++ b/src/FedEx/ShipService/ComplexType/ShippingDocumentDispositionDetail.php @@ -12,6 +12,7 @@ * * @property \FedEx\ShipService\SimpleType\ShippingDocumentDispositionType|string $DispositionType * @property \FedEx\ShipService\SimpleType\ShippingDocumentGroupingType|string $Grouping + * @property ShippingDocumentStorageDetail $StorageDetail * @property ShippingDocumentEMailDetail $EMailDetail * @property ShippingDocumentPrintDetail $PrintDetail @@ -49,6 +50,18 @@ public function setGrouping($grouping) return $this; } + /** + * Specifies how to store document images. + * + * @param ShippingDocumentStorageDetail $storageDetail + * @return $this + */ + public function setStorageDetail(ShippingDocumentStorageDetail $storageDetail) + { + $this->values['StorageDetail'] = $storageDetail; + return $this; + } + /** * Specifies how to e-mail document images. * diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocumentEMailDetail.php b/src/FedEx/ShipService/ComplexType/ShippingDocumentEMailDetail.php index 123a7e55..6c906fce 100644 --- a/src/FedEx/ShipService/ComplexType/ShippingDocumentEMailDetail.php +++ b/src/FedEx/ShipService/ComplexType/ShippingDocumentEMailDetail.php @@ -12,6 +12,7 @@ * * @property ShippingDocumentEMailRecipient[] $EMailRecipients * @property \FedEx\ShipService\SimpleType\ShippingDocumentEMailGroupingType|string $Grouping + * @property Localization $Localization */ class ShippingDocumentEMailDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setGrouping($grouping) $this->values['Grouping'] = $grouping; return $this; } + + /** + * Specifies the language in which the email containing the document is requested to be composed. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocumentFormat.php b/src/FedEx/ShipService/ComplexType/ShippingDocumentFormat.php index 67d77b4f..8b306a73 100644 --- a/src/FedEx/ShipService/ComplexType/ShippingDocumentFormat.php +++ b/src/FedEx/ShipService/ComplexType/ShippingDocumentFormat.php @@ -15,6 +15,7 @@ * @property \FedEx\ShipService\SimpleType\ShippingDocumentImageType|string $ImageType * @property \FedEx\ShipService\SimpleType\ShippingDocumentStockType|string $StockType * @property boolean $ProvideInstructions + * @property DocumentFormatOptionsRequested $OptionsRequested * @property Localization $Localization * @property string $CustomDocumentIdentifier @@ -88,6 +89,18 @@ public function setProvideInstructions($provideInstructions) return $this; } + /** + * Set OptionsRequested + * + * @param DocumentFormatOptionsRequested $optionsRequested + * @return $this + */ + public function setOptionsRequested(DocumentFormatOptionsRequested $optionsRequested) + { + $this->values['OptionsRequested'] = $optionsRequested; + return $this; + } + /** * Governs the language to be used for this individual document, independently from other content returned for the same shipment. * diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php b/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php index a685784e..813fbcc9 100644 --- a/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php +++ b/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php @@ -15,6 +15,7 @@ * @property CommercialInvoiceDetail $CommercialInvoiceDetail * @property CustomDocumentDetail[] $CustomPackageDocumentDetail * @property CustomDocumentDetail[] $CustomShipmentDocumentDetail + * @property ExportDeclarationDetail $ExportDeclarationDetail * @property GeneralAgencyAgreementDetail $GeneralAgencyAgreementDetail * @property NaftaCertificateOfOriginDetail $NaftaCertificateOfOriginDetail * @property Op900Detail $Op900Detail @@ -93,7 +94,19 @@ public function setCustomShipmentDocumentDetail(array $customShipmentDocumentDet } /** - * This element is currently not supported and is for the future use. (Details pertaining to the GAA.) + * Set ExportDeclarationDetail + * + * @param ExportDeclarationDetail $exportDeclarationDetail + * @return $this + */ + public function setExportDeclarationDetail(ExportDeclarationDetail $exportDeclarationDetail) + { + $this->values['ExportDeclarationDetail'] = $exportDeclarationDetail; + return $this; + } + + /** + * Set GeneralAgencyAgreementDetail * * @param GeneralAgencyAgreementDetail $generalAgencyAgreementDetail * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocumentStorageDetail.php b/src/FedEx/ShipService/ComplexType/ShippingDocumentStorageDetail.php new file mode 100644 index 00000000..2bfbda08 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ShippingDocumentStorageDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\ShippingDocumentStorageDetailType|string $Type + * @property string $FilePath + * @property \FedEx\ShipService\SimpleType\ShippingDocumentNamingType|string $FileNaming + * @property string $FileSuffix + + */ +class ShippingDocumentStorageDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShippingDocumentStorageDetail'; + + /** + * Indicates the mechanism by which a shipping document will be stored for later retrieval. + * + * @param \FedEx\ShipService\SimpleType\ShippingDocumentStorageDetailType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Provides the path to be used for STORED or DEFERRED documents. + * + * @param string $filePath + * @return $this + */ + public function setFilePath($filePath) + { + $this->values['FilePath'] = $filePath; + return $this; + } + + /** + * Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + * + * @param \FedEx\ShipService\SimpleType\ShippingDocumentNamingType|string $fileNaming + * @return $this + */ + public function setFileNaming($fileNaming) + { + $this->values['FileNaming'] = $fileNaming; + return $this; + } + + /** + * Suffix to be placed at the end of the file name; required on some platforms to determine file type. + * + * @param string $fileSuffix + * @return $this + */ + public function setFileSuffix($fileSuffix) + { + $this->values['FileSuffix'] = $fileSuffix; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/SignatureOptionDetail.php b/src/FedEx/ShipService/ComplexType/SignatureOptionDetail.php index e9319289..4d67cf2f 100644 --- a/src/FedEx/ShipService/ComplexType/SignatureOptionDetail.php +++ b/src/FedEx/ShipService/ComplexType/SignatureOptionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required for FedEx delivery signature services. + * SignatureOptionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class SignatureOptionDetail extends AbstractComplexType protected $name = 'SignatureOptionDetail'; /** - * Identifies the delivery signature services option selected by the customer for this shipment. See OptionType for the list of valid values. + * Set OptionType * * @param \FedEx\ShipService\SimpleType\SignatureOptionType|string $optionType * @return $this @@ -36,7 +36,7 @@ public function setOptionType($optionType) } /** - * Identifies the delivery signature release authorization number. + * Set SignatureReleaseNumber * * @param string $signatureReleaseNumber * @return $this diff --git a/src/FedEx/ShipService/ComplexType/SmartPostShipmentDetail.php b/src/FedEx/ShipService/ComplexType/SmartPostShipmentDetail.php index 2ff68c57..8ee327a3 100644 --- a/src/FedEx/ShipService/ComplexType/SmartPostShipmentDetail.php +++ b/src/FedEx/ShipService/ComplexType/SmartPostShipmentDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Ship Service * + * @property SmartPostShipmentProcessingOptionsRequested $ProcessingOptionsRequested * @property \FedEx\ShipService\SimpleType\SmartPostIndiciaType|string $Indicia * @property \FedEx\ShipService\SimpleType\SmartPostAncillaryEndorsementType|string $AncillaryEndorsement * @property string $HubId @@ -25,6 +26,18 @@ class SmartPostShipmentDetail extends AbstractComplexType */ protected $name = 'SmartPostShipmentDetail'; + /** + * Set ProcessingOptionsRequested + * + * @param SmartPostShipmentProcessingOptionsRequested $processingOptionsRequested + * @return $this + */ + public function setProcessingOptionsRequested(SmartPostShipmentProcessingOptionsRequested $processingOptionsRequested) + { + $this->values['ProcessingOptionsRequested'] = $processingOptionsRequested; + return $this; + } + /** * Set Indicia * @@ -62,10 +75,7 @@ public function setHubId($hubId) } /** - * The CustomerManifestId is used to group Smart Post packages onto a manifest for each trailer that is being prepared. If you do not have multiple trailers this field can be omitted. If you have multiple trailers, you - must assign the same Manifest Id to each SmartPost package as determined by its trailer. In other words, all packages on a trailer must have the same Customer Manifest Id. The manifest Id must be unique to your account number for a minimum of 6 months - and cannot exceed 8 characters in length. We recommend you use the day of year + the trailer id (this could simply be a sequential number for that trailer). So if you had 3 trailers that you started loading on Feb 10 - the 3 manifest ids would be 041001, 041002, 041003 (in this case we used leading zeros on the trailer numbers). + * Set CustomerManifestId * * @param string $customerManifestId * @return $this diff --git a/src/FedEx/ShipService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php b/src/FedEx/ShipService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php new file mode 100644 index 00000000..9db2f004 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\SmartPostShipmentProcessingOptionType|string[] $Options + + */ +class SmartPostShipmentProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SmartPostShipmentProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\ShipService\SimpleType\SmartPostShipmentProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/Surcharge.php b/src/FedEx/ShipService/ComplexType/Surcharge.php index 03dcd17f..eaed8dd2 100644 --- a/src/FedEx/ShipService/ComplexType/Surcharge.php +++ b/src/FedEx/ShipService/ComplexType/Surcharge.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies each surcharge applied to the shipment. + * Surcharge * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class Surcharge extends AbstractComplexType protected $name = 'Surcharge'; /** - * The type of surcharge applied to the shipment. + * Set SurchargeType * * @param \FedEx\ShipService\SimpleType\SurchargeType|string $surchargeType * @return $this @@ -62,7 +62,7 @@ public function setDescription($description) } /** - * The amount of the surcharge applied to the shipment. + * Set Amount * * @param Money $amount * @return $this diff --git a/src/FedEx/ShipService/ComplexType/Tax.php b/src/FedEx/ShipService/ComplexType/Tax.php index 9a757ce7..c63c6b91 100644 --- a/src/FedEx/ShipService/ComplexType/Tax.php +++ b/src/FedEx/ShipService/ComplexType/Tax.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies each tax applied to the shipment. + * Tax * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -25,7 +25,7 @@ class Tax extends AbstractComplexType protected $name = 'Tax'; /** - * The type of tax applied to the shipment. + * Set TaxType * * @param \FedEx\ShipService\SimpleType\TaxType|string $taxType * @return $this @@ -49,7 +49,7 @@ public function setDescription($description) } /** - * The amount of the tax applied to the shipment. + * Set Amount * * @param Money $amount * @return $this diff --git a/src/FedEx/ShipService/ComplexType/TaxpayerIdentification.php b/src/FedEx/ShipService/ComplexType/TaxpayerIdentification.php index 62b113f9..088e957f 100644 --- a/src/FedEx/ShipService/ComplexType/TaxpayerIdentification.php +++ b/src/FedEx/ShipService/ComplexType/TaxpayerIdentification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for taxpayer identification information. + * TaxpayerIdentification * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,8 @@ * @property \FedEx\ShipService\SimpleType\TinType|string $TinType * @property string $Number * @property string $Usage + * @property string $EffectiveDate + * @property string $ExpirationDate */ class TaxpayerIdentification extends AbstractComplexType @@ -25,7 +27,7 @@ class TaxpayerIdentification extends AbstractComplexType protected $name = 'TaxpayerIdentification'; /** - * Identifies the category of the taxpayer identification number. See TinType for the list of values. + * Set TinType * * @param \FedEx\ShipService\SimpleType\TinType|string $tinType * @return $this @@ -37,7 +39,7 @@ public function setTinType($tinType) } /** - * Identifies the taxpayer identification number. + * Set Number * * @param string $number * @return $this @@ -59,4 +61,28 @@ public function setUsage($usage) $this->values['Usage'] = $usage; return $this; } + + /** + * Set EffectiveDate + * + * @param string $effectiveDate + * @return $this + */ + public function setEffectiveDate($effectiveDate) + { + $this->values['EffectiveDate'] = $effectiveDate; + return $this; + } + + /** + * Set ExpirationDate + * + * @param string $expirationDate + * @return $this + */ + public function setExpirationDate($expirationDate) + { + $this->values['ExpirationDate'] = $expirationDate; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/TransactionDetail.php b/src/FedEx/ShipService/ComplexType/TransactionDetail.php index 3a8b7311..9fef8aa9 100644 --- a/src/FedEx/ShipService/ComplexType/TransactionDetail.php +++ b/src/FedEx/ShipService/ComplexType/TransactionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * TransactionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/ComplexType/UploadDocumentReferenceDetail.php b/src/FedEx/ShipService/ComplexType/UploadDocumentReferenceDetail.php index 33630a23..6905fdc5 100644 --- a/src/FedEx/ShipService/ComplexType/UploadDocumentReferenceDetail.php +++ b/src/FedEx/ShipService/ComplexType/UploadDocumentReferenceDetail.php @@ -12,6 +12,7 @@ * * @property int $LineNumber * @property string $CustomerReference + * @property string $Description * @property \FedEx\ShipService\SimpleType\UploadDocumentProducerType|string $DocumentProducer * @property \FedEx\ShipService\SimpleType\UploadDocumentType|string $DocumentType * @property string $DocumentId @@ -51,6 +52,18 @@ public function setCustomerReference($customerReference) return $this; } + /** + * Description of the uploaded document. + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + /** * Set DocumentProducer * diff --git a/src/FedEx/ShipService/ComplexType/ValidateShipmentRequest.php b/src/FedEx/ShipService/ComplexType/ValidateShipmentRequest.php index e0022e21..86214c3d 100644 --- a/src/FedEx/ShipService/ComplexType/ValidateShipmentRequest.php +++ b/src/FedEx/ShipService/ComplexType/ValidateShipmentRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data sent to FedEx by a customer in order to validate a shipment. + * ValidateShipmentRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -39,7 +39,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -51,7 +51,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -63,7 +63,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -75,7 +75,7 @@ public function setVersion(VersionId $version) } /** - * Descriptive data about the shipment being sent by the requestor. + * Set RequestedShipment * * @param RequestedShipment $requestedShipment * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityContent.php b/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityContent.php index 70ad7ca9..c04f4c16 100644 --- a/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityContent.php +++ b/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityContent.php @@ -12,7 +12,9 @@ * * @property ValidatedHazardousCommodityDescription $Description * @property HazardousCommodityQuantityDetail $Quantity + * @property float $MassPoints * @property HazardousCommodityOptionDetail $Options + * @property NetExplosiveDetail $NetExplosiveDetail */ class ValidatedHazardousCommodityContent extends AbstractComplexType @@ -48,6 +50,18 @@ public function setQuantity(HazardousCommodityQuantityDetail $quantity) return $this; } + /** + * The mass points are a calculation used by ADR regulations for measuring the risk of a particular hazardous commodity. + * + * @param float $massPoints + * @return $this + */ + public function setMassPoints($massPoints) + { + $this->values['MassPoints'] = $massPoints; + return $this; + } + /** * Customer-provided specifications for handling individual commodities. * @@ -59,4 +73,16 @@ public function setOptions(HazardousCommodityOptionDetail $options) $this->values['Options'] = $options; return $this; } + + /** + * The total mass of the contained explosive substances, without the mass of any casings, bullets, shells, etc. + * + * @param NetExplosiveDetail $netExplosiveDetail + * @return $this + */ + public function setNetExplosiveDetail(NetExplosiveDetail $netExplosiveDetail) + { + $this->values['NetExplosiveDetail'] = $netExplosiveDetail; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityDescription.php b/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityDescription.php index 39be217b..41823520 100644 --- a/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityDescription.php +++ b/src/FedEx/ShipService/ComplexType/ValidatedHazardousCommodityDescription.php @@ -20,7 +20,9 @@ * @property string $HazardClass * @property string[] $SubsidiaryClasses * @property string $Symbols + * @property string $TunnelRestrictionCode * @property string $SpecialProvisions + * @property \FedEx\ShipService\SimpleType\HazardousCommodityAttributeType|string[] $Attributes * @property string $Authorization * @property string $LabelText @@ -154,6 +156,18 @@ public function setSymbols($symbols) return $this; } + /** + * Set TunnelRestrictionCode + * + * @param string $tunnelRestrictionCode + * @return $this + */ + public function setTunnelRestrictionCode($tunnelRestrictionCode) + { + $this->values['TunnelRestrictionCode'] = $tunnelRestrictionCode; + return $this; + } + /** * Set SpecialProvisions * @@ -166,6 +180,18 @@ public function setSpecialProvisions($specialProvisions) return $this; } + /** + * Set Attributes + * + * @param \FedEx\ShipService\SimpleType\HazardousCommodityAttributeType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } + /** * Set Authorization * diff --git a/src/FedEx/ShipService/ComplexType/VariableHandlingChargeDetail.php b/src/FedEx/ShipService/ComplexType/VariableHandlingChargeDetail.php index d8fecdde..825a8c58 100644 --- a/src/FedEx/ShipService/ComplexType/VariableHandlingChargeDetail.php +++ b/src/FedEx/ShipService/ComplexType/VariableHandlingChargeDetail.php @@ -26,9 +26,7 @@ class VariableHandlingChargeDetail extends AbstractComplexType protected $name = 'VariableHandlingChargeDetail'; /** - * Used with Variable handling charge type of FIXED_VALUE. - Contains the amount to be added to the freight charge. - Contains 2 explicit decimal positions with a total max length of 10 including the decimal. + * Set FixedValue * * @param Money $fixedValue * @return $this diff --git a/src/FedEx/ShipService/ComplexType/VariableHandlingCharges.php b/src/FedEx/ShipService/ComplexType/VariableHandlingCharges.php index dbe49db3..829f25a6 100644 --- a/src/FedEx/ShipService/ComplexType/VariableHandlingCharges.php +++ b/src/FedEx/ShipService/ComplexType/VariableHandlingCharges.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The variable handling charges calculated based on the type variable handling charges requested. + * VariableHandlingCharges * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class VariableHandlingCharges extends AbstractComplexType protected $name = 'VariableHandlingCharges'; /** - * The variable handling charge amount calculated based on the requested variable handling charge detail. + * Set VariableHandlingCharge * * @param Money $variableHandlingCharge * @return $this @@ -62,7 +62,7 @@ public function setPercentVariableHandlingCharge(Money $percentVariableHandlingC } /** - * The calculated varibale handling charge plus the net charge. + * Set TotalCustomerCharge * * @param Money $totalCustomerCharge * @return $this diff --git a/src/FedEx/ShipService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/ShipService/ComplexType/WebAuthenticationDetail.php index 32958a46..cebf9a6c 100644 --- a/src/FedEx/ShipService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/ShipService/ComplexType/WebAuthenticationDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Ship Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/ShipService/Request.php b/src/FedEx/ShipService/Request.php index f0eb4d97..0a12c27c 100644 --- a/src/FedEx/ShipService/Request.php +++ b/src/FedEx/ShipService/Request.php @@ -15,26 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/ship'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/ship'; - protected static $wsdlFileName = 'ShipService_v12.wsdl'; - - /** - * Sends the CreatePendingShipmentRequest and returns the response - * - * @param ComplexType\CreatePendingShipmentRequest $createPendingShipmentRequest - * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\CreatePendingShipmentReply|stdClass - */ - public function getCreatePendingShipmentReply(ComplexType\CreatePendingShipmentRequest $createPendingShipmentRequest, $returnStdClass = false) - { - $response = $this->getSoapClient()->createPendingShipment($createPendingShipmentRequest->toArray()); - if ($returnStdClass) { - return $response; - } - - $createPendingShipmentReply = new ComplexType\CreatePendingShipmentReply; - $createPendingShipmentReply->populateFromStdClass($response); - return $createPendingShipmentReply; - } + protected static $wsdlFileName = 'ShipService_v21.wsdl'; /** * Sends the ProcessTagRequest and returns the response @@ -74,25 +55,6 @@ public function getProcessShipmentReply(ComplexType\ProcessShipmentRequest $proc return $processShipmentReply; } - /** - * Sends the CancelPendingShipmentRequest and returns the response - * - * @param ComplexType\CancelPendingShipmentRequest $cancelPendingShipmentRequest - * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\CancelPendingShipmentReply|stdClass - */ - public function getCancelPendingShipmentReply(ComplexType\CancelPendingShipmentRequest $cancelPendingShipmentRequest, $returnStdClass = false) - { - $response = $this->getSoapClient()->cancelPendingShipment($cancelPendingShipmentRequest->toArray()); - if ($returnStdClass) { - return $response; - } - - $cancelPendingShipmentReply = new ComplexType\CancelPendingShipmentReply; - $cancelPendingShipmentReply->populateFromStdClass($response); - return $cancelPendingShipmentReply; - } - /** * Sends the DeleteTagRequest and returns the response * diff --git a/src/FedEx/ShipService/SimpleType/AccessorRoleType.php b/src/FedEx/ShipService/SimpleType/AccessorRoleType.php new file mode 100644 index 00000000..f141700e --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/AccessorRoleType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class AccessorRoleType extends AbstractSimpleType +{ + const _SHIPMENT_COMPLETOR = 'SHIPMENT_COMPLETOR'; + const _SHIPMENT_INITIATOR = 'SHIPMENT_INITIATOR'; +} diff --git a/src/FedEx/ShipService/SimpleType/AdditionalLabelsType.php b/src/FedEx/ShipService/SimpleType/AdditionalLabelsType.php index 9ae7aa30..d1277130 100644 --- a/src/FedEx/ShipService/SimpleType/AdditionalLabelsType.php +++ b/src/FedEx/ShipService/SimpleType/AdditionalLabelsType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of additional labels. + * AdditionalLabelsType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/AlcoholRecipientType.php b/src/FedEx/ShipService/SimpleType/AlcoholRecipientType.php new file mode 100644 index 00000000..0327e58c --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/AlcoholRecipientType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class AlcoholRecipientType extends AbstractSimpleType +{ + const _CONSUMER = 'CONSUMER'; + const _LICENSEE = 'LICENSEE'; +} diff --git a/src/FedEx/ShipService/SimpleType/AncillaryFeeAndTaxType.php b/src/FedEx/ShipService/SimpleType/AncillaryFeeAndTaxType.php new file mode 100644 index 00000000..c6744e91 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/AncillaryFeeAndTaxType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class AncillaryFeeAndTaxType extends AbstractSimpleType +{ + const _CLEARANCE_ENTRY_FEE = 'CLEARANCE_ENTRY_FEE'; + const _GOODS_AND_SERVICES_TAX = 'GOODS_AND_SERVICES_TAX'; + const _HARMONIZED_SALES_TAX = 'HARMONIZED_SALES_TAX'; + const _OTHER = 'OTHER'; +} diff --git a/src/FedEx/ShipService/SimpleType/B13AFilingOptionType.php b/src/FedEx/ShipService/SimpleType/B13AFilingOptionType.php index be1a787a..7e109cf7 100644 --- a/src/FedEx/ShipService/SimpleType/B13AFilingOptionType.php +++ b/src/FedEx/ShipService/SimpleType/B13AFilingOptionType.php @@ -4,8 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. + * B13AFilingOptionType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/BarcodeSymbologyType.php b/src/FedEx/ShipService/SimpleType/BarcodeSymbologyType.php index 5855fd47..2d6d69aa 100644 --- a/src/FedEx/ShipService/SimpleType/BarcodeSymbologyType.php +++ b/src/FedEx/ShipService/SimpleType/BarcodeSymbologyType.php @@ -12,7 +12,16 @@ */ class BarcodeSymbologyType extends AbstractSimpleType { + const _CODABAR = 'CODABAR'; + const _CODE128 = 'CODE128'; const _CODE128B = 'CODE128B'; const _CODE128C = 'CODE128C'; + const _CODE128_WIDEBAR = 'CODE128_WIDEBAR'; const _CODE39 = 'CODE39'; + const _CODE93 = 'CODE93'; + const _I2OF5 = 'I2OF5'; + const _PDF417 = 'PDF417'; + const _POSTNET = 'POSTNET'; + const _QR_CODE = 'QR_CODE'; + const _UCC128 = 'UCC128'; } diff --git a/src/FedEx/ShipService/SimpleType/BatteryMaterialType.php b/src/FedEx/ShipService/SimpleType/BatteryMaterialType.php new file mode 100644 index 00000000..b6fbd2c4 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/BatteryMaterialType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class BatteryMaterialType extends AbstractSimpleType +{ + const _LITHIUM_ION = 'LITHIUM_ION'; + const _LITHIUM_METAL = 'LITHIUM_METAL'; +} diff --git a/src/FedEx/ShipService/SimpleType/BatteryPackingType.php b/src/FedEx/ShipService/SimpleType/BatteryPackingType.php new file mode 100644 index 00000000..0126570f --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/BatteryPackingType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class BatteryPackingType extends AbstractSimpleType +{ + const _CONTAINED_IN_EQUIPMENT = 'CONTAINED_IN_EQUIPMENT'; + const _PACKED_WITH_EQUIPMENT = 'PACKED_WITH_EQUIPMENT'; +} diff --git a/src/FedEx/ShipService/SimpleType/BatteryRegulatorySubType.php b/src/FedEx/ShipService/SimpleType/BatteryRegulatorySubType.php new file mode 100644 index 00000000..5c4a420e --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/BatteryRegulatorySubType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class BatteryRegulatorySubType extends AbstractSimpleType +{ + const _IATA_SECTION_II = 'IATA_SECTION_II'; +} diff --git a/src/FedEx/ShipService/SimpleType/CodReturnReferenceIndicatorType.php b/src/FedEx/ShipService/SimpleType/CodReturnReferenceIndicatorType.php index 283abc11..1ca56f9a 100644 --- a/src/FedEx/ShipService/SimpleType/CodReturnReferenceIndicatorType.php +++ b/src/FedEx/ShipService/SimpleType/CodReturnReferenceIndicatorType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates which type of reference information to include on the COD return shipping label. + * CodReturnReferenceIndicatorType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/CommodityPurposeType.php b/src/FedEx/ShipService/SimpleType/CommodityPurposeType.php new file mode 100644 index 00000000..32635d4c --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/CommodityPurposeType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class CommodityPurposeType extends AbstractSimpleType +{ + const _BUSINESS = 'BUSINESS'; + const _CONSUMER = 'CONSUMER'; +} diff --git a/src/FedEx/ShipService/SimpleType/CompletedEtdType.php b/src/FedEx/ShipService/SimpleType/CompletedEtdType.php new file mode 100644 index 00000000..844913a2 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/CompletedEtdType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class CompletedEtdType extends AbstractSimpleType +{ + const _ELECTRONIC_DOCUMENTS_ONLY = 'ELECTRONIC_DOCUMENTS_ONLY'; + const _ELECTRONIC_DOCUMENTS_WITH_ORIGINALS = 'ELECTRONIC_DOCUMENTS_WITH_ORIGINALS'; +} diff --git a/src/FedEx/ShipService/SimpleType/CustomLabelCoordinateUnits.php b/src/FedEx/ShipService/SimpleType/CustomLabelCoordinateUnits.php index b30dfa21..68e729a0 100644 --- a/src/FedEx/ShipService/SimpleType/CustomLabelCoordinateUnits.php +++ b/src/FedEx/ShipService/SimpleType/CustomLabelCoordinateUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Valid values for CustomLabelCoordinateUnits + * CustomLabelCoordinateUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/CustomerReferenceType.php b/src/FedEx/ShipService/SimpleType/CustomerReferenceType.php index d898a116..c71791de 100644 --- a/src/FedEx/ShipService/SimpleType/CustomerReferenceType.php +++ b/src/FedEx/ShipService/SimpleType/CustomerReferenceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The types of references available for use. + * CustomerReferenceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,14 +12,11 @@ */ class CustomerReferenceType extends AbstractSimpleType { - const _BILL_OF_LADING = 'BILL_OF_LADING'; const _CUSTOMER_REFERENCE = 'CUSTOMER_REFERENCE'; const _DEPARTMENT_NUMBER = 'DEPARTMENT_NUMBER'; - const _ELECTRONIC_PRODUCT_CODE = 'ELECTRONIC_PRODUCT_CODE'; const _INTRACOUNTRY_REGULATORY_REFERENCE = 'INTRACOUNTRY_REGULATORY_REFERENCE'; const _INVOICE_NUMBER = 'INVOICE_NUMBER'; const _P_O_NUMBER = 'P_O_NUMBER'; const _RMA_ASSOCIATION = 'RMA_ASSOCIATION'; const _SHIPMENT_INTEGRITY = 'SHIPMENT_INTEGRITY'; - const _STORE_NUMBER = 'STORE_NUMBER'; } diff --git a/src/FedEx/ShipService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php b/src/FedEx/ShipService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php new file mode 100644 index 00000000..f834e596 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class CustomerSpecifiedLabelGenerationOptionType extends AbstractSimpleType +{ + const _CONTENT_ON_SHIPPING_LABEL_ONLY = 'CONTENT_ON_SHIPPING_LABEL_ONLY'; + const _CONTENT_ON_SHIPPING_LABEL_PREFERRED = 'CONTENT_ON_SHIPPING_LABEL_PREFERRED'; + const _CONTENT_ON_SUPPLEMENTAL_LABEL_ONLY = 'CONTENT_ON_SUPPLEMENTAL_LABEL_ONLY'; +} diff --git a/src/FedEx/ShipService/SimpleType/CustomsDeclarationStatementType.php b/src/FedEx/ShipService/SimpleType/CustomsDeclarationStatementType.php new file mode 100644 index 00000000..a46f5613 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/CustomsDeclarationStatementType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class CustomsDeclarationStatementType extends AbstractSimpleType +{ + const _NAFTA_LOW_VALUE = 'NAFTA_LOW_VALUE'; +} diff --git a/src/FedEx/ShipService/SimpleType/CustomsRoleType.php b/src/FedEx/ShipService/SimpleType/CustomsRoleType.php new file mode 100644 index 00000000..90cef7f1 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/CustomsRoleType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class CustomsRoleType extends AbstractSimpleType +{ + const _EXPORTER = 'EXPORTER'; + const _IMPORTER = 'IMPORTER'; + const _LEGAL_AGENT = 'LEGAL_AGENT'; + const _PRODUCER = 'PRODUCER'; +} diff --git a/src/FedEx/ShipService/SimpleType/DayOfWeekType.php b/src/FedEx/ShipService/SimpleType/DayOfWeekType.php index 58507239..d6378c93 100644 --- a/src/FedEx/ShipService/SimpleType/DayOfWeekType.php +++ b/src/FedEx/ShipService/SimpleType/DayOfWeekType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Valid values for DayofWeekType + * DayOfWeekType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/DestinationControlStatementType.php b/src/FedEx/ShipService/SimpleType/DestinationControlStatementType.php index 569f2017..712b6a99 100644 --- a/src/FedEx/ShipService/SimpleType/DestinationControlStatementType.php +++ b/src/FedEx/ShipService/SimpleType/DestinationControlStatementType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Used to indicate whether the Destination Control Statement is of type Department of Commerce, Department of State or both. + * DestinationControlStatementType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/DocTabContentType.php b/src/FedEx/ShipService/SimpleType/DocTabContentType.php index fc873a99..18cbbf3f 100644 --- a/src/FedEx/ShipService/SimpleType/DocTabContentType.php +++ b/src/FedEx/ShipService/SimpleType/DocTabContentType.php @@ -13,6 +13,7 @@ class DocTabContentType extends AbstractSimpleType { const _BARCODED = 'BARCODED'; + const _CUSTOM = 'CUSTOM'; const _MINIMUM = 'MINIMUM'; const _STANDARD = 'STANDARD'; const _ZONE001 = 'ZONE001'; diff --git a/src/FedEx/ShipService/SimpleType/DocumentFormatOptionType.php b/src/FedEx/ShipService/SimpleType/DocumentFormatOptionType.php new file mode 100644 index 00000000..4fd150c9 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/DocumentFormatOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class DocumentFormatOptionType extends AbstractSimpleType +{ + const _SUPPRESS_ADDITIONAL_LANGUAGES = 'SUPPRESS_ADDITIONAL_LANGUAGES'; +} diff --git a/src/FedEx/ShipService/SimpleType/DropoffType.php b/src/FedEx/ShipService/SimpleType/DropoffType.php index faeb8319..2b939a6d 100644 --- a/src/FedEx/ShipService/SimpleType/DropoffType.php +++ b/src/FedEx/ShipService/SimpleType/DropoffType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. + * DropoffType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/EMailNotificationRecipientType.php b/src/FedEx/ShipService/SimpleType/EMailNotificationRecipientType.php index a5c980c9..40453960 100644 --- a/src/FedEx/ShipService/SimpleType/EMailNotificationRecipientType.php +++ b/src/FedEx/ShipService/SimpleType/EMailNotificationRecipientType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. + * EMailNotificationRecipientType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/EmailOptionType.php b/src/FedEx/ShipService/SimpleType/EmailOptionType.php new file mode 100644 index 00000000..3ef1a52a --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/EmailOptionType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class EmailOptionType extends AbstractSimpleType +{ + const _SUPPRESS_ACCESS_EMAILS = 'SUPPRESS_ACCESS_EMAILS'; + const _SUPPRESS_ADDITIONAL_LANGUAGES = 'SUPPRESS_ADDITIONAL_LANGUAGES'; +} diff --git a/src/FedEx/ShipService/SimpleType/EnterpriseDocumentType.php b/src/FedEx/ShipService/SimpleType/EnterpriseDocumentType.php new file mode 100644 index 00000000..e2d25801 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/EnterpriseDocumentType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class EnterpriseDocumentType extends AbstractSimpleType +{ + const _AIR_WAYBILL = 'AIR_WAYBILL'; + const _CERTIFICATE_OF_ORIGIN = 'CERTIFICATE_OF_ORIGIN'; + const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; +} diff --git a/src/FedEx/ShipService/SimpleType/EtdAttributeType.php b/src/FedEx/ShipService/SimpleType/EtdAttributeType.php new file mode 100644 index 00000000..f0e2be04 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/EtdAttributeType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class EtdAttributeType extends AbstractSimpleType +{ + const _POST_SHIPMENT_UPLOAD_REQUESTED = 'POST_SHIPMENT_UPLOAD_REQUESTED'; +} diff --git a/src/FedEx/ShipService/SimpleType/FedExLocationType.php b/src/FedEx/ShipService/SimpleType/FedExLocationType.php index 9599162d..194ebb6d 100644 --- a/src/FedEx/ShipService/SimpleType/FedExLocationType.php +++ b/src/FedEx/ShipService/SimpleType/FedExLocationType.php @@ -13,9 +13,11 @@ class FedExLocationType extends AbstractSimpleType { const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; + const _FEDEX_FACILITY = 'FEDEX_FACILITY'; const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/ShipService/SimpleType/HazardousCommodityAttributeType.php b/src/FedEx/ShipService/SimpleType/HazardousCommodityAttributeType.php new file mode 100644 index 00000000..a5cfa899 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/HazardousCommodityAttributeType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class HazardousCommodityAttributeType extends AbstractSimpleType +{ + const _NOT_SUBJECT_TO_REGULATIONS = 'NOT_SUBJECT_TO_REGULATIONS'; + const _PLACARDED_VEHICLE_REQUIRED = 'PLACARDED_VEHICLE_REQUIRED'; +} diff --git a/src/FedEx/ShipService/SimpleType/HazardousCommodityOptionType.php b/src/FedEx/ShipService/SimpleType/HazardousCommodityOptionType.php index 9792d00b..354fd39d 100644 --- a/src/FedEx/ShipService/SimpleType/HazardousCommodityOptionType.php +++ b/src/FedEx/ShipService/SimpleType/HazardousCommodityOptionType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates which kind of hazardous content (as defined by DOT) is being reported. + * Indicates which kind of hazardous content is being reported. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,8 +12,9 @@ */ class HazardousCommodityOptionType extends AbstractSimpleType { + const _BATTERY = 'BATTERY'; const _HAZARDOUS_MATERIALS = 'HAZARDOUS_MATERIALS'; - const _LITHIUM_BATTERY_EXCEPTION = 'LITHIUM_BATTERY_EXCEPTION'; + const _LIMITED_QUANTITIES_COMMODITIES = 'LIMITED_QUANTITIES_COMMODITIES'; const _ORM_D = 'ORM_D'; const _REPORTABLE_QUANTITIES = 'REPORTABLE_QUANTITIES'; const _SMALL_QUANTITY_EXCEPTION = 'SMALL_QUANTITY_EXCEPTION'; diff --git a/src/FedEx/ShipService/SimpleType/HazardousCommodityRegulationType.php b/src/FedEx/ShipService/SimpleType/HazardousCommodityRegulationType.php new file mode 100644 index 00000000..dc94e348 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/HazardousCommodityRegulationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class HazardousCommodityRegulationType extends AbstractSimpleType +{ + const _ADR = 'ADR'; + const _DOT = 'DOT'; + const _IATA = 'IATA'; + const _ORMD = 'ORMD'; +} diff --git a/src/FedEx/ShipService/SimpleType/HomeDeliveryPremiumType.php b/src/FedEx/ShipService/SimpleType/HomeDeliveryPremiumType.php index 901d341e..8964f70d 100644 --- a/src/FedEx/ShipService/SimpleType/HomeDeliveryPremiumType.php +++ b/src/FedEx/ShipService/SimpleType/HomeDeliveryPremiumType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of Home Delivery Premium service being requested. + * HomeDeliveryPremiumType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/InternationalDocumentContentType.php b/src/FedEx/ShipService/SimpleType/InternationalDocumentContentType.php index 288f5984..37a9d107 100644 --- a/src/FedEx/ShipService/SimpleType/InternationalDocumentContentType.php +++ b/src/FedEx/ShipService/SimpleType/InternationalDocumentContentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of International shipment. + * InternationalDocumentContentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/LabelFormatType.php b/src/FedEx/ShipService/SimpleType/LabelFormatType.php index 31e90da4..fa26dc25 100644 --- a/src/FedEx/ShipService/SimpleType/LabelFormatType.php +++ b/src/FedEx/ShipService/SimpleType/LabelFormatType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Specifies the type of label to be returned. + * LabelFormatType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/LabelMaskableDataType.php b/src/FedEx/ShipService/SimpleType/LabelMaskableDataType.php index f1f00bb3..1d666298 100644 --- a/src/FedEx/ShipService/SimpleType/LabelMaskableDataType.php +++ b/src/FedEx/ShipService/SimpleType/LabelMaskableDataType.php @@ -14,6 +14,7 @@ class LabelMaskableDataType extends AbstractSimpleType { const _CUSTOMS_VALUE = 'CUSTOMS_VALUE'; const _DUTIES_AND_TAXES_PAYOR_ACCOUNT_NUMBER = 'DUTIES_AND_TAXES_PAYOR_ACCOUNT_NUMBER'; + const _SECONDARY_BARCODE = 'SECONDARY_BARCODE'; const _SHIPPER_ACCOUNT_NUMBER = 'SHIPPER_ACCOUNT_NUMBER'; const _TERMS_AND_CONDITIONS = 'TERMS_AND_CONDITIONS'; const _TRANSPORTATION_CHARGES_PAYOR_ACCOUNT_NUMBER = 'TRANSPORTATION_CHARGES_PAYOR_ACCOUNT_NUMBER'; diff --git a/src/FedEx/ShipService/SimpleType/LabelOrderType.php b/src/FedEx/ShipService/SimpleType/LabelOrderType.php new file mode 100644 index 00000000..84c4feec --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/LabelOrderType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class LabelOrderType extends AbstractSimpleType +{ + const _SHIPPING_LABEL_FIRST = 'SHIPPING_LABEL_FIRST'; + const _SHIPPING_LABEL_LAST = 'SHIPPING_LABEL_LAST'; +} diff --git a/src/FedEx/ShipService/SimpleType/LabelPrintingOrientationType.php b/src/FedEx/ShipService/SimpleType/LabelPrintingOrientationType.php index 0522ee74..c1ba6866 100644 --- a/src/FedEx/ShipService/SimpleType/LabelPrintingOrientationType.php +++ b/src/FedEx/ShipService/SimpleType/LabelPrintingOrientationType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * This indicates if the top or bottom of the label comes out of the printer first. + * LabelPrintingOrientationType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/LabelStockType.php b/src/FedEx/ShipService/SimpleType/LabelStockType.php index 3f1e4383..1fd8cce1 100644 --- a/src/FedEx/ShipService/SimpleType/LabelStockType.php +++ b/src/FedEx/ShipService/SimpleType/LabelStockType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * For thermal printer labels this indicates the size of the label and the location of the doc tab if present. + * LabelStockType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/LinearUnits.php b/src/FedEx/ShipService/SimpleType/LinearUnits.php index ab2abfba..682c86c9 100644 --- a/src/FedEx/ShipService/SimpleType/LinearUnits.php +++ b/src/FedEx/ShipService/SimpleType/LinearUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * CM = centimeters, IN = inches + * LinearUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/MinimumChargeType.php b/src/FedEx/ShipService/SimpleType/MinimumChargeType.php index a76bc638..62c5af3b 100644 --- a/src/FedEx/ShipService/SimpleType/MinimumChargeType.php +++ b/src/FedEx/ShipService/SimpleType/MinimumChargeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies which type minimum charge was applied. + * MinimumChargeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/NaftaNetCostMethodCode.php b/src/FedEx/ShipService/SimpleType/NaftaNetCostMethodCode.php index c6d6512f..b8ccc389 100644 --- a/src/FedEx/ShipService/SimpleType/NaftaNetCostMethodCode.php +++ b/src/FedEx/ShipService/SimpleType/NaftaNetCostMethodCode.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Net cost method used. + * NaftaNetCostMethodCode * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/NaftaProducerSpecificationType.php b/src/FedEx/ShipService/SimpleType/NaftaProducerSpecificationType.php index 373c82bc..ac8895a4 100644 --- a/src/FedEx/ShipService/SimpleType/NaftaProducerSpecificationType.php +++ b/src/FedEx/ShipService/SimpleType/NaftaProducerSpecificationType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * This element is currently not supported and is for the future use. + * NaftaProducerSpecificationType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/NetExplosiveClassificationType.php b/src/FedEx/ShipService/SimpleType/NetExplosiveClassificationType.php new file mode 100644 index 00000000..56a58e53 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/NetExplosiveClassificationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class NetExplosiveClassificationType extends AbstractSimpleType +{ + const _NET_EXPLOSIVE_CONTENT = 'NET_EXPLOSIVE_CONTENT'; + const _NET_EXPLOSIVE_MASS = 'NET_EXPLOSIVE_MASS'; + const _NET_EXPLOSIVE_QUANTITY = 'NET_EXPLOSIVE_QUANTITY'; + const _NET_EXPLOSIVE_WEIGHT = 'NET_EXPLOSIVE_WEIGHT'; +} diff --git a/src/FedEx/ShipService/SimpleType/NotificationEventType.php b/src/FedEx/ShipService/SimpleType/NotificationEventType.php new file mode 100644 index 00000000..dddcd658 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/NotificationEventType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class NotificationEventType extends AbstractSimpleType +{ + const _ON_DELIVERY = 'ON_DELIVERY'; + const _ON_ESTIMATED_DELIVERY = 'ON_ESTIMATED_DELIVERY'; + const _ON_EXCEPTION = 'ON_EXCEPTION'; + const _ON_SHIPMENT = 'ON_SHIPMENT'; + const _ON_TENDER = 'ON_TENDER'; +} diff --git a/src/FedEx/ShipService/SimpleType/NotificationFormatType.php b/src/FedEx/ShipService/SimpleType/NotificationFormatType.php new file mode 100644 index 00000000..fd6cc29a --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/NotificationFormatType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class NotificationFormatType extends AbstractSimpleType +{ + const _HTML = 'HTML'; + const _TEXT = 'TEXT'; +} diff --git a/src/FedEx/ShipService/SimpleType/NotificationSeverityType.php b/src/FedEx/ShipService/SimpleType/NotificationSeverityType.php index b2e4ad9c..7b8a88d6 100644 --- a/src/FedEx/ShipService/SimpleType/NotificationSeverityType.php +++ b/src/FedEx/ShipService/SimpleType/NotificationSeverityType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of severity values for a Notification. + * NotificationSeverityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/NotificationType.php b/src/FedEx/ShipService/SimpleType/NotificationType.php new file mode 100644 index 00000000..12aa0429 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/NotificationType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class NotificationType extends AbstractSimpleType +{ + const _EMAIL = 'EMAIL'; +} diff --git a/src/FedEx/ShipService/SimpleType/OversizeClassType.php b/src/FedEx/ShipService/SimpleType/OversizeClassType.php index f7df1af1..d2e6aaa3 100644 --- a/src/FedEx/ShipService/SimpleType/OversizeClassType.php +++ b/src/FedEx/ShipService/SimpleType/OversizeClassType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The oversize class types. + * OversizeClassType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/ShipService/SimpleType/PackageSpecialServiceType.php index 8df8715c..1d2f32d9 100644 --- a/src/FedEx/ShipService/SimpleType/PackageSpecialServiceType.php +++ b/src/FedEx/ShipService/SimpleType/PackageSpecialServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of special service offered by FedEx. BROKER_SELECT_OPTION should be used for Ground shipments only. + * PackageSpecialServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,6 +14,7 @@ class PackageSpecialServiceType extends AbstractSimpleType { const _ALCOHOL = 'ALCOHOL'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _BATTERY = 'BATTERY'; const _COD = 'COD'; const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; const _DRY_ICE = 'DRY_ICE'; diff --git a/src/FedEx/ShipService/SimpleType/PackagingType.php b/src/FedEx/ShipService/SimpleType/PackagingType.php index 927b5242..017a1b98 100644 --- a/src/FedEx/ShipService/SimpleType/PackagingType.php +++ b/src/FedEx/ShipService/SimpleType/PackagingType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of available FedEx or customer packaging options. + * PackagingType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -16,7 +16,11 @@ class PackagingType extends AbstractSimpleType const _FEDEX_25KG_BOX = 'FEDEX_25KG_BOX'; const _FEDEX_BOX = 'FEDEX_BOX'; const _FEDEX_ENVELOPE = 'FEDEX_ENVELOPE'; + const _FEDEX_EXTRA_LARGE_BOX = 'FEDEX_EXTRA_LARGE_BOX'; + const _FEDEX_LARGE_BOX = 'FEDEX_LARGE_BOX'; + const _FEDEX_MEDIUM_BOX = 'FEDEX_MEDIUM_BOX'; const _FEDEX_PAK = 'FEDEX_PAK'; + const _FEDEX_SMALL_BOX = 'FEDEX_SMALL_BOX'; const _FEDEX_TUBE = 'FEDEX_TUBE'; const _YOUR_PACKAGING = 'YOUR_PACKAGING'; } diff --git a/src/FedEx/ShipService/SimpleType/PaymentType.php b/src/FedEx/ShipService/SimpleType/PaymentType.php index 18307390..22487d20 100644 --- a/src/FedEx/ShipService/SimpleType/PaymentType.php +++ b/src/FedEx/ShipService/SimpleType/PaymentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the method of payment for a service. + * PaymentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/PendingShipmentProcessingOptionType.php b/src/FedEx/ShipService/SimpleType/PendingShipmentProcessingOptionType.php new file mode 100644 index 00000000..debc8a5e --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/PendingShipmentProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class PendingShipmentProcessingOptionType extends AbstractSimpleType +{ + const _ALLOW_MODIFICATIONS = 'ALLOW_MODIFICATIONS'; +} diff --git a/src/FedEx/ShipService/SimpleType/PendingShipmentType.php b/src/FedEx/ShipService/SimpleType/PendingShipmentType.php index bae11eb6..2c0eb143 100644 --- a/src/FedEx/ShipService/SimpleType/PendingShipmentType.php +++ b/src/FedEx/ShipService/SimpleType/PendingShipmentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of service for a pending shipment. + * PendingShipmentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/PickupRequestSourceType.php b/src/FedEx/ShipService/SimpleType/PickupRequestSourceType.php index c8311e71..271e6147 100644 --- a/src/FedEx/ShipService/SimpleType/PickupRequestSourceType.php +++ b/src/FedEx/ShipService/SimpleType/PickupRequestSourceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of source for pickup request service. + * PickupRequestSourceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/PickupRequestType.php b/src/FedEx/ShipService/SimpleType/PickupRequestType.php index bd1a032d..e7d0d0e9 100644 --- a/src/FedEx/ShipService/SimpleType/PickupRequestType.php +++ b/src/FedEx/ShipService/SimpleType/PickupRequestType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of pickup request service. + * PickupRequestType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/PricingCodeType.php b/src/FedEx/ShipService/SimpleType/PricingCodeType.php index fa6cf22a..85541295 100644 --- a/src/FedEx/ShipService/SimpleType/PricingCodeType.php +++ b/src/FedEx/ShipService/SimpleType/PricingCodeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of pricing used for this shipment. + * PricingCodeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/PurposeOfShipmentType.php b/src/FedEx/ShipService/SimpleType/PurposeOfShipmentType.php index d918539b..acf07ab6 100644 --- a/src/FedEx/ShipService/SimpleType/PurposeOfShipmentType.php +++ b/src/FedEx/ShipService/SimpleType/PurposeOfShipmentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Test for the Commercial Invoice. Note that Sold is not a valid Purpose for a Proforma Invoice. + * PurposeOfShipmentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/RateDiscountType.php b/src/FedEx/ShipService/SimpleType/RateDiscountType.php index 1dd6a044..c31388f2 100644 --- a/src/FedEx/ShipService/SimpleType/RateDiscountType.php +++ b/src/FedEx/ShipService/SimpleType/RateDiscountType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of the discount. + * RateDiscountType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/RateRequestType.php b/src/FedEx/ShipService/SimpleType/RateRequestType.php index 3579d005..9a36ba78 100644 --- a/src/FedEx/ShipService/SimpleType/RateRequestType.php +++ b/src/FedEx/ShipService/SimpleType/RateRequestType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type(s) of rates to be returned in the reply. + * RateRequestType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,7 +12,7 @@ */ class RateRequestType extends AbstractSimpleType { - const _ACCOUNT = 'ACCOUNT'; const _LIST = 'LIST'; + const _NONE = 'NONE'; const _PREFERRED = 'PREFERRED'; } diff --git a/src/FedEx/ShipService/SimpleType/RatedWeightMethod.php b/src/FedEx/ShipService/SimpleType/RatedWeightMethod.php index 836f397f..838e3150 100644 --- a/src/FedEx/ShipService/SimpleType/RatedWeightMethod.php +++ b/src/FedEx/ShipService/SimpleType/RatedWeightMethod.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The weight method used to calculate the rate. + * RatedWeightMethod * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -15,6 +15,7 @@ class RatedWeightMethod extends AbstractSimpleType const _ACTUAL = 'ACTUAL'; const _AVERAGE_PACKAGE_WEIGHT_MINIMUM = 'AVERAGE_PACKAGE_WEIGHT_MINIMUM'; const _BALLOON = 'BALLOON'; + const _DEFAULT_WEIGHT_APPLIED = 'DEFAULT_WEIGHT_APPLIED'; const _DIM = 'DIM'; const _FREIGHT_MINIMUM = 'FREIGHT_MINIMUM'; const _MIXED = 'MIXED'; diff --git a/src/FedEx/ShipService/SimpleType/RecipientCustomsIdType.php b/src/FedEx/ShipService/SimpleType/RecipientCustomsIdType.php index ff5e37b4..ae1480c1 100644 --- a/src/FedEx/ShipService/SimpleType/RecipientCustomsIdType.php +++ b/src/FedEx/ShipService/SimpleType/RecipientCustomsIdType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Type of Brazilian taxpayer identifier provided in Recipient/TaxPayerIdentification/Number. For shipments bound for Brazil this overrides the value in Recipient/TaxPayerIdentification/TinType + * RecipientCustomsIdType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/RecommendedDocumentType.php b/src/FedEx/ShipService/SimpleType/RecommendedDocumentType.php new file mode 100644 index 00000000..6a57c3b8 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/RecommendedDocumentType.php @@ -0,0 +1,41 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class RecommendedDocumentType extends AbstractSimpleType +{ + const _ANTIQUE_STATEMENT_EUROPEAN_UNION = 'ANTIQUE_STATEMENT_EUROPEAN_UNION'; + const _ANTIQUE_STATEMENT_UNITED_STATES = 'ANTIQUE_STATEMENT_UNITED_STATES'; + const _ASSEMBLER_DECLARATION = 'ASSEMBLER_DECLARATION'; + const _BEARING_WORKSHEET = 'BEARING_WORKSHEET'; + const _CERTIFICATE_OF_SHIPMENTS_TO_SYRIA = 'CERTIFICATE_OF_SHIPMENTS_TO_SYRIA'; + const _COMMERCIAL_INVOICE_FOR_THE_CARIBBEAN_COMMON_MARKET = 'COMMERCIAL_INVOICE_FOR_THE_CARIBBEAN_COMMON_MARKET'; + const _CONIFEROUS_SOLID_WOOD_PACKAGING_MATERIAL_TO_THE_PEOPLES_REPUBLIC_OF_CHINA = 'CONIFEROUS_SOLID_WOOD_PACKAGING_MATERIAL_TO_THE_PEOPLES_REPUBLIC_OF_CHINA'; + const _DECLARATION_FOR_FREE_ENTRY_OF_RETURNED_AMERICAN_PRODUCTS = 'DECLARATION_FOR_FREE_ENTRY_OF_RETURNED_AMERICAN_PRODUCTS'; + const _DECLARATION_OF_BIOLOGICAL_STANDARDS = 'DECLARATION_OF_BIOLOGICAL_STANDARDS'; + const _DECLARATION_OF_IMPORTED_ELECTRONIC_PRODUCTS_SUBJECT_TO_RADIATION_CONTROL_STANDARD = 'DECLARATION_OF_IMPORTED_ELECTRONIC_PRODUCTS_SUBJECT_TO_RADIATION_CONTROL_STANDARD'; + const _ELECTRONIC_INTEGRATED_CIRCUIT_WORKSHEET = 'ELECTRONIC_INTEGRATED_CIRCUIT_WORKSHEET'; + const _FILM_AND_VIDEO_CERTIFICATE = 'FILM_AND_VIDEO_CERTIFICATE'; + const _INTERIM_FOOTWEAR_INVOICE = 'INTERIM_FOOTWEAR_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_ENGLISH = 'NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_ENGLISH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_FRENCH = 'NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_FRENCH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_SPANISH = 'NAFTA_CERTIFICATE_OF_ORIGIN_SPANISH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_UNITED_STATES = 'NAFTA_CERTIFICATE_OF_ORIGIN_UNITED_STATES'; + const _PACKING_LIST = 'PACKING_LIST'; + const _PRINTED_CIRCUIT_BOARD_WORKSHEET = 'PRINTED_CIRCUIT_BOARD_WORKSHEET'; + const _REPAIRED_WATCH_BREAKOUT_WORKSHEET = 'REPAIRED_WATCH_BREAKOUT_WORKSHEET'; + const _STATEMENT_REGARDING_THE_IMPORT_OF_RADIO_FREQUENCY_DEVICES = 'STATEMENT_REGARDING_THE_IMPORT_OF_RADIO_FREQUENCY_DEVICES'; + const _TOXIC_SUBSTANCES_CONTROL_ACT = 'TOXIC_SUBSTANCES_CONTROL_ACT'; + const _UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_NON_TEXTILES = 'UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_NON_TEXTILES'; + const _UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_TEXTILES = 'UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_TEXTILES'; + const _UNITED_STATES_NEW_WATCH_WORKSHEET = 'UNITED_STATES_NEW_WATCH_WORKSHEET'; + const _UNITED_STATES_WATCH_REPAIR_DECLARATION = 'UNITED_STATES_WATCH_REPAIR_DECLARATION'; +} diff --git a/src/FedEx/ShipService/SimpleType/RegulatoryControlType.php b/src/FedEx/ShipService/SimpleType/RegulatoryControlType.php index 82ef9559..206e5cb1 100644 --- a/src/FedEx/ShipService/SimpleType/RegulatoryControlType.php +++ b/src/FedEx/ShipService/SimpleType/RegulatoryControlType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * FOOD_OR_PERISHABLE is required by FDA/BTA; must be true for food/perishable items coming to US or PR from non-US/non-PR origin + * RegulatoryControlType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,7 +12,8 @@ */ class RegulatoryControlType extends AbstractSimpleType { - const _EU_CIRCULATION = 'EU_CIRCULATION'; const _FOOD_OR_PERISHABLE = 'FOOD_OR_PERISHABLE'; const _NAFTA = 'NAFTA'; + const _NOT_APPLICABLE_FOR_LOW_CUSTOMS_VALUE_EXCEPTION = 'NOT_APPLICABLE_FOR_LOW_CUSTOMS_VALUE_EXCEPTION'; + const _NOT_IN_FREE_CIRCULATION = 'NOT_IN_FREE_CIRCULATION'; } diff --git a/src/FedEx/ShipService/SimpleType/RegulatoryLabelType.php b/src/FedEx/ShipService/SimpleType/RegulatoryLabelType.php new file mode 100644 index 00000000..f1fa1d22 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/RegulatoryLabelType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class RegulatoryLabelType extends AbstractSimpleType +{ + const _ALCOHOL_SHIPMENT_LABEL = 'ALCOHOL_SHIPMENT_LABEL'; +} diff --git a/src/FedEx/ShipService/SimpleType/RelativeVerticalPositionType.php b/src/FedEx/ShipService/SimpleType/RelativeVerticalPositionType.php new file mode 100644 index 00000000..c7308e33 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/RelativeVerticalPositionType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class RelativeVerticalPositionType extends AbstractSimpleType +{ + const _ABOVE = 'ABOVE'; + const _BELOW = 'BELOW'; +} diff --git a/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php b/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php index 45923fb1..7df4dac7 100644 --- a/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php +++ b/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php @@ -18,6 +18,7 @@ class RequestedShippingDocumentType extends AbstractSimpleType const _CUSTOM_PACKAGE_DOCUMENT = 'CUSTOM_PACKAGE_DOCUMENT'; const _CUSTOM_SHIPMENT_DOCUMENT = 'CUSTOM_SHIPMENT_DOCUMENT'; const _DANGEROUS_GOODS_SHIPPERS_DECLARATION = 'DANGEROUS_GOODS_SHIPPERS_DECLARATION'; + const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _LABEL = 'LABEL'; diff --git a/src/FedEx/ShipService/SimpleType/RequiredDocumentType.php b/src/FedEx/ShipService/SimpleType/RequiredDocumentType.php new file mode 100644 index 00000000..b4b10094 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/RequiredDocumentType.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class RequiredDocumentType extends AbstractSimpleType +{ + const _AIR_WAYBILL = 'AIR_WAYBILL'; + const _CERTIFICATE_OF_ORIGIN = 'CERTIFICATE_OF_ORIGIN'; + const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; + const _COMMERCIAL_OR_PRO_FORMA_INVOICE = 'COMMERCIAL_OR_PRO_FORMA_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; +} diff --git a/src/FedEx/ShipService/SimpleType/RequirementType.php b/src/FedEx/ShipService/SimpleType/RequirementType.php new file mode 100644 index 00000000..f3a4790d --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/RequirementType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class RequirementType extends AbstractSimpleType +{ + const _OPTIONAL = 'OPTIONAL'; + const _PROHIBITED = 'PROHIBITED'; + const _REQUIRED = 'REQUIRED'; +} diff --git a/src/FedEx/ShipService/SimpleType/ReturnType.php b/src/FedEx/ShipService/SimpleType/ReturnType.php index 16a42c96..a0a9efdf 100644 --- a/src/FedEx/ShipService/SimpleType/ReturnType.php +++ b/src/FedEx/ShipService/SimpleType/ReturnType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of return shipment that is being requested. + * ReturnType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/ReturnedRateType.php b/src/FedEx/ShipService/SimpleType/ReturnedRateType.php index 81d7aea2..056670bd 100644 --- a/src/FedEx/ShipService/SimpleType/ReturnedRateType.php +++ b/src/FedEx/ShipService/SimpleType/ReturnedRateType.php @@ -13,6 +13,7 @@ class ReturnedRateType extends AbstractSimpleType { const _INCENTIVE = 'INCENTIVE'; + const _NEGOTIATED = 'NEGOTIATED'; const _PAYOR_ACCOUNT_PACKAGE = 'PAYOR_ACCOUNT_PACKAGE'; const _PAYOR_ACCOUNT_SHIPMENT = 'PAYOR_ACCOUNT_SHIPMENT'; const _PAYOR_LIST_PACKAGE = 'PAYOR_LIST_PACKAGE'; @@ -21,8 +22,5 @@ class ReturnedRateType extends AbstractSimpleType const _PREFERRED_ACCOUNT_SHIPMENT = 'PREFERRED_ACCOUNT_SHIPMENT'; const _PREFERRED_LIST_PACKAGE = 'PREFERRED_LIST_PACKAGE'; const _PREFERRED_LIST_SHIPMENT = 'PREFERRED_LIST_SHIPMENT'; - const _RATED_ACCOUNT_PACKAGE = 'RATED_ACCOUNT_PACKAGE'; - const _RATED_ACCOUNT_SHIPMENT = 'RATED_ACCOUNT_SHIPMENT'; - const _RATED_LIST_PACKAGE = 'RATED_LIST_PACKAGE'; - const _RATED_LIST_SHIPMENT = 'RATED_LIST_SHIPMENT'; + const _PREFERRED_NEGOTIATED = 'PREFERRED_NEGOTIATED'; } diff --git a/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php b/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php index aa26cf11..f7da50f0 100644 --- a/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php +++ b/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Shipping document type. + * ReturnedShippingDocumentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -25,6 +25,7 @@ class ReturnedShippingDocumentType extends AbstractSimpleType const _DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_2_D_BARCODE = 'DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_2_D_BARCODE'; const _DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_LABEL = 'DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_LABEL'; const _ETD_LABEL = 'ETD_LABEL'; + const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _GROUND_BARCODE = 'GROUND_BARCODE'; diff --git a/src/FedEx/ShipService/SimpleType/RotationType.php b/src/FedEx/ShipService/SimpleType/RotationType.php new file mode 100644 index 00000000..92cb77f8 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/RotationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class RotationType extends AbstractSimpleType +{ + const _LEFT = 'LEFT'; + const _NONE = 'NONE'; + const _RIGHT = 'RIGHT'; + const _UPSIDE_DOWN = 'UPSIDE_DOWN'; +} diff --git a/src/FedEx/ShipService/SimpleType/ServiceType.php b/src/FedEx/ShipService/SimpleType/ServiceType.php index 1a4eadd1..31e8b1bf 100644 --- a/src/FedEx/ShipService/SimpleType/ServiceType.php +++ b/src/FedEx/ShipService/SimpleType/ServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of available FedEx service options. + * ServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -18,19 +18,28 @@ class ServiceType extends AbstractSimpleType const _FEDEX_2_DAY_AM = 'FEDEX_2_DAY_AM'; const _FEDEX_2_DAY_FREIGHT = 'FEDEX_2_DAY_FREIGHT'; const _FEDEX_3_DAY_FREIGHT = 'FEDEX_3_DAY_FREIGHT'; + const _FEDEX_DISTANCE_DEFERRED = 'FEDEX_DISTANCE_DEFERRED'; const _FEDEX_EXPRESS_SAVER = 'FEDEX_EXPRESS_SAVER'; const _FEDEX_FIRST_FREIGHT = 'FEDEX_FIRST_FREIGHT'; const _FEDEX_FREIGHT_ECONOMY = 'FEDEX_FREIGHT_ECONOMY'; const _FEDEX_FREIGHT_PRIORITY = 'FEDEX_FREIGHT_PRIORITY'; const _FEDEX_GROUND = 'FEDEX_GROUND'; + const _FEDEX_NEXT_DAY_AFTERNOON = 'FEDEX_NEXT_DAY_AFTERNOON'; + const _FEDEX_NEXT_DAY_EARLY_MORNING = 'FEDEX_NEXT_DAY_EARLY_MORNING'; + const _FEDEX_NEXT_DAY_END_OF_DAY = 'FEDEX_NEXT_DAY_END_OF_DAY'; + const _FEDEX_NEXT_DAY_FREIGHT = 'FEDEX_NEXT_DAY_FREIGHT'; + const _FEDEX_NEXT_DAY_MID_MORNING = 'FEDEX_NEXT_DAY_MID_MORNING'; const _FIRST_OVERNIGHT = 'FIRST_OVERNIGHT'; const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; const _INTERNATIONAL_ECONOMY = 'INTERNATIONAL_ECONOMY'; const _INTERNATIONAL_ECONOMY_FREIGHT = 'INTERNATIONAL_ECONOMY_FREIGHT'; const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; + const _SAME_DAY = 'SAME_DAY'; + const _SAME_DAY_CITY = 'SAME_DAY_CITY'; const _SMART_POST = 'SMART_POST'; const _STANDARD_OVERNIGHT = 'STANDARD_OVERNIGHT'; } diff --git a/src/FedEx/ShipService/SimpleType/ShipmentDryIceProcessingOptionType.php b/src/FedEx/ShipService/SimpleType/ShipmentDryIceProcessingOptionType.php new file mode 100644 index 00000000..1c24c38f --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/ShipmentDryIceProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class ShipmentDryIceProcessingOptionType extends AbstractSimpleType +{ + const _SHIPMENT_LEVEL_DRY_ICE_ONLY = 'SHIPMENT_LEVEL_DRY_ICE_ONLY'; +} diff --git a/src/FedEx/ShipService/SimpleType/ShipmentNotificationAggregationType.php b/src/FedEx/ShipService/SimpleType/ShipmentNotificationAggregationType.php new file mode 100644 index 00000000..f14a2677 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/ShipmentNotificationAggregationType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class ShipmentNotificationAggregationType extends AbstractSimpleType +{ + const _PER_PACKAGE = 'PER_PACKAGE'; + const _PER_SHIPMENT = 'PER_SHIPMENT'; +} diff --git a/src/FedEx/ShipService/SimpleType/ShipmentNotificationRoleType.php b/src/FedEx/ShipService/SimpleType/ShipmentNotificationRoleType.php new file mode 100644 index 00000000..4bffe53f --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/ShipmentNotificationRoleType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class ShipmentNotificationRoleType extends AbstractSimpleType +{ + const _BROKER = 'BROKER'; + const _OTHER = 'OTHER'; + const _RECIPIENT = 'RECIPIENT'; + const _SHIPPER = 'SHIPPER'; + const _THIRD_PARTY = 'THIRD_PARTY'; +} diff --git a/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php index 6bfaef8b..2d2a9cf5 100644 --- a/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of special service offered by FedEx. BROKER_SELECT_OPTION should be used for Express shipments only. + * ShipmentSpecialServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -16,6 +16,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _CALL_BEFORE_DELIVERY = 'CALL_BEFORE_DELIVERY'; const _COD = 'COD'; const _CUSTOM_DELIVERY_WINDOW = 'CUSTOM_DELIVERY_WINDOW'; + const _CUT_FLOWERS = 'CUT_FLOWERS'; const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; const _DELIVERY_ON_INVOICE_ACCEPTANCE = 'DELIVERY_ON_INVOICE_ACCEPTANCE'; const _DO_NOT_BREAK_DOWN_PALLETS = 'DO_NOT_BREAK_DOWN_PALLETS'; @@ -23,10 +24,13 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _DRY_ICE = 'DRY_ICE'; const _EAST_COAST_SPECIAL = 'EAST_COAST_SPECIAL'; const _ELECTRONIC_TRADE_DOCUMENTS = 'ELECTRONIC_TRADE_DOCUMENTS'; - const _EMAIL_NOTIFICATION = 'EMAIL_NOTIFICATION'; + const _EVENT_NOTIFICATION = 'EVENT_NOTIFICATION'; + const _EXCLUDE_FROM_CONSOLIDATION = 'EXCLUDE_FROM_CONSOLIDATION'; const _EXTREME_LENGTH = 'EXTREME_LENGTH'; + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FOOD = 'FOOD'; const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; + const _FREIGHT_TO_COLLECT = 'FREIGHT_TO_COLLECT'; const _FUTURE_DAY_SHIPMENT = 'FUTURE_DAY_SHIPMENT'; const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; const _HOME_DELIVERY_PREMIUM = 'HOME_DELIVERY_PREMIUM'; @@ -39,11 +43,13 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; + const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; const _POISON = 'POISON'; const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; const _RETURNS_CLEARANCE = 'RETURNS_CLEARANCE'; const _RETURN_SHIPMENT = 'RETURN_SHIPMENT'; const _SATURDAY_DELIVERY = 'SATURDAY_DELIVERY'; const _SATURDAY_PICKUP = 'SATURDAY_PICKUP'; + const _THIRD_PARTY_CONSIGNEE = 'THIRD_PARTY_CONSIGNEE'; const _TOP_LOAD = 'TOP_LOAD'; } diff --git a/src/FedEx/ShipService/SimpleType/ShippingDocumentDispositionType.php b/src/FedEx/ShipService/SimpleType/ShippingDocumentDispositionType.php index d6eb2d9f..eb23b9c3 100644 --- a/src/FedEx/ShipService/SimpleType/ShippingDocumentDispositionType.php +++ b/src/FedEx/ShipService/SimpleType/ShippingDocumentDispositionType.php @@ -12,8 +12,6 @@ */ class ShippingDocumentDispositionType extends AbstractSimpleType { - const _CONFIRMED = 'CONFIRMED'; - const _DEFERRED_RETURNED = 'DEFERRED_RETURNED'; const _DEFERRED_STORED = 'DEFERRED_STORED'; const _EMAILED = 'EMAILED'; const _QUEUED = 'QUEUED'; diff --git a/src/FedEx/ShipService/SimpleType/ShippingDocumentImageType.php b/src/FedEx/ShipService/SimpleType/ShippingDocumentImageType.php index c50f90a5..0d80c27a 100644 --- a/src/FedEx/ShipService/SimpleType/ShippingDocumentImageType.php +++ b/src/FedEx/ShipService/SimpleType/ShippingDocumentImageType.php @@ -13,7 +13,6 @@ class ShippingDocumentImageType extends AbstractSimpleType { const _DOC = 'DOC'; - const _DPL = 'DPL'; const _EPL2 = 'EPL2'; const _PDF = 'PDF'; const _PNG = 'PNG'; diff --git a/src/FedEx/ShipService/SimpleType/ShippingDocumentNamingType.php b/src/FedEx/ShipService/SimpleType/ShippingDocumentNamingType.php new file mode 100644 index 00000000..280e40ef --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/ShippingDocumentNamingType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class ShippingDocumentNamingType extends AbstractSimpleType +{ + const _FAST = 'FAST'; + const _LEGACY_FXRS = 'LEGACY_FXRS'; +} diff --git a/src/FedEx/ShipService/SimpleType/ShippingDocumentStorageDetailType.php b/src/FedEx/ShipService/SimpleType/ShippingDocumentStorageDetailType.php new file mode 100644 index 00000000..ef28c21a --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/ShippingDocumentStorageDetailType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class ShippingDocumentStorageDetailType extends AbstractSimpleType +{ + const _ASYNC_SERVICE = 'ASYNC_SERVICE'; + const _LOCAL_FILE_SYSTEM = 'LOCAL_FILE_SYSTEM'; +} diff --git a/src/FedEx/ShipService/SimpleType/SignatureOptionType.php b/src/FedEx/ShipService/SimpleType/SignatureOptionType.php index 027d9921..cc02dbb3 100644 --- a/src/FedEx/ShipService/SimpleType/SignatureOptionType.php +++ b/src/FedEx/ShipService/SimpleType/SignatureOptionType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the delivery signature services options offered by FedEx. + * SignatureOptionType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/SmartPostShipmentProcessingOptionType.php b/src/FedEx/ShipService/SimpleType/SmartPostShipmentProcessingOptionType.php new file mode 100644 index 00000000..db9a7e01 --- /dev/null +++ b/src/FedEx/ShipService/SimpleType/SmartPostShipmentProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + */ +class SmartPostShipmentProcessingOptionType extends AbstractSimpleType +{ + const _GROUND_TRACKING_NUMBER_REQUESTED = 'GROUND_TRACKING_NUMBER_REQUESTED'; +} diff --git a/src/FedEx/ShipService/SimpleType/SpecialRatingAppliedType.php b/src/FedEx/ShipService/SimpleType/SpecialRatingAppliedType.php index 337a72e0..5d23cd3d 100644 --- a/src/FedEx/ShipService/SimpleType/SpecialRatingAppliedType.php +++ b/src/FedEx/ShipService/SimpleType/SpecialRatingAppliedType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Special circumstance rating used for this shipment. + * SpecialRatingAppliedType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,6 +12,7 @@ */ class SpecialRatingAppliedType extends AbstractSimpleType { + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FIXED_FUEL_SURCHARGE = 'FIXED_FUEL_SURCHARGE'; const _IMPORT_PRICING = 'IMPORT_PRICING'; } diff --git a/src/FedEx/ShipService/SimpleType/SurchargeType.php b/src/FedEx/ShipService/SimpleType/SurchargeType.php index 2dce5e77..54695596 100644 --- a/src/FedEx/ShipService/SimpleType/SurchargeType.php +++ b/src/FedEx/ShipService/SimpleType/SurchargeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of the surcharge. + * SurchargeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,7 +12,9 @@ */ class SurchargeType extends AbstractSimpleType { + const _ACCOUNT_NUMBER_PROCESSING_FEE = 'ACCOUNT_NUMBER_PROCESSING_FEE'; const _ADDITIONAL_HANDLING = 'ADDITIONAL_HANDLING'; + const _ADDRESS_CORRECTION = 'ADDRESS_CORRECTION'; const _ANCILLARY_FEE = 'ANCILLARY_FEE'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; const _BROKER_SELECT_OPTION = 'BROKER_SELECT_OPTION'; @@ -39,6 +41,7 @@ class SurchargeType extends AbstractSimpleType const _FLATBED = 'FLATBED'; const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; const _FREIGHT_ON_VALUE = 'FREIGHT_ON_VALUE'; + const _FREIGHT_TO_COLLECT = 'FREIGHT_TO_COLLECT'; const _FUEL = 'FUEL'; const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; const _HOME_DELIVERY_APPOINTMENT = 'HOME_DELIVERY_APPOINTMENT'; @@ -57,6 +60,7 @@ class SurchargeType extends AbstractSimpleType const _NON_MACHINABLE = 'NON_MACHINABLE'; const _OFFSHORE = 'OFFSHORE'; const _ON_CALL_PICKUP = 'ON_CALL_PICKUP'; + const _ON_DEMAND_CARE = 'ON_DEMAND_CARE'; const _OTHER = 'OTHER'; const _OUT_OF_DELIVERY_AREA = 'OUT_OF_DELIVERY_AREA'; const _OUT_OF_PICKUP_AREA = 'OUT_OF_PICKUP_AREA'; @@ -68,6 +72,8 @@ class SurchargeType extends AbstractSimpleType const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; const _REGIONAL_MALL_DELIVERY = 'REGIONAL_MALL_DELIVERY'; const _REGIONAL_MALL_PICKUP = 'REGIONAL_MALL_PICKUP'; + const _REROUTE = 'REROUTE'; + const _RESCHEDULE = 'RESCHEDULE'; const _RESIDENTIAL_DELIVERY = 'RESIDENTIAL_DELIVERY'; const _RESIDENTIAL_PICKUP = 'RESIDENTIAL_PICKUP'; const _RETURN_LABEL = 'RETURN_LABEL'; diff --git a/src/FedEx/ShipService/SimpleType/TaxType.php b/src/FedEx/ShipService/SimpleType/TaxType.php index 633128d4..a682edd7 100644 --- a/src/FedEx/ShipService/SimpleType/TaxType.php +++ b/src/FedEx/ShipService/SimpleType/TaxType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of the tax. + * TaxType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/TinType.php b/src/FedEx/ShipService/SimpleType/TinType.php index 8e9e018d..e2f55d67 100644 --- a/src/FedEx/ShipService/SimpleType/TinType.php +++ b/src/FedEx/ShipService/SimpleType/TinType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the category of the taxpayer identification number. + * TinType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/TransitTimeType.php b/src/FedEx/ShipService/SimpleType/TransitTimeType.php index 22826ef5..83f300f3 100644 --- a/src/FedEx/ShipService/SimpleType/TransitTimeType.php +++ b/src/FedEx/ShipService/SimpleType/TransitTimeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of valid shipment transit time values. + * TransitTimeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/ShipService/SimpleType/UploadDocumentIdProducer.php b/src/FedEx/ShipService/SimpleType/UploadDocumentIdProducer.php index d1da88ac..7086a991 100644 --- a/src/FedEx/ShipService/SimpleType/UploadDocumentIdProducer.php +++ b/src/FedEx/ShipService/SimpleType/UploadDocumentIdProducer.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * UploadDocumentIdProducer + * Specifies the application that is responsible for managing the document id. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,4 @@ class UploadDocumentIdProducer extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; - const _FEDEX_CSHP = 'FEDEX_CSHP'; - const _FEDEX_GTM = 'FEDEX_GTM'; } diff --git a/src/FedEx/ShipService/SimpleType/UploadDocumentProducerType.php b/src/FedEx/ShipService/SimpleType/UploadDocumentProducerType.php index a63b3901..2c026d44 100644 --- a/src/FedEx/ShipService/SimpleType/UploadDocumentProducerType.php +++ b/src/FedEx/ShipService/SimpleType/UploadDocumentProducerType.php @@ -13,7 +13,4 @@ class UploadDocumentProducerType extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; - const _FEDEX_CLS = 'FEDEX_CLS'; - const _FEDEX_GTM = 'FEDEX_GTM'; - const _OTHER = 'OTHER'; } diff --git a/src/FedEx/ShipService/SimpleType/UploadDocumentType.php b/src/FedEx/ShipService/SimpleType/UploadDocumentType.php index 3a896c85..f5823fc2 100644 --- a/src/FedEx/ShipService/SimpleType/UploadDocumentType.php +++ b/src/FedEx/ShipService/SimpleType/UploadDocumentType.php @@ -16,6 +16,7 @@ class UploadDocumentType extends AbstractSimpleType const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; const _ETD_LABEL = 'ETD_LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _NET_RATE_SHEET = 'NET_RATE_SHEET'; const _OTHER = 'OTHER'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; } diff --git a/src/FedEx/ShipService/SimpleType/WeightUnits.php b/src/FedEx/ShipService/SimpleType/WeightUnits.php index 96f53d11..d5277618 100644 --- a/src/FedEx/ShipService/SimpleType/WeightUnits.php +++ b/src/FedEx/ShipService/SimpleType/WeightUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the unit of measure associated with a weight value. See the list of enumerated types for valid values. + * WeightUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/_wsdl/ShipService_v12.wsdl b/src/FedEx/_wsdl/ShipService_v21.wsdl old mode 100644 new mode 100755 similarity index 79% rename from src/FedEx/_wsdl/ShipService_v12.wsdl rename to src/FedEx/_wsdl/ShipService_v21.wsdl index c9e4c71c..8da63ea9 --- a/src/FedEx/_wsdl/ShipService_v12.wsdl +++ b/src/FedEx/_wsdl/ShipService_v21.wsdl @@ -1,10 +1,6 @@ - + - - - - - + @@ -13,6 +9,15 @@ + + + Specifies the role that identifies the permissions the accessor of the pending shipment. + + + + + + Specifies additional labels to be produced. All required labels for shipments will be produced without the need to request additional labels. These are only available as thermal labels. @@ -31,9 +36,6 @@ - - Identifies the type of additional labels. - @@ -91,8 +93,57 @@ Indicates whether this address residential (as opposed to commercial). + + + The geographic coordinates cooresponding to this address. + + + + + + + Specifies the details around the ADR license required for shipping. + + + + + + + + Specifies details for a package containing alcohol + + + + + The license type that the recipient of the alcohol package. + + + + + + + Specifies the type of license that the recipient of the alcohol shipment has. + + + + + + + + + + + + + + + + + + + @@ -131,12 +182,6 @@ - - - Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. - - @@ -150,9 +195,68 @@ Identification of the type of barcode (symbology) used on FedEx documents and labels. + + + + + + + + + + + + + + Describes attributes of a battery or cell that are used for classification purposes. Typically this structure would be used to allow customers to declare batteries or cells for which full dangerous goods documentation and procedures are not required. + + + + + Describes the material composition of the battery or cell. + + + + + Describes the packing arrangement of the battery or cell with respect to other items within the same package. + + + + + A regulation specific classification for the battery or cell. + + + + + + + Describes the material composition of a battery or cell. + + + + + + + + + + Describes the packing arrangement of a battery or cell with respect to other items within the same package. + + + + + + + + + + A regulation specific classification for a battery or cell. + + + @@ -189,42 +293,6 @@ - - - - - - - - - - - Descriptive data sent to FedEx by a customer in order to Cancel a Pending shipment. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identification of a FedEx operating company (transportation). @@ -290,7 +358,7 @@ - Only used in transactions which require identification of the Fed Ex Office integrator. + Only used in transactions which require identification of the FedEx Office integrator. @@ -388,29 +456,14 @@ Specifies the information associated with a package that has COD special service in a ground shipment. - - - The COD amount (after any accumulations) that must be collected upon delivery of a package shipped using the COD special service. - - + - - - Contains the data which form the Astra and 2DCommon barcodes that print on the COD return label. - - - - - The label image or printer commands to print the label. - - + + - - Indicates which type of reference information to include on the COD return shipping label. - @@ -483,9 +536,9 @@ Name of the International Expert that completed the Commercial Invoice different from Sender. - + - Required for dutiable international Express or Ground shipment. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice + Required for dutiable international Express or Ground shipments. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice. @@ -504,120 +557,31 @@ - - - For international multiple piece shipments, commodity information must be passed in the Master and on each child transaction. - If this shipment cotains more than four commodities line items, the four highest valued should be included in the first 4 occurances for this request. - - - - - Name of this commodity. - - - - - Total number of pieces of this commodity - - - - - Complete and accurate description of this commodity. - - 450 - - - - - - Country code where commodity contents were produced or manufactured in their final form. - - 2 - - - - - - - Unique alpha/numeric representing commodity item. - At least one occurrence is required for US Export shipments if the Customs Value is greater than $2500 or if a valid US Export license is required. - - - 14 - - - - - - Total weight of this commodity. 1 explicit decimal position. Max length 11 including decimal. - - - - - This field is used for enterprise transactions. - - - - - Unit of measure used to express the quantity of this commodity line item. - - 3 - - - + + + + + + + + + Contains only additional quantitative information other than weight and quantity to calculate duties and taxes. - - - Value of each unit in Quantity. Six explicit decimal positions, Max length 18 including decimal. - - - - - - Total customs value for this line item. - It should equal the commodity unit quantity times commodity unit value. - Six explicit decimal positions, max length 18 including decimal. - - - + + Defines additional characteristic of commodity used to calculate duties and taxes - - - Applicable to US export shipping only. - - 12 - - - - - - - Date of expiration. Must be at least 1 day into future. - The date that the Commerce Export License expires. Export License commodities may not be exported from the U.S. on an expired license. - Applicable to US Export shipping only. - Required only if commodity is shipped on commerce export license, and Export License Number is supplied. - - - - - - - An identifying mark or number used on the packaging of a shipment to help customers identify a particular shipment. - - - 15 - - - + + + @@ -626,6 +590,12 @@ + + + + + + Specifies the results of processing for the COD special service. @@ -642,9 +612,16 @@ The identifier for all clearance documents associated with this shipment. + + + + + + + Completed package-level hazardous commodity information for a single package. @@ -661,6 +638,7 @@ When true indicates that the package can be transported only on a cargo aircraft. + Specifies the maximum radiation level from the package (measured in microSieverts per hour at a distance of one meter from the external surface of the package, divided by 10). @@ -685,6 +663,11 @@ + + + This contains the ADR License information, which identifies the license number and ADR category under which the customer is allowed to ship. + + @@ -712,37 +695,21 @@ - - - The package sequence number of this package in a multiple piece shipment. - - - - - The Tracking number and form id for this package. - - + + Used with request containing PACKAGE_GROUPS, to identify which group of identical packages was used to produce a reply item. - - - Oversize class for this package. - - + All package-level rating data for this package, which may include data for multiple rate types. - - - The label image or printer commands to print the label. - - + All package-level shipping documents (other than labels and barcodes). For use in loads after January, 2008. @@ -768,37 +735,11 @@ - - - Indicates whether or not this is a US Domestic shipment. - - - - - Indicates the carrier that will be used to deliver this shipment. - - - - - The master tracking number and form id of this multiple piece shipment. This information is to be provided for each subsequent of a multiple piece shipment. - - - - - Description of the FedEx service used for this shipment. Currently not supported. - - 70 - - - - - - Description of the packaging used for this shipment. Currently not supported. - - 40 - - - + + + + + @@ -810,11 +751,7 @@ Only used in the reply to tag requests. - - - Provides reply information specific to SmartPost shipments. - - + Computed shipment level information about hazarous commodities. @@ -835,6 +772,11 @@ Returns any defaults or updates applied to RequestedShipment.exportDetail.exportComplianceStatement. + + + This specifies what rules or requirements for documents are applicable for this shipment. This may identify required or prohibited documents. + + @@ -843,11 +785,7 @@ - - - Package level details about this package. - - + @@ -872,11 +810,7 @@ Provides reply information specific to a tag request. - - - . - - + As of June 2007, returned only for FedEx Express services. @@ -905,30 +839,11 @@ - - Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. - - - - 1 of 12 possible zones to position data. - - - - - The identifiying text for the data in this zone. - - - - - A reference to a field in either the request or reply to print in this zone following the header. - - - - - A literal value to print after the header in this zone. - - + + + + @@ -990,105 +905,19 @@ - + - - Content Record. - - - - - Part Number. - - - - - Item Number. - - - - - Received Quantity. - - - - - Description. - - - - - - - Reply to the Close Request transaction. The Close Reply bring back the ASCII data buffer which will be used to print the Close Manifest. The Manifest is essential at the time of pickup. - - - - - Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - - - - - The descriptive data detailing the status of a sumbitted transaction. - - - - - Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - The reply payload. All of the returned information about this shipment/package. - - - - - - - Create Pending Shipment Request - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - The descriptive data identifying the client submitting the transaction. - - - - - The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Descriptive data about the shipment being sent by the requestor. - - + + + + - - Currency exchange rate information. - @@ -1174,6 +1003,7 @@ If provided, thermal documents will include specified doc tab content. If omitted, document will be produced without doc tab content. + @@ -1203,9 +1033,6 @@ - - Valid values for CustomLabelCoordinateUnits - @@ -1217,6 +1044,7 @@ + @@ -1245,13 +1073,41 @@ Horizontal position, relative to left edge of custom area. - + Vertical position, relative to top edge of custom area. + + + Constructed string, based on format and zero or more data fields, printed in specified printer font (for thermal labels) or generic font/size (for plain paper labels). + + + + + + + + + + Printer-specific font name for use with thermal printer labels. + + + + + Generic font name for use with plain paper labels. + + + + + Generic font size for use with plain paper labels. + + + + + Constructed string, based on format and zero or more data fields, printed in specified printer font (for thermal labels) or generic font/size (for plain paper labels). @@ -1275,6 +1131,7 @@ Generic font size for use with plain paper labels. + @@ -1290,33 +1147,20 @@ - - Reference information to be associated with this package. - - - - The reference type to be associated with this reference data. - - + - - The types of references available for use. - - - - @@ -1329,16 +1173,13 @@ If omitted, no doc tab will be produced (i.e. default is former NONE type). - - - Defines any custom content to print on the label. - - - + - Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. + Controls the position of the customer specified content relative to the FedEx portion. + + Controls which data/sections will be suppressed. @@ -1350,6 +1191,7 @@ + Controls the number of additional copies of supplemental labels. @@ -1362,6 +1204,13 @@ + + + + + + + @@ -1395,8 +1244,34 @@ + + + + This provides the information necessary to identify the different statements, declarations, acts, and/or certifications that apply to this shipment. + + + + + This indicates the different statements, declarations, acts, and/or certifications that apply to this shipment. + + + + + Specifies the NAFTA low value statement information. + + + + + + + This indicates the different statements, declarations, acts, and certifications that may apply to a shipment. + + + + + @@ -1421,6 +1296,14 @@ + + + + + + + + @@ -1460,15 +1343,14 @@ - - The descriptive data required for a FedEx shipment containing dangerous goods (hazardous materials). - - + - Identifies whether or not the products being shipped are required to be accessible during delivery. + This field is used to identify an instance of an uploaded dangerous goods handling unit. + + Shipment is packaged/documented for movement ONLY on cargo aircraft. @@ -1569,22 +1451,11 @@ - - - The beginning date in a date range. - - - - - The end date in a date range. - - + + - - Valid values for DayofWeekType - @@ -1596,45 +1467,18 @@ - - Descriptive data sent to FedEx by a customer in order to delete a package. - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - The timestamp of the shipment request. - - - - - Identifies the FedEx tracking number of the package being cancelled. - - - - - Determines the type of deletion to be performed in relation to package level vs shipment level. - - + + + + + + @@ -1644,21 +1488,9 @@ Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - + + + Only used for tags which had FedEx Express services. @@ -1674,11 +1506,7 @@ If the original ProcessTagRequest specified third-party payment, then the delete request must contain the same pay type and payor account number for security purposes. - - - Also known as Pickup Confirmation Number or Dispatch Number - - + @@ -1707,11 +1535,7 @@ Data required to complete the Destionation Control Statement for US exports. - - - List of applicable Statment types. - - + Comma-separated list of up to four country codes, required for DEPARTMENT_OF_STATE statement. @@ -1725,18 +1549,12 @@ - - Used to indicate whether the Destination Control Statement is of type Department of Commerce, Department of State or both. - - - The dimensions of this package and the unit type used for the measurements. - @@ -1746,21 +1564,9 @@ - - - The DocTabContentType options available. - - - - - The DocTabContentType should be set to ZONE001 to specify additional Zone details. - - - - - The DocTabContentType should be set to BARCODED to specify additional BarCoded details. - - + + + @@ -1772,6 +1578,7 @@ + @@ -1790,37 +1597,43 @@ - - - Zone number can be between 1 and 12. - - - - - Header value on this zone. - - - - - Reference path to the element in the request/reply whose value should be printed on this zone. - - - - - Free form-text to be printed in this zone. - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - Justification for the text printed on this zone. + Lists the documents that are not accepted by FedEx for this shipment. - - Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. - @@ -1829,113 +1642,62 @@ - - - Describes specific information about the email label shipment. - + - - - Notification email will be sent to this email address - - - + + - Message to be sent in the notification email + Specifies the name associated with the email address. - - - - - - - - - Information describing email notifications that will be sent in relation to events that occur during package movement - + - - - Specifies whether/how email notifications are grouped. - - - - - A message that will be included in the email notifications - - - + - Information describing the destination of the email, format of the email and events to be notified on + Content of the email message. + - - - - - - - - - - - The format of the email - + - - - + + + + + - + - The descriptive data for a FedEx email notification recipient. + Information describing the address of of the email recipient, role of the email recipient and languages that are requested to be supported. - + - Identifies the relationship this email recipient has to the shipment. + EMail address of the recipient. - + - The email address to send the notification to + The relationship that the customer has to the pending shipment. - + - The types of email notifications being requested for this recipient. + Specifies how the email notification for the pending shipment need to be processed. - - - The format of the email notification. - - - + - The language/locale to be used in this email notification. - - - - - - - Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. - - - - - - - - - + Localization and language details specified by the recipient of the EMail. + + + + @@ -1991,11 +1753,43 @@ + + + + + + + + + Specifies how to apply the localization detail to the current context. + + + + + + + + This identifies some of the document types recognized by Enterprise Document Management Service. + + + + + + + + + + + + + + Electronic Trade document references used with the ETD special service. + Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. @@ -2004,67 +1798,40 @@ - + - Country specific details of an International shipment. + The instructions indicating how to print the Export Declaration. - - - - Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. - - - - + - General field for exporting-country-specific export data (e.g. B13A for CA, FTSR Exemption or AES Citation for US). + Specifies characteristics of a shipping document to be produced. - + - This field is applicable only to Canada export non-document shipments of any value to any destination. No special characters allowed. - - 10 - + Specifies the usage and identification of customer supplied images to be used on this document. - + + + + + + - Department of Commerce/Department of State information about this shipment. + General field for exporting-country-specific export data (e.g. B13A for CA, FTSR Exemption or AES Citation for US). + + - - Details specific to an Express freight shipment. - - - - Indicates whether or nor a packing list is enclosed. - - - - - - Total shipment pieces. - e.g. 3 boxes and 3 pallets of 100 pieces each = Shippers Load and Count of 303. - Applicable to International Priority Freight and International Economy Freight. - Values must be in the range of 1 - 99999 - - - - - - Required for International Freight shipping. Values must be 8- 12 characters in length. - - 12 - - - + + + @@ -2073,10 +1840,12 @@ + + @@ -2101,6 +1870,12 @@ If omitted, no doc tab will be produced (i.e. default = former NONE type). + + + Controls the position of the customer specified content relative to the FedEx portion. + + + @@ -2430,11 +2205,7 @@ Weight for this commodity or class line. - - - FED EX INTERNAL USE ONLY - Individual line item dimensions. - - + Volume (cubic measure) for this commodity or class line. @@ -2487,6 +2258,12 @@ + + + + + + Documents the kind and quantity of an individual hazardous commodity in a package. @@ -2502,6 +2279,11 @@ Specifies the amount of the commodity in alternate units. + + + This describes the inner receptacle details for a hazardous commodity within the dangerous goods container. + + Customer-provided specifications for handling individual commodities. @@ -2512,6 +2294,11 @@ Specifies the details of any radio active materials within the commodity. + + + The total mass of the contained explosive substances, without the mass of any casings, bullets, shells, etc. + + @@ -2558,6 +2345,18 @@ + + + This describes information about the inner receptacles for the hazardous commodity in a particular dangerous goods container. + + + + + This specifies the quantity contained in the inner receptacle. + + + + Specifies how the commodity is to be labeled. @@ -2587,11 +2386,12 @@ - Indicates which kind of hazardous content (as defined by DOT) is being reported. + Indicates which kind of hazardous content is being reported. + - + @@ -2669,15 +2469,23 @@ + + + Identifies the source of regulation for hazardous commodity data. + + + + + + + + - - Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. - @@ -2697,34 +2505,13 @@ - - The descriptive data required by FedEx for home delivery services. - - - - The type of Home Delivery Premium service being requested. - - - - - Required for Date Certain Home Delivery. - - - - - Required for Date Certain and Appointment Home Delivery. - - 15 - - - + + + - - The type of Home Delivery Premium service being requested. - @@ -2765,9 +2552,6 @@ - - The type of International shipment. - @@ -2780,9 +2564,6 @@ - - Specifies the type of label to be returned. - @@ -2797,15 +2578,22 @@ + - + - This indicates if the top or bottom of the label comes out of the printer first. + Specifies the order in which the labels will be returned + + + + + + @@ -2823,51 +2611,26 @@ - - Description of shipping label to be returned in the reply - Specifies how to create, organize, and return the document. - - - Specify type of label to be returned - - - - - Specifies the image format used for a shipping document. - - - - - For thermal printer lables this indicates the size of the label and the location of the doc tab if present. - - - - - This indicates if the top or bottom of the label comes out of the printer first. - - - - - If present, this contact and address information will replace the return address information on the label. - - - + + + + + - Allows customer-specified control of label content. + Specifies the order in which the labels are requested to be returned + + - - For thermal printer labels this indicates the size of the label and the location of the doc tab if present. - @@ -2900,6 +2663,25 @@ + + + + + License or Permit Number. + + + + + Specifies the effective date of the license. + + + + + Specifies the expiration date of the license. + + + + Represents a one-dimensional measurement in small units (e.g. suitable for measuring a package or document), contrasted with Distance, which represents a large one-dimensional measurement (e.g. distance between cities). @@ -2918,9 +2700,6 @@ - - CM = centimeters, IN = inches - @@ -2950,9 +2729,6 @@ - - Identifies which type minimum charge was applied. - @@ -2962,23 +2738,9 @@ - - The descriptive data for the medium of exchange for FedEx services. - - - - Identifies the currency of the monetary amount. - - 3 - - - - - - Identifies the monetary amount. - - + + @@ -3004,9 +2766,6 @@ - - This element is currently not supported and is for the future use. - @@ -3039,10 +2798,19 @@ - + - Net cost method used. + Specifies the information necessary for printing the NAFTA Low Value statement on customs documentation. + + + + Specifies the NAFTA statement role. + + + + + @@ -3062,9 +2830,6 @@ - - This element is currently not supported and is for the future use. - @@ -3082,9 +2847,6 @@ - - This element is currently not supported and is for the future use. - @@ -3093,6 +2855,21 @@ + + + + + + + + + + + + + + + The descriptive data regarding the result of the submitted transaction. @@ -3125,11 +2902,45 @@ - A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Indicates the type of notification that will be sent. + + + + + Specifies the email notification details. + + + + + Specifies the localization for this notification. + + + + + + + + + + + + + + + @@ -3145,9 +2956,6 @@ - - Identifies the set of severity values for a Notification. - @@ -3156,6 +2964,11 @@ + + + + + The instructions indicating how to print the OP-900 form for hazardous materials packages. @@ -3198,9 +3011,6 @@ - - The oversize class types. - @@ -3271,11 +3081,7 @@ INTERNAL FEDEX USE ONLY. - - - The weight that was used to calculate the rate. - - + The dimensional weight of this package (if greater than actual). @@ -3321,11 +3127,7 @@ This package's netFreight + totalSurcharges + totalTaxes. - - - The total sum of all rebates applied to this package. - - + All rate discounts that apply to this package. @@ -3346,11 +3148,7 @@ All taxes applicable (or distributed to) this package. - - - The variable handling charges calculated based on the type variable handling charges requested. - - + @@ -3376,12 +3174,10 @@ - - Identifies the collection of special service offered by FedEx. BROKER_SELECT_OPTION should be used for Ground shipments only. - + @@ -3405,38 +3201,29 @@ For use with FedEx Ground services only; COD must be present in shipment's special services. - - - Descriptive data required for a FedEx shipment containing dangerous materials. This element is required when SpecialServiceType.DANGEROUS_GOODS or HAZARDOUS_MATERIAL is present in the SpecialServiceTypes collection. - - - + + - Descriptive data required for a FedEx shipment containing dry ice. This element is required when SpecialServiceType.DRY_ICE is present in the SpecialServiceTypes collection. - - - - - The descriptive data required for FedEx signature services. This element is required when SpecialServiceType.SIGNATURE_OPTION is present in the SpecialServiceTypes collection. - - - - - The descriptive data required for FedEx Priority Alert service. This element is required when SpecialServiceType.PRIORITY_ALERT is present in the SpecialServiceTypes collection. + Provides details about the batteries or cells that are contained within this specific package. + + + + - - Identifies the collection of available FedEx or customer packaging options. - + + + + @@ -3450,52 +3237,20 @@ - - The descriptive data for a person or company entitiy doing business with FedEx. - - - - Identifies the FedEx account number assigned to the customer. - - 12 - - - + - - - Descriptive data identifying the point-of-contact person. - - - - - The descriptive data for a physical location. - - + + - - The descriptive data for the monetary compensation given to FedEx for services rendered to the customer. - - - - Identifies the method of payment for a service. See PaymentType for list of valid enumerated values. - - - - - Descriptive data identifying the party responsible for payment for a service. - - + + - - - Identifies the method of payment for a service. - + @@ -3505,9 +3260,6 @@ - - The descriptive data identifying the party responsible for payment for a service. - @@ -3517,26 +3269,22 @@ This information describes how and when a pending shipment may be accessed for completion. - - - Only for pending shipment type of "EMAIL" - - - - - Only for pending shipment type of "EMAIL" - - - - - Only for pending shipment type of "EMAIL" - - - + + + + + + Specifies the details to be used by the user of the pending shipment + + + - This element is currently not supported and is for the future use. + Specifies the role of the user who is trying to access the pending shipment. + + + @@ -3544,11 +3292,7 @@ This information describes the kind of pending shipment being requested. - - - Identifies the type of FedEx pending shipment - - + Date after which the pending shipment will no longer be available for completion. @@ -3559,12 +3303,30 @@ Only used with type of EMAIL. + + + + These are documents that are recommended to be included with the shipment. + + + + + Upload document details provided by the initator of the shipment. + + + + + + + + + + + + - - Identifies the type of service for a pending shipment. - @@ -3615,40 +3377,23 @@ - - - Identifies the type of Pickup request - - - - - Identifies the type of source for Pickup request - - + + - - Identifies the type of source for pickup request service. - - - Identifies the type of pickup request service. - - - Identifies the type of pricing used for this shipment. - @@ -3697,32 +3442,12 @@ - - - This indicates the highest level of severity of all the notifications returned in this reply - - - - - The descriptive data regarding the results of the submitted transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - + + + + - - - The reply payload. All of the returned information about this shipment/package. - - + Empty unless error label behavior is PACKAGE_ERROR_LABELS and one or more errors occured during transaction processing. @@ -3731,35 +3456,16 @@ - - Descriptive data sent to FedEx by a customer in order to ship a package. - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Descriptive data about the shipment being sent by the requestor. - - + + + + @@ -3772,41 +3478,19 @@ - - Descriptive data sent to FedEx by a customer in order to ship a package. - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Descriptive data about the shipment being sent by the requestor. - - + + + + - - Test for the Commercial Invoice. Note that Sold is not a valid Purpose for a Proforma Invoice. - @@ -3888,32 +3572,14 @@ - - Identifies a discount applied to the shipment. - - - - Identifies the type of discount applied to the shipment. - - + - - - The amount of the discount applied to the shipment. - - - - - The percentage of the discount applied to the shipment. - - + + - - The type of the discount. - @@ -3935,12 +3601,9 @@ - - Identifies the type(s) of rates to be returned in the reply. - - + @@ -3954,13 +3617,11 @@ - - The weight method used to calculate the rate. - + @@ -4005,23 +3666,86 @@ - - Type of Brazilian taxpayer identifier provided in Recipient/TaxPayerIdentification/Number. For shipments bound for Brazil this overrides the value in Recipient/TaxPayerIdentification/TinType - - + + + Specifies the details about documents that are recommended to be included with the shipment for ease of shipment processing and transportation. + + + + + + - FOOD_OR_PERISHABLE is required by FDA/BTA; must be true for food/perishable items coming to US or PR from non-US/non-PR origin + Type of documents that are recommended to be included with the shipment. - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies details needed to generate any label artifacts required due to regulatory requirements. + + + + + + Specifies how the customer requested the regulatory label to be generated. + + + + + + + + + + + + Describes the vertical position of an item relative to another item. + + + + @@ -4047,7 +3771,7 @@ - Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. + Specifies the declared value for carriage of the package. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the package. This field is only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. @@ -4066,7 +3790,12 @@ Human-readable text describing the package. - + + + Human-readable text describing the contents of the package to be used for clearance purposes. + + + @@ -4076,38 +3805,20 @@ - - The descriptive data for the shipment being tendered to FedEx. - - - - Identifies the date and time the package is tendered to FedEx. Both the date and time portions of the string are expected to be used. The date should not be a past date or a date more than 10 days in the future. The time is the local time of the shipment based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2006-06-26). The time component must be in the format: HH:MM:SS using a 24 hour clock (e.g. 11:00 a.m. is 11:00:00, whereas 5:00 p.m. is 17:00:00). The date and time parts are separated by the letter T (e.g. 2006-06-26T17:00:00). There is also a UTC offset component indicating the number of hours/mainutes from UTC (e.g 2006-06-26T17:00:00-0400 is defined form June 26, 2006 5:00 pm Eastern Time). - - - - - Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. See DropoffType for list of valid enumerated values. - - - + + + + + - Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. - - - - - Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. - - - - - Identifies the total weight of the shipment being conveyed to FedEx.This is only applicable to International shipments and should only be used on the first package of a mutiple piece shipment.This value contains 1 explicit decimal position + This specifies information related to the manifest associated with the shipment. + - Total insured amount. + Specifies the total declared value for carriage of the shipment. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the shipment. @@ -4115,44 +3826,23 @@ This attribute indicates the currency the caller requests to have used in all returned monetary values (when a choice is possible). - - - Descriptive data identifying the party responsible for shipping the package. Shipper and Origin should have the same address. - - - - - Descriptive data identifying the party receiving the package. - - - + - A unique identifier for a recipient location - - 10 - + Specifies details about the entity responsible for the shipment. + + + Physical starting address for the shipment, if different from shipper's address. - - - Descriptive data indicating the method and means of payment to FedEx for providing shipping services. - - - - - Descriptive data regarding special services requested by the shipper for this shipment. If the shipper is requesting a special service which requires additional data (e.g. COD), the special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object. For example, to request COD, "COD" must be included in the SpecialServiceTypes collection and the CodDetail object must contain the required data. - - - - - Details specific to an Express freight shipment. - - + + + + Data applicable to shipments using FEDEX_FREIGHT_ECONOMY and FEDEX_FREIGHT_PRIORITY services. @@ -4163,11 +3853,7 @@ Used with Ground Home Delivery and Freight. - - - Details about how to calculate variable handling charges at the shipment level. - - + Customs clearance data, used for both international and intra-country shipping. @@ -4188,17 +3874,13 @@ If true, only the shipper/payor will have visibility of this shipment. - - - Details about the image format and printer type the label is to returned in. - - + Contains data used to create additional (non-label) shipping documents. - + Specifies whether and what kind of rates the customer wishes to have quoted on this shipment. The reply will also be constrained by other data on the shipment and customer. @@ -4238,6 +3920,7 @@ + @@ -4247,6 +3930,26 @@ + + + This identifies the document types that can be required. This can also indicate when either a COMMERCIAL_INVOICE or a PRO_FORMA_INVOICE is required through the COMMERCIAL_OR_PRO_FORMA_INVOICE option. + + + + + + + + + + + + + + + + + @@ -4267,15 +3970,8 @@ - - Return Email Details - - - - Phone number of the merchant - - + Identifies the allowed (merchant-authorized) special services which may be selected when the subsequent shipment is created. Only services represented in EMailLabelAllowedSpecialServiceType will be controlled by this list. @@ -4297,32 +3993,14 @@ - - Information relating to a return shipment. - - - - The type of return shipment that is being requested. - - - - - Return Merchant Authorization - - - - - Describes specific information about the email label for return shipment. - - + + + - - The type of return shipment that is being requested. - @@ -4335,6 +4013,7 @@ + @@ -4343,16 +4022,10 @@ - - - - + - - Shipping document type. - @@ -4367,6 +4040,7 @@ + @@ -4387,16 +4061,20 @@ June 2011 ITG 121203 IR-RMA number has been removed from this structure and added as a new customer reference type. The structure remains because of the reason field below. - - - The reason for the return. - - 60 - - - + + + + Describes the rotation of an item from its default orientation. + + + + + + + + @@ -4406,9 +4084,6 @@ - - Identifies the collection of available FedEx service options. - @@ -4416,23 +4091,37 @@ + + + + + + + + + + + + + + Specifies data structures that may be re-used multiple times with s single shipment. @@ -4460,6 +4149,32 @@ Total shipment dry ice weight for all packages. + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -4609,6 +4324,35 @@ + + + + + This identifies which customer reference field contains the manifest ID. + + + + + + + + + + + + + + + + + + + + + + + + @@ -4685,6 +4429,7 @@ + @@ -4708,11 +4453,7 @@ Indicates the rate zone used (based on origin and destination). - - - Identifies the type of pricing used for this shipment. - - + Indicates which weight was used. @@ -4733,51 +4474,23 @@ Indicates which special rating cases applied to this shipment. - - - The value used to calculate the weight based on the dimensions. - - + Identifies the type of dim divisor that was applied. - - - Specifies a fuel surcharge percentage. - - - - - The weight used to calculate these rates. - - + + Sum of dimensional weights for all packages. - - - The total freight charge that was calculated for this package before surcharges, discounts and taxes. - - - - - The total discounts used in the rate calculation. - - - - - The freight charge minus discounts. - - - - - The total amount of all surcharges applied to this shipment. - - + + + + This shipment's totalNetFreight + totalSurcharges (not including totalTaxes). @@ -4788,24 +4501,26 @@ Total of the transportation-based taxes. - + + + - The net charge after applying all discounts and surcharges. + Total of all values under this shipment's dutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment. - + - The total sum of all rebates applied to this shipment. + Identifies the total amount of the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. - + - Total of all values under this shipment's dutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment. + The total of the totalDutiesAndTaxes plus the totalAncillaryFeesAndTaxes. - This shipment's totalNetCharge + totalDutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. + This shipment's totalNetCharge + totalDutiesTaxesAndFees; some duties and taxes are only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. @@ -4843,6 +4558,11 @@ All commodity-based duties and taxes applicable to this shipment. + + + Identifies the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + + The "order level" variable handling charges. @@ -4879,37 +4599,19 @@ - - - This indicates the highest level of severity of all the notifications returned in this reply - - - - - The descriptive data regarding the results of the submitted transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - + + + + - - Identifies the collection of special service offered by FedEx. BROKER_SELECT_OPTION should be used for Express shipments only. - + @@ -4917,10 +4619,13 @@ - + + + + @@ -4933,12 +4638,14 @@ + + @@ -4952,27 +4659,15 @@ The types of all special services requested for the enclosing shipment (or other shipment-level transaction). - - - Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. This element is required when SpecialServiceType.COD is present in the SpecialServiceTypes collection. - - + - - - Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. This element is required when SpecialServiceType.HOLD_AT_LOCATION is present in the SpecialServiceTypes collection. - - - - - Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This element is required when SpecialServiceType.EMAIL_NOTIFICATION is present in the SpecialServiceTypes collection. - - - + + - The descriptive data required for FedEx Printed Return Label. This element is required when SpecialServiceType.PRINTED_RETURN_LABEL is present in the SpecialServiceTypes collection + This replaces eMailNotificationDetail + This field should be populated for pending shipments (e.g. e-mail label) It is required by a PENDING_SHIPMENT special service type. @@ -4980,16 +4675,8 @@ - - - Number of packages in this shipment which contain dry ice and the total weight of the dry ice for this shipment. - - - - - The descriptive data required for FedEx Home Delivery options. This element is required when SpecialServiceType.HOME_DELIVERY_PREMIUM is present in the SpecialServiceTypes collection - - + + @@ -5004,13 +4691,11 @@ - - All package-level shipping documents (other than labels and barcodes). - - + + - Shipping Document Type + The localizations are populated if multiple language versions of a shipping document are returned. @@ -5021,7 +4706,7 @@ - The name under which a STORED or DEFERRED document is written. + The name under which a STORED, DEFERRED or EMAILED document is written. @@ -5061,6 +4746,11 @@ Specifies how to organize all documents of this type. + + + Specifies how to store document images. + + Specifies how to e-mail document images. @@ -5078,8 +4768,6 @@ Specifies how to return a shipping document to the caller. - - @@ -5102,6 +4790,11 @@ Identifies the convention by which documents are to be grouped as e-mail attachments. + + + Specifies the language in which the email containing the document is requested to be composed. + + @@ -5149,6 +4842,7 @@ For those shipping document types which have both a "form" and "instructions" component (e.g. NAFTA Certificate of Origin and General Agency Agreement), this field indicates whether to provide the instructions. + Governs the language to be used for this individual document, independently from other content returned for the same shipment. @@ -5176,7 +4870,6 @@ - @@ -5185,6 +4878,15 @@ + + + Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + + + + + + A single part of a shipping document, such as one page of a multiple-page document whose format requires a separate image per page. @@ -5236,11 +4938,8 @@ Specifies the production of a shipment-level custom document. - - - This element is currently not supported and is for the future use. (Details pertaining to the GAA.) - - + + @@ -5283,30 +4982,46 @@ - + - The descriptive data required for FedEx delivery signature services. + Specifies how to store shipping documents. - + + + Indicates the mechanism by which a shipping document will be stored for later retrieval. + + + + + Provides the path to be used for STORED or DEFERRED documents. + + + - Identifies the delivery signature services option selected by the customer for this shipment. See OptionType for the list of valid values. + Identifies the convention by which file names are constructed for STORED or DEFERRED documents. - + - Identifies the delivery signature release authorization number. - - 10 - + Suffix to be placed at the end of the file name; required on some platforms to determine file type. + + + + + + + + + + + + - - Identifies the delivery signature services options offered by FedEx. - @@ -5341,26 +5056,26 @@ Data required for shipments handled under the SMART_POST and GROUND_SMART_POST service types. + - - - - The CustomerManifestId is used to group Smart Post packages onto a manifest for each trailer that is being prepared. If you do not have multiple trailers this field can be omitted. If you have multiple trailers, you - must assign the same Manifest Id to each SmartPost package as determined by its trailer. In other words, all packages on a trailer must have the same Customer Manifest Id. The manifest Id must be unique to your account number for a minimum of 6 months - and cannot exceed 8 characters in length. We recommend you use the day of year + the trailer id (this could simply be a sequential number for that trailer). So if you had 3 trailers that you started loading on Feb 10 - the 3 manifest ids would be 041001, 041002, 041003 (in this case we used leading zeros on the trailer numbers). - - - + + + + + + + + + + + - - Special circumstance rating used for this shipment. - + @@ -5393,22 +5108,11 @@ - - Identifies each surcharge applied to the shipment. - - - - The type of surcharge applied to the shipment. - - + - - - The amount of the surcharge applied to the shipment. - - + @@ -5418,11 +5122,10 @@ - - The type of the surcharge. - + + @@ -5449,6 +5152,7 @@ + @@ -5467,6 +5171,7 @@ + @@ -5478,6 +5183,8 @@ + + @@ -5490,27 +5197,13 @@ - - Identifies each tax applied to the shipment. - - - - The type of tax applied to the shipment. - - + - - - The amount of the tax applied to the shipment. - - + - - The type of the tax. - @@ -5535,57 +5228,19 @@ - - The descriptive data for taxpayer identification information. - - - - Identifies the category of the taxpayer identification number. See TinType for the list of values. - - - - - Identifies the taxpayer identification number. - - 15 - - - + + Identifies the usage of Tax Identification Number in Shipment processing + + - - - - Required for dutiable international express or ground shipment. This field is not applicable to an international PIB (document) or a non-document which does not require a commercial invoice express shipment. - CFR_OR_CPT (Cost and Freight/Carriage Paid TO) - CIF_OR_CIP (Cost Insurance and Freight/Carraige Insurance Paid) - DDP (Delivered Duty Paid) - DDU (Delivered Duty Unpaid) - EXW (Ex Works) - FOB_OR_FCA (Free On Board/Free Carrier) - - - - - - - - - - - - - - - Identifies the category of the taxpayer identification number. - @@ -5607,9 +5262,6 @@ - - TrackingIdType - @@ -5619,9 +5271,6 @@ - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - @@ -5636,9 +5285,6 @@ - - Identifies the set of valid shipment transit time values. - @@ -5664,24 +5310,27 @@ + + Specifies the application that is responsible for managing the document id. + - - - - - + + + Description of the uploaded document. + + @@ -5694,40 +5343,22 @@ + - - Descriptive data sent to FedEx by a customer in order to validate a shipment. - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Descriptive data about the shipment being sent by the requestor. - - + + + + @@ -5745,11 +5376,21 @@ Specifies the amount of the commodity in alternate units. + + + The mass points are a calculation used by ADR regulations for measuring the risk of a particular hazardous commodity. + + Customer-provided specifications for handling individual commodities. + + + The total mass of the contained explosive substances, without the mass of any casings, bullets, shells, etc. + + @@ -5783,7 +5424,9 @@ Coded indications for special requirements or constraints. + + @@ -5810,15 +5453,7 @@ This definition of variable handling charge detail is intended for use in Jan 2011 corp load. - - - - Used with Variable handling charge type of FIXED_VALUE. - Contains the amount to be added to the freight charge. - Contains 2 explicit decimal positions with a total max length of 10 including the decimal. - - - + Actual percentage (10 means 10%, which is a mutiplier of 0.1) @@ -5837,22 +5472,11 @@ - - The variable handling charges calculated based on the type variable handling charges requested. - - - - The variable handling charge amount calculated based on the requested variable handling charge detail. - - + - - - The calculated varibale handling charge plus the net charge. - - + @@ -5891,9 +5515,6 @@ - - Identifies the unit of measure associated with a weight value. See the list of enumerated types for valid values. - @@ -5904,6 +5525,11 @@ Used in authentication of the sender's identity. + + + This was renamed from cspCredential. + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. @@ -5938,12 +5564,12 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. - + Identifies the service interface level. @@ -5963,41 +5589,25 @@ - - - - - - - - - - - - - - + + - - + + - - - - @@ -6006,10 +5616,6 @@ - - - - @@ -6025,17 +5631,8 @@ - - - - - - - - - - + @@ -6044,16 +5641,7 @@ - - - - - - - - - - + @@ -6062,7 +5650,7 @@ - + @@ -6071,7 +5659,7 @@ - + @@ -6080,7 +5668,7 @@ - + diff --git a/tests/FedEx/Tests/ShipServiceTest.php b/tests/FedEx/Tests/ShipServiceTest.php index b0ff08d3..d63b3857 100644 --- a/tests/FedEx/Tests/ShipServiceTest.php +++ b/tests/FedEx/Tests/ShipServiceTest.php @@ -27,20 +27,16 @@ public function testShipServiceRequest() $populator->populate($validationShipmentRequest); $mockSoapClient = $this->getMockFromWsdl(Request::getWsdlPath()); - $mockSoapClient->method('createPendingShipment')->will($this->returnValue(ComplexType\CreatePendingShipmentRequest::class)); $mockSoapClient->method('processTag')->will($this->returnValue(ComplexType\ProcessTagRequest::class)); $mockSoapClient->method('processShipment')->will($this->returnValue(ComplexType\ProcessShipmentRequest::class)); - $mockSoapClient->method('cancelPendingShipment')->will($this->returnValue(ComplexType\CancelPendingShipmentRequest::class)); $mockSoapClient->method('deleteTag')->will($this->returnValue(ComplexType\DeleteTagRequest::class)); $mockSoapClient->method('deleteShipment')->will($this->returnValue(ComplexType\DeleteShipmentRequest::class)); $mockSoapClient->method('validateShipment')->will($this->returnValue(ComplexType\ValidateShipmentRequest::class)); $request = new Request($mockSoapClient); - $this->assertEquals(ComplexType\CreatePendingShipmentRequest::class, $request->getCreatePendingShipmentReply($createPendingShipmentRequest, true)); $this->assertEquals(ComplexType\ProcessTagRequest::class, $request->getProcessTagReply($processTagRequest, true)); $this->assertEquals(ComplexType\ProcessShipmentRequest::class, $request->getProcessShipmentReply($processShipmentRequest, true)); - $this->assertEquals(ComplexType\CancelPendingShipmentRequest::class, $request->getCancelPendingShipmentReply($cancelPendingShipmentRequest, true)); $this->assertEquals(ComplexType\DeleteTagRequest::class, $request->getDeleteTagReply($deleteTagRequest, true)); $this->assertEquals(ComplexType\DeleteShipmentRequest::class, $request->getDeleteShipmentReply($deleteShipmentRequest, true)); $this->assertEquals(ComplexType\ValidateShipmentRequest::class, $request->getValidateShipmentReply($validationShipmentRequest, true)); diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index a3f97300..64cd18be 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -158,7 +158,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //ShipService - $wsdlPath = $fedexSrcDir . '/_wsdl/ShipService_v12.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/ShipService_v21.wsdl'; $baseNamespace = 'FedEx\ShipService'; $subPackageName = 'Ship Service'; From 132a9d8930f39f4643dceb47ee8e5f3449d53bf9 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 4 Nov 2017 08:56:30 -0500 Subject: [PATCH 04/33] Updated Address Validation Service to version 4. --- CHANGELOG.md | 3 +- examples/address-validation.php | 79 +-- .../ComplexType/Address.php | 23 +- ...ParsedElement.php => AddressAttribute.php} | 23 +- .../ComplexType/AddressToValidate.php | 20 +- .../ComplexType/AddressValidationOptions.php | 140 ---- .../ComplexType/AddressValidationRequest.php | 31 +- .../ComplexType/AddressValidationResult.php | 85 ++- .../ComplexType/ClientDetail.php | 21 +- .../ComplexType/Contact.php | 153 +++++ .../ComplexType/Localization.php | 6 +- .../ComplexType/Notification.php | 14 +- .../ComplexType/NotificationParameter.php | 4 +- .../ComplexType/ParsedAddress.php | 101 --- .../ComplexType/ParsedAddressPart.php | 36 -- .../ComplexType/ParsedAddressPartsDetail.php | 49 ++ .../ComplexType/ParsedPostalCodeDetail.php | 62 ++ .../ComplexType/ParsedStreetLineDetail.php | 179 ++++++ .../ComplexType/ProposedAddressDetail.php | 140 ---- .../ComplexType/TransactionDetail.php | 6 +- .../ComplexType/VersionId.php | 6 +- .../WebAuthenticationCredential.php | 6 +- .../ComplexType/WebAuthenticationDetail.php | 13 + .../AddressValidationService/Request.php | 6 +- .../AddressValidationAccuracyType.php | 19 - .../AddressValidationChangeType.php | 38 -- .../SimpleType/AutoConfigurationType.php | 19 + .../DeliveryPointValidationType.php | 18 - ...php => FedExAddressClassificationType.php} | 10 +- .../SimpleType/NotificationSeverityType.php | 2 +- .../OperationalAddressStateType.php | 18 + .../_wsdl/AddressValidationService_v2.wsdl | 603 ------------------ .../_wsdl/AddressValidationService_v4.wsdl | 457 +++++++++++++ tests/FedEx/Tests/AddressValidationTest.php | 59 +- .../address-validation-unknown.ser | 1 + .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 36 files changed, 1145 insertions(+), 1307 deletions(-) rename src/FedEx/AddressValidationService/ComplexType/{ParsedElement.php => AddressAttribute.php} (57%) delete mode 100644 src/FedEx/AddressValidationService/ComplexType/AddressValidationOptions.php create mode 100644 src/FedEx/AddressValidationService/ComplexType/Contact.php delete mode 100644 src/FedEx/AddressValidationService/ComplexType/ParsedAddress.php delete mode 100644 src/FedEx/AddressValidationService/ComplexType/ParsedAddressPart.php create mode 100644 src/FedEx/AddressValidationService/ComplexType/ParsedAddressPartsDetail.php create mode 100644 src/FedEx/AddressValidationService/ComplexType/ParsedPostalCodeDetail.php create mode 100644 src/FedEx/AddressValidationService/ComplexType/ParsedStreetLineDetail.php delete mode 100644 src/FedEx/AddressValidationService/ComplexType/ProposedAddressDetail.php delete mode 100644 src/FedEx/AddressValidationService/SimpleType/AddressValidationAccuracyType.php delete mode 100644 src/FedEx/AddressValidationService/SimpleType/AddressValidationChangeType.php create mode 100644 src/FedEx/AddressValidationService/SimpleType/AutoConfigurationType.php delete mode 100644 src/FedEx/AddressValidationService/SimpleType/DeliveryPointValidationType.php rename src/FedEx/AddressValidationService/SimpleType/{ResidentialStatusType.php => FedExAddressClassificationType.php} (52%) create mode 100644 src/FedEx/AddressValidationService/SimpleType/OperationalAddressStateType.php delete mode 100644 src/FedEx/_wsdl/AddressValidationService_v2.wsdl create mode 100755 src/FedEx/_wsdl/AddressValidationService_v4.wsdl create mode 100644 tests/mock-responses/address-validation-unknown.ser diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bbc3917..48c9eefb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,10 +4,11 @@ - Updated Upload Document Service - Updated Pickup Service - Updated Ship Service +- Updated Address Validation Service |Service|Version| |---|---| -|Address Validation|2| +|Address Validation|4| |Close|5| |Courier Dispatch|3| |Locator|2| diff --git a/examples/address-validation.php b/examples/address-validation.php index 1013259e..9d349db8 100644 --- a/examples/address-validation.php +++ b/examples/address-validation.php @@ -1,71 +1,38 @@ setKey(FEDEX_KEY) - ->setPassword(FEDEX_PASSWORD); - -$webAuthenticationDetail = new ComplexType\WebAuthenticationDetail(); -$webAuthenticationDetail->setUserCredential($userCredential); - -$clientDetail = new ComplexType\ClientDetail(); -$clientDetail - ->setAccountNumber(FEDEX_ACCOUNT_NUMBER) - ->setMeterNumber(FEDEX_METER_NUMBER); - -$version = new ComplexType\VersionId(); -$version - ->setMajor(2) - ->setIntermediate(0) - ->setMinor(0) - ->setServiceId('aval'); - -$options = new ComplexType\AddressValidationOptions(); -$options - ->setCheckResidentialStatus(true) - ->setVerifyAddresses(true) - ->setConvertToUpperCase(true) - ->setDirectionalAccuracy(SimpleType\AddressValidationAccuracyType::_MEDIUM); - -$addresses = array(); +$addressValidationRequest = new ComplexType\AddressValidationRequest(); -$address1 = new ComplexType\Address(); -$address1 - ->setStreetLines(array('12345 Main Street')) - ->setCity('Anytown') - ->setStateOrProvinceCode('NY') - ->setPostalCode('47711') - ->setCountryCode('US'); +// User Credentials +$addressValidationRequest->WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$addressValidationRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; -$addressToValidate1 = new ComplexType\AddressToValidate(); -$addressToValidate1 - ->setAddress($address1) - ->setAddressId(1); +// Client Detail +$addressValidationRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$addressValidationRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; -$addresses[] = $addressToValidate1; +// Version +$addressValidationRequest->Version->ServiceId = 'aval'; +$addressValidationRequest->Version->Major = 4; +$addressValidationRequest->Version->Intermediate = 0; +$addressValidationRequest->Version->Minor = 0; -$addressValidationRequest = new ComplexType\AddressValidationRequest(); -$addressValidationRequest->setWebAuthenticationDetail($webAuthenticationDetail); -$addressValidationRequest->setClientDetail($clientDetail); -$addressValidationRequest->setVersion($version); -$addressValidationRequest->setRequestTimestamp(date('c')); -$addressValidationRequest->setOptions($options); -$addressValidationRequest->setAddressesToValidate($addresses); +// Address(es) to validate. +$addressValidationRequest->AddressesToValidate = [new ComplexType\AddressToValidate()]; // just validating 1 address in this example. +$addressValidationRequest->AddressesToValidate[0]->Address->StreetLines = ['12345 Main Street']; +$addressValidationRequest->AddressesToValidate[0]->Address->City = 'Anytown'; +$addressValidationRequest->AddressesToValidate[0]->Address->StateOrProvinceCode = 'NY'; +$addressValidationRequest->AddressesToValidate[0]->Address->PostalCode = 47711; +$addressValidationRequest->AddressesToValidate[0]->Address->CountryCode = 'US'; +$request = new Request(); +$addressValidationReply = $request->getAddressValidationReply($addressValidationRequest, true); -$validateShipmentRequest = new AddressValidationService\Request(); -$result = $validateShipmentRequest->getAddressValidationReply($addressValidationRequest); +var_dump($addressValidationReply); -var_dump($result); diff --git a/src/FedEx/AddressValidationService/ComplexType/Address.php b/src/FedEx/AddressValidationService/ComplexType/Address.php index c5000fb5..a17f9d56 100644 --- a/src/FedEx/AddressValidationService/ComplexType/Address.php +++ b/src/FedEx/AddressValidationService/ComplexType/Address.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for a physical location. + * Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -16,6 +16,7 @@ * @property string $PostalCode * @property string $UrbanizationCode * @property string $CountryCode + * @property string $CountryName * @property boolean $Residential */ @@ -65,7 +66,7 @@ public function setStateOrProvinceCode($stateOrProvinceCode) } /** - * Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. This element is required if both the City and StateOrProvinceCode are not present. + * Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. * * @param string $postalCode * @return $this @@ -77,7 +78,7 @@ public function setPostalCode($postalCode) } /** - * Relevant only to addresses in Puerto Rico. In Puerto Rico, multiple addresses within the same ZIP code can have the same house number and street name. When this is the case, the urbanization code is needed to distinguish them. + * Relevant only to addresses in Puerto Rico. * * @param string $urbanizationCode * @return $this @@ -89,7 +90,7 @@ public function setUrbanizationCode($urbanizationCode) } /** - * Identification of a country. + * The two-letter code used to identify a country. * * @param string $countryCode * @return $this @@ -101,7 +102,19 @@ public function setCountryCode($countryCode) } /** - * Indicates whether this address is residential (as opposed to commercial). + * The fully spelt out name of a country. + * + * @param string $countryName + * @return $this + */ + public function setCountryName($countryName) + { + $this->values['CountryName'] = $countryName; + return $this; + } + + /** + * Indicates whether this address residential (as opposed to commercial). * * @param boolean $residential * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/ParsedElement.php b/src/FedEx/AddressValidationService/ComplexType/AddressAttribute.php similarity index 57% rename from src/FedEx/AddressValidationService/ComplexType/ParsedElement.php rename to src/FedEx/AddressValidationService/ComplexType/AddressAttribute.php index 5194728f..ba09421a 100644 --- a/src/FedEx/AddressValidationService/ComplexType/ParsedElement.php +++ b/src/FedEx/AddressValidationService/ComplexType/AddressAttribute.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * ParsedElement + * Specifies additional information about the address processed by the SHARE systems as a key-value pair. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,20 +12,19 @@ * * @property string $Name * @property string $Value - * @property \FedEx\AddressValidationService\SimpleType\AddressValidationChangeType|string[] $Changes */ -class ParsedElement extends AbstractComplexType +class AddressAttribute extends AbstractComplexType { /** * Name of this complex type * * @var string */ - protected $name = 'ParsedElement'; + protected $name = 'AddressAttribute'; /** - * Set Name + * Specifies the key for the address attribute. * * @param string $name * @return $this @@ -37,7 +36,7 @@ public function setName($name) } /** - * Set Value + * The value for the key for the address attribute. * * @param string $value * @return $this @@ -47,16 +46,4 @@ public function setValue($value) $this->values['Value'] = $value; return $this; } - - /** - * Set Changes - * - * @param \FedEx\AddressValidationService\SimpleType\AddressValidationChangeType[]|string[] $changes - * @return $this - */ - public function setChanges(array $changes) - { - $this->values['Changes'] = $changes; - return $this; - } } diff --git a/src/FedEx/AddressValidationService/ComplexType/AddressToValidate.php b/src/FedEx/AddressValidationService/ComplexType/AddressToValidate.php index 22388335..da23c3b5 100644 --- a/src/FedEx/AddressValidationService/ComplexType/AddressToValidate.php +++ b/src/FedEx/AddressValidationService/ComplexType/AddressToValidate.php @@ -10,8 +10,8 @@ * @package PHP FedEx API wrapper * @subpackage Address Validation Service * - * @property string $AddressId - * @property string $CompanyName + * @property string $ClientReferenceId + * @property Contact $Contact * @property Address $Address */ @@ -25,26 +25,26 @@ class AddressToValidate extends AbstractComplexType protected $name = 'AddressToValidate'; /** - * Set AddressId + * A reference id provided by the client. * - * @param string $addressId + * @param string $clientReferenceId * @return $this */ - public function setAddressId($addressId) + public function setClientReferenceId($clientReferenceId) { - $this->values['AddressId'] = $addressId; + $this->values['ClientReferenceId'] = $clientReferenceId; return $this; } /** - * Set CompanyName + * Set Contact * - * @param string $companyName + * @param Contact $contact * @return $this */ - public function setCompanyName($companyName) + public function setContact(Contact $contact) { - $this->values['CompanyName'] = $companyName; + $this->values['Contact'] = $contact; return $this; } diff --git a/src/FedEx/AddressValidationService/ComplexType/AddressValidationOptions.php b/src/FedEx/AddressValidationService/ComplexType/AddressValidationOptions.php deleted file mode 100644 index 6d044226..00000000 --- a/src/FedEx/AddressValidationService/ComplexType/AddressValidationOptions.php +++ /dev/null @@ -1,140 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - * - * @property boolean $VerifyAddresses - * @property boolean $CheckResidentialStatus - * @property $MaximumNumberOfMatches - * @property \FedEx\AddressValidationService\SimpleType\AddressValidationAccuracyType|string $StreetAccuracy - * @property \FedEx\AddressValidationService\SimpleType\AddressValidationAccuracyType|string $DirectionalAccuracy - * @property \FedEx\AddressValidationService\SimpleType\AddressValidationAccuracyType|string $CompanyNameAccuracy - * @property boolean $ConvertToUpperCase - * @property boolean $RecognizeAlternateCityNames - * @property boolean $ReturnParsedElements - - */ -class AddressValidationOptions extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'AddressValidationOptions'; - - /** - * Set VerifyAddresses - * - * @param boolean $verifyAddresses - * @return $this - */ - public function setVerifyAddresses($verifyAddresses) - { - $this->values['VerifyAddresses'] = $verifyAddresses; - return $this; - } - - /** - * Set CheckResidentialStatus - * - * @param boolean $checkResidentialStatus - * @return $this - */ - public function setCheckResidentialStatus($checkResidentialStatus) - { - $this->values['CheckResidentialStatus'] = $checkResidentialStatus; - return $this; - } - - /** - * Set MaximumNumberOfMatches - * - * @param $maximumNumberOfMatches - * @return $this - */ - public function setMaximumNumberOfMatches($maximumNumberOfMatches) - { - $this->values['MaximumNumberOfMatches'] = $maximumNumberOfMatches; - return $this; - } - - /** - * Set StreetAccuracy - * - * @param \FedEx\AddressValidationService\SimpleType\AddressValidationAccuracyType|string $streetAccuracy - * @return $this - */ - public function setStreetAccuracy($streetAccuracy) - { - $this->values['StreetAccuracy'] = $streetAccuracy; - return $this; - } - - /** - * Set DirectionalAccuracy - * - * @param \FedEx\AddressValidationService\SimpleType\AddressValidationAccuracyType|string $directionalAccuracy - * @return $this - */ - public function setDirectionalAccuracy($directionalAccuracy) - { - $this->values['DirectionalAccuracy'] = $directionalAccuracy; - return $this; - } - - /** - * Set CompanyNameAccuracy - * - * @param \FedEx\AddressValidationService\SimpleType\AddressValidationAccuracyType|string $companyNameAccuracy - * @return $this - */ - public function setCompanyNameAccuracy($companyNameAccuracy) - { - $this->values['CompanyNameAccuracy'] = $companyNameAccuracy; - return $this; - } - - /** - * Set ConvertToUpperCase - * - * @param boolean $convertToUpperCase - * @return $this - */ - public function setConvertToUpperCase($convertToUpperCase) - { - $this->values['ConvertToUpperCase'] = $convertToUpperCase; - return $this; - } - - /** - * Set RecognizeAlternateCityNames - * - * @param boolean $recognizeAlternateCityNames - * @return $this - */ - public function setRecognizeAlternateCityNames($recognizeAlternateCityNames) - { - $this->values['RecognizeAlternateCityNames'] = $recognizeAlternateCityNames; - return $this; - } - - /** - * Set ReturnParsedElements - * - * @param boolean $returnParsedElements - * @return $this - */ - public function setReturnParsedElements($returnParsedElements) - { - $this->values['ReturnParsedElements'] = $returnParsedElements; - return $this; - } -} diff --git a/src/FedEx/AddressValidationService/ComplexType/AddressValidationRequest.php b/src/FedEx/AddressValidationService/ComplexType/AddressValidationRequest.php index d7310d55..d6f78607 100644 --- a/src/FedEx/AddressValidationService/ComplexType/AddressValidationRequest.php +++ b/src/FedEx/AddressValidationService/ComplexType/AddressValidationRequest.php @@ -14,8 +14,7 @@ * @property ClientDetail $ClientDetail * @property TransactionDetail $TransactionDetail * @property VersionId $Version - * @property string $RequestTimestamp - * @property AddressValidationOptions $Options + * @property string $InEffectAsOfTimestamp * @property AddressToValidate[] $AddressesToValidate */ @@ -29,7 +28,7 @@ class AddressValidationRequest extends AbstractComplexType protected $name = 'AddressValidationRequest'; /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). * * @param WebAuthenticationDetail $webAuthenticationDetail * @return $this @@ -41,7 +40,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -53,7 +52,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -65,7 +64,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -77,26 +76,14 @@ public function setVersion(VersionId $version) } /** - * Set RequestTimestamp + * Set InEffectAsOfTimestamp * - * @param string $requestTimestamp + * @param string $inEffectAsOfTimestamp * @return $this */ - public function setRequestTimestamp($requestTimestamp) + public function setInEffectAsOfTimestamp($inEffectAsOfTimestamp) { - $this->values['RequestTimestamp'] = $requestTimestamp; - return $this; - } - - /** - * Set Options - * - * @param AddressValidationOptions $options - * @return $this - */ - public function setOptions(AddressValidationOptions $options) - { - $this->values['Options'] = $options; + $this->values['InEffectAsOfTimestamp'] = $inEffectAsOfTimestamp; return $this; } diff --git a/src/FedEx/AddressValidationService/ComplexType/AddressValidationResult.php b/src/FedEx/AddressValidationService/ComplexType/AddressValidationResult.php index 2ca6934e..e483a998 100644 --- a/src/FedEx/AddressValidationService/ComplexType/AddressValidationResult.php +++ b/src/FedEx/AddressValidationService/ComplexType/AddressValidationResult.php @@ -10,8 +10,13 @@ * @package PHP FedEx API wrapper * @subpackage Address Validation Service * - * @property string $AddressId - * @property ProposedAddressDetail[] $ProposedAddressDetails + * @property string $ClientReferenceId + * @property \FedEx\AddressValidationService\SimpleType\OperationalAddressStateType|string $State + * @property \FedEx\AddressValidationService\SimpleType\FedExAddressClassificationType|string $Classification + * @property Contact $EffectiveContact + * @property Address $EffectiveAddress + * @property ParsedAddressPartsDetail $ParsedAddressPartsDetail + * @property AddressAttribute[] $Attributes */ class AddressValidationResult extends AbstractComplexType @@ -24,26 +29,86 @@ class AddressValidationResult extends AbstractComplexType protected $name = 'AddressValidationResult'; /** - * Set AddressId + * The client reference id for the validated address. * - * @param string $addressId + * @param string $clientReferenceId * @return $this */ - public function setAddressId($addressId) + public function setClientReferenceId($clientReferenceId) { - $this->values['AddressId'] = $addressId; + $this->values['ClientReferenceId'] = $clientReferenceId; return $this; } /** - * Set ProposedAddressDetails + * Specifies the degree to SHARE service was able to cannonicalise the address provided, as per USPS standards and match it to an address already in the internal FedEx address repository. * - * @param ProposedAddressDetail[] $proposedAddressDetails + * @param \FedEx\AddressValidationService\SimpleType\OperationalAddressStateType|string $state * @return $this */ - public function setProposedAddressDetails(array $proposedAddressDetails) + public function setState($state) { - $this->values['ProposedAddressDetails'] = $proposedAddressDetails; + $this->values['State'] = $state; + return $this; + } + + /** + * Set Classification + * + * @param \FedEx\AddressValidationService\SimpleType\FedExAddressClassificationType|string $classification + * @return $this + */ + public function setClassification($classification) + { + $this->values['Classification'] = $classification; + return $this; + } + + /** + * Set EffectiveContact + * + * @param Contact $effectiveContact + * @return $this + */ + public function setEffectiveContact(Contact $effectiveContact) + { + $this->values['EffectiveContact'] = $effectiveContact; + return $this; + } + + /** + * Set EffectiveAddress + * + * @param Address $effectiveAddress + * @return $this + */ + public function setEffectiveAddress(Address $effectiveAddress) + { + $this->values['EffectiveAddress'] = $effectiveAddress; + return $this; + } + + /** + * Set ParsedAddressPartsDetail + * + * @param ParsedAddressPartsDetail $parsedAddressPartsDetail + * @return $this + */ + public function setParsedAddressPartsDetail(ParsedAddressPartsDetail $parsedAddressPartsDetail) + { + $this->values['ParsedAddressPartsDetail'] = $parsedAddressPartsDetail; + return $this; + } + + /** + * Additional attributes about the validated address from FedEx address respository.. + * + * @param AddressAttribute[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; return $this; } } diff --git a/src/FedEx/AddressValidationService/ComplexType/ClientDetail.php b/src/FedEx/AddressValidationService/ComplexType/ClientDetail.php index 60571758..fd45ffc1 100644 --- a/src/FedEx/AddressValidationService/ComplexType/ClientDetail.php +++ b/src/FedEx/AddressValidationService/ComplexType/ClientDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data identifying the client submitting the transaction. + * Descriptive data for the client submitting a transaction. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,6 +12,7 @@ * * @property string $AccountNumber * @property string $MeterNumber + * @property string $IntegratorId * @property Localization $Localization */ @@ -25,7 +26,7 @@ class ClientDetail extends AbstractComplexType protected $name = 'ClientDetail'; /** - * The FedEx account number assigned to the customer initiating the request. + * The FedEx account number associated with this transaction. * * @param string $accountNumber * @return $this @@ -37,7 +38,7 @@ public function setAccountNumber($accountNumber) } /** - * Identifies the unique client device submitting the request. This number is assigned by FedEx and identifies the unique device from which the request is originating. + * This number is assigned by FedEx and identifies the unique device from which the request is originating * * @param string $meterNumber * @return $this @@ -49,7 +50,19 @@ public function setMeterNumber($meterNumber) } /** - * Governs any future language/translations used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + * Only used in transactions which require identification of the FedEx Office integrator. + * + * @param string $integratorId + * @return $this + */ + public function setIntegratorId($integratorId) + { + $this->values['IntegratorId'] = $integratorId; + return $this; + } + + /** + * The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) * * @param Localization $localization * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/Contact.php b/src/FedEx/AddressValidationService/ComplexType/Contact.php new file mode 100644 index 00000000..5be2f153 --- /dev/null +++ b/src/FedEx/AddressValidationService/ComplexType/Contact.php @@ -0,0 +1,153 @@ + + * @package PHP FedEx API wrapper + * @subpackage Address Validation Service + * + * @property string $ContactId + * @property string $PersonName + * @property string $Title + * @property string $CompanyName + * @property string $PhoneNumber + * @property string $PhoneExtension + * @property string $TollFreePhoneNumber + * @property string $PagerNumber + * @property string $FaxNumber + * @property string $EMailAddress + + */ +class Contact extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Contact'; + + /** + * Client provided identifier corresponding to this contact information. + * + * @param string $contactId + * @return $this + */ + public function setContactId($contactId) + { + $this->values['ContactId'] = $contactId; + return $this; + } + + /** + * Identifies the contact person's name. + * + * @param string $personName + * @return $this + */ + public function setPersonName($personName) + { + $this->values['PersonName'] = $personName; + return $this; + } + + /** + * Identifies the contact person's title. + * + * @param string $title + * @return $this + */ + public function setTitle($title) + { + $this->values['Title'] = $title; + return $this; + } + + /** + * Identifies the company this contact is associated with. + * + * @param string $companyName + * @return $this + */ + public function setCompanyName($companyName) + { + $this->values['CompanyName'] = $companyName; + return $this; + } + + /** + * Identifies the phone number associated with this contact. + * + * @param string $phoneNumber + * @return $this + */ + public function setPhoneNumber($phoneNumber) + { + $this->values['PhoneNumber'] = $phoneNumber; + return $this; + } + + /** + * Identifies the phone extension associated with this contact. + * + * @param string $phoneExtension + * @return $this + */ + public function setPhoneExtension($phoneExtension) + { + $this->values['PhoneExtension'] = $phoneExtension; + return $this; + } + + /** + * Identifies a toll free number, if any, associated with this contact. + * + * @param string $tollFreePhoneNumber + * @return $this + */ + public function setTollFreePhoneNumber($tollFreePhoneNumber) + { + $this->values['TollFreePhoneNumber'] = $tollFreePhoneNumber; + return $this; + } + + /** + * Identifies the pager number associated with this contact. + * + * @param string $pagerNumber + * @return $this + */ + public function setPagerNumber($pagerNumber) + { + $this->values['PagerNumber'] = $pagerNumber; + return $this; + } + + /** + * Identifies the fax number associated with this contact. + * + * @param string $faxNumber + * @return $this + */ + public function setFaxNumber($faxNumber) + { + $this->values['FaxNumber'] = $faxNumber; + return $this; + } + + /** + * Identifies the email address associated with this contact. + * + * @param string $eMailAddress + * @return $this + */ + public function setEMailAddress($eMailAddress) + { + $this->values['EMailAddress'] = $eMailAddress; + return $this; + } +} diff --git a/src/FedEx/AddressValidationService/ComplexType/Localization.php b/src/FedEx/AddressValidationService/ComplexType/Localization.php index 8f1af2ab..36e235e2 100644 --- a/src/FedEx/AddressValidationService/ComplexType/Localization.php +++ b/src/FedEx/AddressValidationService/ComplexType/Localization.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Governs any future language/translations used for human-readable text. + * Identifies the representation of human-readable text. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class Localization extends AbstractComplexType protected $name = 'Localization'; /** - * Identifies the language to use for human-readable messages. + * Two-letter code for language (e.g. EN, FR, etc.) * * @param string $languageCode * @return $this @@ -36,7 +36,7 @@ public function setLanguageCode($languageCode) } /** - * Identifies the locale (i.e. country code) associated with the language. + * Two-letter code for the region (e.g. us, ca, etc..). * * @param string $localeCode * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/Notification.php b/src/FedEx/AddressValidationService/ComplexType/Notification.php index 94d4e9fd..1ad942fc 100644 --- a/src/FedEx/AddressValidationService/ComplexType/Notification.php +++ b/src/FedEx/AddressValidationService/ComplexType/Notification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data regarding the results of the submitted transaction. + * The descriptive data regarding the result of the submitted transaction. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -28,7 +28,7 @@ class Notification extends AbstractComplexType protected $name = 'Notification'; /** - * The severity of this notification. this can indicate success or failure or some other information about the request such as errors or notes. + * The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later * * @param \FedEx\AddressValidationService\SimpleType\NotificationSeverityType|string $severity * @return $this @@ -40,7 +40,7 @@ public function setSeverity($severity) } /** - * Indicates the source of the notification. Combined with Code, it uniqely identifies this message. + * Indicates the source of this notification. Combined with the Code it uniquely identifies this notification * * @param string $source * @return $this @@ -52,7 +52,7 @@ public function setSource($source) } /** - * A code that represents this notification. Combined with Source, it uniqely identifies this message. + * A code that represents this notification. Combined with the Source it uniquely identifies this notification. * * @param string $code * @return $this @@ -64,7 +64,7 @@ public function setCode($code) } /** - * Text that explains this notification. + * Human-readable text that explains this notification. * * @param string $message * @return $this @@ -76,7 +76,7 @@ public function setMessage($message) } /** - * A translated message. The translation is based on the Localization element of the ClientDetail element of the request. + * The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. * * @param string $localizedMessage * @return $this @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * If the message used parameter replacement to be specific as to the meaning of the message, this is the list of parameters that were used. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/NotificationParameter.php b/src/FedEx/AddressValidationService/ComplexType/NotificationParameter.php index 3babb709..768f209e 100644 --- a/src/FedEx/AddressValidationService/ComplexType/NotificationParameter.php +++ b/src/FedEx/AddressValidationService/ComplexType/NotificationParameter.php @@ -24,7 +24,7 @@ class NotificationParameter extends AbstractComplexType protected $name = 'NotificationParameter'; /** - * Name identifiying the type of the data in the element 'Value' + * Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). * * @param string $id * @return $this @@ -36,7 +36,7 @@ public function setId($id) } /** - * The value that was used as the replacement parameter. + * The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). * * @param string $value * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/ParsedAddress.php b/src/FedEx/AddressValidationService/ComplexType/ParsedAddress.php deleted file mode 100644 index 3bd8754b..00000000 --- a/src/FedEx/AddressValidationService/ComplexType/ParsedAddress.php +++ /dev/null @@ -1,101 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - * - * @property ParsedAddressPart $ParsedUrbanizationCode - * @property ParsedAddressPart[] $ParsedStreetLine - * @property ParsedAddressPart $ParsedCity - * @property ParsedAddressPart $ParsedStateOrProvinceCode - * @property ParsedAddressPart $ParsedPostalCode - * @property ParsedAddressPart $ParsedCountryCode - - */ -class ParsedAddress extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ParsedAddress'; - - /** - * Set ParsedUrbanizationCode - * - * @param ParsedAddressPart $parsedUrbanizationCode - * @return $this - */ - public function setParsedUrbanizationCode(ParsedAddressPart $parsedUrbanizationCode) - { - $this->values['ParsedUrbanizationCode'] = $parsedUrbanizationCode; - return $this; - } - - /** - * Set ParsedStreetLine - * - * @param ParsedAddressPart[] $parsedStreetLine - * @return $this - */ - public function setParsedStreetLine(array $parsedStreetLine) - { - $this->values['ParsedStreetLine'] = $parsedStreetLine; - return $this; - } - - /** - * Set ParsedCity - * - * @param ParsedAddressPart $parsedCity - * @return $this - */ - public function setParsedCity(ParsedAddressPart $parsedCity) - { - $this->values['ParsedCity'] = $parsedCity; - return $this; - } - - /** - * Set ParsedStateOrProvinceCode - * - * @param ParsedAddressPart $parsedStateOrProvinceCode - * @return $this - */ - public function setParsedStateOrProvinceCode(ParsedAddressPart $parsedStateOrProvinceCode) - { - $this->values['ParsedStateOrProvinceCode'] = $parsedStateOrProvinceCode; - return $this; - } - - /** - * Set ParsedPostalCode - * - * @param ParsedAddressPart $parsedPostalCode - * @return $this - */ - public function setParsedPostalCode(ParsedAddressPart $parsedPostalCode) - { - $this->values['ParsedPostalCode'] = $parsedPostalCode; - return $this; - } - - /** - * Set ParsedCountryCode - * - * @param ParsedAddressPart $parsedCountryCode - * @return $this - */ - public function setParsedCountryCode(ParsedAddressPart $parsedCountryCode) - { - $this->values['ParsedCountryCode'] = $parsedCountryCode; - return $this; - } -} diff --git a/src/FedEx/AddressValidationService/ComplexType/ParsedAddressPart.php b/src/FedEx/AddressValidationService/ComplexType/ParsedAddressPart.php deleted file mode 100644 index e2cea3c0..00000000 --- a/src/FedEx/AddressValidationService/ComplexType/ParsedAddressPart.php +++ /dev/null @@ -1,36 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - * - * @property ParsedElement[] $Elements - - */ -class ParsedAddressPart extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ParsedAddressPart'; - - /** - * Set Elements - * - * @param ParsedElement[] $elements - * @return $this - */ - public function setElements(array $elements) - { - $this->values['Elements'] = $elements; - return $this; - } -} diff --git a/src/FedEx/AddressValidationService/ComplexType/ParsedAddressPartsDetail.php b/src/FedEx/AddressValidationService/ComplexType/ParsedAddressPartsDetail.php new file mode 100644 index 00000000..430585e2 --- /dev/null +++ b/src/FedEx/AddressValidationService/ComplexType/ParsedAddressPartsDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Address Validation Service + * + * @property ParsedStreetLineDetail $ParsedStreetLine + * @property ParsedPostalCodeDetail $ParsedPostalCode + + */ +class ParsedAddressPartsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ParsedAddressPartsDetail'; + + /** + * Set ParsedStreetLine + * + * @param ParsedStreetLineDetail $parsedStreetLine + * @return $this + */ + public function setParsedStreetLine(ParsedStreetLineDetail $parsedStreetLine) + { + $this->values['ParsedStreetLine'] = $parsedStreetLine; + return $this; + } + + /** + * The postal code specified in a form that is supported by USPS as base, secondary and tertiary. + * + * @param ParsedPostalCodeDetail $parsedPostalCode + * @return $this + */ + public function setParsedPostalCode(ParsedPostalCodeDetail $parsedPostalCode) + { + $this->values['ParsedPostalCode'] = $parsedPostalCode; + return $this; + } +} diff --git a/src/FedEx/AddressValidationService/ComplexType/ParsedPostalCodeDetail.php b/src/FedEx/AddressValidationService/ComplexType/ParsedPostalCodeDetail.php new file mode 100644 index 00000000..5e812dcb --- /dev/null +++ b/src/FedEx/AddressValidationService/ComplexType/ParsedPostalCodeDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Address Validation Service + * + * @property string $Base + * @property string $AddOn + * @property string $DeliveryPoint + + */ +class ParsedPostalCodeDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ParsedPostalCodeDetail'; + + /** + * Set Base + * + * @param string $base + * @return $this + */ + public function setBase($base) + { + $this->values['Base'] = $base; + return $this; + } + + /** + * Set AddOn + * + * @param string $addOn + * @return $this + */ + public function setAddOn($addOn) + { + $this->values['AddOn'] = $addOn; + return $this; + } + + /** + * Set DeliveryPoint + * + * @param string $deliveryPoint + * @return $this + */ + public function setDeliveryPoint($deliveryPoint) + { + $this->values['DeliveryPoint'] = $deliveryPoint; + return $this; + } +} diff --git a/src/FedEx/AddressValidationService/ComplexType/ParsedStreetLineDetail.php b/src/FedEx/AddressValidationService/ComplexType/ParsedStreetLineDetail.php new file mode 100644 index 00000000..121ffe16 --- /dev/null +++ b/src/FedEx/AddressValidationService/ComplexType/ParsedStreetLineDetail.php @@ -0,0 +1,179 @@ + + * @package PHP FedEx API wrapper + * @subpackage Address Validation Service + * + * @property string $HouseNumber + * @property string $PreStreetType + * @property string $LeadingDirectional + * @property string $StreetName + * @property string $StreetSuffix + * @property string $TrailingDirectional + * @property string $UnitLabel + * @property string $UnitNumber + * @property string $RuralRoute + * @property string $POBox + * @property string $Building + * @property string $Organization + + */ +class ParsedStreetLineDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ParsedStreetLineDetail'; + + /** + * Set HouseNumber + * + * @param string $houseNumber + * @return $this + */ + public function setHouseNumber($houseNumber) + { + $this->values['HouseNumber'] = $houseNumber; + return $this; + } + + /** + * Set PreStreetType + * + * @param string $preStreetType + * @return $this + */ + public function setPreStreetType($preStreetType) + { + $this->values['PreStreetType'] = $preStreetType; + return $this; + } + + /** + * Set LeadingDirectional + * + * @param string $leadingDirectional + * @return $this + */ + public function setLeadingDirectional($leadingDirectional) + { + $this->values['LeadingDirectional'] = $leadingDirectional; + return $this; + } + + /** + * Set StreetName + * + * @param string $streetName + * @return $this + */ + public function setStreetName($streetName) + { + $this->values['StreetName'] = $streetName; + return $this; + } + + /** + * Set StreetSuffix + * + * @param string $streetSuffix + * @return $this + */ + public function setStreetSuffix($streetSuffix) + { + $this->values['StreetSuffix'] = $streetSuffix; + return $this; + } + + /** + * Set TrailingDirectional + * + * @param string $trailingDirectional + * @return $this + */ + public function setTrailingDirectional($trailingDirectional) + { + $this->values['TrailingDirectional'] = $trailingDirectional; + return $this; + } + + /** + * Set UnitLabel + * + * @param string $unitLabel + * @return $this + */ + public function setUnitLabel($unitLabel) + { + $this->values['UnitLabel'] = $unitLabel; + return $this; + } + + /** + * Set UnitNumber + * + * @param string $unitNumber + * @return $this + */ + public function setUnitNumber($unitNumber) + { + $this->values['UnitNumber'] = $unitNumber; + return $this; + } + + /** + * Set RuralRoute + * + * @param string $ruralRoute + * @return $this + */ + public function setRuralRoute($ruralRoute) + { + $this->values['RuralRoute'] = $ruralRoute; + return $this; + } + + /** + * Set POBox + * + * @param string $pOBox + * @return $this + */ + public function setPOBox($pOBox) + { + $this->values['POBox'] = $pOBox; + return $this; + } + + /** + * Set Building + * + * @param string $building + * @return $this + */ + public function setBuilding($building) + { + $this->values['Building'] = $building; + return $this; + } + + /** + * Set Organization + * + * @param string $organization + * @return $this + */ + public function setOrganization($organization) + { + $this->values['Organization'] = $organization; + return $this; + } +} diff --git a/src/FedEx/AddressValidationService/ComplexType/ProposedAddressDetail.php b/src/FedEx/AddressValidationService/ComplexType/ProposedAddressDetail.php deleted file mode 100644 index 21348c3f..00000000 --- a/src/FedEx/AddressValidationService/ComplexType/ProposedAddressDetail.php +++ /dev/null @@ -1,140 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - * - * @property int $Score - * @property \FedEx\AddressValidationService\SimpleType\AddressValidationChangeType|string[] $Changes - * @property \FedEx\AddressValidationService\SimpleType\ResidentialStatusType|string $ResidentialStatus - * @property \FedEx\AddressValidationService\SimpleType\DeliveryPointValidationType|string $DeliveryPointValidation - * @property string $CompanyName - * @property Address $Address - * @property ParsedAddressPart $ParsedCompanyName - * @property ParsedAddress $ParsedAddress - * @property string $RemovedNonAddressData - - */ -class ProposedAddressDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ProposedAddressDetail'; - - /** - * Set Score - * - * @param int $score - * @return $this - */ - public function setScore($score) - { - $this->values['Score'] = $score; - return $this; - } - - /** - * Set Changes - * - * @param \FedEx\AddressValidationService\SimpleType\AddressValidationChangeType[]|string[] $changes - * @return $this - */ - public function setChanges(array $changes) - { - $this->values['Changes'] = $changes; - return $this; - } - - /** - * Set ResidentialStatus - * - * @param \FedEx\AddressValidationService\SimpleType\ResidentialStatusType|string $residentialStatus - * @return $this - */ - public function setResidentialStatus($residentialStatus) - { - $this->values['ResidentialStatus'] = $residentialStatus; - return $this; - } - - /** - * Set DeliveryPointValidation - * - * @param \FedEx\AddressValidationService\SimpleType\DeliveryPointValidationType|string $deliveryPointValidation - * @return $this - */ - public function setDeliveryPointValidation($deliveryPointValidation) - { - $this->values['DeliveryPointValidation'] = $deliveryPointValidation; - return $this; - } - - /** - * Set CompanyName - * - * @param string $companyName - * @return $this - */ - public function setCompanyName($companyName) - { - $this->values['CompanyName'] = $companyName; - return $this; - } - - /** - * Set Address - * - * @param Address $address - * @return $this - */ - public function setAddress(Address $address) - { - $this->values['Address'] = $address; - return $this; - } - - /** - * Set ParsedCompanyName - * - * @param ParsedAddressPart $parsedCompanyName - * @return $this - */ - public function setParsedCompanyName(ParsedAddressPart $parsedCompanyName) - { - $this->values['ParsedCompanyName'] = $parsedCompanyName; - return $this; - } - - /** - * Set ParsedAddress - * - * @param ParsedAddress $parsedAddress - * @return $this - */ - public function setParsedAddress(ParsedAddress $parsedAddress) - { - $this->values['ParsedAddress'] = $parsedAddress; - return $this; - } - - /** - * Set RemovedNonAddressData - * - * @param string $removedNonAddressData - * @return $this - */ - public function setRemovedNonAddressData($removedNonAddressData) - { - $this->values['RemovedNonAddressData'] = $removedNonAddressData; - return $this; - } -} diff --git a/src/FedEx/AddressValidationService/ComplexType/TransactionDetail.php b/src/FedEx/AddressValidationService/ComplexType/TransactionDetail.php index 2f51687a..7fda2432 100644 --- a/src/FedEx/AddressValidationService/ComplexType/TransactionDetail.php +++ b/src/FedEx/AddressValidationService/ComplexType/TransactionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * TransactionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class TransactionDetail extends AbstractComplexType protected $name = 'TransactionDetail'; /** - * Identifies a customer-supplied unique identifier for this transaction. It is returned in the reply message to aid in matching requests to replies. + * Free form text to be echoed back in the reply. Used to match requests and replies. * * @param string $customerTransactionId * @return $this @@ -36,7 +36,7 @@ public function setCustomerTransactionId($customerTransactionId) } /** - * Governs any future language/translations applied to the data payload(contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + * Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). * * @param Localization $localization * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/VersionId.php b/src/FedEx/AddressValidationService/ComplexType/VersionId.php index ab33e27f..b0b8435e 100644 --- a/src/FedEx/AddressValidationService/ComplexType/VersionId.php +++ b/src/FedEx/AddressValidationService/ComplexType/VersionId.php @@ -38,7 +38,7 @@ public function setServiceId($serviceId) } /** - * Identifies the service business level. For the initial FedEx Web Service release this value should be set to 1. + * Identifies the service business level. * * @param int $major * @return $this @@ -50,7 +50,7 @@ public function setMajor($major) } /** - * Identifies the service interface level. For the initial FedEx Web Service release this value should be set to 0. + * Identifies the service interface level. * * @param int $intermediate * @return $this @@ -62,7 +62,7 @@ public function setIntermediate($intermediate) } /** - * Identifies the service code level. For the initial FedEx Web Service release this value should be set to 0. + * Identifies the service code level. * * @param int $minor * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationCredential.php b/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationCredential.php index c2ae0a41..03b2be6d 100644 --- a/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationCredential.php +++ b/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationCredential.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Two part authentication string used for the sender's identity. + * Two part authentication string used for the sender's identity * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class WebAuthenticationCredential extends AbstractComplexType protected $name = 'WebAuthenticationCredential'; /** - * Identifying part of the authentication key. This value is provided by FedEx after registration. + * Identifying part of authentication credential. This value is provided by FedEx after registration * * @param string $key * @return $this @@ -36,7 +36,7 @@ public function setKey($key) } /** - * Secret part of authentication key used for authentication. This value is provided by FedEx after registration. + * Secret part of authentication key. This value is provided by FedEx after registration. * * @param string $password * @return $this diff --git a/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationDetail.php index eba58d84..3a2c1962 100644 --- a/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/AddressValidationService/ComplexType/WebAuthenticationDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Address Validation Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/AddressValidationService/Request.php b/src/FedEx/AddressValidationService/Request.php index 8199e8e5..10370827 100644 --- a/src/FedEx/AddressValidationService/Request.php +++ b/src/FedEx/AddressValidationService/Request.php @@ -12,10 +12,10 @@ */ class Request extends AbstractRequest { - const PRODUCTION_URL = 'https://gateway.fedex.com:443/web-services'; - const TESTING_URL = 'https://gatewaybeta.fedex.com:443/web-services'; + const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/addressvalidation'; + const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/addressvalidation'; - protected static $wsdlFileName = 'AddressValidationService_v2.wsdl'; + protected static $wsdlFileName = 'AddressValidationService_v4.wsdl'; /** * Sends the AddressValidationRequest and returns the response diff --git a/src/FedEx/AddressValidationService/SimpleType/AddressValidationAccuracyType.php b/src/FedEx/AddressValidationService/SimpleType/AddressValidationAccuracyType.php deleted file mode 100644 index 6e5edb64..00000000 --- a/src/FedEx/AddressValidationService/SimpleType/AddressValidationAccuracyType.php +++ /dev/null @@ -1,19 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - */ -class AddressValidationAccuracyType extends AbstractSimpleType -{ - const _EXACT = 'EXACT'; - const _TIGHT = 'TIGHT'; - const _MEDIUM = 'MEDIUM'; - const _LOOSE = 'LOOSE'; -} diff --git a/src/FedEx/AddressValidationService/SimpleType/AddressValidationChangeType.php b/src/FedEx/AddressValidationService/SimpleType/AddressValidationChangeType.php deleted file mode 100644 index 6ccff6b1..00000000 --- a/src/FedEx/AddressValidationService/SimpleType/AddressValidationChangeType.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - */ -class AddressValidationChangeType extends AbstractSimpleType -{ - const _APARTMENT_NUMBER_NOT_FOUND = 'APARTMENT_NUMBER_NOT_FOUND'; - const _APARTMENT_NUMBER_REQUIRED = 'APARTMENT_NUMBER_REQUIRED'; - const _NORMALIZED = 'NORMALIZED'; - const _REMOVED_DATA = 'REMOVED_DATA'; - const _BOX_NUMBER_REQUIRED = 'BOX_NUMBER_REQUIRED'; - const _NO_CHANGES = 'NO_CHANGES'; - const _MODIFIED_TO_ACHIEVE_MATCH = 'MODIFIED_TO_ACHIEVE_MATCH'; - const _STREET_RANGE_MATCH = 'STREET_RANGE_MATCH'; - const _BOX_NUMBER_MATCH = 'BOX_NUMBER_MATCH'; - const _RR_OR_HC_MATCH = 'RR_OR_HC_MATCH'; - const _CITY_MATCH = 'CITY_MATCH'; - const _POSTAL_CODE_MATCH = 'POSTAL_CODE_MATCH'; - const _RR_OR_HC_BOX_NUMBER_NEEDED = 'RR_OR_HC_BOX_NUMBER_NEEDED'; - const _FORMATTED_FOR_COUNTRY = 'FORMATTED_FOR_COUNTRY'; - const _APO_OR_FPO_MATCH = 'APO_OR_FPO_MATCH'; - const _GENERAL_DELIVERY_MATCH = 'GENERAL_DELIVERY_MATCH'; - const _FIELD_TRUNCATED = 'FIELD_TRUNCATED'; - const _UNABLE_TO_APPEND_NON_ADDRESS_DATA = 'UNABLE_TO_APPEND_NON_ADDRESS_DATA'; - const _INSUFFICIENT_DATA = 'INSUFFICIENT_DATA'; - const _HOUSE_OR_BOX_NUMBER_NOT_FOUND = 'HOUSE_OR_BOX_NUMBER_NOT_FOUND'; - const _POSTAL_CODE_NOT_FOUND = 'POSTAL_CODE_NOT_FOUND'; - const _INVALID_COUNTRY = 'INVALID_COUNTRY'; - const _SERVICE_UNAVAILABLE_FOR_ADDRESS = 'SERVICE_UNAVAILABLE_FOR_ADDRESS'; -} diff --git a/src/FedEx/AddressValidationService/SimpleType/AutoConfigurationType.php b/src/FedEx/AddressValidationService/SimpleType/AutoConfigurationType.php new file mode 100644 index 00000000..6af62063 --- /dev/null +++ b/src/FedEx/AddressValidationService/SimpleType/AutoConfigurationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Address Validation Service + */ +class AutoConfigurationType extends AbstractSimpleType +{ + const _ENTERPRISE = 'ENTERPRISE'; + const _SHIPPING_SERVICE_PROVIDER = 'SHIPPING_SERVICE_PROVIDER'; + const _SOFTWARE_ONLY = 'SOFTWARE_ONLY'; + const _TRADITIONAL = 'TRADITIONAL'; +} diff --git a/src/FedEx/AddressValidationService/SimpleType/DeliveryPointValidationType.php b/src/FedEx/AddressValidationService/SimpleType/DeliveryPointValidationType.php deleted file mode 100644 index cfd1ecf2..00000000 --- a/src/FedEx/AddressValidationService/SimpleType/DeliveryPointValidationType.php +++ /dev/null @@ -1,18 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Address Validation Service - */ -class DeliveryPointValidationType extends AbstractSimpleType -{ - const _CONFIRMED = 'CONFIRMED'; - const _UNCONFIRMED = 'UNCONFIRMED'; - const _UNAVAILABLE = 'UNAVAILABLE'; -} diff --git a/src/FedEx/AddressValidationService/SimpleType/ResidentialStatusType.php b/src/FedEx/AddressValidationService/SimpleType/FedExAddressClassificationType.php similarity index 52% rename from src/FedEx/AddressValidationService/SimpleType/ResidentialStatusType.php rename to src/FedEx/AddressValidationService/SimpleType/FedExAddressClassificationType.php index c9b3a7d6..0146b78d 100644 --- a/src/FedEx/AddressValidationService/SimpleType/ResidentialStatusType.php +++ b/src/FedEx/AddressValidationService/SimpleType/FedExAddressClassificationType.php @@ -4,18 +4,16 @@ use FedEx\AbstractSimpleType; /** - * ResidentialStatusType + * Specifies the address classification (business vs. residential) * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Address Validation Service */ -class ResidentialStatusType extends AbstractSimpleType +class FedExAddressClassificationType extends AbstractSimpleType { - const _UNDETERMINED = 'UNDETERMINED'; const _BUSINESS = 'BUSINESS'; + const _MIXED = 'MIXED'; const _RESIDENTIAL = 'RESIDENTIAL'; - const _INSUFFICIENT_DATA = 'INSUFFICIENT_DATA'; - const _UNAVAILABLE = 'UNAVAILABLE'; - const _NOT_APPLICABLE_TO_COUNTRY = 'NOT_APPLICABLE_TO_COUNTRY'; + const _UNKNOWN = 'UNKNOWN'; } diff --git a/src/FedEx/AddressValidationService/SimpleType/NotificationSeverityType.php b/src/FedEx/AddressValidationService/SimpleType/NotificationSeverityType.php index d6462f7e..56b20b72 100644 --- a/src/FedEx/AddressValidationService/SimpleType/NotificationSeverityType.php +++ b/src/FedEx/AddressValidationService/SimpleType/NotificationSeverityType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of severity values for a Notification. + * NotificationSeverityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/AddressValidationService/SimpleType/OperationalAddressStateType.php b/src/FedEx/AddressValidationService/SimpleType/OperationalAddressStateType.php new file mode 100644 index 00000000..8aa0df52 --- /dev/null +++ b/src/FedEx/AddressValidationService/SimpleType/OperationalAddressStateType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Address Validation Service + */ +class OperationalAddressStateType extends AbstractSimpleType +{ + const _NORMALIZED = 'NORMALIZED'; + const _RAW = 'RAW'; + const _STANDARDIZED = 'STANDARDIZED'; +} diff --git a/src/FedEx/_wsdl/AddressValidationService_v2.wsdl b/src/FedEx/_wsdl/AddressValidationService_v2.wsdl deleted file mode 100644 index 6f340e71..00000000 --- a/src/FedEx/_wsdl/AddressValidationService_v2.wsdl +++ /dev/null @@ -1,603 +0,0 @@ - - - - - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Used in authentication of the sender's identity. - - - - - Credential used to authenticate a specific software application. This value is provided by FedEx after registration. - - - - - - - Two part authentication string used for the sender's identity. - - - - - Identifying part of the authentication key. This value is provided by FedEx after registration. - - 16 - - - - - - Secret part of authentication key used for authentication. This value is provided by FedEx after registration. - - 25 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (EAS 100) Apartment number not found for this address. - - - - - - - (EAS 101) Address requires apartment number. - - - - - - - (EAS 102) Address normalized - abbreviations applied. - - - - - - - (EAS 103) Dropped data. - - - - - - - (EAS 104) Address requires box number. - - - - - - - (EAS 200) Match - no changes applied to input address. - - - - - - - (EAS 201) Address modified to achieve match. - - - - - - - (EAS 202) Match to street range. - - - - - - - (EAS 203) Match to box number. - - - - - - - (EAS 204) Match to Rural Route (RR) / Highway Contract (HC) address. - - - - - - - (EAS 205) Match to city (non-US, non-Canada). - - - - - - - (EAS 206) Match to postal code only (non-street) - - - - - - - (EAS 207) Need box number for Rural Route / Highway Contract (HC) match. - - - - - - - (EAS 208) Formatting performed for country (non-US, non-Canada). - - - - - - - (EAS 209) Match to military address (e.g. APO/FPO). - - - - - - - (EAS 210) Match to general delivery. - - - - - - - (EAS 211) Address exceeded 35 character plug-in limit. - - - - - - - (EAS 212) Unable to append non-address; data 35 character limit imposed. - - - - - - - (EAS 300) Insufficient data for address verification. - - - - - - - (EAS 301) Address (house or box number) not found. - - - - - - - (EAS 303) Postal code not found. - - - - - - - (EAS 305) Invalid country. - - - - - - - (EAS 400) Service unavailable for request address. - - - - - - - - The descriptive data identifying the client submitting the transaction. - - - - - The FedEx account number assigned to the customer initiating the request. - - 12 - - - - - - Identifies the unique client device submitting the request. This number is assigned by FedEx and identifies the unique device from which the request is originating. - - 10 - - - - - - Governs any future language/translations used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - - - - - - - Governs any future language/translations used for human-readable text. - - - - - Identifies the language to use for human-readable messages. - - 2 - - - - - - Identifies the locale (i.e. country code) associated with the language. - - 2 - - - - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies a customer-supplied unique identifier for this transaction. It is returned in the reply message to aid in matching requests to replies. - - 40 - - - - - - Governs any future language/translations applied to the data payload(contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). - - - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies a system or sub-system which performs an operation. - - - - - Identifies the service business level. For the initial FedEx Web Service release this value should be set to 1. - - - - - Identifies the service interface level. For the initial FedEx Web Service release this value should be set to 0. - - - - - Identifies the service code level. For the initial FedEx Web Service release this value should be set to 0. - - - - - - - Identifies the set of severity values for a Notification. - - - - - - - - - - - - The descriptive data regarding the results of the submitted transaction. - - - - - The severity of this notification. this can indicate success or failure or some other information about the request such as errors or notes. - - - - - Indicates the source of the notification. Combined with Code, it uniqely identifies this message. - - - - - A code that represents this notification. Combined with Source, it uniqely identifies this message. - - 8 - - - - - - Text that explains this notification. - - 255 - - - - - - A translated message. The translation is based on the Localization element of the ClientDetail element of the request. - - TBD - - - - - - If the message used parameter replacement to be specific as to the meaning of the message, this is the list of parameters that were used. - - TBD - - - - - - - - - - Name identifiying the type of the data in the element 'Value' - - - - - The value that was used as the replacement parameter. - - - - - - - The descriptive data for a physical location. - - - - - Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. - - 35 - - - - - - Name of city, town, etc. - - - 35 - 20 - - - - - - - Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. - - 14 - - - - - - Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. This element is required if both the City and StateOrProvinceCode are not present. - - 16 - - - - - - Relevant only to addresses in Puerto Rico. In Puerto Rico, multiple addresses within the same ZIP code can have the same house number and street name. When this is the case, the urbanization code is needed to distinguish them. - - 100 - - - - - - Identification of a country. - - 2 - - - - - - Indicates whether this address is residential (as opposed to commercial). - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/FedEx/_wsdl/AddressValidationService_v4.wsdl b/src/FedEx/_wsdl/AddressValidationService_v4.wsdl new file mode 100755 index 00000000..5f9c8376 --- /dev/null +++ b/src/FedEx/_wsdl/AddressValidationService_v4.wsdl @@ -0,0 +1,457 @@ + + + + + + + + Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). + + + + + Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + + + + + Name of city, town, etc. + + + + + Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + + + + + Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + + + + + Relevant only to addresses in Puerto Rico. + + + + + The two-letter code used to identify a country. + + + + + The fully spelt out name of a country. + + + + + Indicates whether this address residential (as opposed to commercial). + + + + + + + Specifies additional information about the address processed by the SHARE systems as a key-value pair. + + + + + Specifies the key for the address attribute. + + + + + The value for the key for the address attribute. + + + + + + + + + A reference id provided by the client. + + + + + + + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + The client reference id for the validated address. + + + + + Specifies the degree to SHARE service was able to cannonicalise the address provided, as per USPS standards and match it to an address already in the internal FedEx address repository. + + + + + + + + + Additional attributes about the validated address from FedEx address respository.. + + + + + + + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + The descriptive data for a point-of-contact person. + + + + + Client provided identifier corresponding to this contact information. + + + + + Identifies the contact person's name. + + + + + Identifies the contact person's title. + + + + + Identifies the company this contact is associated with. + + + + + Identifies the phone number associated with this contact. + + + + + Identifies the phone extension associated with this contact. + + + + + Identifies a toll free number, if any, associated with this contact. + + + + + Identifies the pager number associated with this contact. + + + + + Identifies the fax number associated with this contact. + + + + + Identifies the email address associated with this contact. + + + + + + + Specifies the address classification (business vs. residential) + + + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + Specifies how different the address returned is from the address provided. This difference can be because the address is cannonialised to match the address specification standard set by USPS. + + + + + + + + + + + + + The postal code specified in a form that is supported by USPS as base, secondary and tertiary. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/FedEx/Tests/AddressValidationTest.php b/tests/FedEx/Tests/AddressValidationTest.php index 9a20b3e4..a50efd82 100644 --- a/tests/FedEx/Tests/AddressValidationTest.php +++ b/tests/FedEx/Tests/AddressValidationTest.php @@ -24,15 +24,15 @@ public function testAddressValidationRequest() } /** - * Tests unconfirmed address reply + * Tests unknown address reply */ - public function testUnconfirmedAddressReply() + public function testUnknownAddressReply() { $addressValidationRequest = new ComplexType\AddressValidationRequest(); $complexTypePopulator = new ComplexTypePopulator(); $complexTypePopulator->populate($addressValidationRequest); - $expectedResponse = $this->mockResponseSerializer->get('address-validation-unconfirmed.ser'); + $expectedResponse = $this->mockResponseSerializer->get('address-validation-unknown.ser'); $mockSoapClient = $this->getMockFromWsdl(Request::getWsdlPath()); $mockSoapClient->method('addressValidation')->will($this->returnValue($expectedResponse)); @@ -43,58 +43,9 @@ public function testUnconfirmedAddressReply() $this->assertInstanceOf(ComplexType\AddressValidationReply::class, $addressValidationReply); $this->assertCount(1, $addressValidationReply->AddressResults); $this->assertInstanceOf(ComplexType\AddressValidationResult::class, $addressValidationReply->AddressResults[0]); - $this->assertEquals(0, $addressValidationReply->AddressResults[0]->ProposedAddressDetails[0]->Score); - $this->assertEquals('UNDETERMINED', $addressValidationReply->AddressResults[0]->ProposedAddressDetails[0]->ResidentialStatus); - $this->assertEquals('UNCONFIRMED', $addressValidationReply->AddressResults[0]->ProposedAddressDetails[0]->DeliveryPointValidation); - $this->assertInstanceOf(ComplexType\Address::class, $addressValidationReply->AddressResults[0]->ProposedAddressDetails[0]->Address); - } - - /** - * Test multiple valid addresses - */ - public function testMultipleValidAddresses() - { - $addressValidationRequest = new ComplexType\AddressValidationRequest(); - $complexTypePopulator = new ComplexTypePopulator(); - $complexTypePopulator->populate($addressValidationRequest); - - //valid US Address (score 100) - $addressValidationRequest->AddressesToValidate[0] = new ComplexType\AddressToValidate(); - $addressValidationRequest->AddressesToValidate[0]->AddressId = 1; - $addressValidationRequest->AddressesToValidate[0]->Address->StreetLines = ['100 Nickerson RD']; - $addressValidationRequest->AddressesToValidate[0]->Address->City = 'Marlborough'; - $addressValidationRequest->AddressesToValidate[0]->Address->StateOrProvinceCode = 'MA'; - $addressValidationRequest->AddressesToValidate[0]->Address->PostalCode = '01752'; - $addressValidationRequest->AddressesToValidate[0]->Address->CountryCode = 'US'; - //valid AU address (score 97) - $addressValidationRequest->AddressesToValidate[1] = new ComplexType\AddressToValidate(); - $addressValidationRequest->AddressesToValidate[1]->AddressId = 2; - $addressValidationRequest->AddressesToValidate[1]->Address->StreetLines = ['167 PROSPECT HIGHWAY']; - $addressValidationRequest->AddressesToValidate[1]->Address->City = 'New SOUTH WALES'; - $addressValidationRequest->AddressesToValidate[1]->Address->PostalCode = '2147'; - $addressValidationRequest->AddressesToValidate[1]->Address->CountryCode = 'AU'; - - //valid GB Address (score 92) - $addressValidationRequest->AddressesToValidate[2] = new ComplexType\AddressToValidate(); - $addressValidationRequest->AddressesToValidate[2]->AddressId = 3; - $addressValidationRequest->AddressesToValidate[2]->Address->StreetLines = ['167 PROSPECT HIGHWAY']; - $addressValidationRequest->AddressesToValidate[2]->Address->City = 'New SOUTH WALES'; - $addressValidationRequest->AddressesToValidate[2]->Address->PostalCode = '2147'; - $addressValidationRequest->AddressesToValidate[2]->Address->CountryCode = 'AU'; - - $expectedResponse = $this->mockResponseSerializer->get('address-validation-multiple-valid-addresses.ser'); - - $mockSoapClient = $this->getMockFromWsdl(Request::getWsdlPath()); - $mockSoapClient->method('addressValidation')->will($this->returnValue($expectedResponse)); - - $request = new Request($mockSoapClient); - - $addressValidationReply = $request->getAddressValidationReply($addressValidationRequest); - $this->assertEquals(100, $addressValidationReply->AddressResults[0]->ProposedAddressDetails[0]->Score); - $this->assertEquals(97, $addressValidationReply->AddressResults[1]->ProposedAddressDetails[0]->Score); - $this->assertEquals(92, $addressValidationReply->AddressResults[2]->ProposedAddressDetails[0]->Score); - $this->assertEquals(strtoupper($addressValidationRequest->AddressesToValidate[0]->Address->StreetLines[0]), $addressValidationReply->AddressResults[0]->ProposedAddressDetails[0]->Address->StreetLines); + $this->assertEquals('UNKNOWN', $addressValidationReply->AddressResults[0]->Classification); + $this->assertInstanceOf(ComplexType\Address::class, $addressValidationReply->AddressResults[0]->EffectiveAddress); } } diff --git a/tests/mock-responses/address-validation-unknown.ser b/tests/mock-responses/address-validation-unknown.ser new file mode 100644 index 00000000..7ec3478a --- /dev/null +++ b/tests/mock-responses/address-validation-unknown.ser @@ -0,0 +1 @@ +O:8:"stdClass":5:{s:15:"HighestSeverity";s:7:"SUCCESS";s:13:"Notifications";O:8:"stdClass":4:{s:8:"Severity";s:7:"SUCCESS";s:6:"Source";s:3:"wsi";s:4:"Code";s:1:"0";s:7:"Message";s:7:"Success";}s:7:"Version";O:8:"stdClass":4:{s:9:"ServiceId";s:4:"aval";s:5:"Major";i:4;s:12:"Intermediate";i:0;s:5:"Minor";i:0;}s:14:"ReplyTimestamp";s:25:"2017-11-04T08:52:32-05:00";s:14:"AddressResults";O:8:"stdClass":5:{s:5:"State";s:10:"NORMALIZED";s:14:"Classification";s:7:"UNKNOWN";s:16:"EffectiveAddress";O:8:"stdClass":6:{s:11:"StreetLines";s:13:"12345 MAIN ST";s:4:"City";s:7:"ANYTOWN";s:19:"StateOrProvinceCode";s:2:"NY";s:10:"PostalCode";s:5:"47711";s:16:"UrbanizationCode";s:0:"";s:11:"CountryCode";s:2:"US";}s:24:"ParsedAddressPartsDetail";O:8:"stdClass":1:{s:16:"ParsedStreetLine";O:8:"stdClass":3:{s:11:"HouseNumber";s:5:"12345";s:10:"StreetName";s:4:"MAIN";s:12:"StreetSuffix";s:2:"ST";}}s:10:"Attributes";a:12:{i:0;O:8:"stdClass":2:{s:4:"Name";s:16:"CountrySupported";s:5:"Value";s:4:"true";}i:1;O:8:"stdClass":2:{s:4:"Name";s:23:"SuiteRequiredButMissing";s:5:"Value";s:5:"false";}i:2;O:8:"stdClass":2:{s:4:"Name";s:18:"InvalidSuiteNumber";s:5:"Value";s:5:"false";}i:3;O:8:"stdClass":2:{s:4:"Name";s:15:"MultipleMatches";s:5:"Value";s:5:"false";}i:4;O:8:"stdClass":2:{s:4:"Name";s:15:"PostalValidated";s:5:"Value";s:4:"true";}i:5;O:8:"stdClass":2:{s:4:"Name";s:15:"GeneralDelivery";s:5:"Value";s:5:"false";}i:6;O:8:"stdClass":2:{s:4:"Name";s:20:"StreetRangeValidated";s:5:"Value";s:5:"false";}i:7;O:8:"stdClass":2:{s:4:"Name";s:15:"StreetValidated";s:5:"Value";s:5:"false";}i:8;O:8:"stdClass":2:{s:4:"Name";s:29:"MissingOrAmbiguousDirectional";s:5:"Value";s:5:"false";}i:9;O:8:"stdClass":2:{s:4:"Name";s:18:"CityStateValidated";s:5:"Value";s:5:"false";}i:10;O:8:"stdClass":2:{s:4:"Name";s:8:"Resolved";s:5:"Value";s:5:"false";}i:11;O:8:"stdClass":2:{s:4:"Name";s:3:"DPV";s:5:"Value";s:5:"false";}}}} \ No newline at end of file diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 64cd18be..3e265a0e 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -114,7 +114,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //AddressValidationService - $wsdlPath = $fedexSrcDir . '/_wsdl/AddressValidationService_v2.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/AddressValidationService_v4.wsdl'; $baseNamespace = 'FedEx\AddressValidationService'; $subPackageName = 'Address Validation Service'; From dd700d0d273be017cebfb44047759c29e06fdfdf Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 4 Nov 2017 09:27:23 -0500 Subject: [PATCH 05/33] Updated Rate Service to version 22. --- CHANGELOG.md | 5 +- examples/example1.php | 12 +- examples/example2.php | 6 +- examples/rate-service-request.php | 156 - src/FedEx/RateService/ComplexType/Address.php | 26 + .../RateService/ComplexType/AlcoholDetail.php | 36 + .../ComplexType/AncillaryFeeAndTax.php | 62 + .../BatteryClassificationDetail.php | 62 + .../RateService/ComplexType/BrokerDetail.php | 49 + .../CleansedAddressAndLocationDetail.php | 114 + .../RateService/ComplexType/ClientDetail.php | 2 +- .../CodAddTransportationChargesDetail.php | 2 +- .../RateService/ComplexType/CodDetail.php | 39 + .../ComplexType/CommercialInvoice.php | 27 +- .../RateService/ComplexType/CommitDetail.php | 52 + .../RateService/ComplexType/Commodity.php | 60 +- .../ConfigurableLabelReferenceEntry.php | 10 +- .../ComplexType/ConsolidationKey.php | 62 + src/FedEx/RateService/ComplexType/Contact.php | 13 + .../ComplexType/CurrencyExchangeRate.php | 2 +- .../ComplexType/CustomDocumentDetail.php | 13 + .../ComplexType/CustomLabelDetail.php | 13 + .../ComplexType/CustomLabelTextBoxEntry.php | 140 + .../ComplexType/CustomLabelTextEntry.php | 13 + .../ComplexType/CustomerReference.php | 2 +- .../CustomerSpecifiedLabelDetail.php | 36 +- .../ComplexType/CustomsClearanceDetail.php | 49 +- .../ComplexType/CustomsOptionDetail.php | 49 + .../ComplexType/DangerousGoodsContainer.php | 88 + .../ComplexType/DangerousGoodsDetail.php | 105 +- ...angerousGoodsShippersDeclarationDetail.php | 49 + .../ComplexType/DangerousGoodsSignatory.php | 62 + .../DeliveryOnInvoiceAcceptanceDetail.php | 49 + .../RateService/ComplexType/Dimensions.php | 2 +- .../RateService/ComplexType/DocTabContent.php | 6 +- .../ComplexType/DocTabZoneSpecification.php | 10 +- .../DocumentFormatOptionsRequested.php | 36 + .../ComplexType/DocumentLineItem.php | 36 + .../RateService/ComplexType/EMailDetail.php | 49 + .../ComplexType/EMailLabelDetail.php | 49 - .../ComplexType/EMailNotificationDetail.php | 49 - .../EMailNotificationRecipient.php | 88 - .../RateService/ComplexType/EtdDetail.php | 18 +- .../ComplexType/ExportDeclarationDetail.php | 49 + .../RateService/ComplexType/ExportDetail.php | 9 +- .../ComplexType/ExpressFreightDetail.php | 17 +- .../ExpressFreightDetailContact.php | 2 +- .../ComplexType/FreightAddressLabelDetail.php | 101 + .../ComplexType/FreightRateDetail.php | 13 + .../ComplexType/FreightShipmentDetail.php | 48 +- .../ComplexType/FreightShipmentLineItem.php | 15 +- .../FreightSpecialServicePayment.php | 4 +- .../ComplexType/HazardousCommodityContent.php | 39 + .../HazardousCommodityDescription.php | 80 +- ...azardousCommodityInnerReceptacleDetail.php | 36 + .../HazardousCommodityPackingDetail.php | 49 + .../HazardousCommodityQuantityDetail.php | 15 +- .../ComplexType/HoldAtLocationDetail.php | 2 +- .../ComplexType/HomeDeliveryPremiumDetail.php | 6 +- .../InternationalControlledExportDetail.php | 88 + ...nationalTrafficInArmsRegulationsDetail.php | 36 + .../ComplexType/KeyValueDetail.php | 49 + .../ComplexType/LabelSpecification.php | 34 +- .../ComplexType/NetExplosiveDetail.php | 62 + .../RateService/ComplexType/Notification.php | 2 +- .../ComplexType/NotificationDetail.php | 62 + .../ComplexType/PackageRateDetail.php | 6 +- .../PackageSpecialServicesRequested.php | 34 +- src/FedEx/RateService/ComplexType/Party.php | 10 +- src/FedEx/RateService/ComplexType/Payment.php | 6 +- src/FedEx/RateService/ComplexType/Payor.php | 25 +- .../ComplexType/PendingShipmentDetail.php | 23 +- ...dingShipmentProcessingOptionsRequested.php | 36 + .../ComplexType/PriorityAlertDetail.php | 15 +- .../ComplexType/RadioactivityDetail.php | 75 + .../ComplexType/RadionuclideActivity.php | 49 + .../ComplexType/RadionuclideDetail.php | 88 + .../RateService/ComplexType/RateDiscount.php | 8 +- .../ComplexType/RateReplyDetail.php | 18 +- .../RateService/ComplexType/RateRequest.php | 21 +- .../ComplexType/RatedPackageDetail.php | 2 +- src/FedEx/RateService/ComplexType/Rebate.php | 6 +- .../RecommendedDocumentSpecification.php | 36 + .../RegulatoryLabelContentDetail.php | 49 + .../ComplexType/RequestedPackageLineItem.php | 19 +- .../ComplexType/RequestedShipment.php | 97 +- .../ComplexType/ReturnAssociationDetail.php | 49 + .../ComplexType/ReturnInstructionsDetail.php | 49 + .../ComplexType/ReturnShipmentDetail.php | 21 +- src/FedEx/RateService/ComplexType/Rma.php | 17 +- .../ShipmentAuthorizationDetail.php | 36 + .../ComplexType/ShipmentConfigurationData.php | 36 + .../ComplexType/ShipmentDryIceDetail.php | 13 + ...ipmentDryIceProcessingOptionsRequested.php | 36 + .../ShipmentEventNotificationDetail.php | 62 + ...ShipmentEventNotificationSpecification.php | 75 + .../ComplexType/ShipmentLegRateDetail.php | 26 + ...hipmentNotificationFormatSpecification.php | 36 + .../ComplexType/ShipmentRateDetail.php | 57 +- .../ShipmentSpecialServicesRequested.php | 59 +- .../ShipmentVariationOptionDetail.php | 49 + .../ShippingDocumentEMailDetail.php | 13 + .../ComplexType/ShippingDocumentFormat.php | 13 + .../ShippingDocumentSpecification.php | 56 +- .../ComplexType/SignatureOptionDetail.php | 6 +- .../ComplexType/SmartPostShipmentDetail.php | 13 + ...PostShipmentProcessingOptionsRequested.php | 36 + .../RateService/ComplexType/Surcharge.php | 6 +- src/FedEx/RateService/ComplexType/Tax.php | 2 +- .../ComplexType/TaxpayerIdentification.php | 32 +- .../ComplexType/TransactionDetail.php | 2 +- .../ComplexType/UploadDocumentDetail.php | 101 - .../UploadDocumentReferenceDetail.php | 13 + .../VariableHandlingChargeDetail.php | 2 +- .../ComplexType/VariableHandlingCharges.php | 32 +- .../ComplexType/WebAuthenticationDetail.php | 13 + src/FedEx/RateService/Request.php | 2 +- .../SimpleType/AdditionalLabelsType.php | 2 +- .../SimpleType/AlcoholRecipientType.php | 17 + .../SimpleType/AncillaryFeeAndTaxType.php | 19 + .../SimpleType/B13AFilingOptionType.php | 4 +- .../SimpleType/BarcodeSymbologyType.php | 2 + .../SimpleType/BatteryMaterialType.php | 17 + .../SimpleType/BatteryPackingType.php | 17 + .../SimpleType/BatteryRegulatorySubType.php | 16 + ...tAccountPaymentType.php => BrokerType.php} | 8 +- .../CodReturnReferenceIndicatorType.php | 2 +- .../SimpleType/CommodityPurposeType.php | 17 + .../SimpleType/ConsolidationType.php | 20 + .../SimpleType/CustomerReferenceType.php | 1 + ...omerSpecifiedLabelGenerationOptionType.php | 18 + .../SimpleType/CustomsOptionType.php | 25 + .../DangerousGoodsAccessibilityType.php | 2 +- .../DangerousGoodsPackingOptionType.php | 16 + .../DestinationControlStatementType.php | 2 +- .../SimpleType/DocTabContentType.php | 1 + .../SimpleType/DocumentFormatOptionType.php | 16 + .../RateService/SimpleType/DropoffType.php | 2 +- .../EMailNotificationRecipientType.php | 2 +- .../SimpleType/EtdAttributeType.php | 16 + .../SimpleType/FedExLocationType.php | 5 + .../SimpleType/FreightCollectTermsType.php | 17 + .../SimpleType/FreightRateQuoteType.php | 17 + .../SimpleType/FreightShipmentRoleType.php | 1 - ...mmodityDescriptionProcessingOptionType.php | 16 + .../HazardousCommodityOptionType.php | 5 +- .../HazardousCommodityPackingGroupType.php | 1 + .../HazardousCommodityQuantityType.php | 17 + .../HazardousCommodityRegulationType.php | 19 + .../HazardousContainerPackingType.php | 16 + .../InternationalControlledExportType.php | 26 + .../InternationalDocumentContentType.php | 2 +- .../SimpleType/LabelFormatType.php | 2 +- .../SimpleType/LabelMaskableDataType.php | 1 + .../RateService/SimpleType/LabelOrderType.php | 17 + .../LabelPrintingOrientationType.php | 2 +- .../RateService/SimpleType/LabelStockType.php | 2 +- .../RateService/SimpleType/LinearUnits.php | 2 +- .../SimpleType/MinimumChargeType.php | 2 +- .../SimpleType/NaftaNetCostMethodCode.php | 2 +- .../NetExplosiveClassificationType.php | 19 + ...ventType.php => NotificationEventType.php} | 5 +- ...matType.php => NotificationFormatType.php} | 5 +- .../SimpleType/NotificationSeverityType.php | 2 +- .../SimpleType/NotificationType.php | 16 + .../SimpleType/OversizeClassType.php | 2 +- .../SimpleType/PackageSpecialServiceType.php | 3 +- .../RateService/SimpleType/PackagingType.php | 6 +- .../SimpleType/PageQuadrantType.php | 19 + .../RateService/SimpleType/PaymentType.php | 2 +- .../PendingShipmentProcessingOptionType.php | 16 + .../SimpleType/PhysicalFormType.php | 19 + .../PriorityAlertEnhancementType.php | 16 + .../RadioactiveContainerClassType.php | 23 + .../SimpleType/RadioactivityUnitOfMeasure.php | 21 + .../SimpleType/RateDiscountType.php | 2 +- .../SimpleType/RateRequestType.php | 5 +- .../SimpleType/RatedWeightMethod.php | 3 +- .../RateService/SimpleType/RebateType.php | 2 +- .../SimpleType/RecipientCustomsIdType.php | 2 +- .../SimpleType/RecommendedDocumentType.php | 41 + .../SimpleType/RegulatoryControlType.php | 4 +- .../SimpleType/RegulatoryLabelType.php | 16 + .../RelativeVerticalPositionType.php | 17 + .../RequestedShippingDocumentType.php | 2 + .../RateService/SimpleType/ReturnType.php | 2 +- .../SimpleType/ReturnedRateType.php | 10 +- .../RateService/SimpleType/RotationType.php | 19 + .../SimpleType/ServiceOptionType.php | 1 + .../RateService/SimpleType/ServiceType.php | 11 +- .../ShipmentDryIceProcessingOptionType.php | 16 + .../ShipmentNotificationAggregationType.php | 17 + .../ShipmentNotificationRoleType.php | 20 + .../SimpleType/ShipmentSpecialServiceType.php | 13 +- .../ShippingDocumentDispositionType.php | 1 + .../SimpleType/ShippingDocumentImageType.php | 1 - .../SimpleType/SignatureOptionType.php | 2 +- .../SmartPostShipmentProcessingOptionType.php | 16 + .../SimpleType/SpecialRatingAppliedType.php | 3 +- .../RateService/SimpleType/SurchargeType.php | 8 + .../SimpleType/TermsOfSaleType.php | 27 - src/FedEx/RateService/SimpleType/TinType.php | 2 +- .../SimpleType/TransitTimeType.php | 2 +- .../SimpleType/UploadDocumentIdProducer.php | 6 +- .../SimpleType/UploadDocumentProducerType.php | 4 + .../SimpleType/UploadDocumentType.php | 1 + .../RateService/SimpleType/WeightUnits.php | 2 +- ...eService_v10.wsdl => RateService_v22.wsdl} | 9949 +++++++++-------- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 209 files changed, 9321 insertions(+), 5708 deletions(-) delete mode 100644 examples/rate-service-request.php create mode 100644 src/FedEx/RateService/ComplexType/AlcoholDetail.php create mode 100644 src/FedEx/RateService/ComplexType/AncillaryFeeAndTax.php create mode 100644 src/FedEx/RateService/ComplexType/BatteryClassificationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/BrokerDetail.php create mode 100644 src/FedEx/RateService/ComplexType/CleansedAddressAndLocationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ConsolidationKey.php create mode 100644 src/FedEx/RateService/ComplexType/CustomLabelTextBoxEntry.php create mode 100644 src/FedEx/RateService/ComplexType/CustomsOptionDetail.php create mode 100644 src/FedEx/RateService/ComplexType/DangerousGoodsContainer.php create mode 100644 src/FedEx/RateService/ComplexType/DangerousGoodsShippersDeclarationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/DangerousGoodsSignatory.php create mode 100644 src/FedEx/RateService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php create mode 100644 src/FedEx/RateService/ComplexType/DocumentFormatOptionsRequested.php create mode 100644 src/FedEx/RateService/ComplexType/DocumentLineItem.php create mode 100644 src/FedEx/RateService/ComplexType/EMailDetail.php delete mode 100644 src/FedEx/RateService/ComplexType/EMailLabelDetail.php delete mode 100644 src/FedEx/RateService/ComplexType/EMailNotificationDetail.php delete mode 100644 src/FedEx/RateService/ComplexType/EMailNotificationRecipient.php create mode 100644 src/FedEx/RateService/ComplexType/ExportDeclarationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/FreightAddressLabelDetail.php create mode 100644 src/FedEx/RateService/ComplexType/HazardousCommodityInnerReceptacleDetail.php create mode 100644 src/FedEx/RateService/ComplexType/HazardousCommodityPackingDetail.php create mode 100644 src/FedEx/RateService/ComplexType/InternationalControlledExportDetail.php create mode 100644 src/FedEx/RateService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php create mode 100644 src/FedEx/RateService/ComplexType/KeyValueDetail.php create mode 100644 src/FedEx/RateService/ComplexType/NetExplosiveDetail.php create mode 100644 src/FedEx/RateService/ComplexType/NotificationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/PendingShipmentProcessingOptionsRequested.php create mode 100644 src/FedEx/RateService/ComplexType/RadioactivityDetail.php create mode 100644 src/FedEx/RateService/ComplexType/RadionuclideActivity.php create mode 100644 src/FedEx/RateService/ComplexType/RadionuclideDetail.php create mode 100644 src/FedEx/RateService/ComplexType/RecommendedDocumentSpecification.php create mode 100644 src/FedEx/RateService/ComplexType/RegulatoryLabelContentDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ReturnAssociationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ReturnInstructionsDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentAuthorizationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentConfigurationData.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentEventNotificationDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentEventNotificationSpecification.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentNotificationFormatSpecification.php create mode 100644 src/FedEx/RateService/ComplexType/ShipmentVariationOptionDetail.php create mode 100644 src/FedEx/RateService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php delete mode 100644 src/FedEx/RateService/ComplexType/UploadDocumentDetail.php create mode 100644 src/FedEx/RateService/SimpleType/AlcoholRecipientType.php create mode 100644 src/FedEx/RateService/SimpleType/AncillaryFeeAndTaxType.php create mode 100644 src/FedEx/RateService/SimpleType/BatteryMaterialType.php create mode 100644 src/FedEx/RateService/SimpleType/BatteryPackingType.php create mode 100644 src/FedEx/RateService/SimpleType/BatteryRegulatorySubType.php rename src/FedEx/RateService/SimpleType/{FreightAccountPaymentType.php => BrokerType.php} (57%) create mode 100644 src/FedEx/RateService/SimpleType/CommodityPurposeType.php create mode 100644 src/FedEx/RateService/SimpleType/ConsolidationType.php create mode 100644 src/FedEx/RateService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/CustomsOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/DangerousGoodsPackingOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/DocumentFormatOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/EtdAttributeType.php create mode 100644 src/FedEx/RateService/SimpleType/FreightCollectTermsType.php create mode 100644 src/FedEx/RateService/SimpleType/FreightRateQuoteType.php create mode 100644 src/FedEx/RateService/SimpleType/HazardousCommodityDescriptionProcessingOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/HazardousCommodityQuantityType.php create mode 100644 src/FedEx/RateService/SimpleType/HazardousCommodityRegulationType.php create mode 100644 src/FedEx/RateService/SimpleType/HazardousContainerPackingType.php create mode 100644 src/FedEx/RateService/SimpleType/InternationalControlledExportType.php create mode 100644 src/FedEx/RateService/SimpleType/LabelOrderType.php create mode 100644 src/FedEx/RateService/SimpleType/NetExplosiveClassificationType.php rename src/FedEx/RateService/SimpleType/{EMailNotificationEventType.php => NotificationEventType.php} (72%) rename src/FedEx/RateService/SimpleType/{EMailNotificationFormatType.php => NotificationFormatType.php} (68%) create mode 100644 src/FedEx/RateService/SimpleType/NotificationType.php create mode 100644 src/FedEx/RateService/SimpleType/PageQuadrantType.php create mode 100644 src/FedEx/RateService/SimpleType/PendingShipmentProcessingOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/PhysicalFormType.php create mode 100644 src/FedEx/RateService/SimpleType/PriorityAlertEnhancementType.php create mode 100644 src/FedEx/RateService/SimpleType/RadioactiveContainerClassType.php create mode 100644 src/FedEx/RateService/SimpleType/RadioactivityUnitOfMeasure.php create mode 100644 src/FedEx/RateService/SimpleType/RecommendedDocumentType.php create mode 100644 src/FedEx/RateService/SimpleType/RegulatoryLabelType.php create mode 100644 src/FedEx/RateService/SimpleType/RelativeVerticalPositionType.php create mode 100644 src/FedEx/RateService/SimpleType/RotationType.php create mode 100644 src/FedEx/RateService/SimpleType/ShipmentDryIceProcessingOptionType.php create mode 100644 src/FedEx/RateService/SimpleType/ShipmentNotificationAggregationType.php create mode 100644 src/FedEx/RateService/SimpleType/ShipmentNotificationRoleType.php create mode 100644 src/FedEx/RateService/SimpleType/SmartPostShipmentProcessingOptionType.php delete mode 100644 src/FedEx/RateService/SimpleType/TermsOfSaleType.php rename src/FedEx/_wsdl/{RateService_v10.wsdl => RateService_v22.wsdl} (78%) mode change 100644 => 100755 diff --git a/CHANGELOG.md b/CHANGELOG.md index 48c9eefb..3bba7523 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ - Updated Pickup Service - Updated Ship Service - Updated Address Validation Service +- Updated Rate Service |Service|Version| |---|---| @@ -14,9 +15,9 @@ |Locator|2| |Package Movement Information|5| |Pickup|15| -|Rate|10| +|Rate|22| |Return Tag|1| -|Ship|21**| +|Ship|21| |Track|5| |Upload Document|11| |Open Ship|11| diff --git a/examples/example1.php b/examples/example1.php index 42aa7a2e..f2ed4580 100644 --- a/examples/example1.php +++ b/examples/example1.php @@ -24,7 +24,7 @@ //version $rateRequest->Version->ServiceId = 'crs'; -$rateRequest->Version->Major = 10; +$rateRequest->Version->Major = 22; $rateRequest->Version->Minor = 0; $rateRequest->Version->Intermediate = 0; @@ -46,11 +46,9 @@ //shipping charges payment $rateRequest->RequestedShipment->ShippingChargesPayment->PaymentType = SimpleType\PaymentType::_SENDER; -$rateRequest->RequestedShipment->ShippingChargesPayment->Payor->AccountNumber = FEDEX_ACCOUNT_NUMBER; -$rateRequest->RequestedShipment->ShippingChargesPayment->Payor->CountryCode = 'US'; //rate request types -$rateRequest->RequestedShipment->RateRequestTypes = [SimpleType\RateRequestType::_ACCOUNT, SimpleType\RateRequestType::_LIST]; +$rateRequest->RequestedShipment->RateRequestTypes = [SimpleType\RateRequestType::_PREFERRED, SimpleType\RateRequestType::_LIST]; $rateRequest->RequestedShipment->PackageCount = 2; @@ -76,14 +74,14 @@ $rateRequest->RequestedShipment->RequestedPackageLineItems[1]->GroupPackageCount = 1; $rateServiceRequest = new Request(); -$rateServiceRequest->getSoapClient()->__setLocation(Request::PRODUCTION_URL); //use production URL +//$rateServiceRequest->getSoapClient()->__setLocation(Request::PRODUCTION_URL); //use production URL + +$rateReply = $rateServiceRequest->getGetRatesReply($rateRequest, true); // send true as the 2nd argument to return the SoapClient's stdClass response. -$rateReply = $rateServiceRequest->getGetRatesReply($rateRequest); // send true as the 2nd argument to return the SoapClient's stdClass response. if (!empty($rateReply->RateReplyDetails)) { foreach ($rateReply->RateReplyDetails as $rateReplyDetail) { var_dump($rateReplyDetail->ServiceType); - var_dump($rateReplyDetail->DeliveryTimestamp); if (!empty($rateReplyDetail->RatedShipmentDetails)) { foreach ($rateReplyDetail->RatedShipmentDetails as $ratedShipmentDetail) { var_dump($ratedShipmentDetail->ShipmentRateDetail->RateType . ": " . $ratedShipmentDetail->ShipmentRateDetail->TotalNetCharge->Amount); diff --git a/examples/example2.php b/examples/example2.php index 5adf0cdf..c3de6ed5 100644 --- a/examples/example2.php +++ b/examples/example2.php @@ -24,7 +24,7 @@ //version $rateRequest->Version->ServiceId = 'crs'; -$rateRequest->Version->Major = 10; +$rateRequest->Version->Major = 22; $rateRequest->Version->Minor = 0; $rateRequest->Version->Intermediate = 0; @@ -46,11 +46,9 @@ //shipping charges payment $rateRequest->RequestedShipment->ShippingChargesPayment->PaymentType = SimpleType\PaymentType::_SENDER; -$rateRequest->RequestedShipment->ShippingChargesPayment->Payor->AccountNumber = FEDEX_ACCOUNT_NUMBER; -$rateRequest->RequestedShipment->ShippingChargesPayment->Payor->CountryCode = 'US'; //rate request types -$rateRequest->RequestedShipment->RateRequestTypes = [SimpleType\RateRequestType::_ACCOUNT, SimpleType\RateRequestType::_LIST]; +$rateRequest->RequestedShipment->RateRequestTypes = [SimpleType\RateRequestType::_PREFERRED, SimpleType\RateRequestType::_LIST]; $rateRequest->RequestedShipment->PackageCount = 2; diff --git a/examples/rate-service-request.php b/examples/rate-service-request.php deleted file mode 100644 index c6003a74..00000000 --- a/examples/rate-service-request.php +++ /dev/null @@ -1,156 +0,0 @@ -setKey(FEDEX_KEY) - ->setPassword(FEDEX_PASSWORD); - -//WebAuthenticationDetail -$webAuthenticationDetail = new ComplexType\WebAuthenticationDetail(); -$webAuthenticationDetail->setUserCredential($userCredential); - -$rateRequest->setWebAuthenticationDetail($webAuthenticationDetail); - -//ClientDetail -$clientDetail = new ComplexType\ClientDetail(); -$clientDetail - ->setAccountNumber(FEDEX_ACCOUNT_NUMBER) - ->setMeterNumber(FEDEX_METER_NUMBER); - -$rateRequest->setClientDetail($clientDetail); - -//TransactionDetail -$transactionDetail = new ComplexType\TransactionDetail(); -$transactionDetail->setCustomerTransactionId('Testing Rate Service request'); - -$rateRequest->setTransactionDetail($transactionDetail); - -//VersionId -$versionId = new ComplexType\VersionId(); -$versionId - ->setServiceId('crs') - ->setMajor(10) - ->setIntermediate(0) - ->setMinor(0); - -$rateRequest->setVersion($versionId); - -//OPTIONAL ReturnTransitAndCommit -$rateRequest->setReturnTransitAndCommit(true); - -//RequestedShipment -$requestedShipment = new ComplexType\RequestedShipment(); -$requestedShipment->setDropoffType(SimpleType\DropoffType::_REGULAR_PICKUP); -$requestedShipment->setShipTimestamp(date('c')); - -$rateRequest->setRequestedShipment($requestedShipment); - -//RequestedShipment/Shipper -$shipper = new ComplexType\Party(); - -$shipperAddress = new ComplexType\Address(); -$shipperAddress - ->setStreetLines(array('10 Fed Ex Pkwy')) - ->setCity('Memphis') - ->setStateOrProvinceCode('TN') - ->setPostalCode(38115) - ->setCountryCode('US'); - -$shipper->setAddress($shipperAddress); - -$requestedShipment->setShipper($shipper); - -//RequestedShipment/Recipient -$recipient = new ComplexType\Party(); - -$recipientAddress = new ComplexType\Address(); -$recipientAddress - ->setStreetLines(array('13450 Farmcrest Ct')) - ->setCity('Herndon') - ->setStateOrProvinceCode('VA') - ->setPostalCode(20171) - ->setCountryCode('US'); - -$recipient->setAddress($recipientAddress); - -$requestedShipment->setRecipient($recipient); - -//RequestedShipment/ShippingChargesPayment -$shippingChargesPayment = new ComplexType\Payment(); -$shippingChargesPayment->setPaymentType(SimpleType\PaymentType::_SENDER); - -$payor = new ComplexType\Payor(); -$payor - ->setAccountNumber(FEDEX_ACCOUNT_NUMBER) - ->setCountryCode('US'); - -$shippingChargesPayment->setPayor($payor); - -$requestedShipment->setShippingChargesPayment($shippingChargesPayment); - -//RequestedShipment/RateRequestType(s) -$requestedShipment->setRateRequestTypes([ - SimpleType\RateRequestType::_LIST, - SimpleType\RateRequestType::_ACCOUNT -]); - -//RequestedShipment/PackageCount -$requestedShipment->setPackageCount(2); - -//RequestedShipment/RequestedPackageLineItem(s) -$item1Weight = new ComplexType\Weight(); -$item1Weight - ->setUnits(SimpleType\WeightUnits::_LB) - ->setValue(2.0); - -$item1Dimensions = new ComplexType\Dimensions(); -$item1Dimensions - ->setLength(10) - ->setWidth(10) - ->setHeight(3) - ->setUnits(SimpleType\LinearUnits::_IN); - -$item1 = new ComplexType\RequestedPackageLineItem(); -$item1 - ->setWeight($item1Weight) - ->setDimensions($item1Dimensions) - ->setGroupPackageCount(1); - -$item2Weight = new ComplexType\Weight(); -$item2Weight - ->setUnits(SimpleType\WeightUnits::_LB) - ->setValue(5.0); - -$item2Dimensions = new ComplexType\Dimensions(); -$item2Dimensions - ->setLength(20) - ->setWidth(20) - ->setHeight(10) - ->setUnits(SimpleType\LinearUnits::_IN); - -$item2 = new ComplexType\RequestedPackageLineItem(); -$item2 - ->setWeight($item2Weight) - ->setDimensions($item2Dimensions) - ->setGroupPackageCount(1); - -$requestedShipment->setRequestedPackageLineItems([$item1, $item2]); - -$rateRequest->setRequestedShipment($requestedShipment); - -$rateServiceRequest = new RateService\Request(); -//$rateServiceRequest->getSoapClient()->__setLocation('https://ws.fedex.com:443/web-services/rate'); //use the production web service -$response = $rateServiceRequest->getGetRatesReply($rateRequest); - -var_dump($response); diff --git a/src/FedEx/RateService/ComplexType/Address.php b/src/FedEx/RateService/ComplexType/Address.php index 209eab07..4446cb37 100644 --- a/src/FedEx/RateService/ComplexType/Address.php +++ b/src/FedEx/RateService/ComplexType/Address.php @@ -16,7 +16,9 @@ * @property string $PostalCode * @property string $UrbanizationCode * @property string $CountryCode + * @property string $CountryName * @property boolean $Residential + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -100,6 +102,18 @@ public function setCountryCode($countryCode) return $this; } + /** + * The fully spelt out name of a country. + * + * @param string $countryName + * @return $this + */ + public function setCountryName($countryName) + { + $this->values['CountryName'] = $countryName; + return $this; + } + /** * Indicates whether this address residential (as opposed to commercial). * @@ -111,4 +125,16 @@ public function setResidential($residential) $this->values['Residential'] = $residential; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/AlcoholDetail.php b/src/FedEx/RateService/ComplexType/AlcoholDetail.php new file mode 100644 index 00000000..3e93ce23 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/AlcoholDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\AlcoholRecipientType|string $RecipientType + + */ +class AlcoholDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AlcoholDetail'; + + /** + * The license type that the recipient of the alcohol package. + * + * @param \FedEx\RateService\SimpleType\AlcoholRecipientType|string $recipientType + * @return $this + */ + public function setRecipientType($recipientType) + { + $this->values['RecipientType'] = $recipientType; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/AncillaryFeeAndTax.php b/src/FedEx/RateService/ComplexType/AncillaryFeeAndTax.php new file mode 100644 index 00000000..bde808e1 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/AncillaryFeeAndTax.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\AncillaryFeeAndTaxType|string $Type + * @property string $Description + * @property Money $Amount + + */ +class AncillaryFeeAndTax extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AncillaryFeeAndTax'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\AncillaryFeeAndTaxType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set Amount + * + * @param Money $amount + * @return $this + */ + public function setAmount(Money $amount) + { + $this->values['Amount'] = $amount; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/BatteryClassificationDetail.php b/src/FedEx/RateService/ComplexType/BatteryClassificationDetail.php new file mode 100644 index 00000000..01d43888 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/BatteryClassificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\BatteryMaterialType|string $Material + * @property \FedEx\RateService\SimpleType\BatteryPackingType|string $Packing + * @property \FedEx\RateService\SimpleType\BatteryRegulatorySubType|string $RegulatorySubType + + */ +class BatteryClassificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'BatteryClassificationDetail'; + + /** + * Describes the material composition of the battery or cell. + * + * @param \FedEx\RateService\SimpleType\BatteryMaterialType|string $material + * @return $this + */ + public function setMaterial($material) + { + $this->values['Material'] = $material; + return $this; + } + + /** + * Describes the packing arrangement of the battery or cell with respect to other items within the same package. + * + * @param \FedEx\RateService\SimpleType\BatteryPackingType|string $packing + * @return $this + */ + public function setPacking($packing) + { + $this->values['Packing'] = $packing; + return $this; + } + + /** + * A regulation specific classification for the battery or cell. + * + * @param \FedEx\RateService\SimpleType\BatteryRegulatorySubType|string $regulatorySubType + * @return $this + */ + public function setRegulatorySubType($regulatorySubType) + { + $this->values['RegulatorySubType'] = $regulatorySubType; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/BrokerDetail.php b/src/FedEx/RateService/ComplexType/BrokerDetail.php new file mode 100644 index 00000000..80be4200 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/BrokerDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\BrokerType|string $Type + * @property Party $Broker + + */ +class BrokerDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'BrokerDetail'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\BrokerType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Broker + * + * @param Party $broker + * @return $this + */ + public function setBroker(Party $broker) + { + $this->values['Broker'] = $broker; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/CleansedAddressAndLocationDetail.php b/src/FedEx/RateService/ComplexType/CleansedAddressAndLocationDetail.php new file mode 100644 index 00000000..5e94cd07 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/CleansedAddressAndLocationDetail.php @@ -0,0 +1,114 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $CountryCode + * @property string $StateOrProvinceCode + * @property string $PostalCode + * @property string $ServiceArea + * @property string $LocationId + * @property int $LocationNumber + * @property string $AirportId + + */ +class CleansedAddressAndLocationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CleansedAddressAndLocationDetail'; + + /** + * This represents the internal FedEx-system recognized country code. + * + * @param string $countryCode + * @return $this + */ + public function setCountryCode($countryCode) + { + $this->values['CountryCode'] = $countryCode; + return $this; + } + + /** + * This represents the internal FedEx-system recognized state or province code. + * + * @param string $stateOrProvinceCode + * @return $this + */ + public function setStateOrProvinceCode($stateOrProvinceCode) + { + $this->values['StateOrProvinceCode'] = $stateOrProvinceCode; + return $this; + } + + /** + * This represents the internal FedEx-system recognized postal code. + * + * @param string $postalCode + * @return $this + */ + public function setPostalCode($postalCode) + { + $this->values['PostalCode'] = $postalCode; + return $this; + } + + /** + * Set ServiceArea + * + * @param string $serviceArea + * @return $this + */ + public function setServiceArea($serviceArea) + { + $this->values['ServiceArea'] = $serviceArea; + return $this; + } + + /** + * The unique location identifier + * + * @param string $locationId + * @return $this + */ + public function setLocationId($locationId) + { + $this->values['LocationId'] = $locationId; + return $this; + } + + /** + * The op-co specific numeric identifier for a location + * + * @param int $locationNumber + * @return $this + */ + public function setLocationNumber($locationNumber) + { + $this->values['LocationNumber'] = $locationNumber; + return $this; + } + + /** + * Set AirportId + * + * @param string $airportId + * @return $this + */ + public function setAirportId($airportId) + { + $this->values['AirportId'] = $airportId; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ClientDetail.php b/src/FedEx/RateService/ComplexType/ClientDetail.php index 3fe92da2..d794ab89 100644 --- a/src/FedEx/RateService/ComplexType/ClientDetail.php +++ b/src/FedEx/RateService/ComplexType/ClientDetail.php @@ -51,7 +51,7 @@ public function setMeterNumber($meterNumber) } /** - * Only used in transactions which require identification of the Fed Ex Office integrator. + * Only used in transactions which require identification of the FedEx Office integrator. * * @param string $integratorId * @return $this diff --git a/src/FedEx/RateService/ComplexType/CodAddTransportationChargesDetail.php b/src/FedEx/RateService/ComplexType/CodAddTransportationChargesDetail.php index 901e987b..807b4912 100644 --- a/src/FedEx/RateService/ComplexType/CodAddTransportationChargesDetail.php +++ b/src/FedEx/RateService/ComplexType/CodAddTransportationChargesDetail.php @@ -25,7 +25,7 @@ class CodAddTransportationChargesDetail extends AbstractComplexType protected $name = 'CodAddTransportationChargesDetail'; /** - * Set RateTypeBasis + * Select the type of rate from which the element is to be selected. * * @param \FedEx\RateService\SimpleType\RateTypeBasisType|string $rateTypeBasis * @return $this diff --git a/src/FedEx/RateService/ComplexType/CodDetail.php b/src/FedEx/RateService/ComplexType/CodDetail.php index 354af5b7..8bed4581 100644 --- a/src/FedEx/RateService/ComplexType/CodDetail.php +++ b/src/FedEx/RateService/ComplexType/CodDetail.php @@ -14,7 +14,10 @@ * @property CodAddTransportationChargesDetail $AddTransportationChargesDetail * @property \FedEx\RateService\SimpleType\CodCollectionType|string $CollectionType * @property Party $CodRecipient + * @property ContactAndAddress $FinancialInstitutionContactAndAddress + * @property string $RemitToName * @property \FedEx\RateService\SimpleType\CodReturnReferenceIndicatorType|string $ReferenceIndicator + * @property TrackingId $ReturnTrackingId */ class CodDetail extends AbstractComplexType @@ -74,6 +77,30 @@ public function setCodRecipient(Party $codRecipient) return $this; } + /** + * When the FedEx COD payment type is not CASH, indicates the contact and address of the financial institution used to service the payment of the COD. + * + * @param ContactAndAddress $financialInstitutionContactAndAddress + * @return $this + */ + public function setFinancialInstitutionContactAndAddress(ContactAndAddress $financialInstitutionContactAndAddress) + { + $this->values['FinancialInstitutionContactAndAddress'] = $financialInstitutionContactAndAddress; + return $this; + } + + /** + * Specifies the name of person or company receiving the secured/unsecured funds payment + * + * @param string $remitToName + * @return $this + */ + public function setRemitToName($remitToName) + { + $this->values['RemitToName'] = $remitToName; + return $this; + } + /** * Indicates which type of reference information to include on the COD return shipping label. * @@ -85,4 +112,16 @@ public function setReferenceIndicator($referenceIndicator) $this->values['ReferenceIndicator'] = $referenceIndicator; return $this; } + + /** + * Only used with multi-piece COD shipments sent in multiple transactions. Required on last transaction only. + * + * @param TrackingId $returnTrackingId + * @return $this + */ + public function setReturnTrackingId(TrackingId $returnTrackingId) + { + $this->values['ReturnTrackingId'] = $returnTrackingId; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/CommercialInvoice.php b/src/FedEx/RateService/ComplexType/CommercialInvoice.php index 8929e2e2..0030f31e 100644 --- a/src/FedEx/RateService/ComplexType/CommercialInvoice.php +++ b/src/FedEx/RateService/ComplexType/CommercialInvoice.php @@ -17,12 +17,11 @@ * @property Money $PackingCosts * @property Money $HandlingCosts * @property string $SpecialInstructions - * @property string $DeclarationStatment + * @property string $DeclarationStatement * @property string $PaymentTerms * @property \FedEx\RateService\SimpleType\PurposeOfShipmentType|string $Purpose - * @property string $CustomerInvoiceNumber * @property string $OriginatorName - * @property \FedEx\RateService\SimpleType\TermsOfSaleType|string $TermsOfSale + * @property string $TermsOfSale */ class CommercialInvoice extends AbstractComplexType @@ -121,12 +120,12 @@ public function setSpecialInstructions($specialInstructions) /** * Free-form text. * - * @param string $declarationStatment + * @param string $declarationStatement * @return $this */ - public function setDeclarationStatment($declarationStatment) + public function setDeclarationStatement($declarationStatement) { - $this->values['DeclarationStatment'] = $declarationStatment; + $this->values['DeclarationStatement'] = $declarationStatement; return $this; } @@ -154,18 +153,6 @@ public function setPurpose($purpose) return $this; } - /** - * Customer assigned Invoice number - * - * @param string $customerInvoiceNumber - * @return $this - */ - public function setCustomerInvoiceNumber($customerInvoiceNumber) - { - $this->values['CustomerInvoiceNumber'] = $customerInvoiceNumber; - return $this; - } - /** * Name of the International Expert that completed the Commercial Invoice different from Sender. * @@ -179,9 +166,9 @@ public function setOriginatorName($originatorName) } /** - * Required for dutiable international Express or Ground shipment. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice + * Required for dutiable international Express or Ground shipments. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice. * - * @param \FedEx\RateService\SimpleType\TermsOfSaleType|string $termsOfSale + * @param string $termsOfSale * @return $this */ public function setTermsOfSale($termsOfSale) diff --git a/src/FedEx/RateService/ComplexType/CommitDetail.php b/src/FedEx/RateService/ComplexType/CommitDetail.php index 7e0affdb..ade298ad 100644 --- a/src/FedEx/RateService/ComplexType/CommitDetail.php +++ b/src/FedEx/RateService/ComplexType/CommitDetail.php @@ -14,6 +14,10 @@ * @property \FedEx\RateService\SimpleType\ServiceType|string $ServiceType * @property \FedEx\RateService\SimpleType\ServiceOptionType|string[] $AppliedOptions * @property ServiceSubOptionDetail $AppliedSubOptions + * @property SignatureOptionDetail $DerivedShipmentSignatureOption + * @property SignatureOptionDetail[] $DerivedPackageSignatureOptions + * @property CleansedAddressAndLocationDetail $DerivedOriginDetail + * @property CleansedAddressAndLocationDetail $DerivedDestinationDetail * @property string $CommitTimestamp * @property \FedEx\RateService\SimpleType\DayOfWeekType|string $DayOfWeek * @property \FedEx\RateService\SimpleType\TransitTimeType|string $TransitTime @@ -91,6 +95,54 @@ public function setAppliedSubOptions(ServiceSubOptionDetail $appliedSubOptions) return $this; } + /** + * Set DerivedShipmentSignatureOption + * + * @param SignatureOptionDetail $derivedShipmentSignatureOption + * @return $this + */ + public function setDerivedShipmentSignatureOption(SignatureOptionDetail $derivedShipmentSignatureOption) + { + $this->values['DerivedShipmentSignatureOption'] = $derivedShipmentSignatureOption; + return $this; + } + + /** + * Set DerivedPackageSignatureOptions + * + * @param SignatureOptionDetail[] $derivedPackageSignatureOptions + * @return $this + */ + public function setDerivedPackageSignatureOptions(array $derivedPackageSignatureOptions) + { + $this->values['DerivedPackageSignatureOptions'] = $derivedPackageSignatureOptions; + return $this; + } + + /** + * Set DerivedOriginDetail + * + * @param CleansedAddressAndLocationDetail $derivedOriginDetail + * @return $this + */ + public function setDerivedOriginDetail(CleansedAddressAndLocationDetail $derivedOriginDetail) + { + $this->values['DerivedOriginDetail'] = $derivedOriginDetail; + return $this; + } + + /** + * Set DerivedDestinationDetail + * + * @param CleansedAddressAndLocationDetail $derivedDestinationDetail + * @return $this + */ + public function setDerivedDestinationDetail(CleansedAddressAndLocationDetail $derivedDestinationDetail) + { + $this->values['DerivedDestinationDetail'] = $derivedDestinationDetail; + return $this; + } + /** * THe delivery commitment date/time. Express Only. * diff --git a/src/FedEx/RateService/ComplexType/Commodity.php b/src/FedEx/RateService/ComplexType/Commodity.php index c49c9f2f..839e370c 100644 --- a/src/FedEx/RateService/ComplexType/Commodity.php +++ b/src/FedEx/RateService/ComplexType/Commodity.php @@ -4,8 +4,7 @@ use FedEx\AbstractComplexType; /** - * For international multiple piece shipments, commodity information must be passed in the Master and on each child transaction. - If this shipment cotains more than four commodities line items, the four highest valued should be included in the first 4 occurances for this request. + * Commodity * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,10 +13,11 @@ * @property string $Name * @property int $NumberOfPieces * @property string $Description + * @property \FedEx\RateService\SimpleType\CommodityPurposeType|string $Purpose * @property string $CountryOfManufacture * @property string $HarmonizedCode * @property Weight $Weight - * @property int $Quantity + * @property float $Quantity * @property string $QuantityUnits * @property Measure[] $AdditionalMeasures * @property Money $UnitPrice @@ -26,6 +26,7 @@ * @property string $ExportLicenseNumber * @property string $ExportLicenseExpirationDate * @property string $CIMarksAndNumbers + * @property string $PartNumber * @property NaftaCommodityDetail $NaftaDetail */ @@ -39,7 +40,7 @@ class Commodity extends AbstractComplexType protected $name = 'Commodity'; /** - * total number of pieces of this commodity + * Set Name * * @param string $name * @return $this @@ -51,7 +52,7 @@ public function setName($name) } /** - * total number of pieces of this commodity + * Set NumberOfPieces * * @param int $numberOfPieces * @return $this @@ -63,7 +64,7 @@ public function setNumberOfPieces($numberOfPieces) } /** - * Complete and accurate description of this commodity. + * Set Description * * @param string $description * @return $this @@ -75,7 +76,19 @@ public function setDescription($description) } /** - * Country code where commodity contents were produced or manufactured in their final form. + * Set Purpose + * + * @param \FedEx\RateService\SimpleType\CommodityPurposeType|string $purpose + * @return $this + */ + public function setPurpose($purpose) + { + $this->values['Purpose'] = $purpose; + return $this; + } + + /** + * Set CountryOfManufacture * * @param string $countryOfManufacture * @return $this @@ -87,8 +100,7 @@ public function setCountryOfManufacture($countryOfManufacture) } /** - * Unique alpha/numeric representing commodity item. - At least one occurrence is required for US Export shipments if the Customs Value is greater than $2500 or if a valid US Export license is required. + * Set HarmonizedCode * * @param string $harmonizedCode * @return $this @@ -100,7 +112,7 @@ public function setHarmonizedCode($harmonizedCode) } /** - * Total weight of this commodity. 1 explicit decimal position. Max length 11 including decimal. + * Set Weight * * @param Weight $weight * @return $this @@ -112,9 +124,9 @@ public function setWeight(Weight $weight) } /** - * Number of units of a commodity in total number of pieces for this line item. Max length is 9 + * Set Quantity * - * @param int $quantity + * @param float $quantity * @return $this */ public function setQuantity($quantity) @@ -124,7 +136,7 @@ public function setQuantity($quantity) } /** - * Unit of measure used to express the quantity of this commodity line item. + * Set QuantityUnits * * @param string $quantityUnits * @return $this @@ -148,7 +160,7 @@ public function setAdditionalMeasures(array $additionalMeasures) } /** - * Value of each unit in Quantity. Six explicit decimal positions, Max length 18 including decimal. + * Set UnitPrice * * @param Money $unitPrice * @return $this @@ -160,9 +172,7 @@ public function setUnitPrice(Money $unitPrice) } /** - * Total customs value for this line item. - It should equal the commodity unit quantity times commodity unit value. - Six explicit decimal positions, max length 18 including decimal. + * Set CustomsValue * * @param Money $customsValue * @return $this @@ -186,7 +196,7 @@ public function setExciseConditions(array $exciseConditions) } /** - * Applicable to US export shipping only. + * Set ExportLicenseNumber * * @param string $exportLicenseNumber * @return $this @@ -210,7 +220,7 @@ public function setExportLicenseExpirationDate($exportLicenseExpirationDate) } /** - * An identifying mark or number used on the packaging of a shipment to help customers identify a particular shipment. + * Set CIMarksAndNumbers * * @param string $cIMarksAndNumbers * @return $this @@ -221,6 +231,18 @@ public function setCIMarksAndNumbers($cIMarksAndNumbers) return $this; } + /** + * Set PartNumber + * + * @param string $partNumber + * @return $this + */ + public function setPartNumber($partNumber) + { + $this->values['PartNumber'] = $partNumber; + return $this; + } + /** * All data required for this commodity in NAFTA Certificate of Origin. * diff --git a/src/FedEx/RateService/ComplexType/ConfigurableLabelReferenceEntry.php b/src/FedEx/RateService/ComplexType/ConfigurableLabelReferenceEntry.php index 210db0a8..8067b38a 100644 --- a/src/FedEx/RateService/ComplexType/ConfigurableLabelReferenceEntry.php +++ b/src/FedEx/RateService/ComplexType/ConfigurableLabelReferenceEntry.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. + * ConfigurableLabelReferenceEntry * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class ConfigurableLabelReferenceEntry extends AbstractComplexType protected $name = 'ConfigurableLabelReferenceEntry'; /** - * 1 of 12 possible zones to position data. + * Set ZoneNumber * * @param int $zoneNumber * @return $this @@ -38,7 +38,7 @@ public function setZoneNumber($zoneNumber) } /** - * The identifiying text for the data in this zone. + * Set Header * * @param string $header * @return $this @@ -50,7 +50,7 @@ public function setHeader($header) } /** - * A reference to a field in either the request or reply to print in this zone following the header. + * Set DataField * * @param string $dataField * @return $this @@ -62,7 +62,7 @@ public function setDataField($dataField) } /** - * A literal value to print after the header in this zone. + * Set LiteralValue * * @param string $literalValue * @return $this diff --git a/src/FedEx/RateService/ComplexType/ConsolidationKey.php b/src/FedEx/RateService/ComplexType/ConsolidationKey.php new file mode 100644 index 00000000..a8fa8af5 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ConsolidationKey.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\ConsolidationType|string $Type + * @property string $Index + * @property string $Date + + */ +class ConsolidationKey extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ConsolidationKey'; + + /** + * Specifies the type of consolidation. + * + * @param \FedEx\RateService\SimpleType\ConsolidationType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Uniquely identifies the consolidation, within a given type and date. + * + * @param string $index + * @return $this + */ + public function setIndex($index) + { + $this->values['Index'] = $index; + return $this; + } + + /** + * The date on which the consolidation was created. + * + * @param string $date + * @return $this + */ + public function setDate($date) + { + $this->values['Date'] = $date; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/Contact.php b/src/FedEx/RateService/ComplexType/Contact.php index e91697fa..12b85c46 100644 --- a/src/FedEx/RateService/ComplexType/Contact.php +++ b/src/FedEx/RateService/ComplexType/Contact.php @@ -16,6 +16,7 @@ * @property string $CompanyName * @property string $PhoneNumber * @property string $PhoneExtension + * @property string $TollFreePhoneNumber * @property string $PagerNumber * @property string $FaxNumber * @property string $EMailAddress @@ -102,6 +103,18 @@ public function setPhoneExtension($phoneExtension) return $this; } + /** + * Identifies a toll free number, if any, associated with this contact. + * + * @param string $tollFreePhoneNumber + * @return $this + */ + public function setTollFreePhoneNumber($tollFreePhoneNumber) + { + $this->values['TollFreePhoneNumber'] = $tollFreePhoneNumber; + return $this; + } + /** * Identifies the pager number associated with this contact. * diff --git a/src/FedEx/RateService/ComplexType/CurrencyExchangeRate.php b/src/FedEx/RateService/ComplexType/CurrencyExchangeRate.php index f1e7636c..6345fa64 100644 --- a/src/FedEx/RateService/ComplexType/CurrencyExchangeRate.php +++ b/src/FedEx/RateService/ComplexType/CurrencyExchangeRate.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Specifies the currency exchange performed on financial amounts for this rate. + * CurrencyExchangeRate * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/CustomDocumentDetail.php b/src/FedEx/RateService/ComplexType/CustomDocumentDetail.php index 6dac735e..ab107d01 100644 --- a/src/FedEx/RateService/ComplexType/CustomDocumentDetail.php +++ b/src/FedEx/RateService/ComplexType/CustomDocumentDetail.php @@ -14,6 +14,7 @@ * @property \FedEx\RateService\SimpleType\LabelPrintingOrientationType|string $LabelPrintingOrientation * @property \FedEx\RateService\SimpleType\LabelRotationType|string $LabelRotation * @property string $SpecificationId + * @property CustomLabelDetail $CustomContent */ class CustomDocumentDetail extends AbstractComplexType @@ -72,4 +73,16 @@ public function setSpecificationId($specificationId) $this->values['SpecificationId'] = $specificationId; return $this; } + + /** + * Set CustomContent + * + * @param CustomLabelDetail $customContent + * @return $this + */ + public function setCustomContent(CustomLabelDetail $customContent) + { + $this->values['CustomContent'] = $customContent; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/CustomLabelDetail.php b/src/FedEx/RateService/ComplexType/CustomLabelDetail.php index 4dd05763..292fb894 100644 --- a/src/FedEx/RateService/ComplexType/CustomLabelDetail.php +++ b/src/FedEx/RateService/ComplexType/CustomLabelDetail.php @@ -14,6 +14,7 @@ * @property CustomLabelTextEntry[] $TextEntries * @property CustomLabelGraphicEntry[] $GraphicEntries * @property CustomLabelBoxEntry[] $BoxEntries + * @property CustomLabelTextBoxEntry[] $TextBoxEntries * @property CustomLabelBarcodeEntry[] $BarcodeEntries */ @@ -74,6 +75,18 @@ public function setBoxEntries(array $boxEntries) return $this; } + /** + * Set TextBoxEntries + * + * @param CustomLabelTextBoxEntry[] $textBoxEntries + * @return $this + */ + public function setTextBoxEntries(array $textBoxEntries) + { + $this->values['TextBoxEntries'] = $textBoxEntries; + return $this; + } + /** * Set BarcodeEntries * diff --git a/src/FedEx/RateService/ComplexType/CustomLabelTextBoxEntry.php b/src/FedEx/RateService/ComplexType/CustomLabelTextBoxEntry.php new file mode 100644 index 00000000..aaa0184d --- /dev/null +++ b/src/FedEx/RateService/ComplexType/CustomLabelTextBoxEntry.php @@ -0,0 +1,140 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property CustomLabelPosition $TopLeftCorner + * @property CustomLabelPosition $BottomRightCorner + * @property CustomLabelPosition $Position + * @property string $Format + * @property string[] $DataFields + * @property string $ThermalFontId + * @property string $FontName + * @property int $FontSize + * @property \FedEx\RateService\SimpleType\RotationType|string $Rotation + + */ +class CustomLabelTextBoxEntry extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CustomLabelTextBoxEntry'; + + /** + * Set TopLeftCorner + * + * @param CustomLabelPosition $topLeftCorner + * @return $this + */ + public function setTopLeftCorner(CustomLabelPosition $topLeftCorner) + { + $this->values['TopLeftCorner'] = $topLeftCorner; + return $this; + } + + /** + * Set BottomRightCorner + * + * @param CustomLabelPosition $bottomRightCorner + * @return $this + */ + public function setBottomRightCorner(CustomLabelPosition $bottomRightCorner) + { + $this->values['BottomRightCorner'] = $bottomRightCorner; + return $this; + } + + /** + * Set Position + * + * @param CustomLabelPosition $position + * @return $this + */ + public function setPosition(CustomLabelPosition $position) + { + $this->values['Position'] = $position; + return $this; + } + + /** + * Set Format + * + * @param string $format + * @return $this + */ + public function setFormat($format) + { + $this->values['Format'] = $format; + return $this; + } + + /** + * Set DataFields + * + * @param string $dataFields + * @return $this + */ + public function setDataFields($dataFields) + { + $this->values['DataFields'] = $dataFields; + return $this; + } + + /** + * Printer-specific font name for use with thermal printer labels. + * + * @param string $thermalFontId + * @return $this + */ + public function setThermalFontId($thermalFontId) + { + $this->values['ThermalFontId'] = $thermalFontId; + return $this; + } + + /** + * Generic font name for use with plain paper labels. + * + * @param string $fontName + * @return $this + */ + public function setFontName($fontName) + { + $this->values['FontName'] = $fontName; + return $this; + } + + /** + * Generic font size for use with plain paper labels. + * + * @param int $fontSize + * @return $this + */ + public function setFontSize($fontSize) + { + $this->values['FontSize'] = $fontSize; + return $this; + } + + /** + * Set Rotation + * + * @param \FedEx\RateService\SimpleType\RotationType|string $rotation + * @return $this + */ + public function setRotation($rotation) + { + $this->values['Rotation'] = $rotation; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/CustomLabelTextEntry.php b/src/FedEx/RateService/ComplexType/CustomLabelTextEntry.php index 693390f3..02438748 100644 --- a/src/FedEx/RateService/ComplexType/CustomLabelTextEntry.php +++ b/src/FedEx/RateService/ComplexType/CustomLabelTextEntry.php @@ -16,6 +16,7 @@ * @property string $ThermalFontId * @property string $FontName * @property int $FontSize + * @property \FedEx\RateService\SimpleType\RotationType|string $Rotation */ class CustomLabelTextEntry extends AbstractComplexType @@ -98,4 +99,16 @@ public function setFontSize($fontSize) $this->values['FontSize'] = $fontSize; return $this; } + + /** + * Set Rotation + * + * @param \FedEx\RateService\SimpleType\RotationType|string $rotation + * @return $this + */ + public function setRotation($rotation) + { + $this->values['Rotation'] = $rotation; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/CustomerReference.php b/src/FedEx/RateService/ComplexType/CustomerReference.php index e6067f7f..2eba460f 100644 --- a/src/FedEx/RateService/ComplexType/CustomerReference.php +++ b/src/FedEx/RateService/ComplexType/CustomerReference.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Reference information to be associated with this package. + * CustomerReference * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/CustomerSpecifiedLabelDetail.php b/src/FedEx/RateService/ComplexType/CustomerSpecifiedLabelDetail.php index 4e399a82..fc158834 100644 --- a/src/FedEx/RateService/ComplexType/CustomerSpecifiedLabelDetail.php +++ b/src/FedEx/RateService/ComplexType/CustomerSpecifiedLabelDetail.php @@ -11,11 +11,13 @@ * @subpackage Rate Service * * @property DocTabContent $DocTabContent + * @property \FedEx\RateService\SimpleType\RelativeVerticalPositionType|string $CustomContentPosition * @property CustomLabelDetail $CustomContent * @property ConfigurableLabelReferenceEntry[] $ConfigurableReferenceEntries * @property \FedEx\RateService\SimpleType\LabelMaskableDataType|string[] $MaskedData * @property \FedEx\RateService\SimpleType\SecondaryBarcodeType|string $SecondaryBarcode * @property Localization $TermsAndConditionsLocalization + * @property RegulatoryLabelContentDetail[] $RegulatoryLabels * @property AdditionalLabelsDetail[] $AdditionalLabels * @property int $AirWaybillSuppressionCount @@ -30,7 +32,7 @@ class CustomerSpecifiedLabelDetail extends AbstractComplexType protected $name = 'CustomerSpecifiedLabelDetail'; /** - * If omitted, no doc tab will be produced (i.e. default = former NONE type). + * If omitted, no doc tab will be produced (i.e. default is former NONE type). * * @param DocTabContent $docTabContent * @return $this @@ -42,7 +44,19 @@ public function setDocTabContent(DocTabContent $docTabContent) } /** - * Defines any custom content to print on the label. + * Controls the position of the customer specified content relative to the FedEx portion. + * + * @param \FedEx\RateService\SimpleType\RelativeVerticalPositionType|string $customContentPosition + * @return $this + */ + public function setCustomContentPosition($customContentPosition) + { + $this->values['CustomContentPosition'] = $customContentPosition; + return $this; + } + + /** + * Set CustomContent * * @param CustomLabelDetail $customContent * @return $this @@ -54,7 +68,7 @@ public function setCustomContent(CustomLabelDetail $customContent) } /** - * Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. + * Set ConfigurableReferenceEntries * * @param ConfigurableLabelReferenceEntry[] $configurableReferenceEntries * @return $this @@ -78,7 +92,7 @@ public function setMaskedData(array $maskedData) } /** - * For customers producing their own Ground labels, this field specifies which secondary barcode will be printed on the label; so that the primary barcode produced by FedEx has the corect SCNC. + * For customers producing their own Ground labels, this field specifies which secondary barcode will be printed on the label; so that the primary barcode produced by FedEx has the correct SCNC. * * @param \FedEx\RateService\SimpleType\SecondaryBarcodeType|string $secondaryBarcode * @return $this @@ -90,7 +104,7 @@ public function setSecondaryBarcode($secondaryBarcode) } /** - * The language to use when printing the terms and conditions on the label. + * Set TermsAndConditionsLocalization * * @param Localization $termsAndConditionsLocalization * @return $this @@ -101,6 +115,18 @@ public function setTermsAndConditionsLocalization(Localization $termsAndConditio return $this; } + /** + * Set RegulatoryLabels + * + * @param RegulatoryLabelContentDetail[] $regulatoryLabels + * @return $this + */ + public function setRegulatoryLabels(array $regulatoryLabels) + { + $this->values['RegulatoryLabels'] = $regulatoryLabels; + return $this; + } + /** * Controls the number of additional copies of supplemental labels. * diff --git a/src/FedEx/RateService/ComplexType/CustomsClearanceDetail.php b/src/FedEx/RateService/ComplexType/CustomsClearanceDetail.php index 100dfaf0..58685e74 100644 --- a/src/FedEx/RateService/ComplexType/CustomsClearanceDetail.php +++ b/src/FedEx/RateService/ComplexType/CustomsClearanceDetail.php @@ -10,8 +10,9 @@ * @package PHP FedEx API wrapper * @subpackage Rate Service * - * @property Party $Broker + * @property BrokerDetail[] $Brokers * @property \FedEx\RateService\SimpleType\ClearanceBrokerageType|string $ClearanceBrokerage + * @property CustomsOptionDetail $CustomsOptions * @property Party $ImporterOfRecord * @property RecipientCustomsId $RecipientCustomsId * @property Payment $DutiesPayment @@ -36,15 +37,14 @@ class CustomsClearanceDetail extends AbstractComplexType protected $name = 'CustomsClearanceDetail'; /** - * Descriptive data identifying the Broker responsible for the shipmet. - Required if BROKER_SELECT_OPTION is requested in Special Services. + * Set Brokers * - * @param Party $broker + * @param BrokerDetail[] $brokers * @return $this */ - public function setBroker(Party $broker) + public function setBrokers(array $brokers) { - $this->values['Broker'] = $broker; + $this->values['Brokers'] = $brokers; return $this; } @@ -61,15 +61,19 @@ public function setClearanceBrokerage($clearanceBrokerage) } /** - * Applicable only for Commercial Invoice. If the consignee and importer are not the same, the Following importer fields are required. - Importer/Contact/PersonName - Importer/Contact/CompanyName - Importer/Contact/PhoneNumber - Importer/Address/StreetLine[0] - Importer/Address/City - Importer/Address/StateOrProvinceCode - if Importer Country Code is US or CA - Importer/Address/PostalCode - if Importer Country Code is US or CA - Importer/Address/CountryCode + * Set CustomsOptions + * + * @param CustomsOptionDetail $customsOptions + * @return $this + */ + public function setCustomsOptions(CustomsOptionDetail $customsOptions) + { + $this->values['CustomsOptions'] = $customsOptions; + return $this; + } + + /** + * Set ImporterOfRecord * * @param Party $importerOfRecord * @return $this @@ -93,7 +97,7 @@ public function setRecipientCustomsId(RecipientCustomsId $recipientCustomsId) } /** - * Indicates how payment of duties for the shipment will be made. + * Set DutiesPayment * * @param Payment $dutiesPayment * @return $this @@ -105,7 +109,7 @@ public function setDutiesPayment(Payment $dutiesPayment) } /** - * Indicates whether this shipment contains documents only or non-documents. + * Set DocumentContent * * @param \FedEx\RateService\SimpleType\InternationalDocumentContentType|string $documentContent * @return $this @@ -117,7 +121,7 @@ public function setDocumentContent($documentContent) } /** - * The total customs value for the shipment. This total will rrepresent th esum of the values of all commodities, and may include freight, miscellaneous, and insurance charges. Must contain 2 explicit decimal positions with a max length of 17 including the decimal. For Express International MPS, the Total Customs Value is in the master transaction and all child transactions + * Set CustomsValue * * @param Money $customsValue * @return $this @@ -165,7 +169,7 @@ public function setPartiesToTransactionAreRelated($partiesToTransactionAreRelate } /** - * CommercialInvoice element is required for electronic upload of CI data. It will serve to create/transmit an Electronic Commercial Invoice through FedEx System. Customers are responsible for printing their own Commercial Invoice. Commercial Invoice support consists of a maximum of 20 commodity line items. + * Set CommercialInvoice * * @param CommercialInvoice $commercialInvoice * @return $this @@ -177,8 +181,7 @@ public function setCommercialInvoice(CommercialInvoice $commercialInvoice) } /** - * For international multiple piece shipments, commodity information must be passed in the Master and on each child transaction. - If this shipment cotains more than four commodities line items, the four highest valued should be included in the first 4 occurances for this request. + * Set Commodities * * @param Commodity[] $commodities * @return $this @@ -190,7 +193,7 @@ public function setCommodities(array $commodities) } /** - * Country specific details of an International shipment. + * Set ExportDetail * * @param ExportDetail $exportDetail * @return $this @@ -202,7 +205,7 @@ public function setExportDetail(ExportDetail $exportDetail) } /** - * FOOD_OR_PERISHABLE is required by FDA/BTA; must be true for food/perishable items coming to US or PR from non-US/non-PR origin. + * Set RegulatoryControls * * @param \FedEx\RateService\SimpleType\RegulatoryControlType[]|string[] $regulatoryControls * @return $this diff --git a/src/FedEx/RateService/ComplexType/CustomsOptionDetail.php b/src/FedEx/RateService/ComplexType/CustomsOptionDetail.php new file mode 100644 index 00000000..094991f8 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/CustomsOptionDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\CustomsOptionType|string $Type + * @property string $Description + + */ +class CustomsOptionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CustomsOptionDetail'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\CustomsOptionType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Specifies additional description about customs options. This is a required field when the customs options type is "OTHER". + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/DangerousGoodsContainer.php b/src/FedEx/RateService/ComplexType/DangerousGoodsContainer.php new file mode 100644 index 00000000..02d4a65a --- /dev/null +++ b/src/FedEx/RateService/ComplexType/DangerousGoodsContainer.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\HazardousContainerPackingType|string $PackingType + * @property string $ContainerType + * @property \FedEx\RateService\SimpleType\RadioactiveContainerClassType|string $RadioactiveContainerClass + * @property int $NumberOfContainers + * @property HazardousCommodityContent[] $HazardousCommodities + + */ +class DangerousGoodsContainer extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DangerousGoodsContainer'; + + /** + * Indicates whether there are additional inner receptacles within this container. + * + * @param \FedEx\RateService\SimpleType\HazardousContainerPackingType|string $packingType + * @return $this + */ + public function setPackingType($packingType) + { + $this->values['PackingType'] = $packingType; + return $this; + } + + /** + * Indicates the type of this dangerous goods container, as specified by the IATA packing instructions. For example, steel cylinder, fiberboard box, plastic jerrican and steel drum. + * + * @param string $containerType + * @return $this + */ + public function setContainerType($containerType) + { + $this->values['ContainerType'] = $containerType; + return $this; + } + + /** + * Indicates the packaging type of the container used to package the radioactive materials. + * + * @param \FedEx\RateService\SimpleType\RadioactiveContainerClassType|string $radioactiveContainerClass + * @return $this + */ + public function setRadioactiveContainerClass($radioactiveContainerClass) + { + $this->values['RadioactiveContainerClass'] = $radioactiveContainerClass; + return $this; + } + + /** + * Indicates the number of occurrences of this container with identical dangerous goods configuration. + * + * @param int $numberOfContainers + * @return $this + */ + public function setNumberOfContainers($numberOfContainers) + { + $this->values['NumberOfContainers'] = $numberOfContainers; + return $this; + } + + /** + * Documents the kinds and quantities of all hazardous commodities in the current container. + * + * @param HazardousCommodityContent[] $hazardousCommodities + * @return $this + */ + public function setHazardousCommodities(array $hazardousCommodities) + { + $this->values['HazardousCommodities'] = $hazardousCommodities; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/DangerousGoodsDetail.php b/src/FedEx/RateService/ComplexType/DangerousGoodsDetail.php index fb6d2c7d..41f98e9e 100644 --- a/src/FedEx/RateService/ComplexType/DangerousGoodsDetail.php +++ b/src/FedEx/RateService/ComplexType/DangerousGoodsDetail.php @@ -4,19 +4,26 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required for a FedEx shipment containing dangerous goods (hazardous materials). + * DangerousGoodsDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service * + * @property \FedEx\RateService\SimpleType\HazardousCommodityRegulationType|string $Regulation * @property \FedEx\RateService\SimpleType\DangerousGoodsAccessibilityType|string $Accessibility * @property boolean $CargoAircraftOnly * @property \FedEx\RateService\SimpleType\HazardousCommodityOptionType|string[] $Options - * @property HazardousCommodityContent[] $HazardousCommodities + * @property \FedEx\RateService\SimpleType\DangerousGoodsPackingOptionType|string $PackingOption + * @property string $ReferenceId + * @property DangerousGoodsContainer[] $Containers * @property HazardousCommodityPackagingDetail $Packaging + * @property DangerousGoodsSignatory $Signatory * @property string $EmergencyContactNumber * @property string $Offeror + * @property Contact $InfectiousSubstanceResponsibleContact + * @property string $AdditionalHandling + * @property RadioactivityDetail $RadioactivityDetail */ class DangerousGoodsDetail extends AbstractComplexType @@ -29,7 +36,19 @@ class DangerousGoodsDetail extends AbstractComplexType protected $name = 'DangerousGoodsDetail'; /** - * Identifies whether or not the products being shipped are required to be accessible during delivery. + * Set Regulation + * + * @param \FedEx\RateService\SimpleType\HazardousCommodityRegulationType|string $regulation + * @return $this + */ + public function setRegulation($regulation) + { + $this->values['Regulation'] = $regulation; + return $this; + } + + /** + * Set Accessibility * * @param \FedEx\RateService\SimpleType\DangerousGoodsAccessibilityType|string $accessibility * @return $this @@ -65,14 +84,38 @@ public function setOptions(array $options) } /** - * Documents the kinds and quantities of all hazardous commodities in the current package. + * Indicates whether there is additional customer provided packaging enclosing the approved dangerous goods containers. + * + * @param \FedEx\RateService\SimpleType\DangerousGoodsPackingOptionType|string $packingOption + * @return $this + */ + public function setPackingOption($packingOption) + { + $this->values['PackingOption'] = $packingOption; + return $this; + } + + /** + * Identifies the configuration of this dangerous goods package. The common configuration is represented at the shipment level. + * + * @param string $referenceId + * @return $this + */ + public function setReferenceId($referenceId) + { + $this->values['ReferenceId'] = $referenceId; + return $this; + } + + /** + * Indicates one or more containers used to pack dangerous goods commodities. * - * @param HazardousCommodityContent[] $hazardousCommodities + * @param DangerousGoodsContainer[] $containers * @return $this */ - public function setHazardousCommodities(array $hazardousCommodities) + public function setContainers(array $containers) { - $this->values['HazardousCommodities'] = $hazardousCommodities; + $this->values['Containers'] = $containers; return $this; } @@ -88,6 +131,18 @@ public function setPackaging(HazardousCommodityPackagingDetail $packaging) return $this; } + /** + * Name, title and place of the signatory for this shipment. + * + * @param DangerousGoodsSignatory $signatory + * @return $this + */ + public function setSignatory(DangerousGoodsSignatory $signatory) + { + $this->values['Signatory'] = $signatory; + return $this; + } + /** * Telephone number to use for contact in the event of an emergency. * @@ -111,4 +166,40 @@ public function setOfferor($offeror) $this->values['Offeror'] = $offeror; return $this; } + + /** + * Specifies the contact of the party responsible for handling the infectious substances, if any, in the dangerous goods shipment. + * + * @param Contact $infectiousSubstanceResponsibleContact + * @return $this + */ + public function setInfectiousSubstanceResponsibleContact(Contact $infectiousSubstanceResponsibleContact) + { + $this->values['InfectiousSubstanceResponsibleContact'] = $infectiousSubstanceResponsibleContact; + return $this; + } + + /** + * Specifies additional handling information for the current package. + * + * @param string $additionalHandling + * @return $this + */ + public function setAdditionalHandling($additionalHandling) + { + $this->values['AdditionalHandling'] = $additionalHandling; + return $this; + } + + /** + * Specifies the radioactivity detail for the current package, if the package contains radioactive materials. + * + * @param RadioactivityDetail $radioactivityDetail + * @return $this + */ + public function setRadioactivityDetail(RadioactivityDetail $radioactivityDetail) + { + $this->values['RadioactivityDetail'] = $radioactivityDetail; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/DangerousGoodsShippersDeclarationDetail.php b/src/FedEx/RateService/ComplexType/DangerousGoodsShippersDeclarationDetail.php new file mode 100644 index 00000000..88bc72f0 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/DangerousGoodsShippersDeclarationDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property ShippingDocumentFormat $Format + * @property CustomerImageUsage[] $CustomerImageUsages + + */ +class DangerousGoodsShippersDeclarationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DangerousGoodsShippersDeclarationDetail'; + + /** + * Specifies characteristics of a shipping document to be produced. + * + * @param ShippingDocumentFormat $format + * @return $this + */ + public function setFormat(ShippingDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } + + /** + * Specifies the usage and identification of customer supplied images to be used on this document. + * + * @param CustomerImageUsage[] $customerImageUsages + * @return $this + */ + public function setCustomerImageUsages(array $customerImageUsages) + { + $this->values['CustomerImageUsages'] = $customerImageUsages; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/DangerousGoodsSignatory.php b/src/FedEx/RateService/ComplexType/DangerousGoodsSignatory.php new file mode 100644 index 00000000..1743b3dd --- /dev/null +++ b/src/FedEx/RateService/ComplexType/DangerousGoodsSignatory.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $ContactName + * @property string $Title + * @property string $Place + + */ +class DangerousGoodsSignatory extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DangerousGoodsSignatory'; + + /** + * Set ContactName + * + * @param string $contactName + * @return $this + */ + public function setContactName($contactName) + { + $this->values['ContactName'] = $contactName; + return $this; + } + + /** + * Set Title + * + * @param string $title + * @return $this + */ + public function setTitle($title) + { + $this->values['Title'] = $title; + return $this; + } + + /** + * Indicates the place where the form is signed. + * + * @param string $place + * @return $this + */ + public function setPlace($place) + { + $this->values['Place'] = $place; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php b/src/FedEx/RateService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php new file mode 100644 index 00000000..7a119f28 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/DeliveryOnInvoiceAcceptanceDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property Party $Recipient + * @property TrackingId $TrackingId + + */ +class DeliveryOnInvoiceAcceptanceDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DeliveryOnInvoiceAcceptanceDetail'; + + /** + * Set Recipient + * + * @param Party $recipient + * @return $this + */ + public function setRecipient(Party $recipient) + { + $this->values['Recipient'] = $recipient; + return $this; + } + + /** + * Specifies the tracking id for the return, if preassigned. + * + * @param TrackingId $trackingId + * @return $this + */ + public function setTrackingId(TrackingId $trackingId) + { + $this->values['TrackingId'] = $trackingId; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/Dimensions.php b/src/FedEx/RateService/ComplexType/Dimensions.php index b1e43e45..db58839c 100644 --- a/src/FedEx/RateService/ComplexType/Dimensions.php +++ b/src/FedEx/RateService/ComplexType/Dimensions.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The dimensions of this package and the unit type used for the measurements. + * Dimensions * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/DocTabContent.php b/src/FedEx/RateService/ComplexType/DocTabContent.php index 445269c1..1cb80222 100644 --- a/src/FedEx/RateService/ComplexType/DocTabContent.php +++ b/src/FedEx/RateService/ComplexType/DocTabContent.php @@ -25,7 +25,7 @@ class DocTabContent extends AbstractComplexType protected $name = 'DocTabContent'; /** - * The DocTabContentType options available. + * Set DocTabContentType * * @param \FedEx\RateService\SimpleType\DocTabContentType|string $docTabContentType * @return $this @@ -37,7 +37,7 @@ public function setDocTabContentType($docTabContentType) } /** - * The DocTabContentType should be set to ZONE001 to specify additional Zone details. + * Set Zone001 * * @param DocTabContentZone001 $zone001 * @return $this @@ -49,7 +49,7 @@ public function setZone001(DocTabContentZone001 $zone001) } /** - * The DocTabContentType should be set to BARCODED to specify additional BarCoded details. + * Set Barcoded * * @param DocTabContentBarcoded $barcoded * @return $this diff --git a/src/FedEx/RateService/ComplexType/DocTabZoneSpecification.php b/src/FedEx/RateService/ComplexType/DocTabZoneSpecification.php index 69acdc05..b9cc6cc1 100644 --- a/src/FedEx/RateService/ComplexType/DocTabZoneSpecification.php +++ b/src/FedEx/RateService/ComplexType/DocTabZoneSpecification.php @@ -27,7 +27,7 @@ class DocTabZoneSpecification extends AbstractComplexType protected $name = 'DocTabZoneSpecification'; /** - * Zone number can be between 1 and 12. + * Set ZoneNumber * * @param int $zoneNumber * @return $this @@ -39,7 +39,7 @@ public function setZoneNumber($zoneNumber) } /** - * Header value on this zone. + * Set Header * * @param string $header * @return $this @@ -51,7 +51,7 @@ public function setHeader($header) } /** - * Reference path to the element in the request/reply whose value should be printed on this zone. + * Set DataField * * @param string $dataField * @return $this @@ -63,7 +63,7 @@ public function setDataField($dataField) } /** - * Free form-text to be printed in this zone. + * Set LiteralValue * * @param string $literalValue * @return $this @@ -75,7 +75,7 @@ public function setLiteralValue($literalValue) } /** - * Justification for the text printed on this zone. + * Set Justification * * @param \FedEx\RateService\SimpleType\DocTabZoneJustificationType|string $justification * @return $this diff --git a/src/FedEx/RateService/ComplexType/DocumentFormatOptionsRequested.php b/src/FedEx/RateService/ComplexType/DocumentFormatOptionsRequested.php new file mode 100644 index 00000000..b0f11886 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/DocumentFormatOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\DocumentFormatOptionType|string[] $Options + + */ +class DocumentFormatOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentFormatOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\RateService\SimpleType\DocumentFormatOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/DocumentLineItem.php b/src/FedEx/RateService/ComplexType/DocumentLineItem.php new file mode 100644 index 00000000..3e0de333 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/DocumentLineItem.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property KeyValueDetail[] $Values + + */ +class DocumentLineItem extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentLineItem'; + + /** + * Set Values + * + * @param KeyValueDetail[] $values + * @return $this + */ + public function setValues(array $values) + { + $this->values['Values'] = $values; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/EMailDetail.php b/src/FedEx/RateService/ComplexType/EMailDetail.php new file mode 100644 index 00000000..abf41539 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/EMailDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $EmailAddress + * @property string $Name + + */ +class EMailDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EMailDetail'; + + /** + * Set EmailAddress + * + * @param string $emailAddress + * @return $this + */ + public function setEmailAddress($emailAddress) + { + $this->values['EmailAddress'] = $emailAddress; + return $this; + } + + /** + * Specifies the name associated with the email address. + * + * @param string $name + * @return $this + */ + public function setName($name) + { + $this->values['Name'] = $name; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/EMailLabelDetail.php b/src/FedEx/RateService/ComplexType/EMailLabelDetail.php deleted file mode 100644 index aa49a718..00000000 --- a/src/FedEx/RateService/ComplexType/EMailLabelDetail.php +++ /dev/null @@ -1,49 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Rate Service - * - * @property string $NotificationEMailAddress - * @property string $NotificationMessage - - */ -class EMailLabelDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailLabelDetail'; - - /** - * Email address to send the URL to. - * - * @param string $notificationEMailAddress - * @return $this - */ - public function setNotificationEMailAddress($notificationEMailAddress) - { - $this->values['NotificationEMailAddress'] = $notificationEMailAddress; - return $this; - } - - /** - * A message to be inserted into the email. - * - * @param string $notificationMessage - * @return $this - */ - public function setNotificationMessage($notificationMessage) - { - $this->values['NotificationMessage'] = $notificationMessage; - return $this; - } -} diff --git a/src/FedEx/RateService/ComplexType/EMailNotificationDetail.php b/src/FedEx/RateService/ComplexType/EMailNotificationDetail.php deleted file mode 100644 index 4f98dd26..00000000 --- a/src/FedEx/RateService/ComplexType/EMailNotificationDetail.php +++ /dev/null @@ -1,49 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Rate Service - * - * @property string $PersonalMessage - * @property EMailNotificationRecipient[] $Recipients - - */ -class EMailNotificationDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationDetail'; - - /** - * A message that will be included in the email notifications - * - * @param string $personalMessage - * @return $this - */ - public function setPersonalMessage($personalMessage) - { - $this->values['PersonalMessage'] = $personalMessage; - return $this; - } - - /** - * Information describing the destination of the email, format of the email and events to be notified on - * - * @param EMailNotificationRecipient[] $recipients - * @return $this - */ - public function setRecipients(array $recipients) - { - $this->values['Recipients'] = $recipients; - return $this; - } -} diff --git a/src/FedEx/RateService/ComplexType/EMailNotificationRecipient.php b/src/FedEx/RateService/ComplexType/EMailNotificationRecipient.php deleted file mode 100644 index 09da9ffa..00000000 --- a/src/FedEx/RateService/ComplexType/EMailNotificationRecipient.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Rate Service - * - * @property \FedEx\RateService\SimpleType\EMailNotificationRecipientType|string $EMailNotificationRecipientType - * @property string $EMailAddress - * @property \FedEx\RateService\SimpleType\EMailNotificationEventType|string[] $NotificationEventsRequested - * @property \FedEx\RateService\SimpleType\EMailNotificationFormatType|string $Format - * @property Localization $Localization - - */ -class EMailNotificationRecipient extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationRecipient'; - - /** - * Identifies the relationship this email recipient has to the shipment. - * - * @param \FedEx\RateService\SimpleType\EMailNotificationRecipientType|string $eMailNotificationRecipientType - * @return $this - */ - public function setEMailNotificationRecipientType($eMailNotificationRecipientType) - { - $this->values['EMailNotificationRecipientType'] = $eMailNotificationRecipientType; - return $this; - } - - /** - * The email address to send the notification to - * - * @param string $eMailAddress - * @return $this - */ - public function setEMailAddress($eMailAddress) - { - $this->values['EMailAddress'] = $eMailAddress; - return $this; - } - - /** - * The types of email notifications being requested for this recipient. - * - * @param \FedEx\RateService\SimpleType\EMailNotificationEventType[]|string[] $notificationEventsRequested - * @return $this - */ - public function setNotificationEventsRequested(array $notificationEventsRequested) - { - $this->values['NotificationEventsRequested'] = $notificationEventsRequested; - return $this; - } - - /** - * The format of the email notification. - * - * @param \FedEx\RateService\SimpleType\EMailNotificationFormatType|string $format - * @return $this - */ - public function setFormat($format) - { - $this->values['Format'] = $format; - return $this; - } - - /** - * The language/locale to be used in this email notification. - * - * @param Localization $localization - * @return $this - */ - public function setLocalization(Localization $localization) - { - $this->values['Localization'] = $localization; - return $this; - } -} diff --git a/src/FedEx/RateService/ComplexType/EtdDetail.php b/src/FedEx/RateService/ComplexType/EtdDetail.php index 6c421d14..556ec2f7 100644 --- a/src/FedEx/RateService/ComplexType/EtdDetail.php +++ b/src/FedEx/RateService/ComplexType/EtdDetail.php @@ -10,8 +10,8 @@ * @package PHP FedEx API wrapper * @subpackage Rate Service * + * @property \FedEx\RateService\SimpleType\EtdAttributeType|string[] $Attributes * @property \FedEx\RateService\SimpleType\RequestedShippingDocumentType|string[] $RequestedDocumentCopies - * @property UploadDocumentDetail[] $Documents * @property UploadDocumentReferenceDetail[] $DocumentReferences */ @@ -25,26 +25,26 @@ class EtdDetail extends AbstractComplexType protected $name = 'EtdDetail'; /** - * Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. + * Set Attributes * - * @param \FedEx\RateService\SimpleType\RequestedShippingDocumentType[]|string[] $requestedDocumentCopies + * @param \FedEx\RateService\SimpleType\EtdAttributeType[]|string[] $attributes * @return $this */ - public function setRequestedDocumentCopies(array $requestedDocumentCopies) + public function setAttributes(array $attributes) { - $this->values['RequestedDocumentCopies'] = $requestedDocumentCopies; + $this->values['Attributes'] = $attributes; return $this; } /** - * Currently not supported. + * Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. * - * @param UploadDocumentDetail[] $documents + * @param \FedEx\RateService\SimpleType\RequestedShippingDocumentType[]|string[] $requestedDocumentCopies * @return $this */ - public function setDocuments(array $documents) + public function setRequestedDocumentCopies(array $requestedDocumentCopies) { - $this->values['Documents'] = $documents; + $this->values['RequestedDocumentCopies'] = $requestedDocumentCopies; return $this; } diff --git a/src/FedEx/RateService/ComplexType/ExportDeclarationDetail.php b/src/FedEx/RateService/ComplexType/ExportDeclarationDetail.php new file mode 100644 index 00000000..77125d90 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ExportDeclarationDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property ShippingDocumentFormat $DocumentFormat + * @property CustomerImageUsage[] $CustomerImageUsages + + */ +class ExportDeclarationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ExportDeclarationDetail'; + + /** + * Specifies characteristics of a shipping document to be produced. + * + * @param ShippingDocumentFormat $documentFormat + * @return $this + */ + public function setDocumentFormat(ShippingDocumentFormat $documentFormat) + { + $this->values['DocumentFormat'] = $documentFormat; + return $this; + } + + /** + * Specifies the usage and identification of customer supplied images to be used on this document. + * + * @param CustomerImageUsage[] $customerImageUsages + * @return $this + */ + public function setCustomerImageUsages(array $customerImageUsages) + { + $this->values['CustomerImageUsages'] = $customerImageUsages; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ExportDetail.php b/src/FedEx/RateService/ComplexType/ExportDetail.php index 3b2c6f24..13a8dbdc 100644 --- a/src/FedEx/RateService/ComplexType/ExportDetail.php +++ b/src/FedEx/RateService/ComplexType/ExportDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Country specific details of an International shipment. + * ExportDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,8 +26,7 @@ class ExportDetail extends AbstractComplexType protected $name = 'ExportDetail'; /** - * Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. + * Set B13AFilingOption * * @param \FedEx\RateService\SimpleType\B13AFilingOptionType|string $b13AFilingOption * @return $this @@ -51,7 +50,7 @@ public function setExportComplianceStatement($exportComplianceStatement) } /** - * This field is applicable only to Canada export non-document shipments of any value to any destination. No special characters allowed. + * Set PermitNumber * * @param string $permitNumber * @return $this @@ -63,7 +62,7 @@ public function setPermitNumber($permitNumber) } /** - * Department of Commerce/Department of State information about this shipment. + * Set DestinationControlDetail * * @param DestinationControlDetail $destinationControlDetail * @return $this diff --git a/src/FedEx/RateService/ComplexType/ExpressFreightDetail.php b/src/FedEx/RateService/ComplexType/ExpressFreightDetail.php index b1f8bac1..e075d36d 100644 --- a/src/FedEx/RateService/ComplexType/ExpressFreightDetail.php +++ b/src/FedEx/RateService/ComplexType/ExpressFreightDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Details specific to an Express freight shipment. + * ExpressFreightDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -28,7 +28,7 @@ class ExpressFreightDetail extends AbstractComplexType protected $name = 'ExpressFreightDetail'; /** - * Indicates whether or nor a packing list is enclosed. + * Set PackingListEnclosed * * @param boolean $packingListEnclosed * @return $this @@ -40,10 +40,7 @@ public function setPackingListEnclosed($packingListEnclosed) } /** - * Total shipment pieces. - ie. 3 boxes and 3 pallets of 100 pieces each = Shippers Load and Count of 303. - Applicable to International Priority Freight and International Economy Freight. - Values must be in the range of 1 - 99999 + * Set ShippersLoadAndCount * * @param int $shippersLoadAndCount * @return $this @@ -55,7 +52,7 @@ public function setShippersLoadAndCount($shippersLoadAndCount) } /** - * Required for International Freight shipping. Values must be 8- 12 characters in length. + * Set BookingConfirmationNumber * * @param string $bookingConfirmationNumber * @return $this @@ -67,7 +64,7 @@ public function setBookingConfirmationNumber($bookingConfirmationNumber) } /** - * Currently not supported. + * Set ReferenceLabelRequested * * @param boolean $referenceLabelRequested * @return $this @@ -79,7 +76,7 @@ public function setReferenceLabelRequested($referenceLabelRequested) } /** - * Currently not supported. + * Set BeforeDeliveryContact * * @param ExpressFreightDetailContact $beforeDeliveryContact * @return $this @@ -91,7 +88,7 @@ public function setBeforeDeliveryContact(ExpressFreightDetailContact $beforeDeli } /** - * Currently not supported. + * Set UndeliverableContact * * @param ExpressFreightDetailContact $undeliverableContact * @return $this diff --git a/src/FedEx/RateService/ComplexType/ExpressFreightDetailContact.php b/src/FedEx/RateService/ComplexType/ExpressFreightDetailContact.php index 4b328c14..2d34c3d2 100644 --- a/src/FedEx/RateService/ComplexType/ExpressFreightDetailContact.php +++ b/src/FedEx/RateService/ComplexType/ExpressFreightDetailContact.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Currently not supported. Delivery contact information for an Express freight shipment. + * ExpressFreightDetailContact * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/FreightAddressLabelDetail.php b/src/FedEx/RateService/ComplexType/FreightAddressLabelDetail.php new file mode 100644 index 00000000..aa719d98 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/FreightAddressLabelDetail.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property ShippingDocumentFormat $Format + * @property int $Copies + * @property \FedEx\RateService\SimpleType\PageQuadrantType|string $StartingPosition + * @property DocTabContent $DocTabContent + * @property \FedEx\RateService\SimpleType\RelativeVerticalPositionType|string $CustomContentPosition + * @property CustomLabelDetail $CustomContent + + */ +class FreightAddressLabelDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'FreightAddressLabelDetail'; + + /** + * Set Format + * + * @param ShippingDocumentFormat $format + * @return $this + */ + public function setFormat(ShippingDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } + + /** + * Indicates the number of copies to be produced for each unique label. + * + * @param int $copies + * @return $this + */ + public function setCopies($copies) + { + $this->values['Copies'] = $copies; + return $this; + } + + /** + * Specifies the quadrant of the page on which the label printing will start. + * + * @param \FedEx\RateService\SimpleType\PageQuadrantType|string $startingPosition + * @return $this + */ + public function setStartingPosition($startingPosition) + { + $this->values['StartingPosition'] = $startingPosition; + return $this; + } + + /** + * If omitted, no doc tab will be produced (i.e. default = former NONE type). + * + * @param DocTabContent $docTabContent + * @return $this + */ + public function setDocTabContent(DocTabContent $docTabContent) + { + $this->values['DocTabContent'] = $docTabContent; + return $this; + } + + /** + * Controls the position of the customer specified content relative to the FedEx portion. + * + * @param \FedEx\RateService\SimpleType\RelativeVerticalPositionType|string $customContentPosition + * @return $this + */ + public function setCustomContentPosition($customContentPosition) + { + $this->values['CustomContentPosition'] = $customContentPosition; + return $this; + } + + /** + * Set CustomContent + * + * @param CustomLabelDetail $customContent + * @return $this + */ + public function setCustomContent(CustomLabelDetail $customContent) + { + $this->values['CustomContent'] = $customContent; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/FreightRateDetail.php b/src/FedEx/RateService/ComplexType/FreightRateDetail.php index 6aeb4494..44a50db8 100644 --- a/src/FedEx/RateService/ComplexType/FreightRateDetail.php +++ b/src/FedEx/RateService/ComplexType/FreightRateDetail.php @@ -11,6 +11,7 @@ * @subpackage Rate Service * * @property string $QuoteNumber + * @property \FedEx\RateService\SimpleType\FreightRateQuoteType|string $QuoteType * @property \FedEx\RateService\SimpleType\FreightBaseChargeCalculationType|string $BaseChargeCalculation * @property FreightBaseCharge[] $BaseCharges * @property FreightRateNotation[] $Notations @@ -37,6 +38,18 @@ public function setQuoteNumber($quoteNumber) return $this; } + /** + * Specifies whether the rate quote was automated or manual. + * + * @param \FedEx\RateService\SimpleType\FreightRateQuoteType|string $quoteType + * @return $this + */ + public function setQuoteType($quoteType) + { + $this->values['QuoteType'] = $quoteType; + return $this; + } + /** * Specifies how total base charge is determined. * diff --git a/src/FedEx/RateService/ComplexType/FreightShipmentDetail.php b/src/FedEx/RateService/ComplexType/FreightShipmentDetail.php index 71d52f28..d8b1b561 100644 --- a/src/FedEx/RateService/ComplexType/FreightShipmentDetail.php +++ b/src/FedEx/RateService/ComplexType/FreightShipmentDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Data applicable to shipments using FEDEX_FREIGHT and FEDEX_NATIONAL_FREIGHT services. + * Data applicable to shipments using FEDEX_FREIGHT_ECONOMY and FEDEX_FREIGHT_PRIORITY services. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,10 +12,9 @@ * * @property string $FedExFreightAccountNumber * @property ContactAndAddress $FedExFreightBillingContactAndAddress - * @property string $FedExNationalFreightAccountNumber - * @property ContactAndAddress $FedExNationalFreightBillingContactAndAddress + * @property Party $AlternateBilling * @property \FedEx\RateService\SimpleType\FreightShipmentRoleType|string $Role - * @property \FedEx\RateService\SimpleType\FreightAccountPaymentType|string $PaymentType + * @property \FedEx\RateService\SimpleType\FreightCollectTermsType|string $CollectTermsType * @property Money $DeclaredValuePerUnit * @property string $DeclaredValueUnits * @property LiabilityCoverageDetail $LiabilityCoverageDetail @@ -26,6 +25,7 @@ * @property Dimensions $ShipmentDimensions * @property string $Comment * @property FreightSpecialServicePayment[] $SpecialServicePayments + * @property string $HazardousMaterialsOfferor * @property FreightShipmentLineItem[] $LineItems */ @@ -63,26 +63,14 @@ public function setFedExFreightBillingContactAndAddress(ContactAndAddress $fedEx } /** - * Account number used with FEDEX_NATIONAL_FREIGHT service. + * Used in connection with "Send Bill To" (SBT) identification of customer's account used for billing. * - * @param string $fedExNationalFreightAccountNumber + * @param Party $alternateBilling * @return $this */ - public function setFedExNationalFreightAccountNumber($fedExNationalFreightAccountNumber) + public function setAlternateBilling(Party $alternateBilling) { - $this->values['FedExNationalFreightAccountNumber'] = $fedExNationalFreightAccountNumber; - return $this; - } - - /** - * Used for validating FedEx National Freight account number and (optionally) identifying third party payment on the bill of lading. - * - * @param ContactAndAddress $fedExNationalFreightBillingContactAndAddress - * @return $this - */ - public function setFedExNationalFreightBillingContactAndAddress(ContactAndAddress $fedExNationalFreightBillingContactAndAddress) - { - $this->values['FedExNationalFreightBillingContactAndAddress'] = $fedExNationalFreightBillingContactAndAddress; + $this->values['AlternateBilling'] = $alternateBilling; return $this; } @@ -99,14 +87,14 @@ public function setRole($role) } /** - * Designates which of the requester's tariffs will be used for rating. + * Designates the terms of the "collect" payment for a Freight Shipment. * - * @param \FedEx\RateService\SimpleType\FreightAccountPaymentType|string $paymentType + * @param \FedEx\RateService\SimpleType\FreightCollectTermsType|string $collectTermsType * @return $this */ - public function setPaymentType($paymentType) + public function setCollectTermsType($collectTermsType) { - $this->values['PaymentType'] = $paymentType; + $this->values['CollectTermsType'] = $collectTermsType; return $this; } @@ -230,6 +218,18 @@ public function setSpecialServicePayments(array $specialServicePayments) return $this; } + /** + * Set HazardousMaterialsOfferor + * + * @param string $hazardousMaterialsOfferor + * @return $this + */ + public function setHazardousMaterialsOfferor($hazardousMaterialsOfferor) + { + $this->values['HazardousMaterialsOfferor'] = $hazardousMaterialsOfferor; + return $this; + } + /** * Details of the commodities in the shipment. * diff --git a/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php b/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php index 35eb2c5f..cd1b2bdf 100644 --- a/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php +++ b/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php @@ -12,6 +12,7 @@ * * @property \FedEx\RateService\SimpleType\FreightClassType|string $FreightClass * @property \FedEx\RateService\SimpleType\PhysicalPackagingType|string $Packaging + * @property int $Pieces * @property string $Description * @property Weight $Weight * @property Dimensions $Dimensions @@ -51,6 +52,18 @@ public function setPackaging($packaging) return $this; } + /** + * Number of pieces for this commodity or class line. + * + * @param int $pieces + * @return $this + */ + public function setPieces($pieces) + { + $this->values['Pieces'] = $pieces; + return $this; + } + /** * Customer-provided description for this commodity or class line. * @@ -76,7 +89,7 @@ public function setWeight(Weight $weight) } /** - * FED EX INTERNAL USE ONLY - Individual line item dimensions. + * Set Dimensions * * @param Dimensions $dimensions * @return $this diff --git a/src/FedEx/RateService/ComplexType/FreightSpecialServicePayment.php b/src/FedEx/RateService/ComplexType/FreightSpecialServicePayment.php index ffac7a25..254c4d67 100644 --- a/src/FedEx/RateService/ComplexType/FreightSpecialServicePayment.php +++ b/src/FedEx/RateService/ComplexType/FreightSpecialServicePayment.php @@ -11,7 +11,7 @@ * @subpackage Rate Service * * @property \FedEx\RateService\SimpleType\ShipmentSpecialServiceType|string $SpecialService - * @property \FedEx\RateService\SimpleType\FreightAccountPaymentType|string $PaymentType + * @property \FedEx\RateService\SimpleType\FreightShipmentRoleType|string $PaymentType */ class FreightSpecialServicePayment extends AbstractComplexType @@ -38,7 +38,7 @@ public function setSpecialService($specialService) /** * Indicates who will pay for the special service. * - * @param \FedEx\RateService\SimpleType\FreightAccountPaymentType|string $paymentType + * @param \FedEx\RateService\SimpleType\FreightShipmentRoleType|string $paymentType * @return $this */ public function setPaymentType($paymentType) diff --git a/src/FedEx/RateService/ComplexType/HazardousCommodityContent.php b/src/FedEx/RateService/ComplexType/HazardousCommodityContent.php index 89a7aae0..c8406052 100644 --- a/src/FedEx/RateService/ComplexType/HazardousCommodityContent.php +++ b/src/FedEx/RateService/ComplexType/HazardousCommodityContent.php @@ -12,7 +12,10 @@ * * @property HazardousCommodityDescription $Description * @property HazardousCommodityQuantityDetail $Quantity + * @property HazardousCommodityInnerReceptacleDetail[] $InnerReceptacles * @property HazardousCommodityOptionDetail $Options + * @property RadionuclideDetail $RadionuclideDetail + * @property NetExplosiveDetail $NetExplosiveDetail */ class HazardousCommodityContent extends AbstractComplexType @@ -48,6 +51,18 @@ public function setQuantity(HazardousCommodityQuantityDetail $quantity) return $this; } + /** + * This describes the inner receptacle details for a hazardous commodity within the dangerous goods container. + * + * @param HazardousCommodityInnerReceptacleDetail[] $innerReceptacles + * @return $this + */ + public function setInnerReceptacles(array $innerReceptacles) + { + $this->values['InnerReceptacles'] = $innerReceptacles; + return $this; + } + /** * Customer-provided specifications for handling individual commodities. * @@ -59,4 +74,28 @@ public function setOptions(HazardousCommodityOptionDetail $options) $this->values['Options'] = $options; return $this; } + + /** + * Specifies the details of any radio active materials within the commodity. + * + * @param RadionuclideDetail $radionuclideDetail + * @return $this + */ + public function setRadionuclideDetail(RadionuclideDetail $radionuclideDetail) + { + $this->values['RadionuclideDetail'] = $radionuclideDetail; + return $this; + } + + /** + * The total mass of the contained explosive substances, without the mass of any casings, bullets, shells, etc. + * + * @param NetExplosiveDetail $netExplosiveDetail + * @return $this + */ + public function setNetExplosiveDetail(NetExplosiveDetail $netExplosiveDetail) + { + $this->values['NetExplosiveDetail'] = $netExplosiveDetail; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/HazardousCommodityDescription.php b/src/FedEx/RateService/ComplexType/HazardousCommodityDescription.php index 2e938ff3..46c7f6f0 100644 --- a/src/FedEx/RateService/ComplexType/HazardousCommodityDescription.php +++ b/src/FedEx/RateService/ComplexType/HazardousCommodityDescription.php @@ -4,19 +4,25 @@ use FedEx\AbstractComplexType; /** - * Identifies and describes an individual hazardous commodity. For 201001 load, this is based on data from the FedEx Ground Hazardous Materials Shipping Guide. + * Identifies and describes an individual hazardous commodity. * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service * * @property string $Id + * @property int $SequenceNumber * @property \FedEx\RateService\SimpleType\HazardousCommodityPackingGroupType|string $PackingGroup + * @property HazardousCommodityPackingDetail $PackingDetails + * @property boolean $ReportableQuantity * @property string $ProperShippingName * @property string $TechnicalName + * @property float $Percentage * @property string $HazardClass * @property string[] $SubsidiaryClasses * @property string $LabelText + * @property \FedEx\RateService\SimpleType\HazardousCommodityDescriptionProcessingOptionType|string[] $ProcessingOptions + * @property string $Authorization */ class HazardousCommodityDescription extends AbstractComplexType @@ -40,6 +46,18 @@ public function setId($id) return $this; } + /** + * In conjunction with the regulatory identifier, this field uniquely identifies a specific hazardous materials commodity. + * + * @param int $sequenceNumber + * @return $this + */ + public function setSequenceNumber($sequenceNumber) + { + $this->values['SequenceNumber'] = $sequenceNumber; + return $this; + } + /** * Set PackingGroup * @@ -52,6 +70,30 @@ public function setPackingGroup($packingGroup) return $this; } + /** + * Set PackingDetails + * + * @param HazardousCommodityPackingDetail $packingDetails + * @return $this + */ + public function setPackingDetails(HazardousCommodityPackingDetail $packingDetails) + { + $this->values['PackingDetails'] = $packingDetails; + return $this; + } + + /** + * Set ReportableQuantity + * + * @param boolean $reportableQuantity + * @return $this + */ + public function setReportableQuantity($reportableQuantity) + { + $this->values['ReportableQuantity'] = $reportableQuantity; + return $this; + } + /** * Set ProperShippingName * @@ -76,6 +118,18 @@ public function setTechnicalName($technicalName) return $this; } + /** + * Set Percentage + * + * @param float $percentage + * @return $this + */ + public function setPercentage($percentage) + { + $this->values['Percentage'] = $percentage; + return $this; + } + /** * Set HazardClass * @@ -111,4 +165,28 @@ public function setLabelText($labelText) $this->values['LabelText'] = $labelText; return $this; } + + /** + * Indicates any special processing options to be applied to the description of the dangerous goods commodity. + * + * @param \FedEx\RateService\SimpleType\HazardousCommodityDescriptionProcessingOptionType[]|string[] $processingOptions + * @return $this + */ + public function setProcessingOptions(array $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } + + /** + * Information related to quantity limitations and operator or state variations as may be applicable to the dangerous goods commodity. + * + * @param string $authorization + * @return $this + */ + public function setAuthorization($authorization) + { + $this->values['Authorization'] = $authorization; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/HazardousCommodityInnerReceptacleDetail.php b/src/FedEx/RateService/ComplexType/HazardousCommodityInnerReceptacleDetail.php new file mode 100644 index 00000000..c8c42e31 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/HazardousCommodityInnerReceptacleDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property HazardousCommodityQuantityDetail $Quantity + + */ +class HazardousCommodityInnerReceptacleDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'HazardousCommodityInnerReceptacleDetail'; + + /** + * This specifies the quantity contained in the inner receptacle. + * + * @param HazardousCommodityQuantityDetail $quantity + * @return $this + */ + public function setQuantity(HazardousCommodityQuantityDetail $quantity) + { + $this->values['Quantity'] = $quantity; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/HazardousCommodityPackingDetail.php b/src/FedEx/RateService/ComplexType/HazardousCommodityPackingDetail.php new file mode 100644 index 00000000..e1274c43 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/HazardousCommodityPackingDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property boolean $CargoAircraftOnly + * @property string $PackingInstructions + + */ +class HazardousCommodityPackingDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'HazardousCommodityPackingDetail'; + + /** + * Set CargoAircraftOnly + * + * @param boolean $cargoAircraftOnly + * @return $this + */ + public function setCargoAircraftOnly($cargoAircraftOnly) + { + $this->values['CargoAircraftOnly'] = $cargoAircraftOnly; + return $this; + } + + /** + * Coded specification for how commodity is to be packed. + * + * @param string $packingInstructions + * @return $this + */ + public function setPackingInstructions($packingInstructions) + { + $this->values['PackingInstructions'] = $packingInstructions; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/HazardousCommodityQuantityDetail.php b/src/FedEx/RateService/ComplexType/HazardousCommodityQuantityDetail.php index e8efebde..c9811faa 100644 --- a/src/FedEx/RateService/ComplexType/HazardousCommodityQuantityDetail.php +++ b/src/FedEx/RateService/ComplexType/HazardousCommodityQuantityDetail.php @@ -12,6 +12,7 @@ * * @property float $Amount * @property string $Units + * @property \FedEx\RateService\SimpleType\HazardousCommodityQuantityType|string $QuantityType */ class HazardousCommodityQuantityDetail extends AbstractComplexType @@ -36,7 +37,7 @@ public function setAmount($amount) } /** - * Units by which the hazardous commodity is measured. + * Units by which the hazardous commodity is measured. For IATA commodity, the units values are restricted based on regulation type. * * @param string $units * @return $this @@ -46,4 +47,16 @@ public function setUnits($units) $this->values['Units'] = $units; return $this; } + + /** + * Specifies which measure of quantity is to be validated. + * + * @param \FedEx\RateService\SimpleType\HazardousCommodityQuantityType|string $quantityType + * @return $this + */ + public function setQuantityType($quantityType) + { + $this->values['QuantityType'] = $quantityType; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/HoldAtLocationDetail.php b/src/FedEx/RateService/ComplexType/HoldAtLocationDetail.php index 12402873..136b153f 100644 --- a/src/FedEx/RateService/ComplexType/HoldAtLocationDetail.php +++ b/src/FedEx/RateService/ComplexType/HoldAtLocationDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. + * HoldAtLocationDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/HomeDeliveryPremiumDetail.php b/src/FedEx/RateService/ComplexType/HomeDeliveryPremiumDetail.php index 040420ca..064ffe26 100644 --- a/src/FedEx/RateService/ComplexType/HomeDeliveryPremiumDetail.php +++ b/src/FedEx/RateService/ComplexType/HomeDeliveryPremiumDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required by FedEx for home delivery services. + * HomeDeliveryPremiumDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -37,7 +37,7 @@ public function setHomeDeliveryPremiumType($homeDeliveryPremiumType) } /** - * Required for Date Certain Home Delivery. + * Set Date * * @param string $date * @return $this @@ -49,7 +49,7 @@ public function setDate($date) } /** - * Required for Date Certain and Appointment Home Delivery. + * Set PhoneNumber * * @param string $phoneNumber * @return $this diff --git a/src/FedEx/RateService/ComplexType/InternationalControlledExportDetail.php b/src/FedEx/RateService/ComplexType/InternationalControlledExportDetail.php new file mode 100644 index 00000000..65a786a8 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/InternationalControlledExportDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\InternationalControlledExportType|string $Type + * @property string $ForeignTradeZoneCode + * @property string $EntryNumber + * @property string $LicenseOrPermitNumber + * @property string $LicenseOrPermitExpirationDate + + */ +class InternationalControlledExportDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'InternationalControlledExportDetail'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\InternationalControlledExportType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set ForeignTradeZoneCode + * + * @param string $foreignTradeZoneCode + * @return $this + */ + public function setForeignTradeZoneCode($foreignTradeZoneCode) + { + $this->values['ForeignTradeZoneCode'] = $foreignTradeZoneCode; + return $this; + } + + /** + * Set EntryNumber + * + * @param string $entryNumber + * @return $this + */ + public function setEntryNumber($entryNumber) + { + $this->values['EntryNumber'] = $entryNumber; + return $this; + } + + /** + * Set LicenseOrPermitNumber + * + * @param string $licenseOrPermitNumber + * @return $this + */ + public function setLicenseOrPermitNumber($licenseOrPermitNumber) + { + $this->values['LicenseOrPermitNumber'] = $licenseOrPermitNumber; + return $this; + } + + /** + * Set LicenseOrPermitExpirationDate + * + * @param string $licenseOrPermitExpirationDate + * @return $this + */ + public function setLicenseOrPermitExpirationDate($licenseOrPermitExpirationDate) + { + $this->values['LicenseOrPermitExpirationDate'] = $licenseOrPermitExpirationDate; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php b/src/FedEx/RateService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php new file mode 100644 index 00000000..9c7d2fb3 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/InternationalTrafficInArmsRegulationsDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $LicenseOrExemptionNumber + + */ +class InternationalTrafficInArmsRegulationsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'InternationalTrafficInArmsRegulationsDetail'; + + /** + * Set LicenseOrExemptionNumber + * + * @param string $licenseOrExemptionNumber + * @return $this + */ + public function setLicenseOrExemptionNumber($licenseOrExemptionNumber) + { + $this->values['LicenseOrExemptionNumber'] = $licenseOrExemptionNumber; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/KeyValueDetail.php b/src/FedEx/RateService/ComplexType/KeyValueDetail.php new file mode 100644 index 00000000..54611139 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/KeyValueDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $Key + * @property string $Value + + */ +class KeyValueDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'KeyValueDetail'; + + /** + * Set Key + * + * @param string $key + * @return $this + */ + public function setKey($key) + { + $this->values['Key'] = $key; + return $this; + } + + /** + * Set Value + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/LabelSpecification.php b/src/FedEx/RateService/ComplexType/LabelSpecification.php index 552ad1b1..efc6daa2 100644 --- a/src/FedEx/RateService/ComplexType/LabelSpecification.php +++ b/src/FedEx/RateService/ComplexType/LabelSpecification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Description of shipping label to be returned in the reply + * LabelSpecification * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -15,6 +15,7 @@ * @property \FedEx\RateService\SimpleType\LabelStockType|string $LabelStockType * @property \FedEx\RateService\SimpleType\LabelPrintingOrientationType|string $LabelPrintingOrientation * @property \FedEx\RateService\SimpleType\LabelRotationType|string $LabelRotation + * @property \FedEx\RateService\SimpleType\LabelOrderType|string $LabelOrder * @property ContactAndAddress $PrintedLabelOrigin * @property CustomerSpecifiedLabelDetail $CustomerSpecifiedDetail @@ -29,7 +30,7 @@ class LabelSpecification extends AbstractComplexType protected $name = 'LabelSpecification'; /** - * Specify type of label to be returned + * Set LabelFormatType * * @param \FedEx\RateService\SimpleType\LabelFormatType|string $labelFormatType * @return $this @@ -41,12 +42,7 @@ public function setLabelFormatType($labelFormatType) } /** - * The type of image or printer commands the label is to be formatted in. - DPL = Unimark thermal printer language - EPL2 = Eltron thermal printer language - PDF = a label returned as a pdf image - PNG = a label returned as a png image - ZPLII = Zebra thermal printer language + * Set ImageType * * @param \FedEx\RateService\SimpleType\ShippingDocumentImageType|string $imageType * @return $this @@ -58,7 +54,7 @@ public function setImageType($imageType) } /** - * For thermal printer lables this indicates the size of the label and the location of the doc tab if present. + * Set LabelStockType * * @param \FedEx\RateService\SimpleType\LabelStockType|string $labelStockType * @return $this @@ -70,7 +66,7 @@ public function setLabelStockType($labelStockType) } /** - * This indicates if the top or bottom of the label comes out of the printer first. + * Set LabelPrintingOrientation * * @param \FedEx\RateService\SimpleType\LabelPrintingOrientationType|string $labelPrintingOrientation * @return $this @@ -82,7 +78,7 @@ public function setLabelPrintingOrientation($labelPrintingOrientation) } /** - * Relative to normal orientation for the printer. RIGHT=90 degrees clockwise, UPSIDE_DOWN=180 degrees, LEFT=90 degrees counterclockwise. + * Set LabelRotation * * @param \FedEx\RateService\SimpleType\LabelRotationType|string $labelRotation * @return $this @@ -94,7 +90,19 @@ public function setLabelRotation($labelRotation) } /** - * If present, this contact and address information will replace the return address information on the label. + * Specifies the order in which the labels are requested to be returned + * + * @param \FedEx\RateService\SimpleType\LabelOrderType|string $labelOrder + * @return $this + */ + public function setLabelOrder($labelOrder) + { + $this->values['LabelOrder'] = $labelOrder; + return $this; + } + + /** + * Set PrintedLabelOrigin * * @param ContactAndAddress $printedLabelOrigin * @return $this @@ -106,7 +114,7 @@ public function setPrintedLabelOrigin(ContactAndAddress $printedLabelOrigin) } /** - * Allows customer-specified control of label content. + * Set CustomerSpecifiedDetail * * @param CustomerSpecifiedLabelDetail $customerSpecifiedDetail * @return $this diff --git a/src/FedEx/RateService/ComplexType/NetExplosiveDetail.php b/src/FedEx/RateService/ComplexType/NetExplosiveDetail.php new file mode 100644 index 00000000..1997bfd1 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/NetExplosiveDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\NetExplosiveClassificationType|string $Type + * @property float $Amount + * @property string $Units + + */ +class NetExplosiveDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NetExplosiveDetail'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\NetExplosiveClassificationType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Amount + * + * @param float $amount + * @return $this + */ + public function setAmount($amount) + { + $this->values['Amount'] = $amount; + return $this; + } + + /** + * Set Units + * + * @param string $units + * @return $this + */ + public function setUnits($units) + { + $this->values['Units'] = $units; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/Notification.php b/src/FedEx/RateService/ComplexType/Notification.php index 7a4009dd..9ae6ddcf 100644 --- a/src/FedEx/RateService/ComplexType/Notification.php +++ b/src/FedEx/RateService/ComplexType/Notification.php @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/RateService/ComplexType/NotificationDetail.php b/src/FedEx/RateService/ComplexType/NotificationDetail.php new file mode 100644 index 00000000..14b5c652 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/NotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\NotificationType|string $NotificationType + * @property EMailDetail $EmailDetail + * @property Localization $Localization + + */ +class NotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NotificationDetail'; + + /** + * Indicates the type of notification that will be sent. + * + * @param \FedEx\RateService\SimpleType\NotificationType|string $notificationType + * @return $this + */ + public function setNotificationType($notificationType) + { + $this->values['NotificationType'] = $notificationType; + return $this; + } + + /** + * Specifies the email notification details. + * + * @param EMailDetail $emailDetail + * @return $this + */ + public function setEmailDetail(EMailDetail $emailDetail) + { + $this->values['EmailDetail'] = $emailDetail; + return $this; + } + + /** + * Specifies the localization for this notification. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/PackageRateDetail.php b/src/FedEx/RateService/ComplexType/PackageRateDetail.php index 3e2460d7..348ea136 100644 --- a/src/FedEx/RateService/ComplexType/PackageRateDetail.php +++ b/src/FedEx/RateService/ComplexType/PackageRateDetail.php @@ -77,7 +77,7 @@ public function setMinimumChargeType($minimumChargeType) } /** - * The weight that was used to calculate the rate. + * Set BillingWeight * * @param Weight $billingWeight * @return $this @@ -197,7 +197,7 @@ public function setNetCharge(Money $netCharge) } /** - * The total sum of all rebates applied to this package. + * Set TotalRebates * * @param Money $totalRebates * @return $this @@ -257,7 +257,7 @@ public function setTaxes(array $taxes) } /** - * The variable handling charges calculated based on the type variable handling charges requested. + * Set VariableHandlingCharges * * @param VariableHandlingCharges $variableHandlingCharges * @return $this diff --git a/src/FedEx/RateService/ComplexType/PackageSpecialServicesRequested.php b/src/FedEx/RateService/ComplexType/PackageSpecialServicesRequested.php index 4038ed90..c1ae2c74 100644 --- a/src/FedEx/RateService/ComplexType/PackageSpecialServicesRequested.php +++ b/src/FedEx/RateService/ComplexType/PackageSpecialServicesRequested.php @@ -13,9 +13,11 @@ * @property \FedEx\RateService\SimpleType\PackageSpecialServiceType|string[] $SpecialServiceTypes * @property CodDetail $CodDetail * @property DangerousGoodsDetail $DangerousGoodsDetail + * @property BatteryClassificationDetail[] $BatteryDetails * @property Weight $DryIceWeight * @property SignatureOptionDetail $SignatureOptionDetail * @property PriorityAlertDetail $PriorityAlertDetail + * @property AlcoholDetail $AlcoholDetail */ class PackageSpecialServicesRequested extends AbstractComplexType @@ -52,7 +54,7 @@ public function setCodDetail(CodDetail $codDetail) } /** - * Descriptive data required for a FedEx shipment containing dangerous materials. This element is required when SpecialServiceType.DANGEROUS_GOODS or HAZARDOUS_MATERIAL is present in the SpecialServiceTypes collection. + * Set DangerousGoodsDetail * * @param DangerousGoodsDetail $dangerousGoodsDetail * @return $this @@ -64,7 +66,19 @@ public function setDangerousGoodsDetail(DangerousGoodsDetail $dangerousGoodsDeta } /** - * Descriptive data required for a FedEx shipment containing dry ice. This element is required when SpecialServiceType.DRY_ICE is present in the SpecialServiceTypes collection. + * Provides details about the batteries or cells that are contained within this specific package. + * + * @param BatteryClassificationDetail[] $batteryDetails + * @return $this + */ + public function setBatteryDetails(array $batteryDetails) + { + $this->values['BatteryDetails'] = $batteryDetails; + return $this; + } + + /** + * Set DryIceWeight * * @param Weight $dryIceWeight * @return $this @@ -76,7 +90,7 @@ public function setDryIceWeight(Weight $dryIceWeight) } /** - * The descriptive data required for FedEx signature services. This element is required when SpecialServiceType.SIGNATURE_OPTION is present in the SpecialServiceTypes collection. + * Set SignatureOptionDetail * * @param SignatureOptionDetail $signatureOptionDetail * @return $this @@ -88,7 +102,7 @@ public function setSignatureOptionDetail(SignatureOptionDetail $signatureOptionD } /** - * To be filled. + * Set PriorityAlertDetail * * @param PriorityAlertDetail $priorityAlertDetail * @return $this @@ -98,4 +112,16 @@ public function setPriorityAlertDetail(PriorityAlertDetail $priorityAlertDetail) $this->values['PriorityAlertDetail'] = $priorityAlertDetail; return $this; } + + /** + * Set AlcoholDetail + * + * @param AlcoholDetail $alcoholDetail + * @return $this + */ + public function setAlcoholDetail(AlcoholDetail $alcoholDetail) + { + $this->values['AlcoholDetail'] = $alcoholDetail; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/Party.php b/src/FedEx/RateService/ComplexType/Party.php index 2509876b..8de98de7 100644 --- a/src/FedEx/RateService/ComplexType/Party.php +++ b/src/FedEx/RateService/ComplexType/Party.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for a person or company entitiy doing business with FedEx. + * Party * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class Party extends AbstractComplexType protected $name = 'Party'; /** - * Identifies the FedEx account number assigned to the customer. + * Set AccountNumber * * @param string $accountNumber * @return $this @@ -38,7 +38,7 @@ public function setAccountNumber($accountNumber) } /** - * Descriptive data for taxpayer identification information. + * Set Tins * * @param TaxpayerIdentification[] $tins * @return $this @@ -50,7 +50,7 @@ public function setTins(array $tins) } /** - * Descriptive data identifying the point-of-contact person. + * Set Contact * * @param Contact $contact * @return $this @@ -62,7 +62,7 @@ public function setContact(Contact $contact) } /** - * The descriptive data for a physical location. + * Set Address * * @param Address $address * @return $this diff --git a/src/FedEx/RateService/ComplexType/Payment.php b/src/FedEx/RateService/ComplexType/Payment.php index bb72cc97..f49c2412 100644 --- a/src/FedEx/RateService/ComplexType/Payment.php +++ b/src/FedEx/RateService/ComplexType/Payment.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the monetary compensation given to FedEx for services rendered to the customer. + * Payment * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class Payment extends AbstractComplexType protected $name = 'Payment'; /** - * Identifies the method of payment for a service. See PaymentType for list of valid enumerated values. + * Set PaymentType * * @param \FedEx\RateService\SimpleType\PaymentType|string $paymentType * @return $this @@ -36,7 +36,7 @@ public function setPaymentType($paymentType) } /** - * Descriptive data identifying the party responsible for payment for a service. + * Set Payor * * @param Payor $payor * @return $this diff --git a/src/FedEx/RateService/ComplexType/Payor.php b/src/FedEx/RateService/ComplexType/Payor.php index 5b5c00f8..72b95aa0 100644 --- a/src/FedEx/RateService/ComplexType/Payor.php +++ b/src/FedEx/RateService/ComplexType/Payor.php @@ -4,14 +4,13 @@ use FedEx\AbstractComplexType; /** - * Descriptive data identifying the party responsible for payment for a service. + * Payor * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service * - * @property string $AccountNumber - * @property string $CountryCode + * @property Party $ResponsibleParty */ class Payor extends AbstractComplexType @@ -24,26 +23,14 @@ class Payor extends AbstractComplexType protected $name = 'Payor'; /** - * Identifies the FedEx account number assigned to the payor. + * Set ResponsibleParty * - * @param string $accountNumber + * @param Party $responsibleParty * @return $this */ - public function setAccountNumber($accountNumber) + public function setResponsibleParty(Party $responsibleParty) { - $this->values['AccountNumber'] = $accountNumber; - return $this; - } - - /** - * Identifies the country of the payor. - * - * @param string $countryCode - * @return $this - */ - public function setCountryCode($countryCode) - { - $this->values['CountryCode'] = $countryCode; + $this->values['ResponsibleParty'] = $responsibleParty; return $this; } } diff --git a/src/FedEx/RateService/ComplexType/PendingShipmentDetail.php b/src/FedEx/RateService/ComplexType/PendingShipmentDetail.php index db984ee7..aff220f1 100644 --- a/src/FedEx/RateService/ComplexType/PendingShipmentDetail.php +++ b/src/FedEx/RateService/ComplexType/PendingShipmentDetail.php @@ -12,7 +12,8 @@ * * @property \FedEx\RateService\SimpleType\PendingShipmentType|string $Type * @property string $ExpirationDate - * @property EMailLabelDetail $EmailLabelDetail + * @property PendingShipmentProcessingOptionsRequested $ProcessingOptions + * @property RecommendedDocumentSpecification $RecommendedDocumentSpecification */ class PendingShipmentDetail extends AbstractComplexType @@ -49,14 +50,26 @@ public function setExpirationDate($expirationDate) } /** - * Only used with type of EMAIL. + * Set ProcessingOptions * - * @param EMailLabelDetail $emailLabelDetail + * @param PendingShipmentProcessingOptionsRequested $processingOptions * @return $this */ - public function setEmailLabelDetail(EMailLabelDetail $emailLabelDetail) + public function setProcessingOptions(PendingShipmentProcessingOptionsRequested $processingOptions) { - $this->values['EmailLabelDetail'] = $emailLabelDetail; + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } + + /** + * These are documents that are recommended to be included with the shipment. + * + * @param RecommendedDocumentSpecification $recommendedDocumentSpecification + * @return $this + */ + public function setRecommendedDocumentSpecification(RecommendedDocumentSpecification $recommendedDocumentSpecification) + { + $this->values['RecommendedDocumentSpecification'] = $recommendedDocumentSpecification; return $this; } } diff --git a/src/FedEx/RateService/ComplexType/PendingShipmentProcessingOptionsRequested.php b/src/FedEx/RateService/ComplexType/PendingShipmentProcessingOptionsRequested.php new file mode 100644 index 00000000..49b262ae --- /dev/null +++ b/src/FedEx/RateService/ComplexType/PendingShipmentProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\PendingShipmentProcessingOptionType|string[] $Options + + */ +class PendingShipmentProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PendingShipmentProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\RateService\SimpleType\PendingShipmentProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/PriorityAlertDetail.php b/src/FedEx/RateService/ComplexType/PriorityAlertDetail.php index 7b4e068a..acedfc0d 100644 --- a/src/FedEx/RateService/ComplexType/PriorityAlertDetail.php +++ b/src/FedEx/RateService/ComplexType/PriorityAlertDetail.php @@ -4,12 +4,13 @@ use FedEx\AbstractComplexType; /** - * Currently not supported. + * PriorityAlertDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service * + * @property \FedEx\RateService\SimpleType\PriorityAlertEnhancementType|string[] $EnhancementTypes * @property string[] $Content */ @@ -22,6 +23,18 @@ class PriorityAlertDetail extends AbstractComplexType */ protected $name = 'PriorityAlertDetail'; + /** + * Set EnhancementTypes + * + * @param \FedEx\RateService\SimpleType\PriorityAlertEnhancementType[]|string[] $enhancementTypes + * @return $this + */ + public function setEnhancementTypes(array $enhancementTypes) + { + $this->values['EnhancementTypes'] = $enhancementTypes; + return $this; + } + /** * Set Content * diff --git a/src/FedEx/RateService/ComplexType/RadioactivityDetail.php b/src/FedEx/RateService/ComplexType/RadioactivityDetail.php new file mode 100644 index 00000000..07de7c7f --- /dev/null +++ b/src/FedEx/RateService/ComplexType/RadioactivityDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property float $TransportIndex + * @property float $SurfaceReading + * @property float $CriticalitySafetyIndex + * @property Dimensions $Dimensions + + */ +class RadioactivityDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RadioactivityDetail'; + + /** + * Set TransportIndex + * + * @param float $transportIndex + * @return $this + */ + public function setTransportIndex($transportIndex) + { + $this->values['TransportIndex'] = $transportIndex; + return $this; + } + + /** + * Set SurfaceReading + * + * @param float $surfaceReading + * @return $this + */ + public function setSurfaceReading($surfaceReading) + { + $this->values['SurfaceReading'] = $surfaceReading; + return $this; + } + + /** + * Set CriticalitySafetyIndex + * + * @param float $criticalitySafetyIndex + * @return $this + */ + public function setCriticalitySafetyIndex($criticalitySafetyIndex) + { + $this->values['CriticalitySafetyIndex'] = $criticalitySafetyIndex; + return $this; + } + + /** + * Set Dimensions + * + * @param Dimensions $dimensions + * @return $this + */ + public function setDimensions(Dimensions $dimensions) + { + $this->values['Dimensions'] = $dimensions; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/RadionuclideActivity.php b/src/FedEx/RateService/ComplexType/RadionuclideActivity.php new file mode 100644 index 00000000..eb0fbe1b --- /dev/null +++ b/src/FedEx/RateService/ComplexType/RadionuclideActivity.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property float $Value + * @property \FedEx\RateService\SimpleType\RadioactivityUnitOfMeasure|string $UnitOfMeasure + + */ +class RadionuclideActivity extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RadionuclideActivity'; + + /** + * Set Value + * + * @param float $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } + + /** + * Set UnitOfMeasure + * + * @param \FedEx\RateService\SimpleType\RadioactivityUnitOfMeasure|string $unitOfMeasure + * @return $this + */ + public function setUnitOfMeasure($unitOfMeasure) + { + $this->values['UnitOfMeasure'] = $unitOfMeasure; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/RadionuclideDetail.php b/src/FedEx/RateService/ComplexType/RadionuclideDetail.php new file mode 100644 index 00000000..40c5f5fe --- /dev/null +++ b/src/FedEx/RateService/ComplexType/RadionuclideDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $Radionuclide + * @property RadionuclideActivity $Activity + * @property boolean $ExceptedPackagingIsReportableQuantity + * @property \FedEx\RateService\SimpleType\PhysicalFormType|string $PhysicalForm + * @property string $ChemicalForm + + */ +class RadionuclideDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RadionuclideDetail'; + + /** + * Set Radionuclide + * + * @param string $radionuclide + * @return $this + */ + public function setRadionuclide($radionuclide) + { + $this->values['Radionuclide'] = $radionuclide; + return $this; + } + + /** + * Set Activity + * + * @param RadionuclideActivity $activity + * @return $this + */ + public function setActivity(RadionuclideActivity $activity) + { + $this->values['Activity'] = $activity; + return $this; + } + + /** + * Indicates whether packaging type "EXCEPTED" or "EXCEPTED_PACKAGE" is for radioactive material in reportable quantity. + * + * @param boolean $exceptedPackagingIsReportableQuantity + * @return $this + */ + public function setExceptedPackagingIsReportableQuantity($exceptedPackagingIsReportableQuantity) + { + $this->values['ExceptedPackagingIsReportableQuantity'] = $exceptedPackagingIsReportableQuantity; + return $this; + } + + /** + * Set PhysicalForm + * + * @param \FedEx\RateService\SimpleType\PhysicalFormType|string $physicalForm + * @return $this + */ + public function setPhysicalForm($physicalForm) + { + $this->values['PhysicalForm'] = $physicalForm; + return $this; + } + + /** + * Set ChemicalForm + * + * @param string $chemicalForm + * @return $this + */ + public function setChemicalForm($chemicalForm) + { + $this->values['ChemicalForm'] = $chemicalForm; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/RateDiscount.php b/src/FedEx/RateService/ComplexType/RateDiscount.php index 0b8d1c24..ce6b74e3 100644 --- a/src/FedEx/RateService/ComplexType/RateDiscount.php +++ b/src/FedEx/RateService/ComplexType/RateDiscount.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies a discount applied to the shipment. + * RateDiscount * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class RateDiscount extends AbstractComplexType protected $name = 'RateDiscount'; /** - * Identifies the type of discount applied to the shipment. + * Set RateDiscountType * * @param \FedEx\RateService\SimpleType\RateDiscountType|string $rateDiscountType * @return $this @@ -50,7 +50,7 @@ public function setDescription($description) } /** - * The amount of the discount applied to the shipment. + * Set Amount * * @param Money $amount * @return $this @@ -62,7 +62,7 @@ public function setAmount(Money $amount) } /** - * The percentage of the discount applied to the shipment. + * Set Percent * * @param float $percent * @return $this diff --git a/src/FedEx/RateService/ComplexType/RateReplyDetail.php b/src/FedEx/RateService/ComplexType/RateReplyDetail.php index 31a0f6ed..2cd7a37e 100644 --- a/src/FedEx/RateService/ComplexType/RateReplyDetail.php +++ b/src/FedEx/RateService/ComplexType/RateReplyDetail.php @@ -39,7 +39,7 @@ class RateReplyDetail extends AbstractComplexType protected $name = 'RateReplyDetail'; /** - * Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. + * Set ServiceType * * @param \FedEx\RateService\SimpleType\ServiceType|string $serviceType * @return $this @@ -51,7 +51,7 @@ public function setServiceType($serviceType) } /** - * Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. + * Set PackagingType * * @param \FedEx\RateService\SimpleType\PackagingType|string $packagingType * @return $this @@ -135,7 +135,7 @@ public function setCommitDetails(array $commitDetails) } /** - * Identification of an airport, using standard three-letter abbreviations. + * Set DestinationAirportId * * @param string $destinationAirportId * @return $this @@ -147,7 +147,7 @@ public function setDestinationAirportId($destinationAirportId) } /** - * Indicates whether or not this shipment is eligible for a money back guarantee. + * Set IneligibleForMoneyBackGuarantee * * @param boolean $ineligibleForMoneyBackGuarantee * @return $this @@ -159,7 +159,7 @@ public function setIneligibleForMoneyBackGuarantee($ineligibleForMoneyBackGuaran } /** - * Commitment code for the origin. + * Not populated by FAST service in Jan07. * * @param string $originServiceArea * @return $this @@ -171,7 +171,7 @@ public function setOriginServiceArea($originServiceArea) } /** - * Commitment code for the destination. + * Not populated by FAST service in Jan07. * * @param string $destinationServiceArea * @return $this @@ -183,7 +183,7 @@ public function setDestinationServiceArea($destinationServiceArea) } /** - * Time in transit from pickup to delivery. + * Not populated by FAST service in Jan07. * * @param \FedEx\RateService\SimpleType\TransitTimeType|string $transitTime * @return $this @@ -207,7 +207,7 @@ public function setMaximumTransitTime($maximumTransitTime) } /** - * The signature option for this package. + * Not populated by FAST service in Jan07. Actual signature option applied, to allow for cases in wihch the original value conflicted with other service features in the shipment. * * @param \FedEx\RateService\SimpleType\SignatureOptionType|string $signatureOption * @return $this @@ -219,7 +219,7 @@ public function setSignatureOption($signatureOption) } /** - * The actual rate type of the charges for this package. + * Set ActualRateType * * @param \FedEx\RateService\SimpleType\ReturnedRateType|string $actualRateType * @return $this diff --git a/src/FedEx/RateService/ComplexType/RateRequest.php b/src/FedEx/RateService/ComplexType/RateRequest.php index a8a6c1fb..ea8c52d4 100644 --- a/src/FedEx/RateService/ComplexType/RateRequest.php +++ b/src/FedEx/RateService/ComplexType/RateRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data sent to FedEx by a customer in order to rate a package/shipment. + * RateRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -17,6 +17,7 @@ * @property boolean $ReturnTransitAndCommit * @property \FedEx\RateService\SimpleType\CarrierCodeType|string[] $CarrierCodes * @property \FedEx\RateService\SimpleType\ServiceOptionType|string[] $VariableOptions + * @property ConsolidationKey $ConsolidationKey * @property RequestedShipment $RequestedShipment */ @@ -42,7 +43,7 @@ public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthentic } /** - * Descriptive data identifying the client submitting the transaction. + * Set ClientDetail * * @param ClientDetail $clientDetail * @return $this @@ -54,7 +55,7 @@ public function setClientDetail(ClientDetail $clientDetail) } /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -66,7 +67,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -113,6 +114,18 @@ public function setVariableOptions(array $variableOptions) return $this; } + /** + * If provided, identifies the consolidation to which this open shipment should be added after successful creation. + * + * @param ConsolidationKey $consolidationKey + * @return $this + */ + public function setConsolidationKey(ConsolidationKey $consolidationKey) + { + $this->values['ConsolidationKey'] = $consolidationKey; + return $this; + } + /** * The shipment for which a rate quote (or rate-shopping comparison) is desired. * diff --git a/src/FedEx/RateService/ComplexType/RatedPackageDetail.php b/src/FedEx/RateService/ComplexType/RatedPackageDetail.php index 9803ce1e..03f8089b 100644 --- a/src/FedEx/RateService/ComplexType/RatedPackageDetail.php +++ b/src/FedEx/RateService/ComplexType/RatedPackageDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * If requesting rates using the PackageDetails element (one package at a time) in the request, the rates for each package will be returned in this element. Currently total piece total weight rates are also retuned in this element. + * RatedPackageDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/Rebate.php b/src/FedEx/RateService/ComplexType/Rebate.php index eeb095f9..27877ca6 100644 --- a/src/FedEx/RateService/ComplexType/Rebate.php +++ b/src/FedEx/RateService/ComplexType/Rebate.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies a discount applied to the shipment. + * Rebate * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -50,7 +50,7 @@ public function setDescription($description) } /** - * The amount of the discount applied to the shipment. + * Set Amount * * @param Money $amount * @return $this @@ -62,7 +62,7 @@ public function setAmount(Money $amount) } /** - * The percentage of the discount applied to the shipment. + * Set Percent * * @param float $percent * @return $this diff --git a/src/FedEx/RateService/ComplexType/RecommendedDocumentSpecification.php b/src/FedEx/RateService/ComplexType/RecommendedDocumentSpecification.php new file mode 100644 index 00000000..b163d112 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/RecommendedDocumentSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\RecommendedDocumentType|string[] $Types + + */ +class RecommendedDocumentSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RecommendedDocumentSpecification'; + + /** + * Set Types + * + * @param \FedEx\RateService\SimpleType\RecommendedDocumentType[]|string[] $types + * @return $this + */ + public function setTypes(array $types) + { + $this->values['Types'] = $types; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/RegulatoryLabelContentDetail.php b/src/FedEx/RateService/ComplexType/RegulatoryLabelContentDetail.php new file mode 100644 index 00000000..ccfcea62 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/RegulatoryLabelContentDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\RegulatoryLabelType|string $Type + * @property \FedEx\RateService\SimpleType\CustomerSpecifiedLabelGenerationOptionType|string[] $GenerationOptions + + */ +class RegulatoryLabelContentDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'RegulatoryLabelContentDetail'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\RegulatoryLabelType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Specifies how the customer requested the regulatory label to be generated. + * + * @param \FedEx\RateService\SimpleType\CustomerSpecifiedLabelGenerationOptionType[]|string[] $generationOptions + * @return $this + */ + public function setGenerationOptions(array $generationOptions) + { + $this->values['GenerationOptions'] = $generationOptions; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php b/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php index 79ca4283..8cfbe1c4 100644 --- a/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php +++ b/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * This class rationalizes RequestedPackage and RequestedPackageSummary from previous interfaces. The way in which it is uses within a RequestedShipment depends on the RequestedPackageDetailType value specified for that shipment. + * This class rationalizes RequestedPackage and RequestedPackageSummary from previous interfaces. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -19,6 +19,7 @@ * @property Dimensions $Dimensions * @property \FedEx\RateService\SimpleType\PhysicalPackagingType|string $PhysicalPackaging * @property string $ItemDescription + * @property string $ItemDescriptionForClearance * @property CustomerReference[] $CustomerReferences * @property PackageSpecialServicesRequested $SpecialServicesRequested * @property ContentRecord[] $ContentRecords @@ -82,7 +83,7 @@ public function setVariableHandlingChargeDetail(VariableHandlingChargeDetail $va } /** - * Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. + * Specifies the declared value for carriage of the package. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the package. This field is only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. * * @param Money $insuredValue * @return $this @@ -94,7 +95,7 @@ public function setInsuredValue(Money $insuredValue) } /** - * Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalweight and packageCount on the shipment will be used to determine this value. + * Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case total weight and packageCount on the shipment will be used to determine this value. * * @param Weight $weight * @return $this @@ -141,6 +142,18 @@ public function setItemDescription($itemDescription) return $this; } + /** + * Human-readable text describing the contents of the package to be used for clearance purposes. + * + * @param string $itemDescriptionForClearance + * @return $this + */ + public function setItemDescriptionForClearance($itemDescriptionForClearance) + { + $this->values['ItemDescriptionForClearance'] = $itemDescriptionForClearance; + return $this; + } + /** * Set CustomerReferences * diff --git a/src/FedEx/RateService/ComplexType/RequestedShipment.php b/src/FedEx/RateService/ComplexType/RequestedShipment.php index b6e56bad..f4197fa4 100644 --- a/src/FedEx/RateService/ComplexType/RequestedShipment.php +++ b/src/FedEx/RateService/ComplexType/RequestedShipment.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for the shipment being tendered to FedEx. + * RequestedShipment * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,12 +14,16 @@ * @property \FedEx\RateService\SimpleType\DropoffType|string $DropoffType * @property \FedEx\RateService\SimpleType\ServiceType|string $ServiceType * @property \FedEx\RateService\SimpleType\PackagingType|string $PackagingType + * @property ShipmentVariationOptionDetail[] $VariationOptions * @property Weight $TotalWeight * @property Money $TotalInsuredValue + * @property string $PreferredCurrency + * @property ShipmentAuthorizationDetail $ShipmentAuthorizationDetail * @property Party $Shipper * @property Party $Recipient * @property string $RecipientLocationNumber * @property ContactAndAddress $Origin + * @property Party $SoldTo * @property Payment $ShippingChargesPayment * @property ShipmentSpecialServicesRequested $SpecialServicesRequested * @property ExpressFreightDetail $ExpressFreightDetail @@ -36,6 +40,7 @@ * @property \FedEx\RateService\SimpleType\EdtRequestType|string $EdtRequestType * @property int $PackageCount * @property \FedEx\RateService\SimpleType\ShipmentOnlyFieldsType|string[] $ShipmentOnlyFields + * @property ShipmentConfigurationData $ConfigurationData * @property RequestedPackageLineItem[] $RequestedPackageLineItems */ @@ -49,7 +54,7 @@ class RequestedShipment extends AbstractComplexType protected $name = 'RequestedShipment'; /** - * Identifies the date and time the package is tendered to FedEx. Both the date and time portions of the string are expected to be used. The date should not be a past date or a date more than 10 days in the future. The time is the local time of the shipment based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2006-06-26). The time component must be in the format: HH:MM:SS using a 24 hour clock (e.g. 11:00 a.m. is 11:00:00, whereas 5:00 p.m. is 17:00:00). The date and time parts are separated by the letter T (e.g. 2006-06-26T17:00:00). There is also a UTC offset component indicating the number of hours/mainutes from UTC (e.g 2006-06-26T17:00:00-0400 is defined form June 26, 2006 5:00 pm Eastern Time). + * Set ShipTimestamp * * @param string $shipTimestamp * @return $this @@ -61,7 +66,7 @@ public function setShipTimestamp($shipTimestamp) } /** - * Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. See DropoffType for list of valid enumerated values. + * Set DropoffType * * @param \FedEx\RateService\SimpleType\DropoffType|string $dropoffType * @return $this @@ -73,7 +78,7 @@ public function setDropoffType($dropoffType) } /** - * Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. + * Set ServiceType * * @param \FedEx\RateService\SimpleType\ServiceType|string $serviceType * @return $this @@ -85,7 +90,7 @@ public function setServiceType($serviceType) } /** - * Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. + * Set PackagingType * * @param \FedEx\RateService\SimpleType\PackagingType|string $packagingType * @return $this @@ -97,7 +102,19 @@ public function setPackagingType($packagingType) } /** - * Identifies the total weight of the shipment being conveyed to FedEx.This is only applicable to International shipments and should only be used on the first package of a mutiple piece shipment.This value contains 1 explicit decimal position + * The shipment variations for the current shipment expressed in key-value pairs. + * + * @param ShipmentVariationOptionDetail[] $variationOptions + * @return $this + */ + public function setVariationOptions(array $variationOptions) + { + $this->values['VariationOptions'] = $variationOptions; + return $this; + } + + /** + * Set TotalWeight * * @param Weight $totalWeight * @return $this @@ -109,7 +126,7 @@ public function setTotalWeight(Weight $totalWeight) } /** - * Total insured amount. + * Specifies the total declared value for carriage of the shipment. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the shipment. * * @param Money $totalInsuredValue * @return $this @@ -121,7 +138,31 @@ public function setTotalInsuredValue(Money $totalInsuredValue) } /** - * Descriptive data identifying the party responsible for shipping the package. Shipper and Origin should have the same address. + * This attribute indicates the currency the caller requests to have used in all returned monetary values (when a choice is possible). + * + * @param string $preferredCurrency + * @return $this + */ + public function setPreferredCurrency($preferredCurrency) + { + $this->values['PreferredCurrency'] = $preferredCurrency; + return $this; + } + + /** + * Specifies details about the entity responsible for the shipment. + * + * @param ShipmentAuthorizationDetail $shipmentAuthorizationDetail + * @return $this + */ + public function setShipmentAuthorizationDetail(ShipmentAuthorizationDetail $shipmentAuthorizationDetail) + { + $this->values['ShipmentAuthorizationDetail'] = $shipmentAuthorizationDetail; + return $this; + } + + /** + * Set Shipper * * @param Party $shipper * @return $this @@ -133,7 +174,7 @@ public function setShipper(Party $shipper) } /** - * Descriptive data identifying the party receiving the package. + * Set Recipient * * @param Party $recipient * @return $this @@ -145,7 +186,7 @@ public function setRecipient(Party $recipient) } /** - * A unique identifier for a recipient location + * Set RecipientLocationNumber * * @param string $recipientLocationNumber * @return $this @@ -169,7 +210,19 @@ public function setOrigin(ContactAndAddress $origin) } /** - * Descriptive data indicating the method and means of payment to FedEx for providing shipping services. + * Set SoldTo + * + * @param Party $soldTo + * @return $this + */ + public function setSoldTo(Party $soldTo) + { + $this->values['SoldTo'] = $soldTo; + return $this; + } + + /** + * Set ShippingChargesPayment * * @param Payment $shippingChargesPayment * @return $this @@ -181,7 +234,7 @@ public function setShippingChargesPayment(Payment $shippingChargesPayment) } /** - * Descriptive data regarding special services requested by the shipper for this shipment. If the shipper is requesting a special service which requires additional data (e.g. COD), the special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object. For example, to request COD, "COD" must be included in the SpecialServiceTypes collection and the CodDetail object must contain the required data. + * Set SpecialServicesRequested * * @param ShipmentSpecialServicesRequested $specialServicesRequested * @return $this @@ -193,7 +246,7 @@ public function setSpecialServicesRequested(ShipmentSpecialServicesRequested $sp } /** - * Details specific to an Express freight shipment. + * Set ExpressFreightDetail * * @param ExpressFreightDetail $expressFreightDetail * @return $this @@ -205,7 +258,7 @@ public function setExpressFreightDetail(ExpressFreightDetail $expressFreightDeta } /** - * Data applicable to shipments using FEDEX_FREIGHT and FEDEX_NATIONAL_FREIGHT services. + * Data applicable to shipments using FEDEX_FREIGHT_ECONOMY and FEDEX_FREIGHT_PRIORITY services. * * @param FreightShipmentDetail $freightShipmentDetail * @return $this @@ -229,7 +282,7 @@ public function setDeliveryInstructions($deliveryInstructions) } /** - * Details about how to calculate variable handling charges at the shipment level. + * Set VariableHandlingChargeDetail * * @param VariableHandlingChargeDetail $variableHandlingChargeDetail * @return $this @@ -289,7 +342,7 @@ public function setBlockInsightVisibility($blockInsightVisibility) } /** - * Details about the image format and printer type the label is to returned in. + * Set LabelSpecification * * @param LabelSpecification $labelSpecification * @return $this @@ -360,6 +413,18 @@ public function setShipmentOnlyFields(array $shipmentOnlyFields) return $this; } + /** + * Specifies data structures that may be re-used multiple times with s single shipment. + * + * @param ShipmentConfigurationData $configurationData + * @return $this + */ + public function setConfigurationData(ShipmentConfigurationData $configurationData) + { + $this->values['ConfigurationData'] = $configurationData; + return $this; + } + /** * One or more package-attribute descriptions, each of which describes an individual package, a group of identical packages, or (for the total-piece-total-weight case) common characteristics all packages in the shipment. * diff --git a/src/FedEx/RateService/ComplexType/ReturnAssociationDetail.php b/src/FedEx/RateService/ComplexType/ReturnAssociationDetail.php new file mode 100644 index 00000000..42d379c8 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ReturnAssociationDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $TrackingNumber + * @property string $ShipDate + + */ +class ReturnAssociationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ReturnAssociationDetail'; + + /** + * Specifies the tracking number of the master associated with the return shipment. + * + * @param string $trackingNumber + * @return $this + */ + public function setTrackingNumber($trackingNumber) + { + $this->values['TrackingNumber'] = $trackingNumber; + return $this; + } + + /** + * Set ShipDate + * + * @param string $shipDate + * @return $this + */ + public function setShipDate($shipDate) + { + $this->values['ShipDate'] = $shipDate; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ReturnInstructionsDetail.php b/src/FedEx/RateService/ComplexType/ReturnInstructionsDetail.php new file mode 100644 index 00000000..0ede1cd2 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ReturnInstructionsDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property ShippingDocumentFormat $Format + * @property string $CustomText + + */ +class ReturnInstructionsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ReturnInstructionsDetail'; + + /** + * Set Format + * + * @param ShippingDocumentFormat $format + * @return $this + */ + public function setFormat(ShippingDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } + + /** + * Specifies additional customer provided text to be inserted into the return document. + * + * @param string $customText + * @return $this + */ + public function setCustomText($customText) + { + $this->values['CustomText'] = $customText; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ReturnShipmentDetail.php b/src/FedEx/RateService/ComplexType/ReturnShipmentDetail.php index d31aaca8..04d40929 100644 --- a/src/FedEx/RateService/ComplexType/ReturnShipmentDetail.php +++ b/src/FedEx/RateService/ComplexType/ReturnShipmentDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Information relating to a return shipment. + * ReturnShipmentDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,7 @@ * @property \FedEx\RateService\SimpleType\ReturnType|string $ReturnType * @property Rma $Rma * @property ReturnEMailDetail $ReturnEMailDetail + * @property ReturnAssociationDetail $ReturnAssociation */ class ReturnShipmentDetail extends AbstractComplexType @@ -25,7 +26,7 @@ class ReturnShipmentDetail extends AbstractComplexType protected $name = 'ReturnShipmentDetail'; /** - * The type of return shipment that is being requested. At present the only type of retrun shipment that is supported is PRINT_RETURN_LABEL. With this option you can print a return label to insert into the box of an outbound shipment. This option can not be used to print an outbound label. + * Set ReturnType * * @param \FedEx\RateService\SimpleType\ReturnType|string $returnType * @return $this @@ -37,7 +38,7 @@ public function setReturnType($returnType) } /** - * Return Merchant Authorization + * Set Rma * * @param Rma $rma * @return $this @@ -49,7 +50,7 @@ public function setRma(Rma $rma) } /** - * Specific information about the delivery of the email and options for the shipment. + * Set ReturnEMailDetail * * @param ReturnEMailDetail $returnEMailDetail * @return $this @@ -59,4 +60,16 @@ public function setReturnEMailDetail(ReturnEMailDetail $returnEMailDetail) $this->values['ReturnEMailDetail'] = $returnEMailDetail; return $this; } + + /** + * Set ReturnAssociation + * + * @param ReturnAssociationDetail $returnAssociation + * @return $this + */ + public function setReturnAssociation(ReturnAssociationDetail $returnAssociation) + { + $this->values['ReturnAssociation'] = $returnAssociation; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/Rma.php b/src/FedEx/RateService/ComplexType/Rma.php index e80acfee..0221a5ed 100644 --- a/src/FedEx/RateService/ComplexType/Rma.php +++ b/src/FedEx/RateService/ComplexType/Rma.php @@ -4,13 +4,12 @@ use FedEx\AbstractComplexType; /** - * Return Merchant Authorization + * June 2011 ITG 121203 IR-RMA number has been removed from this structure and added as a new customer reference type. The structure remains because of the reason field below. * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service * - * @property string $Number * @property string $Reason */ @@ -24,19 +23,7 @@ class Rma extends AbstractComplexType protected $name = 'Rma'; /** - * Return Merchant Authorization Number - * - * @param string $number - * @return $this - */ - public function setNumber($number) - { - $this->values['Number'] = $number; - return $this; - } - - /** - * The reason for the return. + * Set Reason * * @param string $reason * @return $this diff --git a/src/FedEx/RateService/ComplexType/ShipmentAuthorizationDetail.php b/src/FedEx/RateService/ComplexType/ShipmentAuthorizationDetail.php new file mode 100644 index 00000000..bf82de82 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentAuthorizationDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $AccountNumber + + */ +class ShipmentAuthorizationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentAuthorizationDetail'; + + /** + * Set AccountNumber + * + * @param string $accountNumber + * @return $this + */ + public function setAccountNumber($accountNumber) + { + $this->values['AccountNumber'] = $accountNumber; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShipmentConfigurationData.php b/src/FedEx/RateService/ComplexType/ShipmentConfigurationData.php new file mode 100644 index 00000000..55ade335 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentConfigurationData.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property DangerousGoodsDetail[] $DangerousGoodsPackageConfigurations + + */ +class ShipmentConfigurationData extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentConfigurationData'; + + /** + * Specifies the data that is common to dangerous goods packages in the shipment. This is populated when the shipment contains packages with identical dangerous goods commodities. + * + * @param DangerousGoodsDetail[] $dangerousGoodsPackageConfigurations + * @return $this + */ + public function setDangerousGoodsPackageConfigurations(array $dangerousGoodsPackageConfigurations) + { + $this->values['DangerousGoodsPackageConfigurations'] = $dangerousGoodsPackageConfigurations; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShipmentDryIceDetail.php b/src/FedEx/RateService/ComplexType/ShipmentDryIceDetail.php index 4aa6c08f..ac9f682b 100644 --- a/src/FedEx/RateService/ComplexType/ShipmentDryIceDetail.php +++ b/src/FedEx/RateService/ComplexType/ShipmentDryIceDetail.php @@ -12,6 +12,7 @@ * * @property int $PackageCount * @property Weight $TotalWeight + * @property ShipmentDryIceProcessingOptionsRequested $ProcessingOptions */ class ShipmentDryIceDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setTotalWeight(Weight $totalWeight) $this->values['TotalWeight'] = $totalWeight; return $this; } + + /** + * Set ProcessingOptions + * + * @param ShipmentDryIceProcessingOptionsRequested $processingOptions + * @return $this + */ + public function setProcessingOptions(ShipmentDryIceProcessingOptionsRequested $processingOptions) + { + $this->values['ProcessingOptions'] = $processingOptions; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php b/src/FedEx/RateService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php new file mode 100644 index 00000000..f44b866d --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentDryIceProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\ShipmentDryIceProcessingOptionType|string[] $Options + + */ +class ShipmentDryIceProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentDryIceProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\RateService\SimpleType\ShipmentDryIceProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShipmentEventNotificationDetail.php b/src/FedEx/RateService/ComplexType/ShipmentEventNotificationDetail.php new file mode 100644 index 00000000..de0be6ef --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentEventNotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\ShipmentNotificationAggregationType|string $AggregationType + * @property string $PersonalMessage + * @property ShipmentEventNotificationSpecification[] $EventNotifications + + */ +class ShipmentEventNotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationDetail'; + + /** + * Set AggregationType + * + * @param \FedEx\RateService\SimpleType\ShipmentNotificationAggregationType|string $aggregationType + * @return $this + */ + public function setAggregationType($aggregationType) + { + $this->values['AggregationType'] = $aggregationType; + return $this; + } + + /** + * Set PersonalMessage + * + * @param string $personalMessage + * @return $this + */ + public function setPersonalMessage($personalMessage) + { + $this->values['PersonalMessage'] = $personalMessage; + return $this; + } + + /** + * Set EventNotifications + * + * @param ShipmentEventNotificationSpecification[] $eventNotifications + * @return $this + */ + public function setEventNotifications(array $eventNotifications) + { + $this->values['EventNotifications'] = $eventNotifications; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShipmentEventNotificationSpecification.php b/src/FedEx/RateService/ComplexType/ShipmentEventNotificationSpecification.php new file mode 100644 index 00000000..1c24259d --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentEventNotificationSpecification.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\ShipmentNotificationRoleType|string $Role + * @property \FedEx\RateService\SimpleType\NotificationEventType|string[] $Events + * @property NotificationDetail $NotificationDetail + * @property ShipmentNotificationFormatSpecification $FormatSpecification + + */ +class ShipmentEventNotificationSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationSpecification'; + + /** + * Set Role + * + * @param \FedEx\RateService\SimpleType\ShipmentNotificationRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Set Events + * + * @param \FedEx\RateService\SimpleType\NotificationEventType[]|string[] $events + * @return $this + */ + public function setEvents(array $events) + { + $this->values['Events'] = $events; + return $this; + } + + /** + * Set NotificationDetail + * + * @param NotificationDetail $notificationDetail + * @return $this + */ + public function setNotificationDetail(NotificationDetail $notificationDetail) + { + $this->values['NotificationDetail'] = $notificationDetail; + return $this; + } + + /** + * Set FormatSpecification + * + * @param ShipmentNotificationFormatSpecification $formatSpecification + * @return $this + */ + public function setFormatSpecification(ShipmentNotificationFormatSpecification $formatSpecification) + { + $this->values['FormatSpecification'] = $formatSpecification; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShipmentLegRateDetail.php b/src/FedEx/RateService/ComplexType/ShipmentLegRateDetail.php index 3ce83d05..f98d3860 100644 --- a/src/FedEx/RateService/ComplexType/ShipmentLegRateDetail.php +++ b/src/FedEx/RateService/ComplexType/ShipmentLegRateDetail.php @@ -12,7 +12,9 @@ * * @property string $LegDescription * @property Address $LegOrigin + * @property string $LegOriginLocationId * @property Address $LegDestination + * @property string $LegDestinationLocationId * @property \FedEx\RateService\SimpleType\ReturnedRateType|string $RateType * @property string $RateScale * @property string $RateZone @@ -79,6 +81,18 @@ public function setLegOrigin(Address $legOrigin) return $this; } + /** + * Specifies the location id the origin of shipment leg. + * + * @param string $legOriginLocationId + * @return $this + */ + public function setLegOriginLocationId($legOriginLocationId) + { + $this->values['LegOriginLocationId'] = $legOriginLocationId; + return $this; + } + /** * Destination for this leg. * @@ -91,6 +105,18 @@ public function setLegDestination(Address $legDestination) return $this; } + /** + * Specifies the location id the destination of shipment leg. + * + * @param string $legDestinationLocationId + * @return $this + */ + public function setLegDestinationLocationId($legDestinationLocationId) + { + $this->values['LegDestinationLocationId'] = $legDestinationLocationId; + return $this; + } + /** * Type used for this specific set of rate data. * diff --git a/src/FedEx/RateService/ComplexType/ShipmentNotificationFormatSpecification.php b/src/FedEx/RateService/ComplexType/ShipmentNotificationFormatSpecification.php new file mode 100644 index 00000000..0f8a894e --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentNotificationFormatSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\NotificationFormatType|string $Type + + */ +class ShipmentNotificationFormatSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentNotificationFormatSpecification'; + + /** + * Set Type + * + * @param \FedEx\RateService\SimpleType\NotificationFormatType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShipmentRateDetail.php b/src/FedEx/RateService/ComplexType/ShipmentRateDetail.php index 3276e67c..749122d5 100644 --- a/src/FedEx/RateService/ComplexType/ShipmentRateDetail.php +++ b/src/FedEx/RateService/ComplexType/ShipmentRateDetail.php @@ -32,6 +32,8 @@ * @property Money $TotalNetCharge * @property Money $TotalRebates * @property Money $TotalDutiesAndTaxes + * @property Money $TotalAncillaryFeesAndTaxes + * @property Money $TotalDutiesTaxesAndFees * @property Money $TotalNetChargeWithDutiesAndTaxes * @property ShipmentLegRateDetail[] $ShipmentLegRateDetails * @property FreightRateDetail $FreightRateDetail @@ -40,6 +42,7 @@ * @property Surcharge[] $Surcharges * @property Tax[] $Taxes * @property EdtCommodityTax[] $DutiesAndTaxes + * @property AncillaryFeeAndTax[] $AncillaryFeesAndTaxes * @property VariableHandlingCharges $VariableHandlingCharges * @property VariableHandlingCharges $TotalVariableHandlingCharges @@ -90,7 +93,7 @@ public function setRateZone($rateZone) } /** - * Indicates the type of pricing used for this shipment. + * Set PricingCode * * @param \FedEx\RateService\SimpleType\PricingCodeType|string $pricingCode * @return $this @@ -150,7 +153,7 @@ public function setSpecialRatingApplied(array $specialRatingApplied) } /** - * The value used to calculate the weight based on the dimensions. + * Set DimDivisor * * @param int $dimDivisor * @return $this @@ -186,7 +189,7 @@ public function setFuelSurchargePercent($fuelSurchargePercent) } /** - * The weight used to calculate these rates. + * Set TotalBillingWeight * * @param Weight $totalBillingWeight * @return $this @@ -222,7 +225,7 @@ public function setTotalBaseCharge(Money $totalBaseCharge) } /** - * The total discounts used in the rate calculation. + * Set TotalFreightDiscounts * * @param Money $totalFreightDiscounts * @return $this @@ -234,7 +237,7 @@ public function setTotalFreightDiscounts(Money $totalFreightDiscounts) } /** - * The freight charge minus discounts. + * Set TotalNetFreight * * @param Money $totalNetFreight * @return $this @@ -246,7 +249,7 @@ public function setTotalNetFreight(Money $totalNetFreight) } /** - * The total amount of all surcharges applied to this shipment. + * Set TotalSurcharges * * @param Money $totalSurcharges * @return $this @@ -282,7 +285,7 @@ public function setTotalTaxes(Money $totalTaxes) } /** - * The net charge after applying all discounts and surcharges. + * Set TotalNetCharge * * @param Money $totalNetCharge * @return $this @@ -294,7 +297,7 @@ public function setTotalNetCharge(Money $totalNetCharge) } /** - * The total sum of all rebates applied to this shipment. + * Set TotalRebates * * @param Money $totalRebates * @return $this @@ -318,7 +321,31 @@ public function setTotalDutiesAndTaxes(Money $totalDutiesAndTaxes) } /** - * This shipment's totalNetCharge + totalDutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. + * Identifies the total amount of the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + * + * @param Money $totalAncillaryFeesAndTaxes + * @return $this + */ + public function setTotalAncillaryFeesAndTaxes(Money $totalAncillaryFeesAndTaxes) + { + $this->values['TotalAncillaryFeesAndTaxes'] = $totalAncillaryFeesAndTaxes; + return $this; + } + + /** + * The total of the totalDutiesAndTaxes plus the totalAncillaryFeesAndTaxes. + * + * @param Money $totalDutiesTaxesAndFees + * @return $this + */ + public function setTotalDutiesTaxesAndFees(Money $totalDutiesTaxesAndFees) + { + $this->values['TotalDutiesTaxesAndFees'] = $totalDutiesTaxesAndFees; + return $this; + } + + /** + * This shipment's totalNetCharge + totalDutiesTaxesAndFees; some duties and taxes are only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. * * @param Money $totalNetChargeWithDutiesAndTaxes * @return $this @@ -413,6 +440,18 @@ public function setDutiesAndTaxes(array $dutiesAndTaxes) return $this; } + /** + * Identifies the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + * + * @param AncillaryFeeAndTax[] $ancillaryFeesAndTaxes + * @return $this + */ + public function setAncillaryFeesAndTaxes(array $ancillaryFeesAndTaxes) + { + $this->values['AncillaryFeesAndTaxes'] = $ancillaryFeesAndTaxes; + return $this; + } + /** * The "order level" variable handling charges. * diff --git a/src/FedEx/RateService/ComplexType/ShipmentSpecialServicesRequested.php b/src/FedEx/RateService/ComplexType/ShipmentSpecialServicesRequested.php index 2a48ff27..e29721e2 100644 --- a/src/FedEx/RateService/ComplexType/ShipmentSpecialServicesRequested.php +++ b/src/FedEx/RateService/ComplexType/ShipmentSpecialServicesRequested.php @@ -12,10 +12,13 @@ * * @property \FedEx\RateService\SimpleType\ShipmentSpecialServiceType|string[] $SpecialServiceTypes * @property CodDetail $CodDetail + * @property DeliveryOnInvoiceAcceptanceDetail $DeliveryOnInvoiceAcceptanceDetail * @property HoldAtLocationDetail $HoldAtLocationDetail - * @property EMailNotificationDetail $EMailNotificationDetail + * @property ShipmentEventNotificationDetail $EventNotificationDetail * @property ReturnShipmentDetail $ReturnShipmentDetail * @property PendingShipmentDetail $PendingShipmentDetail + * @property InternationalControlledExportDetail $InternationalControlledExportDetail + * @property InternationalTrafficInArmsRegulationsDetail $InternationalTrafficInArmsRegulationsDetail * @property ShipmentDryIceDetail $ShipmentDryIceDetail * @property HomeDeliveryPremiumDetail $HomeDeliveryPremiumDetail * @property FlatbedTrailerDetail $FlatbedTrailerDetail @@ -46,7 +49,7 @@ public function setSpecialServiceTypes(array $specialServiceTypes) } /** - * Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. This element is required when SpecialServiceType.COD is present in the SpecialServiceTypes collection. + * Set CodDetail * * @param CodDetail $codDetail * @return $this @@ -58,7 +61,19 @@ public function setCodDetail(CodDetail $codDetail) } /** - * Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. This element is required when SpecialServiceType.HOLD_AT_LOCATION is present in the SpecialServiceTypes collection. + * Set DeliveryOnInvoiceAcceptanceDetail + * + * @param DeliveryOnInvoiceAcceptanceDetail $deliveryOnInvoiceAcceptanceDetail + * @return $this + */ + public function setDeliveryOnInvoiceAcceptanceDetail(DeliveryOnInvoiceAcceptanceDetail $deliveryOnInvoiceAcceptanceDetail) + { + $this->values['DeliveryOnInvoiceAcceptanceDetail'] = $deliveryOnInvoiceAcceptanceDetail; + return $this; + } + + /** + * Set HoldAtLocationDetail * * @param HoldAtLocationDetail $holdAtLocationDetail * @return $this @@ -70,19 +85,19 @@ public function setHoldAtLocationDetail(HoldAtLocationDetail $holdAtLocationDeta } /** - * Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This element is required when SpecialServiceType.EMAIL_NOTIFICATION is present in the SpecialServiceTypes collection. + * This replaces eMailNotificationDetail * - * @param EMailNotificationDetail $eMailNotificationDetail + * @param ShipmentEventNotificationDetail $eventNotificationDetail * @return $this */ - public function setEMailNotificationDetail(EMailNotificationDetail $eMailNotificationDetail) + public function setEventNotificationDetail(ShipmentEventNotificationDetail $eventNotificationDetail) { - $this->values['EMailNotificationDetail'] = $eMailNotificationDetail; + $this->values['EventNotificationDetail'] = $eventNotificationDetail; return $this; } /** - * The descriptive data required for FedEx Printed Return Label. This element is required when SpecialServiceType.PRINTED_RETURN_LABEL is present in the SpecialServiceTypes collection + * Set ReturnShipmentDetail * * @param ReturnShipmentDetail $returnShipmentDetail * @return $this @@ -106,7 +121,31 @@ public function setPendingShipmentDetail(PendingShipmentDetail $pendingShipmentD } /** - * The number of packages with dry ice and the total weight of the dry ice. + * Set InternationalControlledExportDetail + * + * @param InternationalControlledExportDetail $internationalControlledExportDetail + * @return $this + */ + public function setInternationalControlledExportDetail(InternationalControlledExportDetail $internationalControlledExportDetail) + { + $this->values['InternationalControlledExportDetail'] = $internationalControlledExportDetail; + return $this; + } + + /** + * Set InternationalTrafficInArmsRegulationsDetail + * + * @param InternationalTrafficInArmsRegulationsDetail $internationalTrafficInArmsRegulationsDetail + * @return $this + */ + public function setInternationalTrafficInArmsRegulationsDetail(InternationalTrafficInArmsRegulationsDetail $internationalTrafficInArmsRegulationsDetail) + { + $this->values['InternationalTrafficInArmsRegulationsDetail'] = $internationalTrafficInArmsRegulationsDetail; + return $this; + } + + /** + * Set ShipmentDryIceDetail * * @param ShipmentDryIceDetail $shipmentDryIceDetail * @return $this @@ -118,7 +157,7 @@ public function setShipmentDryIceDetail(ShipmentDryIceDetail $shipmentDryIceDeta } /** - * The descriptive data required for FedEx Home Delivery options. This element is required when SpecialServiceType.HOME_DELIVERY_PREMIUM is present in the SpecialServiceTypes collection + * Set HomeDeliveryPremiumDetail * * @param HomeDeliveryPremiumDetail $homeDeliveryPremiumDetail * @return $this diff --git a/src/FedEx/RateService/ComplexType/ShipmentVariationOptionDetail.php b/src/FedEx/RateService/ComplexType/ShipmentVariationOptionDetail.php new file mode 100644 index 00000000..6c7c0508 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ShipmentVariationOptionDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $Id + * @property string[] $Values + + */ +class ShipmentVariationOptionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentVariationOptionDetail'; + + /** + * Specifies the name or the key for the shipment variation. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + + /** + * The values that are valid for the specified shipment variation in the context of the current shipment. + * + * @param string $values + * @return $this + */ + public function setValues($values) + { + $this->values['Values'] = $values; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/ShippingDocumentEMailDetail.php b/src/FedEx/RateService/ComplexType/ShippingDocumentEMailDetail.php index 46c9a1c0..4a4ea114 100644 --- a/src/FedEx/RateService/ComplexType/ShippingDocumentEMailDetail.php +++ b/src/FedEx/RateService/ComplexType/ShippingDocumentEMailDetail.php @@ -12,6 +12,7 @@ * * @property ShippingDocumentEMailRecipient[] $EMailRecipients * @property \FedEx\RateService\SimpleType\ShippingDocumentEMailGroupingType|string $Grouping + * @property Localization $Localization */ class ShippingDocumentEMailDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setGrouping($grouping) $this->values['Grouping'] = $grouping; return $this; } + + /** + * Specifies the language in which the email containing the document is requested to be composed. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/ShippingDocumentFormat.php b/src/FedEx/RateService/ComplexType/ShippingDocumentFormat.php index 45b54f1f..89b07472 100644 --- a/src/FedEx/RateService/ComplexType/ShippingDocumentFormat.php +++ b/src/FedEx/RateService/ComplexType/ShippingDocumentFormat.php @@ -15,6 +15,7 @@ * @property \FedEx\RateService\SimpleType\ShippingDocumentImageType|string $ImageType * @property \FedEx\RateService\SimpleType\ShippingDocumentStockType|string $StockType * @property boolean $ProvideInstructions + * @property DocumentFormatOptionsRequested $OptionsRequested * @property Localization $Localization */ @@ -87,6 +88,18 @@ public function setProvideInstructions($provideInstructions) return $this; } + /** + * Set OptionsRequested + * + * @param DocumentFormatOptionsRequested $optionsRequested + * @return $this + */ + public function setOptionsRequested(DocumentFormatOptionsRequested $optionsRequested) + { + $this->values['OptionsRequested'] = $optionsRequested; + return $this; + } + /** * Governs the language to be used for this individual document, independently from other content returned for the same shipment. * diff --git a/src/FedEx/RateService/ComplexType/ShippingDocumentSpecification.php b/src/FedEx/RateService/ComplexType/ShippingDocumentSpecification.php index 99d5ec61..773687ea 100644 --- a/src/FedEx/RateService/ComplexType/ShippingDocumentSpecification.php +++ b/src/FedEx/RateService/ComplexType/ShippingDocumentSpecification.php @@ -15,9 +15,13 @@ * @property CommercialInvoiceDetail $CommercialInvoiceDetail * @property CustomDocumentDetail[] $CustomPackageDocumentDetail * @property CustomDocumentDetail[] $CustomShipmentDocumentDetail + * @property ExportDeclarationDetail $ExportDeclarationDetail * @property GeneralAgencyAgreementDetail $GeneralAgencyAgreementDetail * @property NaftaCertificateOfOriginDetail $NaftaCertificateOfOriginDetail * @property Op900Detail $Op900Detail + * @property DangerousGoodsShippersDeclarationDetail $DangerousGoodsShippersDeclarationDetail + * @property FreightAddressLabelDetail $FreightAddressLabelDetail + * @property ReturnInstructionsDetail $ReturnInstructionsDetail */ class ShippingDocumentSpecification extends AbstractComplexType @@ -90,7 +94,19 @@ public function setCustomShipmentDocumentDetail(array $customShipmentDocumentDet } /** - * Details pertaining to the GAA. + * Set ExportDeclarationDetail + * + * @param ExportDeclarationDetail $exportDeclarationDetail + * @return $this + */ + public function setExportDeclarationDetail(ExportDeclarationDetail $exportDeclarationDetail) + { + $this->values['ExportDeclarationDetail'] = $exportDeclarationDetail; + return $this; + } + + /** + * Set GeneralAgencyAgreementDetail * * @param GeneralAgencyAgreementDetail $generalAgencyAgreementDetail * @return $this @@ -102,7 +118,7 @@ public function setGeneralAgencyAgreementDetail(GeneralAgencyAgreementDetail $ge } /** - * Details pertaining to NAFTA COO. + * Set NaftaCertificateOfOriginDetail * * @param NaftaCertificateOfOriginDetail $naftaCertificateOfOriginDetail * @return $this @@ -124,4 +140,40 @@ public function setOp900Detail(Op900Detail $op900Detail) $this->values['Op900Detail'] = $op900Detail; return $this; } + + /** + * Specifies the production of the 1421c document for dangerous goods shipment. + * + * @param DangerousGoodsShippersDeclarationDetail $dangerousGoodsShippersDeclarationDetail + * @return $this + */ + public function setDangerousGoodsShippersDeclarationDetail(DangerousGoodsShippersDeclarationDetail $dangerousGoodsShippersDeclarationDetail) + { + $this->values['DangerousGoodsShippersDeclarationDetail'] = $dangerousGoodsShippersDeclarationDetail; + return $this; + } + + /** + * Specifies the production of the OP-900 document for hazardous materials. + * + * @param FreightAddressLabelDetail $freightAddressLabelDetail + * @return $this + */ + public function setFreightAddressLabelDetail(FreightAddressLabelDetail $freightAddressLabelDetail) + { + $this->values['FreightAddressLabelDetail'] = $freightAddressLabelDetail; + return $this; + } + + /** + * Specifies the production of the return instructions document. + * + * @param ReturnInstructionsDetail $returnInstructionsDetail + * @return $this + */ + public function setReturnInstructionsDetail(ReturnInstructionsDetail $returnInstructionsDetail) + { + $this->values['ReturnInstructionsDetail'] = $returnInstructionsDetail; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/SignatureOptionDetail.php b/src/FedEx/RateService/ComplexType/SignatureOptionDetail.php index ecf3324c..6aa13209 100644 --- a/src/FedEx/RateService/ComplexType/SignatureOptionDetail.php +++ b/src/FedEx/RateService/ComplexType/SignatureOptionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data required for FedEx delivery signature services. + * SignatureOptionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -24,7 +24,7 @@ class SignatureOptionDetail extends AbstractComplexType protected $name = 'SignatureOptionDetail'; /** - * Identifies the delivery signature services option selected by the customer for this shipment. See OptionType for the list of valid values. + * Set OptionType * * @param \FedEx\RateService\SimpleType\SignatureOptionType|string $optionType * @return $this @@ -36,7 +36,7 @@ public function setOptionType($optionType) } /** - * Identifies the delivery signature release authorization number. + * Set SignatureReleaseNumber * * @param string $signatureReleaseNumber * @return $this diff --git a/src/FedEx/RateService/ComplexType/SmartPostShipmentDetail.php b/src/FedEx/RateService/ComplexType/SmartPostShipmentDetail.php index d7ef6cb7..57fad691 100644 --- a/src/FedEx/RateService/ComplexType/SmartPostShipmentDetail.php +++ b/src/FedEx/RateService/ComplexType/SmartPostShipmentDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Rate Service * + * @property SmartPostShipmentProcessingOptionsRequested $ProcessingOptionsRequested * @property \FedEx\RateService\SimpleType\SmartPostIndiciaType|string $Indicia * @property \FedEx\RateService\SimpleType\SmartPostAncillaryEndorsementType|string $AncillaryEndorsement * @property string $HubId @@ -25,6 +26,18 @@ class SmartPostShipmentDetail extends AbstractComplexType */ protected $name = 'SmartPostShipmentDetail'; + /** + * Set ProcessingOptionsRequested + * + * @param SmartPostShipmentProcessingOptionsRequested $processingOptionsRequested + * @return $this + */ + public function setProcessingOptionsRequested(SmartPostShipmentProcessingOptionsRequested $processingOptionsRequested) + { + $this->values['ProcessingOptionsRequested'] = $processingOptionsRequested; + return $this; + } + /** * Set Indicia * diff --git a/src/FedEx/RateService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php b/src/FedEx/RateService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php new file mode 100644 index 00000000..d9781647 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/SmartPostShipmentProcessingOptionsRequested.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\SmartPostShipmentProcessingOptionType|string[] $Options + + */ +class SmartPostShipmentProcessingOptionsRequested extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SmartPostShipmentProcessingOptionsRequested'; + + /** + * Set Options + * + * @param \FedEx\RateService\SimpleType\SmartPostShipmentProcessingOptionType[]|string[] $options + * @return $this + */ + public function setOptions(array $options) + { + $this->values['Options'] = $options; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/Surcharge.php b/src/FedEx/RateService/ComplexType/Surcharge.php index dcfda220..e22762dc 100644 --- a/src/FedEx/RateService/ComplexType/Surcharge.php +++ b/src/FedEx/RateService/ComplexType/Surcharge.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies each surcharge applied to the shipment. + * Surcharge * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -26,7 +26,7 @@ class Surcharge extends AbstractComplexType protected $name = 'Surcharge'; /** - * The type of surcharge applied to the shipment. + * Set SurchargeType * * @param \FedEx\RateService\SimpleType\SurchargeType|string $surchargeType * @return $this @@ -62,7 +62,7 @@ public function setDescription($description) } /** - * The amount of the surcharge applied to the shipment. + * Set Amount * * @param Money $amount * @return $this diff --git a/src/FedEx/RateService/ComplexType/Tax.php b/src/FedEx/RateService/ComplexType/Tax.php index ecdb69a6..2a1f3780 100644 --- a/src/FedEx/RateService/ComplexType/Tax.php +++ b/src/FedEx/RateService/ComplexType/Tax.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Identifies each tax applied to the shipment. + * Tax * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/TaxpayerIdentification.php b/src/FedEx/RateService/ComplexType/TaxpayerIdentification.php index fead1aa2..aad8d0cf 100644 --- a/src/FedEx/RateService/ComplexType/TaxpayerIdentification.php +++ b/src/FedEx/RateService/ComplexType/TaxpayerIdentification.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data for taxpayer identification information. + * TaxpayerIdentification * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,8 @@ * @property \FedEx\RateService\SimpleType\TinType|string $TinType * @property string $Number * @property string $Usage + * @property string $EffectiveDate + * @property string $ExpirationDate */ class TaxpayerIdentification extends AbstractComplexType @@ -25,7 +27,7 @@ class TaxpayerIdentification extends AbstractComplexType protected $name = 'TaxpayerIdentification'; /** - * Identifies the category of the taxpayer identification number. See TinType for the list of values. + * Set TinType * * @param \FedEx\RateService\SimpleType\TinType|string $tinType * @return $this @@ -37,7 +39,7 @@ public function setTinType($tinType) } /** - * Identifies the taxpayer identification number. + * Set Number * * @param string $number * @return $this @@ -59,4 +61,28 @@ public function setUsage($usage) $this->values['Usage'] = $usage; return $this; } + + /** + * Set EffectiveDate + * + * @param string $effectiveDate + * @return $this + */ + public function setEffectiveDate($effectiveDate) + { + $this->values['EffectiveDate'] = $effectiveDate; + return $this; + } + + /** + * Set ExpirationDate + * + * @param string $expirationDate + * @return $this + */ + public function setExpirationDate($expirationDate) + { + $this->values['ExpirationDate'] = $expirationDate; + return $this; + } } diff --git a/src/FedEx/RateService/ComplexType/TransactionDetail.php b/src/FedEx/RateService/ComplexType/TransactionDetail.php index 336ef0fe..52cce35c 100644 --- a/src/FedEx/RateService/ComplexType/TransactionDetail.php +++ b/src/FedEx/RateService/ComplexType/TransactionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * TransactionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/ComplexType/UploadDocumentDetail.php b/src/FedEx/RateService/ComplexType/UploadDocumentDetail.php deleted file mode 100644 index 319cfe8d..00000000 --- a/src/FedEx/RateService/ComplexType/UploadDocumentDetail.php +++ /dev/null @@ -1,101 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Rate Service - * - * @property int $LineNumber - * @property string $CustomerReference - * @property \FedEx\RateService\SimpleType\UploadDocumentProducerType|string $DocumentProducer - * @property \FedEx\RateService\SimpleType\UploadDocumentType|string $DocumentType - * @property string $FileName - * @property string $DocumentContent - - */ -class UploadDocumentDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'UploadDocumentDetail'; - - /** - * Set LineNumber - * - * @param int $lineNumber - * @return $this - */ - public function setLineNumber($lineNumber) - { - $this->values['LineNumber'] = $lineNumber; - return $this; - } - - /** - * Set CustomerReference - * - * @param string $customerReference - * @return $this - */ - public function setCustomerReference($customerReference) - { - $this->values['CustomerReference'] = $customerReference; - return $this; - } - - /** - * Set DocumentProducer - * - * @param \FedEx\RateService\SimpleType\UploadDocumentProducerType|string $documentProducer - * @return $this - */ - public function setDocumentProducer($documentProducer) - { - $this->values['DocumentProducer'] = $documentProducer; - return $this; - } - - /** - * Set DocumentType - * - * @param \FedEx\RateService\SimpleType\UploadDocumentType|string $documentType - * @return $this - */ - public function setDocumentType($documentType) - { - $this->values['DocumentType'] = $documentType; - return $this; - } - - /** - * Set FileName - * - * @param string $fileName - * @return $this - */ - public function setFileName($fileName) - { - $this->values['FileName'] = $fileName; - return $this; - } - - /** - * Set DocumentContent - * - * @param string $documentContent - * @return $this - */ - public function setDocumentContent($documentContent) - { - $this->values['DocumentContent'] = $documentContent; - return $this; - } -} diff --git a/src/FedEx/RateService/ComplexType/UploadDocumentReferenceDetail.php b/src/FedEx/RateService/ComplexType/UploadDocumentReferenceDetail.php index 584cbffc..9e778c24 100644 --- a/src/FedEx/RateService/ComplexType/UploadDocumentReferenceDetail.php +++ b/src/FedEx/RateService/ComplexType/UploadDocumentReferenceDetail.php @@ -12,6 +12,7 @@ * * @property int $LineNumber * @property string $CustomerReference + * @property string $Description * @property \FedEx\RateService\SimpleType\UploadDocumentProducerType|string $DocumentProducer * @property \FedEx\RateService\SimpleType\UploadDocumentType|string $DocumentType * @property string $DocumentId @@ -51,6 +52,18 @@ public function setCustomerReference($customerReference) return $this; } + /** + * Description of the uploaded document. + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + /** * Set DocumentProducer * diff --git a/src/FedEx/RateService/ComplexType/VariableHandlingChargeDetail.php b/src/FedEx/RateService/ComplexType/VariableHandlingChargeDetail.php index 229015a2..89ff7379 100644 --- a/src/FedEx/RateService/ComplexType/VariableHandlingChargeDetail.php +++ b/src/FedEx/RateService/ComplexType/VariableHandlingChargeDetail.php @@ -26,7 +26,7 @@ class VariableHandlingChargeDetail extends AbstractComplexType protected $name = 'VariableHandlingChargeDetail'; /** - * Used with Variable handling charge type of FIXED_VALUE. Contains the amount to be added to the freight charge. Contains 2 explicit decimal positions with a total max length of 10 including the decimal. + * Set FixedValue * * @param Money $fixedValue * @return $this diff --git a/src/FedEx/RateService/ComplexType/VariableHandlingCharges.php b/src/FedEx/RateService/ComplexType/VariableHandlingCharges.php index e436a2f8..990fa0bf 100644 --- a/src/FedEx/RateService/ComplexType/VariableHandlingCharges.php +++ b/src/FedEx/RateService/ComplexType/VariableHandlingCharges.php @@ -4,13 +4,15 @@ use FedEx\AbstractComplexType; /** - * The variable handling charges calculated based on the type variable handling charges requested. + * VariableHandlingCharges * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service * * @property Money $VariableHandlingCharge + * @property Money $FixedVariableHandlingCharge + * @property Money $PercentVariableHandlingCharge * @property Money $TotalCustomerCharge */ @@ -24,7 +26,7 @@ class VariableHandlingCharges extends AbstractComplexType protected $name = 'VariableHandlingCharges'; /** - * The variable handling charge amount calculated based on the requested variable handling charge detail. + * Set VariableHandlingCharge * * @param Money $variableHandlingCharge * @return $this @@ -36,7 +38,31 @@ public function setVariableHandlingCharge(Money $variableHandlingCharge) } /** - * The calculated varibale handling charge plus the net charge. + * Set FixedVariableHandlingCharge + * + * @param Money $fixedVariableHandlingCharge + * @return $this + */ + public function setFixedVariableHandlingCharge(Money $fixedVariableHandlingCharge) + { + $this->values['FixedVariableHandlingCharge'] = $fixedVariableHandlingCharge; + return $this; + } + + /** + * Set PercentVariableHandlingCharge + * + * @param Money $percentVariableHandlingCharge + * @return $this + */ + public function setPercentVariableHandlingCharge(Money $percentVariableHandlingCharge) + { + $this->values['PercentVariableHandlingCharge'] = $percentVariableHandlingCharge; + return $this; + } + + /** + * Set TotalCustomerCharge * * @param Money $totalCustomerCharge * @return $this diff --git a/src/FedEx/RateService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/RateService/ComplexType/WebAuthenticationDetail.php index a1a3f40f..b1ef9f68 100644 --- a/src/FedEx/RateService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/RateService/ComplexType/WebAuthenticationDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Rate Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/RateService/Request.php b/src/FedEx/RateService/Request.php index c59515b7..704ae461 100644 --- a/src/FedEx/RateService/Request.php +++ b/src/FedEx/RateService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/rate'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/rate'; - protected static $wsdlFileName = 'RateService_v10.wsdl'; + protected static $wsdlFileName = 'RateService_v22.wsdl'; /** * Sends the RateRequest and returns the response diff --git a/src/FedEx/RateService/SimpleType/AdditionalLabelsType.php b/src/FedEx/RateService/SimpleType/AdditionalLabelsType.php index dae1f568..e039831d 100644 --- a/src/FedEx/RateService/SimpleType/AdditionalLabelsType.php +++ b/src/FedEx/RateService/SimpleType/AdditionalLabelsType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of additional labels. + * AdditionalLabelsType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/AlcoholRecipientType.php b/src/FedEx/RateService/SimpleType/AlcoholRecipientType.php new file mode 100644 index 00000000..b2732b5c --- /dev/null +++ b/src/FedEx/RateService/SimpleType/AlcoholRecipientType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class AlcoholRecipientType extends AbstractSimpleType +{ + const _CONSUMER = 'CONSUMER'; + const _LICENSEE = 'LICENSEE'; +} diff --git a/src/FedEx/RateService/SimpleType/AncillaryFeeAndTaxType.php b/src/FedEx/RateService/SimpleType/AncillaryFeeAndTaxType.php new file mode 100644 index 00000000..235e2ce8 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/AncillaryFeeAndTaxType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class AncillaryFeeAndTaxType extends AbstractSimpleType +{ + const _CLEARANCE_ENTRY_FEE = 'CLEARANCE_ENTRY_FEE'; + const _GOODS_AND_SERVICES_TAX = 'GOODS_AND_SERVICES_TAX'; + const _HARMONIZED_SALES_TAX = 'HARMONIZED_SALES_TAX'; + const _OTHER = 'OTHER'; +} diff --git a/src/FedEx/RateService/SimpleType/B13AFilingOptionType.php b/src/FedEx/RateService/SimpleType/B13AFilingOptionType.php index cf860424..978b736f 100644 --- a/src/FedEx/RateService/SimpleType/B13AFilingOptionType.php +++ b/src/FedEx/RateService/SimpleType/B13AFilingOptionType.php @@ -4,8 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. + * B13AFilingOptionType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +12,7 @@ */ class B13AFilingOptionType extends AbstractSimpleType { + const _FEDEX_TO_STAMP = 'FEDEX_TO_STAMP'; const _FILED_ELECTRONICALLY = 'FILED_ELECTRONICALLY'; const _MANUALLY_ATTACHED = 'MANUALLY_ATTACHED'; const _NOT_REQUIRED = 'NOT_REQUIRED'; diff --git a/src/FedEx/RateService/SimpleType/BarcodeSymbologyType.php b/src/FedEx/RateService/SimpleType/BarcodeSymbologyType.php index 42a17754..b4190348 100644 --- a/src/FedEx/RateService/SimpleType/BarcodeSymbologyType.php +++ b/src/FedEx/RateService/SimpleType/BarcodeSymbologyType.php @@ -16,11 +16,13 @@ class BarcodeSymbologyType extends AbstractSimpleType const _CODE128 = 'CODE128'; const _CODE128B = 'CODE128B'; const _CODE128C = 'CODE128C'; + const _CODE128_WIDEBAR = 'CODE128_WIDEBAR'; const _CODE39 = 'CODE39'; const _CODE93 = 'CODE93'; const _I2OF5 = 'I2OF5'; const _MANUAL = 'MANUAL'; const _PDF417 = 'PDF417'; const _POSTNET = 'POSTNET'; + const _QR_CODE = 'QR_CODE'; const _UCC128 = 'UCC128'; } diff --git a/src/FedEx/RateService/SimpleType/BatteryMaterialType.php b/src/FedEx/RateService/SimpleType/BatteryMaterialType.php new file mode 100644 index 00000000..c1703a4b --- /dev/null +++ b/src/FedEx/RateService/SimpleType/BatteryMaterialType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class BatteryMaterialType extends AbstractSimpleType +{ + const _LITHIUM_ION = 'LITHIUM_ION'; + const _LITHIUM_METAL = 'LITHIUM_METAL'; +} diff --git a/src/FedEx/RateService/SimpleType/BatteryPackingType.php b/src/FedEx/RateService/SimpleType/BatteryPackingType.php new file mode 100644 index 00000000..0b44943f --- /dev/null +++ b/src/FedEx/RateService/SimpleType/BatteryPackingType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class BatteryPackingType extends AbstractSimpleType +{ + const _CONTAINED_IN_EQUIPMENT = 'CONTAINED_IN_EQUIPMENT'; + const _PACKED_WITH_EQUIPMENT = 'PACKED_WITH_EQUIPMENT'; +} diff --git a/src/FedEx/RateService/SimpleType/BatteryRegulatorySubType.php b/src/FedEx/RateService/SimpleType/BatteryRegulatorySubType.php new file mode 100644 index 00000000..79099dd4 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/BatteryRegulatorySubType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class BatteryRegulatorySubType extends AbstractSimpleType +{ + const _IATA_SECTION_II = 'IATA_SECTION_II'; +} diff --git a/src/FedEx/RateService/SimpleType/FreightAccountPaymentType.php b/src/FedEx/RateService/SimpleType/BrokerType.php similarity index 57% rename from src/FedEx/RateService/SimpleType/FreightAccountPaymentType.php rename to src/FedEx/RateService/SimpleType/BrokerType.php index 501777a8..86adf482 100644 --- a/src/FedEx/RateService/SimpleType/FreightAccountPaymentType.php +++ b/src/FedEx/RateService/SimpleType/BrokerType.php @@ -4,14 +4,14 @@ use FedEx\AbstractSimpleType; /** - * FreightAccountPaymentType + * BrokerType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service */ -class FreightAccountPaymentType extends AbstractSimpleType +class BrokerType extends AbstractSimpleType { - const _COLLECT = 'COLLECT'; - const _PREPAID = 'PREPAID'; + const _EXPORT = 'EXPORT'; + const _IMPORT = 'IMPORT'; } diff --git a/src/FedEx/RateService/SimpleType/CodReturnReferenceIndicatorType.php b/src/FedEx/RateService/SimpleType/CodReturnReferenceIndicatorType.php index 471c7f4c..f1854062 100644 --- a/src/FedEx/RateService/SimpleType/CodReturnReferenceIndicatorType.php +++ b/src/FedEx/RateService/SimpleType/CodReturnReferenceIndicatorType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates which type of reference information to include on the COD return shipping label. + * CodReturnReferenceIndicatorType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/CommodityPurposeType.php b/src/FedEx/RateService/SimpleType/CommodityPurposeType.php new file mode 100644 index 00000000..24d05eb6 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/CommodityPurposeType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class CommodityPurposeType extends AbstractSimpleType +{ + const _BUSINESS = 'BUSINESS'; + const _CONSUMER = 'CONSUMER'; +} diff --git a/src/FedEx/RateService/SimpleType/ConsolidationType.php b/src/FedEx/RateService/SimpleType/ConsolidationType.php new file mode 100644 index 00000000..502ebb67 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/ConsolidationType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class ConsolidationType extends AbstractSimpleType +{ + const _INTERNATIONAL_DISTRIBUTION_FREIGHT = 'INTERNATIONAL_DISTRIBUTION_FREIGHT'; + const _INTERNATIONAL_ECONOMY_DISTRIBUTION = 'INTERNATIONAL_ECONOMY_DISTRIBUTION'; + const _INTERNATIONAL_GROUND_DISTRIBUTION = 'INTERNATIONAL_GROUND_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _TRANSBORDER_DISTRIBUTION = 'TRANSBORDER_DISTRIBUTION'; +} diff --git a/src/FedEx/RateService/SimpleType/CustomerReferenceType.php b/src/FedEx/RateService/SimpleType/CustomerReferenceType.php index 2a81c327..27c42cbf 100644 --- a/src/FedEx/RateService/SimpleType/CustomerReferenceType.php +++ b/src/FedEx/RateService/SimpleType/CustomerReferenceType.php @@ -20,6 +20,7 @@ class CustomerReferenceType extends AbstractSimpleType const _INVOICE_NUMBER = 'INVOICE_NUMBER'; const _PACKING_SLIP_NUMBER = 'PACKING_SLIP_NUMBER'; const _P_O_NUMBER = 'P_O_NUMBER'; + const _RMA_ASSOCIATION = 'RMA_ASSOCIATION'; const _SHIPMENT_INTEGRITY = 'SHIPMENT_INTEGRITY'; const _STORE_NUMBER = 'STORE_NUMBER'; } diff --git a/src/FedEx/RateService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php b/src/FedEx/RateService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php new file mode 100644 index 00000000..891c9f7b --- /dev/null +++ b/src/FedEx/RateService/SimpleType/CustomerSpecifiedLabelGenerationOptionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class CustomerSpecifiedLabelGenerationOptionType extends AbstractSimpleType +{ + const _CONTENT_ON_SHIPPING_LABEL_ONLY = 'CONTENT_ON_SHIPPING_LABEL_ONLY'; + const _CONTENT_ON_SHIPPING_LABEL_PREFERRED = 'CONTENT_ON_SHIPPING_LABEL_PREFERRED'; + const _CONTENT_ON_SUPPLEMENTAL_LABEL_ONLY = 'CONTENT_ON_SUPPLEMENTAL_LABEL_ONLY'; +} diff --git a/src/FedEx/RateService/SimpleType/CustomsOptionType.php b/src/FedEx/RateService/SimpleType/CustomsOptionType.php new file mode 100644 index 00000000..d54fb63d --- /dev/null +++ b/src/FedEx/RateService/SimpleType/CustomsOptionType.php @@ -0,0 +1,25 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class CustomsOptionType extends AbstractSimpleType +{ + const _COURTESY_RETURN_LABEL = 'COURTESY_RETURN_LABEL'; + const _EXHIBITION_TRADE_SHOW = 'EXHIBITION_TRADE_SHOW'; + const _FAULTY_ITEM = 'FAULTY_ITEM'; + const _FOLLOWING_REPAIR = 'FOLLOWING_REPAIR'; + const _FOR_REPAIR = 'FOR_REPAIR'; + const _ITEM_FOR_LOAN = 'ITEM_FOR_LOAN'; + const _OTHER = 'OTHER'; + const _REJECTED = 'REJECTED'; + const _REPLACEMENT = 'REPLACEMENT'; + const _TRIAL = 'TRIAL'; +} diff --git a/src/FedEx/RateService/SimpleType/DangerousGoodsAccessibilityType.php b/src/FedEx/RateService/SimpleType/DangerousGoodsAccessibilityType.php index 67e50371..33666e51 100644 --- a/src/FedEx/RateService/SimpleType/DangerousGoodsAccessibilityType.php +++ b/src/FedEx/RateService/SimpleType/DangerousGoodsAccessibilityType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies whether or not the products being shipped are required to be accessible during delivery. + * DangerousGoodsAccessibilityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/DangerousGoodsPackingOptionType.php b/src/FedEx/RateService/SimpleType/DangerousGoodsPackingOptionType.php new file mode 100644 index 00000000..63b35b44 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/DangerousGoodsPackingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class DangerousGoodsPackingOptionType extends AbstractSimpleType +{ + const _OVERPACK = 'OVERPACK'; +} diff --git a/src/FedEx/RateService/SimpleType/DestinationControlStatementType.php b/src/FedEx/RateService/SimpleType/DestinationControlStatementType.php index b77fecdd..b16faa10 100644 --- a/src/FedEx/RateService/SimpleType/DestinationControlStatementType.php +++ b/src/FedEx/RateService/SimpleType/DestinationControlStatementType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Used to indicate whether the Destination Control Statement is of type Department of Commerce, Department of State or both. + * DestinationControlStatementType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/DocTabContentType.php b/src/FedEx/RateService/SimpleType/DocTabContentType.php index 918395e1..9b6eae17 100644 --- a/src/FedEx/RateService/SimpleType/DocTabContentType.php +++ b/src/FedEx/RateService/SimpleType/DocTabContentType.php @@ -13,6 +13,7 @@ class DocTabContentType extends AbstractSimpleType { const _BARCODED = 'BARCODED'; + const _CUSTOM = 'CUSTOM'; const _MINIMUM = 'MINIMUM'; const _STANDARD = 'STANDARD'; const _ZONE001 = 'ZONE001'; diff --git a/src/FedEx/RateService/SimpleType/DocumentFormatOptionType.php b/src/FedEx/RateService/SimpleType/DocumentFormatOptionType.php new file mode 100644 index 00000000..16ff6474 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/DocumentFormatOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class DocumentFormatOptionType extends AbstractSimpleType +{ + const _SUPPRESS_ADDITIONAL_LANGUAGES = 'SUPPRESS_ADDITIONAL_LANGUAGES'; +} diff --git a/src/FedEx/RateService/SimpleType/DropoffType.php b/src/FedEx/RateService/SimpleType/DropoffType.php index 3cdeb1d6..259d0a43 100644 --- a/src/FedEx/RateService/SimpleType/DropoffType.php +++ b/src/FedEx/RateService/SimpleType/DropoffType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. + * DropoffType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/EMailNotificationRecipientType.php b/src/FedEx/RateService/SimpleType/EMailNotificationRecipientType.php index b186712f..69a25cc0 100644 --- a/src/FedEx/RateService/SimpleType/EMailNotificationRecipientType.php +++ b/src/FedEx/RateService/SimpleType/EMailNotificationRecipientType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. + * EMailNotificationRecipientType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/EtdAttributeType.php b/src/FedEx/RateService/SimpleType/EtdAttributeType.php new file mode 100644 index 00000000..db2449db --- /dev/null +++ b/src/FedEx/RateService/SimpleType/EtdAttributeType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class EtdAttributeType extends AbstractSimpleType +{ + const _POST_SHIPMENT_UPLOAD_REQUESTED = 'POST_SHIPMENT_UPLOAD_REQUESTED'; +} diff --git a/src/FedEx/RateService/SimpleType/FedExLocationType.php b/src/FedEx/RateService/SimpleType/FedExLocationType.php index 91687f7e..6c82e8f1 100644 --- a/src/FedEx/RateService/SimpleType/FedExLocationType.php +++ b/src/FedEx/RateService/SimpleType/FedExLocationType.php @@ -13,6 +13,11 @@ class FedExLocationType extends AbstractSimpleType { const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; + const _FEDEX_FACILITY = 'FEDEX_FACILITY'; + const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; + const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/RateService/SimpleType/FreightCollectTermsType.php b/src/FedEx/RateService/SimpleType/FreightCollectTermsType.php new file mode 100644 index 00000000..88728291 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/FreightCollectTermsType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class FreightCollectTermsType extends AbstractSimpleType +{ + const _NON_RECOURSE_SHIPPER_SIGNED = 'NON_RECOURSE_SHIPPER_SIGNED'; + const _STANDARD = 'STANDARD'; +} diff --git a/src/FedEx/RateService/SimpleType/FreightRateQuoteType.php b/src/FedEx/RateService/SimpleType/FreightRateQuoteType.php new file mode 100644 index 00000000..740d99e4 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/FreightRateQuoteType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class FreightRateQuoteType extends AbstractSimpleType +{ + const _AUTOMATED = 'AUTOMATED'; + const _MANUAL = 'MANUAL'; +} diff --git a/src/FedEx/RateService/SimpleType/FreightShipmentRoleType.php b/src/FedEx/RateService/SimpleType/FreightShipmentRoleType.php index 6ff0c59c..08a0cff5 100644 --- a/src/FedEx/RateService/SimpleType/FreightShipmentRoleType.php +++ b/src/FedEx/RateService/SimpleType/FreightShipmentRoleType.php @@ -14,5 +14,4 @@ class FreightShipmentRoleType extends AbstractSimpleType { const _CONSIGNEE = 'CONSIGNEE'; const _SHIPPER = 'SHIPPER'; - const _THIRD_PARTY = 'THIRD_PARTY'; } diff --git a/src/FedEx/RateService/SimpleType/HazardousCommodityDescriptionProcessingOptionType.php b/src/FedEx/RateService/SimpleType/HazardousCommodityDescriptionProcessingOptionType.php new file mode 100644 index 00000000..9b3fd56c --- /dev/null +++ b/src/FedEx/RateService/SimpleType/HazardousCommodityDescriptionProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class HazardousCommodityDescriptionProcessingOptionType extends AbstractSimpleType +{ + const _INCLUDE_SPECIAL_PROVISIONS = 'INCLUDE_SPECIAL_PROVISIONS'; +} diff --git a/src/FedEx/RateService/SimpleType/HazardousCommodityOptionType.php b/src/FedEx/RateService/SimpleType/HazardousCommodityOptionType.php index 179a7e08..9d1085a5 100644 --- a/src/FedEx/RateService/SimpleType/HazardousCommodityOptionType.php +++ b/src/FedEx/RateService/SimpleType/HazardousCommodityOptionType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates which kind of hazardous content (as defined by DOT) is being reported. + * Indicates which kind of hazardous content is being reported. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,8 +12,9 @@ */ class HazardousCommodityOptionType extends AbstractSimpleType { + const _BATTERY = 'BATTERY'; const _HAZARDOUS_MATERIALS = 'HAZARDOUS_MATERIALS'; - const _LITHIUM_BATTERY_EXCEPTION = 'LITHIUM_BATTERY_EXCEPTION'; + const _LIMITED_QUANTITIES_COMMODITIES = 'LIMITED_QUANTITIES_COMMODITIES'; const _ORM_D = 'ORM_D'; const _REPORTABLE_QUANTITIES = 'REPORTABLE_QUANTITIES'; const _SMALL_QUANTITY_EXCEPTION = 'SMALL_QUANTITY_EXCEPTION'; diff --git a/src/FedEx/RateService/SimpleType/HazardousCommodityPackingGroupType.php b/src/FedEx/RateService/SimpleType/HazardousCommodityPackingGroupType.php index 0148ce14..16dc0ff7 100644 --- a/src/FedEx/RateService/SimpleType/HazardousCommodityPackingGroupType.php +++ b/src/FedEx/RateService/SimpleType/HazardousCommodityPackingGroupType.php @@ -12,6 +12,7 @@ */ class HazardousCommodityPackingGroupType extends AbstractSimpleType { + const _DEFAULT = 'DEFAULT'; const _I = 'I'; const _II = 'II'; const _III = 'III'; diff --git a/src/FedEx/RateService/SimpleType/HazardousCommodityQuantityType.php b/src/FedEx/RateService/SimpleType/HazardousCommodityQuantityType.php new file mode 100644 index 00000000..cb2973bb --- /dev/null +++ b/src/FedEx/RateService/SimpleType/HazardousCommodityQuantityType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class HazardousCommodityQuantityType extends AbstractSimpleType +{ + const _GROSS = 'GROSS'; + const _NET = 'NET'; +} diff --git a/src/FedEx/RateService/SimpleType/HazardousCommodityRegulationType.php b/src/FedEx/RateService/SimpleType/HazardousCommodityRegulationType.php new file mode 100644 index 00000000..40b5a7dd --- /dev/null +++ b/src/FedEx/RateService/SimpleType/HazardousCommodityRegulationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class HazardousCommodityRegulationType extends AbstractSimpleType +{ + const _ADR = 'ADR'; + const _DOT = 'DOT'; + const _IATA = 'IATA'; + const _ORMD = 'ORMD'; +} diff --git a/src/FedEx/RateService/SimpleType/HazardousContainerPackingType.php b/src/FedEx/RateService/SimpleType/HazardousContainerPackingType.php new file mode 100644 index 00000000..69185b61 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/HazardousContainerPackingType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class HazardousContainerPackingType extends AbstractSimpleType +{ + const _ALL_PACKED_IN_ONE = 'ALL_PACKED_IN_ONE'; +} diff --git a/src/FedEx/RateService/SimpleType/InternationalControlledExportType.php b/src/FedEx/RateService/SimpleType/InternationalControlledExportType.php new file mode 100644 index 00000000..cc73361f --- /dev/null +++ b/src/FedEx/RateService/SimpleType/InternationalControlledExportType.php @@ -0,0 +1,26 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class InternationalControlledExportType extends AbstractSimpleType +{ + const _DEA_036 = 'DEA_036'; + const _DEA_236 = 'DEA_236'; + const _DEA_486 = 'DEA_486'; + const _DSP_05 = 'DSP_05'; + const _DSP_61 = 'DSP_61'; + const _DSP_73 = 'DSP_73'; + const _DSP_85 = 'DSP_85'; + const _DSP_94 = 'DSP_94'; + const _DSP_LICENSE_AGREEMENT = 'DSP_LICENSE_AGREEMENT'; + const _FROM_FOREIGN_TRADE_ZONE = 'FROM_FOREIGN_TRADE_ZONE'; + const _WAREHOUSE_WITHDRAWAL = 'WAREHOUSE_WITHDRAWAL'; +} diff --git a/src/FedEx/RateService/SimpleType/InternationalDocumentContentType.php b/src/FedEx/RateService/SimpleType/InternationalDocumentContentType.php index f4420477..95532eaf 100644 --- a/src/FedEx/RateService/SimpleType/InternationalDocumentContentType.php +++ b/src/FedEx/RateService/SimpleType/InternationalDocumentContentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of International shipment. + * InternationalDocumentContentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/LabelFormatType.php b/src/FedEx/RateService/SimpleType/LabelFormatType.php index f19af6f1..189dddfb 100644 --- a/src/FedEx/RateService/SimpleType/LabelFormatType.php +++ b/src/FedEx/RateService/SimpleType/LabelFormatType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Specifies the type of label to be returned. + * LabelFormatType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/LabelMaskableDataType.php b/src/FedEx/RateService/SimpleType/LabelMaskableDataType.php index 60787796..9c85d806 100644 --- a/src/FedEx/RateService/SimpleType/LabelMaskableDataType.php +++ b/src/FedEx/RateService/SimpleType/LabelMaskableDataType.php @@ -17,6 +17,7 @@ class LabelMaskableDataType extends AbstractSimpleType const _DUTIES_AND_TAXES_PAYOR_ACCOUNT_NUMBER = 'DUTIES_AND_TAXES_PAYOR_ACCOUNT_NUMBER'; const _FREIGHT_PAYOR_ACCOUNT_NUMBER = 'FREIGHT_PAYOR_ACCOUNT_NUMBER'; const _PACKAGE_SEQUENCE_AND_COUNT = 'PACKAGE_SEQUENCE_AND_COUNT'; + const _SECONDARY_BARCODE = 'SECONDARY_BARCODE'; const _SHIPPER_ACCOUNT_NUMBER = 'SHIPPER_ACCOUNT_NUMBER'; const _SUPPLEMENTAL_LABEL_DOC_TAB = 'SUPPLEMENTAL_LABEL_DOC_TAB'; const _TERMS_AND_CONDITIONS = 'TERMS_AND_CONDITIONS'; diff --git a/src/FedEx/RateService/SimpleType/LabelOrderType.php b/src/FedEx/RateService/SimpleType/LabelOrderType.php new file mode 100644 index 00000000..94960c1f --- /dev/null +++ b/src/FedEx/RateService/SimpleType/LabelOrderType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class LabelOrderType extends AbstractSimpleType +{ + const _SHIPPING_LABEL_FIRST = 'SHIPPING_LABEL_FIRST'; + const _SHIPPING_LABEL_LAST = 'SHIPPING_LABEL_LAST'; +} diff --git a/src/FedEx/RateService/SimpleType/LabelPrintingOrientationType.php b/src/FedEx/RateService/SimpleType/LabelPrintingOrientationType.php index 36f0dcf4..ec27a9f8 100644 --- a/src/FedEx/RateService/SimpleType/LabelPrintingOrientationType.php +++ b/src/FedEx/RateService/SimpleType/LabelPrintingOrientationType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * This indicates if the top or bottom of the label comes out of the printer first. + * LabelPrintingOrientationType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/LabelStockType.php b/src/FedEx/RateService/SimpleType/LabelStockType.php index b38931a0..d0ce14e1 100644 --- a/src/FedEx/RateService/SimpleType/LabelStockType.php +++ b/src/FedEx/RateService/SimpleType/LabelStockType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * For thermal printer labels this indicates the size of the label and the location of the doc tab if present. + * LabelStockType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/LinearUnits.php b/src/FedEx/RateService/SimpleType/LinearUnits.php index 1320546e..a335898a 100644 --- a/src/FedEx/RateService/SimpleType/LinearUnits.php +++ b/src/FedEx/RateService/SimpleType/LinearUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * CM = centimeters, IN = inches + * LinearUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/MinimumChargeType.php b/src/FedEx/RateService/SimpleType/MinimumChargeType.php index 14b1d818..1e2c59b9 100644 --- a/src/FedEx/RateService/SimpleType/MinimumChargeType.php +++ b/src/FedEx/RateService/SimpleType/MinimumChargeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Internal FedEx use only. + * MinimumChargeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/NaftaNetCostMethodCode.php b/src/FedEx/RateService/SimpleType/NaftaNetCostMethodCode.php index a27dccb3..521aaf50 100644 --- a/src/FedEx/RateService/SimpleType/NaftaNetCostMethodCode.php +++ b/src/FedEx/RateService/SimpleType/NaftaNetCostMethodCode.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Net cost method used. + * NaftaNetCostMethodCode * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/NetExplosiveClassificationType.php b/src/FedEx/RateService/SimpleType/NetExplosiveClassificationType.php new file mode 100644 index 00000000..e4fc07fc --- /dev/null +++ b/src/FedEx/RateService/SimpleType/NetExplosiveClassificationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class NetExplosiveClassificationType extends AbstractSimpleType +{ + const _NET_EXPLOSIVE_CONTENT = 'NET_EXPLOSIVE_CONTENT'; + const _NET_EXPLOSIVE_MASS = 'NET_EXPLOSIVE_MASS'; + const _NET_EXPLOSIVE_QUANTITY = 'NET_EXPLOSIVE_QUANTITY'; + const _NET_EXPLOSIVE_WEIGHT = 'NET_EXPLOSIVE_WEIGHT'; +} diff --git a/src/FedEx/RateService/SimpleType/EMailNotificationEventType.php b/src/FedEx/RateService/SimpleType/NotificationEventType.php similarity index 72% rename from src/FedEx/RateService/SimpleType/EMailNotificationEventType.php rename to src/FedEx/RateService/SimpleType/NotificationEventType.php index 7a65bb30..e6289384 100644 --- a/src/FedEx/RateService/SimpleType/EMailNotificationEventType.php +++ b/src/FedEx/RateService/SimpleType/NotificationEventType.php @@ -4,15 +4,16 @@ use FedEx\AbstractSimpleType; /** - * EMailNotificationEventType + * NotificationEventType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service */ -class EMailNotificationEventType extends AbstractSimpleType +class NotificationEventType extends AbstractSimpleType { const _ON_DELIVERY = 'ON_DELIVERY'; + const _ON_ESTIMATED_DELIVERY = 'ON_ESTIMATED_DELIVERY'; const _ON_EXCEPTION = 'ON_EXCEPTION'; const _ON_SHIPMENT = 'ON_SHIPMENT'; const _ON_TENDER = 'ON_TENDER'; diff --git a/src/FedEx/RateService/SimpleType/EMailNotificationFormatType.php b/src/FedEx/RateService/SimpleType/NotificationFormatType.php similarity index 68% rename from src/FedEx/RateService/SimpleType/EMailNotificationFormatType.php rename to src/FedEx/RateService/SimpleType/NotificationFormatType.php index 9eee6257..60d0af34 100644 --- a/src/FedEx/RateService/SimpleType/EMailNotificationFormatType.php +++ b/src/FedEx/RateService/SimpleType/NotificationFormatType.php @@ -4,15 +4,14 @@ use FedEx\AbstractSimpleType; /** - * The format of the email + * NotificationFormatType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Rate Service */ -class EMailNotificationFormatType extends AbstractSimpleType +class NotificationFormatType extends AbstractSimpleType { const _HTML = 'HTML'; const _TEXT = 'TEXT'; - const _WIRELESS = 'WIRELESS'; } diff --git a/src/FedEx/RateService/SimpleType/NotificationSeverityType.php b/src/FedEx/RateService/SimpleType/NotificationSeverityType.php index 6f0ee00c..4af47ee0 100644 --- a/src/FedEx/RateService/SimpleType/NotificationSeverityType.php +++ b/src/FedEx/RateService/SimpleType/NotificationSeverityType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of severity values for a Notification. + * NotificationSeverityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/NotificationType.php b/src/FedEx/RateService/SimpleType/NotificationType.php new file mode 100644 index 00000000..9a9e3508 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/NotificationType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class NotificationType extends AbstractSimpleType +{ + const _EMAIL = 'EMAIL'; +} diff --git a/src/FedEx/RateService/SimpleType/OversizeClassType.php b/src/FedEx/RateService/SimpleType/OversizeClassType.php index c143dd6a..1cb3f9ce 100644 --- a/src/FedEx/RateService/SimpleType/OversizeClassType.php +++ b/src/FedEx/RateService/SimpleType/OversizeClassType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The Oversize classification for a package. + * OversizeClassType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/RateService/SimpleType/PackageSpecialServiceType.php index 5e87a17a..66474bc7 100644 --- a/src/FedEx/RateService/SimpleType/PackageSpecialServiceType.php +++ b/src/FedEx/RateService/SimpleType/PackageSpecialServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of special services offered by FedEx. + * PackageSpecialServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,6 +14,7 @@ class PackageSpecialServiceType extends AbstractSimpleType { const _ALCOHOL = 'ALCOHOL'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _BATTERY = 'BATTERY'; const _COD = 'COD'; const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; const _DRY_ICE = 'DRY_ICE'; diff --git a/src/FedEx/RateService/SimpleType/PackagingType.php b/src/FedEx/RateService/SimpleType/PackagingType.php index 7ad2186a..3d05d292 100644 --- a/src/FedEx/RateService/SimpleType/PackagingType.php +++ b/src/FedEx/RateService/SimpleType/PackagingType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. + * PackagingType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -16,7 +16,11 @@ class PackagingType extends AbstractSimpleType const _FEDEX_25KG_BOX = 'FEDEX_25KG_BOX'; const _FEDEX_BOX = 'FEDEX_BOX'; const _FEDEX_ENVELOPE = 'FEDEX_ENVELOPE'; + const _FEDEX_EXTRA_LARGE_BOX = 'FEDEX_EXTRA_LARGE_BOX'; + const _FEDEX_LARGE_BOX = 'FEDEX_LARGE_BOX'; + const _FEDEX_MEDIUM_BOX = 'FEDEX_MEDIUM_BOX'; const _FEDEX_PAK = 'FEDEX_PAK'; + const _FEDEX_SMALL_BOX = 'FEDEX_SMALL_BOX'; const _FEDEX_TUBE = 'FEDEX_TUBE'; const _YOUR_PACKAGING = 'YOUR_PACKAGING'; } diff --git a/src/FedEx/RateService/SimpleType/PageQuadrantType.php b/src/FedEx/RateService/SimpleType/PageQuadrantType.php new file mode 100644 index 00000000..8d967bc6 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/PageQuadrantType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class PageQuadrantType extends AbstractSimpleType +{ + const _BOTTOM_LEFT = 'BOTTOM_LEFT'; + const _BOTTOM_RIGHT = 'BOTTOM_RIGHT'; + const _TOP_LEFT = 'TOP_LEFT'; + const _TOP_RIGHT = 'TOP_RIGHT'; +} diff --git a/src/FedEx/RateService/SimpleType/PaymentType.php b/src/FedEx/RateService/SimpleType/PaymentType.php index fb930200..a819d657 100644 --- a/src/FedEx/RateService/SimpleType/PaymentType.php +++ b/src/FedEx/RateService/SimpleType/PaymentType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the method of payment for a service. + * PaymentType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/PendingShipmentProcessingOptionType.php b/src/FedEx/RateService/SimpleType/PendingShipmentProcessingOptionType.php new file mode 100644 index 00000000..41de7178 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/PendingShipmentProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class PendingShipmentProcessingOptionType extends AbstractSimpleType +{ + const _ALLOW_MODIFICATIONS = 'ALLOW_MODIFICATIONS'; +} diff --git a/src/FedEx/RateService/SimpleType/PhysicalFormType.php b/src/FedEx/RateService/SimpleType/PhysicalFormType.php new file mode 100644 index 00000000..3e450f4b --- /dev/null +++ b/src/FedEx/RateService/SimpleType/PhysicalFormType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class PhysicalFormType extends AbstractSimpleType +{ + const _GAS = 'GAS'; + const _LIQUID = 'LIQUID'; + const _SOLID = 'SOLID'; + const _SPECIAL = 'SPECIAL'; +} diff --git a/src/FedEx/RateService/SimpleType/PriorityAlertEnhancementType.php b/src/FedEx/RateService/SimpleType/PriorityAlertEnhancementType.php new file mode 100644 index 00000000..f2ad593d --- /dev/null +++ b/src/FedEx/RateService/SimpleType/PriorityAlertEnhancementType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class PriorityAlertEnhancementType extends AbstractSimpleType +{ + const _PRIORITY_ALERT_PLUS = 'PRIORITY_ALERT_PLUS'; +} diff --git a/src/FedEx/RateService/SimpleType/RadioactiveContainerClassType.php b/src/FedEx/RateService/SimpleType/RadioactiveContainerClassType.php new file mode 100644 index 00000000..380d1c39 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/RadioactiveContainerClassType.php @@ -0,0 +1,23 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class RadioactiveContainerClassType extends AbstractSimpleType +{ + const _EXCEPTED_PACKAGE = 'EXCEPTED_PACKAGE'; + const _INDUSTRIAL_IP1 = 'INDUSTRIAL_IP1'; + const _INDUSTRIAL_IP2 = 'INDUSTRIAL_IP2'; + const _INDUSTRIAL_IP3 = 'INDUSTRIAL_IP3'; + const _TYPE_A = 'TYPE_A'; + const _TYPE_B_M = 'TYPE_B_M'; + const _TYPE_B_U = 'TYPE_B_U'; + const _TYPE_C = 'TYPE_C'; +} diff --git a/src/FedEx/RateService/SimpleType/RadioactivityUnitOfMeasure.php b/src/FedEx/RateService/SimpleType/RadioactivityUnitOfMeasure.php new file mode 100644 index 00000000..0cdb6f52 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/RadioactivityUnitOfMeasure.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class RadioactivityUnitOfMeasure extends AbstractSimpleType +{ + const _BQ = 'BQ'; + const _GBQ = 'GBQ'; + const _KBQ = 'KBQ'; + const _MBQ = 'MBQ'; + const _PBQ = 'PBQ'; + const _TBQ = 'TBQ'; +} diff --git a/src/FedEx/RateService/SimpleType/RateDiscountType.php b/src/FedEx/RateService/SimpleType/RateDiscountType.php index 27e4a90e..f5143398 100644 --- a/src/FedEx/RateService/SimpleType/RateDiscountType.php +++ b/src/FedEx/RateService/SimpleType/RateDiscountType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of discount applied to the shipment. + * RateDiscountType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/RateRequestType.php b/src/FedEx/RateService/SimpleType/RateRequestType.php index b6ed11dc..f99145ae 100644 --- a/src/FedEx/RateService/SimpleType/RateRequestType.php +++ b/src/FedEx/RateService/SimpleType/RateRequestType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates the type of rates to be returned. + * RateRequestType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,6 +12,7 @@ */ class RateRequestType extends AbstractSimpleType { - const _ACCOUNT = 'ACCOUNT'; const _LIST = 'LIST'; + const _NONE = 'NONE'; + const _PREFERRED = 'PREFERRED'; } diff --git a/src/FedEx/RateService/SimpleType/RatedWeightMethod.php b/src/FedEx/RateService/SimpleType/RatedWeightMethod.php index b66ea04f..0ee5a106 100644 --- a/src/FedEx/RateService/SimpleType/RatedWeightMethod.php +++ b/src/FedEx/RateService/SimpleType/RatedWeightMethod.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The method used to calculate the weight to be used in rating the package.. + * RatedWeightMethod * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -15,6 +15,7 @@ class RatedWeightMethod extends AbstractSimpleType const _ACTUAL = 'ACTUAL'; const _AVERAGE_PACKAGE_WEIGHT_MINIMUM = 'AVERAGE_PACKAGE_WEIGHT_MINIMUM'; const _BALLOON = 'BALLOON'; + const _DEFAULT_WEIGHT_APPLIED = 'DEFAULT_WEIGHT_APPLIED'; const _DIM = 'DIM'; const _FREIGHT_MINIMUM = 'FREIGHT_MINIMUM'; const _MIXED = 'MIXED'; diff --git a/src/FedEx/RateService/SimpleType/RebateType.php b/src/FedEx/RateService/SimpleType/RebateType.php index 7c54fed6..6ce4cef2 100644 --- a/src/FedEx/RateService/SimpleType/RebateType.php +++ b/src/FedEx/RateService/SimpleType/RebateType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the type of discount applied to the shipment. + * RebateType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/RecipientCustomsIdType.php b/src/FedEx/RateService/SimpleType/RecipientCustomsIdType.php index 6357dab2..145db2ea 100644 --- a/src/FedEx/RateService/SimpleType/RecipientCustomsIdType.php +++ b/src/FedEx/RateService/SimpleType/RecipientCustomsIdType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Type of Brazilian taxpayer identifier provided in Recipient/TaxPayerIdentification/Number. For shipments bound for Brazil this overrides the value in Recipient/TaxPayerIdentification/TinType + * RecipientCustomsIdType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/RecommendedDocumentType.php b/src/FedEx/RateService/SimpleType/RecommendedDocumentType.php new file mode 100644 index 00000000..88b9af99 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/RecommendedDocumentType.php @@ -0,0 +1,41 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class RecommendedDocumentType extends AbstractSimpleType +{ + const _ANTIQUE_STATEMENT_EUROPEAN_UNION = 'ANTIQUE_STATEMENT_EUROPEAN_UNION'; + const _ANTIQUE_STATEMENT_UNITED_STATES = 'ANTIQUE_STATEMENT_UNITED_STATES'; + const _ASSEMBLER_DECLARATION = 'ASSEMBLER_DECLARATION'; + const _BEARING_WORKSHEET = 'BEARING_WORKSHEET'; + const _CERTIFICATE_OF_SHIPMENTS_TO_SYRIA = 'CERTIFICATE_OF_SHIPMENTS_TO_SYRIA'; + const _COMMERCIAL_INVOICE_FOR_THE_CARIBBEAN_COMMON_MARKET = 'COMMERCIAL_INVOICE_FOR_THE_CARIBBEAN_COMMON_MARKET'; + const _CONIFEROUS_SOLID_WOOD_PACKAGING_MATERIAL_TO_THE_PEOPLES_REPUBLIC_OF_CHINA = 'CONIFEROUS_SOLID_WOOD_PACKAGING_MATERIAL_TO_THE_PEOPLES_REPUBLIC_OF_CHINA'; + const _DECLARATION_FOR_FREE_ENTRY_OF_RETURNED_AMERICAN_PRODUCTS = 'DECLARATION_FOR_FREE_ENTRY_OF_RETURNED_AMERICAN_PRODUCTS'; + const _DECLARATION_OF_BIOLOGICAL_STANDARDS = 'DECLARATION_OF_BIOLOGICAL_STANDARDS'; + const _DECLARATION_OF_IMPORTED_ELECTRONIC_PRODUCTS_SUBJECT_TO_RADIATION_CONTROL_STANDARD = 'DECLARATION_OF_IMPORTED_ELECTRONIC_PRODUCTS_SUBJECT_TO_RADIATION_CONTROL_STANDARD'; + const _ELECTRONIC_INTEGRATED_CIRCUIT_WORKSHEET = 'ELECTRONIC_INTEGRATED_CIRCUIT_WORKSHEET'; + const _FILM_AND_VIDEO_CERTIFICATE = 'FILM_AND_VIDEO_CERTIFICATE'; + const _INTERIM_FOOTWEAR_INVOICE = 'INTERIM_FOOTWEAR_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_ENGLISH = 'NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_ENGLISH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_FRENCH = 'NAFTA_CERTIFICATE_OF_ORIGIN_CANADA_FRENCH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_SPANISH = 'NAFTA_CERTIFICATE_OF_ORIGIN_SPANISH'; + const _NAFTA_CERTIFICATE_OF_ORIGIN_UNITED_STATES = 'NAFTA_CERTIFICATE_OF_ORIGIN_UNITED_STATES'; + const _PACKING_LIST = 'PACKING_LIST'; + const _PRINTED_CIRCUIT_BOARD_WORKSHEET = 'PRINTED_CIRCUIT_BOARD_WORKSHEET'; + const _REPAIRED_WATCH_BREAKOUT_WORKSHEET = 'REPAIRED_WATCH_BREAKOUT_WORKSHEET'; + const _STATEMENT_REGARDING_THE_IMPORT_OF_RADIO_FREQUENCY_DEVICES = 'STATEMENT_REGARDING_THE_IMPORT_OF_RADIO_FREQUENCY_DEVICES'; + const _TOXIC_SUBSTANCES_CONTROL_ACT = 'TOXIC_SUBSTANCES_CONTROL_ACT'; + const _UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_NON_TEXTILES = 'UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_NON_TEXTILES'; + const _UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_TEXTILES = 'UNITED_STATES_CARIBBEAN_BASIN_TRADE_PARTNERSHIP_ACT_CERTIFICATE_OF_ORIGIN_TEXTILES'; + const _UNITED_STATES_NEW_WATCH_WORKSHEET = 'UNITED_STATES_NEW_WATCH_WORKSHEET'; + const _UNITED_STATES_WATCH_REPAIR_DECLARATION = 'UNITED_STATES_WATCH_REPAIR_DECLARATION'; +} diff --git a/src/FedEx/RateService/SimpleType/RegulatoryControlType.php b/src/FedEx/RateService/SimpleType/RegulatoryControlType.php index 39bb2a01..d351bd61 100644 --- a/src/FedEx/RateService/SimpleType/RegulatoryControlType.php +++ b/src/FedEx/RateService/SimpleType/RegulatoryControlType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * FOOD_OR_PERISHABLE is required by FDA/BTA; must be true for food/perishable items coming to US or PR from non-US/non-PR origin + * RegulatoryControlType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -15,4 +15,6 @@ class RegulatoryControlType extends AbstractSimpleType const _EU_CIRCULATION = 'EU_CIRCULATION'; const _FOOD_OR_PERISHABLE = 'FOOD_OR_PERISHABLE'; const _NAFTA = 'NAFTA'; + const _NOT_APPLICABLE_FOR_LOW_CUSTOMS_VALUE_EXCEPTION = 'NOT_APPLICABLE_FOR_LOW_CUSTOMS_VALUE_EXCEPTION'; + const _NOT_IN_FREE_CIRCULATION = 'NOT_IN_FREE_CIRCULATION'; } diff --git a/src/FedEx/RateService/SimpleType/RegulatoryLabelType.php b/src/FedEx/RateService/SimpleType/RegulatoryLabelType.php new file mode 100644 index 00000000..f7d2ec8f --- /dev/null +++ b/src/FedEx/RateService/SimpleType/RegulatoryLabelType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class RegulatoryLabelType extends AbstractSimpleType +{ + const _ALCOHOL_SHIPMENT_LABEL = 'ALCOHOL_SHIPMENT_LABEL'; +} diff --git a/src/FedEx/RateService/SimpleType/RelativeVerticalPositionType.php b/src/FedEx/RateService/SimpleType/RelativeVerticalPositionType.php new file mode 100644 index 00000000..e2981c97 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/RelativeVerticalPositionType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class RelativeVerticalPositionType extends AbstractSimpleType +{ + const _ABOVE = 'ABOVE'; + const _BELOW = 'BELOW'; +} diff --git a/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php b/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php index ba936e92..c1215a3b 100644 --- a/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php +++ b/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php @@ -15,6 +15,8 @@ class RequestedShippingDocumentType extends AbstractSimpleType const _CERTIFICATE_OF_ORIGIN = 'CERTIFICATE_OF_ORIGIN'; const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; const _CUSTOMER_SPECIFIED_LABELS = 'CUSTOMER_SPECIFIED_LABELS'; + const _DANGEROUS_GOODS_SHIPPERS_DECLARATION = 'DANGEROUS_GOODS_SHIPPERS_DECLARATION'; + const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _LABEL = 'LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; diff --git a/src/FedEx/RateService/SimpleType/ReturnType.php b/src/FedEx/RateService/SimpleType/ReturnType.php index 55c8c941..cfe47233 100644 --- a/src/FedEx/RateService/SimpleType/ReturnType.php +++ b/src/FedEx/RateService/SimpleType/ReturnType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of return shipment that is being requested. + * ReturnType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/ReturnedRateType.php b/src/FedEx/RateService/SimpleType/ReturnedRateType.php index 379943a3..48fc0186 100644 --- a/src/FedEx/RateService/SimpleType/ReturnedRateType.php +++ b/src/FedEx/RateService/SimpleType/ReturnedRateType.php @@ -12,12 +12,14 @@ */ class ReturnedRateType extends AbstractSimpleType { + const _NEGOTIATED = 'NEGOTIATED'; const _PAYOR_ACCOUNT_PACKAGE = 'PAYOR_ACCOUNT_PACKAGE'; const _PAYOR_ACCOUNT_SHIPMENT = 'PAYOR_ACCOUNT_SHIPMENT'; const _PAYOR_LIST_PACKAGE = 'PAYOR_LIST_PACKAGE'; const _PAYOR_LIST_SHIPMENT = 'PAYOR_LIST_SHIPMENT'; - const _RATED_ACCOUNT_PACKAGE = 'RATED_ACCOUNT_PACKAGE'; - const _RATED_ACCOUNT_SHIPMENT = 'RATED_ACCOUNT_SHIPMENT'; - const _RATED_LIST_PACKAGE = 'RATED_LIST_PACKAGE'; - const _RATED_LIST_SHIPMENT = 'RATED_LIST_SHIPMENT'; + const _PREFERRED_ACCOUNT_PACKAGE = 'PREFERRED_ACCOUNT_PACKAGE'; + const _PREFERRED_ACCOUNT_SHIPMENT = 'PREFERRED_ACCOUNT_SHIPMENT'; + const _PREFERRED_LIST_PACKAGE = 'PREFERRED_LIST_PACKAGE'; + const _PREFERRED_LIST_SHIPMENT = 'PREFERRED_LIST_SHIPMENT'; + const _PREFERRED_NEGOTIATED = 'PREFERRED_NEGOTIATED'; } diff --git a/src/FedEx/RateService/SimpleType/RotationType.php b/src/FedEx/RateService/SimpleType/RotationType.php new file mode 100644 index 00000000..3379ffb5 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/RotationType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class RotationType extends AbstractSimpleType +{ + const _LEFT = 'LEFT'; + const _NONE = 'NONE'; + const _RIGHT = 'RIGHT'; + const _UPSIDE_DOWN = 'UPSIDE_DOWN'; +} diff --git a/src/FedEx/RateService/SimpleType/ServiceOptionType.php b/src/FedEx/RateService/SimpleType/ServiceOptionType.php index 8dc4772d..292a1398 100644 --- a/src/FedEx/RateService/SimpleType/ServiceOptionType.php +++ b/src/FedEx/RateService/SimpleType/ServiceOptionType.php @@ -12,6 +12,7 @@ */ class ServiceOptionType extends AbstractSimpleType { + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; const _SATURDAY_DELIVERY = 'SATURDAY_DELIVERY'; const _SMART_POST_ALLOWED_INDICIA = 'SMART_POST_ALLOWED_INDICIA'; diff --git a/src/FedEx/RateService/SimpleType/ServiceType.php b/src/FedEx/RateService/SimpleType/ServiceType.php index 6669aa76..22090f5e 100644 --- a/src/FedEx/RateService/SimpleType/ServiceType.php +++ b/src/FedEx/RateService/SimpleType/ServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. + * ServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -18,19 +18,28 @@ class ServiceType extends AbstractSimpleType const _FEDEX_2_DAY_AM = 'FEDEX_2_DAY_AM'; const _FEDEX_2_DAY_FREIGHT = 'FEDEX_2_DAY_FREIGHT'; const _FEDEX_3_DAY_FREIGHT = 'FEDEX_3_DAY_FREIGHT'; + const _FEDEX_DISTANCE_DEFERRED = 'FEDEX_DISTANCE_DEFERRED'; const _FEDEX_EXPRESS_SAVER = 'FEDEX_EXPRESS_SAVER'; const _FEDEX_FIRST_FREIGHT = 'FEDEX_FIRST_FREIGHT'; const _FEDEX_FREIGHT_ECONOMY = 'FEDEX_FREIGHT_ECONOMY'; const _FEDEX_FREIGHT_PRIORITY = 'FEDEX_FREIGHT_PRIORITY'; const _FEDEX_GROUND = 'FEDEX_GROUND'; + const _FEDEX_NEXT_DAY_AFTERNOON = 'FEDEX_NEXT_DAY_AFTERNOON'; + const _FEDEX_NEXT_DAY_EARLY_MORNING = 'FEDEX_NEXT_DAY_EARLY_MORNING'; + const _FEDEX_NEXT_DAY_END_OF_DAY = 'FEDEX_NEXT_DAY_END_OF_DAY'; + const _FEDEX_NEXT_DAY_FREIGHT = 'FEDEX_NEXT_DAY_FREIGHT'; + const _FEDEX_NEXT_DAY_MID_MORNING = 'FEDEX_NEXT_DAY_MID_MORNING'; const _FIRST_OVERNIGHT = 'FIRST_OVERNIGHT'; const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; const _INTERNATIONAL_ECONOMY = 'INTERNATIONAL_ECONOMY'; const _INTERNATIONAL_ECONOMY_FREIGHT = 'INTERNATIONAL_ECONOMY_FREIGHT'; const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; + const _SAME_DAY = 'SAME_DAY'; + const _SAME_DAY_CITY = 'SAME_DAY_CITY'; const _SMART_POST = 'SMART_POST'; const _STANDARD_OVERNIGHT = 'STANDARD_OVERNIGHT'; } diff --git a/src/FedEx/RateService/SimpleType/ShipmentDryIceProcessingOptionType.php b/src/FedEx/RateService/SimpleType/ShipmentDryIceProcessingOptionType.php new file mode 100644 index 00000000..e5558d53 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/ShipmentDryIceProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class ShipmentDryIceProcessingOptionType extends AbstractSimpleType +{ + const _SHIPMENT_LEVEL_DRY_ICE_ONLY = 'SHIPMENT_LEVEL_DRY_ICE_ONLY'; +} diff --git a/src/FedEx/RateService/SimpleType/ShipmentNotificationAggregationType.php b/src/FedEx/RateService/SimpleType/ShipmentNotificationAggregationType.php new file mode 100644 index 00000000..0609c4b6 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/ShipmentNotificationAggregationType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class ShipmentNotificationAggregationType extends AbstractSimpleType +{ + const _PER_PACKAGE = 'PER_PACKAGE'; + const _PER_SHIPMENT = 'PER_SHIPMENT'; +} diff --git a/src/FedEx/RateService/SimpleType/ShipmentNotificationRoleType.php b/src/FedEx/RateService/SimpleType/ShipmentNotificationRoleType.php new file mode 100644 index 00000000..10d09a6d --- /dev/null +++ b/src/FedEx/RateService/SimpleType/ShipmentNotificationRoleType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class ShipmentNotificationRoleType extends AbstractSimpleType +{ + const _BROKER = 'BROKER'; + const _OTHER = 'OTHER'; + const _RECIPIENT = 'RECIPIENT'; + const _SHIPPER = 'SHIPPER'; + const _THIRD_PARTY = 'THIRD_PARTY'; +} diff --git a/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php index 72507f36..939c81e9 100644 --- a/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of special service offered by FedEx. + * ShipmentSpecialServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -16,30 +16,39 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _CALL_BEFORE_DELIVERY = 'CALL_BEFORE_DELIVERY'; const _COD = 'COD'; const _CUSTOM_DELIVERY_WINDOW = 'CUSTOM_DELIVERY_WINDOW'; + const _CUT_FLOWERS = 'CUT_FLOWERS'; const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; const _DO_NOT_BREAK_DOWN_PALLETS = 'DO_NOT_BREAK_DOWN_PALLETS'; const _DO_NOT_STACK_PALLETS = 'DO_NOT_STACK_PALLETS'; const _DRY_ICE = 'DRY_ICE'; const _EAST_COAST_SPECIAL = 'EAST_COAST_SPECIAL'; const _ELECTRONIC_TRADE_DOCUMENTS = 'ELECTRONIC_TRADE_DOCUMENTS'; - const _EMAIL_NOTIFICATION = 'EMAIL_NOTIFICATION'; + const _EVENT_NOTIFICATION = 'EVENT_NOTIFICATION'; + const _EXCLUDE_FROM_CONSOLIDATION = 'EXCLUDE_FROM_CONSOLIDATION'; const _EXTREME_LENGTH = 'EXTREME_LENGTH'; + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FOOD = 'FOOD'; const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; + const _FREIGHT_TO_COLLECT = 'FREIGHT_TO_COLLECT'; const _FUTURE_DAY_SHIPMENT = 'FUTURE_DAY_SHIPMENT'; const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; const _HOME_DELIVERY_PREMIUM = 'HOME_DELIVERY_PREMIUM'; const _INSIDE_DELIVERY = 'INSIDE_DELIVERY'; const _INSIDE_PICKUP = 'INSIDE_PICKUP'; + const _INTERNATIONAL_CONTROLLED_EXPORT_SERVICE = 'INTERNATIONAL_CONTROLLED_EXPORT_SERVICE'; + const _INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS = 'INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS'; const _LIFTGATE_DELIVERY = 'LIFTGATE_DELIVERY'; const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; + const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; const _POISON = 'POISON'; const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; + const _RETURNS_CLEARANCE = 'RETURNS_CLEARANCE'; const _RETURN_SHIPMENT = 'RETURN_SHIPMENT'; const _SATURDAY_DELIVERY = 'SATURDAY_DELIVERY'; const _SATURDAY_PICKUP = 'SATURDAY_PICKUP'; + const _THIRD_PARTY_CONSIGNEE = 'THIRD_PARTY_CONSIGNEE'; const _TOP_LOAD = 'TOP_LOAD'; } diff --git a/src/FedEx/RateService/SimpleType/ShippingDocumentDispositionType.php b/src/FedEx/RateService/SimpleType/ShippingDocumentDispositionType.php index 6c0bf4a9..27c8b9d7 100644 --- a/src/FedEx/RateService/SimpleType/ShippingDocumentDispositionType.php +++ b/src/FedEx/RateService/SimpleType/ShippingDocumentDispositionType.php @@ -13,6 +13,7 @@ class ShippingDocumentDispositionType extends AbstractSimpleType { const _CONFIRMED = 'CONFIRMED'; + const _DEFERRED_QUEUED = 'DEFERRED_QUEUED'; const _DEFERRED_RETURNED = 'DEFERRED_RETURNED'; const _DEFERRED_STORED = 'DEFERRED_STORED'; const _EMAILED = 'EMAILED'; diff --git a/src/FedEx/RateService/SimpleType/ShippingDocumentImageType.php b/src/FedEx/RateService/SimpleType/ShippingDocumentImageType.php index 6044604b..a797f5eb 100644 --- a/src/FedEx/RateService/SimpleType/ShippingDocumentImageType.php +++ b/src/FedEx/RateService/SimpleType/ShippingDocumentImageType.php @@ -12,7 +12,6 @@ */ class ShippingDocumentImageType extends AbstractSimpleType { - const _DPL = 'DPL'; const _EPL2 = 'EPL2'; const _PDF = 'PDF'; const _PNG = 'PNG'; diff --git a/src/FedEx/RateService/SimpleType/SignatureOptionType.php b/src/FedEx/RateService/SimpleType/SignatureOptionType.php index 9641477e..9eae28bc 100644 --- a/src/FedEx/RateService/SimpleType/SignatureOptionType.php +++ b/src/FedEx/RateService/SimpleType/SignatureOptionType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the delivery signature services options offered by FedEx. + * SignatureOptionType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/SmartPostShipmentProcessingOptionType.php b/src/FedEx/RateService/SimpleType/SmartPostShipmentProcessingOptionType.php new file mode 100644 index 00000000..aaeb6527 --- /dev/null +++ b/src/FedEx/RateService/SimpleType/SmartPostShipmentProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + */ +class SmartPostShipmentProcessingOptionType extends AbstractSimpleType +{ + const _GROUND_TRACKING_NUMBER_REQUESTED = 'GROUND_TRACKING_NUMBER_REQUESTED'; +} diff --git a/src/FedEx/RateService/SimpleType/SpecialRatingAppliedType.php b/src/FedEx/RateService/SimpleType/SpecialRatingAppliedType.php index 222c70d0..1ebfa237 100644 --- a/src/FedEx/RateService/SimpleType/SpecialRatingAppliedType.php +++ b/src/FedEx/RateService/SimpleType/SpecialRatingAppliedType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Indicates which special rating cases applied to this shipment. + * SpecialRatingAppliedType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,6 +12,7 @@ */ class SpecialRatingAppliedType extends AbstractSimpleType { + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FIXED_FUEL_SURCHARGE = 'FIXED_FUEL_SURCHARGE'; const _IMPORT_PRICING = 'IMPORT_PRICING'; } diff --git a/src/FedEx/RateService/SimpleType/SurchargeType.php b/src/FedEx/RateService/SimpleType/SurchargeType.php index fa11dbfa..cc8175de 100644 --- a/src/FedEx/RateService/SimpleType/SurchargeType.php +++ b/src/FedEx/RateService/SimpleType/SurchargeType.php @@ -12,7 +12,9 @@ */ class SurchargeType extends AbstractSimpleType { + const _ACCOUNT_NUMBER_PROCESSING_FEE = 'ACCOUNT_NUMBER_PROCESSING_FEE'; const _ADDITIONAL_HANDLING = 'ADDITIONAL_HANDLING'; + const _ADDRESS_CORRECTION = 'ADDRESS_CORRECTION'; const _ANCILLARY_FEE = 'ANCILLARY_FEE'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; const _BROKER_SELECT_OPTION = 'BROKER_SELECT_OPTION'; @@ -30,12 +32,15 @@ class SurchargeType extends AbstractSimpleType const _EXCESS_VALUE = 'EXCESS_VALUE'; const _EXHIBITION = 'EXHIBITION'; const _EXPORT = 'EXPORT'; + const _EXTRA_SURFACE_HANDLING_CHARGE = 'EXTRA_SURFACE_HANDLING_CHARGE'; const _EXTREME_LENGTH = 'EXTREME_LENGTH'; + const _FEDEX_INTRACOUNTRY_FEES = 'FEDEX_INTRACOUNTRY_FEES'; const _FEDEX_TAG = 'FEDEX_TAG'; const _FICE = 'FICE'; const _FLATBED = 'FLATBED'; const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; const _FREIGHT_ON_VALUE = 'FREIGHT_ON_VALUE'; + const _FREIGHT_TO_COLLECT = 'FREIGHT_TO_COLLECT'; const _FUEL = 'FUEL'; const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; const _HOME_DELIVERY_APPOINTMENT = 'HOME_DELIVERY_APPOINTMENT'; @@ -54,6 +59,7 @@ class SurchargeType extends AbstractSimpleType const _NON_MACHINABLE = 'NON_MACHINABLE'; const _OFFSHORE = 'OFFSHORE'; const _ON_CALL_PICKUP = 'ON_CALL_PICKUP'; + const _ON_DEMAND_CARE = 'ON_DEMAND_CARE'; const _OTHER = 'OTHER'; const _OUT_OF_DELIVERY_AREA = 'OUT_OF_DELIVERY_AREA'; const _OUT_OF_PICKUP_AREA = 'OUT_OF_PICKUP_AREA'; @@ -65,6 +71,8 @@ class SurchargeType extends AbstractSimpleType const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; const _REGIONAL_MALL_DELIVERY = 'REGIONAL_MALL_DELIVERY'; const _REGIONAL_MALL_PICKUP = 'REGIONAL_MALL_PICKUP'; + const _REROUTE = 'REROUTE'; + const _RESCHEDULE = 'RESCHEDULE'; const _RESIDENTIAL_DELIVERY = 'RESIDENTIAL_DELIVERY'; const _RESIDENTIAL_PICKUP = 'RESIDENTIAL_PICKUP'; const _RETURN_LABEL = 'RETURN_LABEL'; diff --git a/src/FedEx/RateService/SimpleType/TermsOfSaleType.php b/src/FedEx/RateService/SimpleType/TermsOfSaleType.php deleted file mode 100644 index 2e776d86..00000000 --- a/src/FedEx/RateService/SimpleType/TermsOfSaleType.php +++ /dev/null @@ -1,27 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Rate Service - */ -class TermsOfSaleType extends AbstractSimpleType -{ - const _CFR_OR_CPT = 'CFR_OR_CPT'; - const _CIF_OR_CIP = 'CIF_OR_CIP'; - const _DDP = 'DDP'; - const _DDU = 'DDU'; - const _EXW = 'EXW'; - const _FOB_OR_FCA = 'FOB_OR_FCA'; -} diff --git a/src/FedEx/RateService/SimpleType/TinType.php b/src/FedEx/RateService/SimpleType/TinType.php index 99fdb2bf..05777acc 100644 --- a/src/FedEx/RateService/SimpleType/TinType.php +++ b/src/FedEx/RateService/SimpleType/TinType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the category of the taxpayer identification number. + * TinType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/TransitTimeType.php b/src/FedEx/RateService/SimpleType/TransitTimeType.php index c48f867c..5db66a4f 100644 --- a/src/FedEx/RateService/SimpleType/TransitTimeType.php +++ b/src/FedEx/RateService/SimpleType/TransitTimeType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Time in transit from pickup to delivery. + * TransitTimeType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/RateService/SimpleType/UploadDocumentIdProducer.php b/src/FedEx/RateService/SimpleType/UploadDocumentIdProducer.php index 0382602e..532fc769 100644 --- a/src/FedEx/RateService/SimpleType/UploadDocumentIdProducer.php +++ b/src/FedEx/RateService/SimpleType/UploadDocumentIdProducer.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * UploadDocumentIdProducer + * Specifies the application that is responsible for managing the document id. * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -13,6 +13,10 @@ class UploadDocumentIdProducer extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; + const _FEDEX_CAFE = 'FEDEX_CAFE'; const _FEDEX_CSHP = 'FEDEX_CSHP'; + const _FEDEX_FXRS = 'FEDEX_FXRS'; + const _FEDEX_GSMW = 'FEDEX_GSMW'; const _FEDEX_GTM = 'FEDEX_GTM'; + const _FEDEX_INET = 'FEDEX_INET'; } diff --git a/src/FedEx/RateService/SimpleType/UploadDocumentProducerType.php b/src/FedEx/RateService/SimpleType/UploadDocumentProducerType.php index b2c3ff00..d8cf286e 100644 --- a/src/FedEx/RateService/SimpleType/UploadDocumentProducerType.php +++ b/src/FedEx/RateService/SimpleType/UploadDocumentProducerType.php @@ -13,7 +13,11 @@ class UploadDocumentProducerType extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; + const _FEDEX_CAFE = 'FEDEX_CAFE'; const _FEDEX_CLS = 'FEDEX_CLS'; + const _FEDEX_FIDT = 'FEDEX_FIDT'; + const _FEDEX_FXRS = 'FEDEX_FXRS'; + const _FEDEX_GSMW = 'FEDEX_GSMW'; const _FEDEX_GTM = 'FEDEX_GTM'; const _OTHER = 'OTHER'; } diff --git a/src/FedEx/RateService/SimpleType/UploadDocumentType.php b/src/FedEx/RateService/SimpleType/UploadDocumentType.php index 2c46a509..745a5b82 100644 --- a/src/FedEx/RateService/SimpleType/UploadDocumentType.php +++ b/src/FedEx/RateService/SimpleType/UploadDocumentType.php @@ -16,6 +16,7 @@ class UploadDocumentType extends AbstractSimpleType const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; const _ETD_LABEL = 'ETD_LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _NET_RATE_SHEET = 'NET_RATE_SHEET'; const _OTHER = 'OTHER'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; } diff --git a/src/FedEx/RateService/SimpleType/WeightUnits.php b/src/FedEx/RateService/SimpleType/WeightUnits.php index 659d2c75..effe46bb 100644 --- a/src/FedEx/RateService/SimpleType/WeightUnits.php +++ b/src/FedEx/RateService/SimpleType/WeightUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the unit of measure associated with a weight value. See WeightUnits for the list of valid enumerated values. + * WeightUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/_wsdl/RateService_v10.wsdl b/src/FedEx/_wsdl/RateService_v22.wsdl old mode 100644 new mode 100755 similarity index 78% rename from src/FedEx/_wsdl/RateService_v10.wsdl rename to src/FedEx/_wsdl/RateService_v22.wsdl index 26ea702e..75cce6b4 --- a/src/FedEx/_wsdl/RateService_v10.wsdl +++ b/src/FedEx/_wsdl/RateService_v22.wsdl @@ -1,4870 +1,5079 @@ - - - - - - - - Specifies additional labels to be produced. All required labels for shipments will be produced without the need to request additional labels. These are only available as thermal labels. - - - - - The type of additional labels to return. - - - - - The number of this type label to return - - - - - - - Identifies the type of additional labels. - - - - - - - - - - - - - - - Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). - - - - - Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. - - - - - Name of city, town, etc. - - - - - Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. - - - - - Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. - - - - - Relevant only to addresses in Puerto Rico. - - - - - The two-letter code used to identify a country. - - - - - Indicates whether this address residential (as opposed to commercial). - - - - - - - - Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. - - - - - - - - - - - - Identification of the type of barcode (symbology) used on FedEx documents and labels. - - - - - - - - - - - - - - - - - - Identification of a FedEx operating company (transportation). - - - - - - - - - - - - - The instructions indicating how to print the Certificate of Origin ( e.g. whether or not to include the instructions, image type, etc ...) - - - - - Specifies characteristics of a shipping document to be produced. - - - - - Specifies the usage and identification of customer supplied images to be used on this document. - - - - - - - - - - - - - Specifies the type of brokerage to be applied to a shipment. - - - - - - - - - - - - Descriptive data for the client submitting a transaction. - - - - - The FedEx account number associated with this transaction. - - - - - This number is assigned by FedEx and identifies the unique device from which the request is originating - - - - - Only used in transactions which require identification of the Fed Ex Office integrator. - - - - - Indicates the region from which the transaction is submitted. - - - - - The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - - - - - - - - - - - - - - - - - - - - - - Identifies the type of funds FedEx should collect upon shipment delivery. - - - - - - - - - - Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. - - - - - - Specifies the details of the charges are to be added to the COD collect amount. - - - - - Identifies the type of funds FedEx should collect upon package delivery - - - - - For Express this is the descriptive data that is used for the recipient of the FedEx Letter containing the COD payment. For Ground this is the descriptive data for the party to receive the payment that prints the COD receipt. - - - - - Indicates which type of reference information to include on the COD return shipping label. - - - - - - - Indicates which type of reference information to include on the COD return shipping label. - - - - - - - - - - - CommercialInvoice element is required for electronic upload of CI data. It will serve to create/transmit an Electronic Commercial Invoice through the FedEx Systems. Customers are responsible for printing their own Commercial Invoice.If you would likeFedEx to generate a Commercial Invoice and transmit it to Customs. for clearance purposes, you need to specify that in the ShippingDocumentSpecification element. If you would like a copy of the Commercial Invoice that FedEx generated returned to you in reply it needs to be specified in the ETDDetail/RequestedDocumentCopies element. Commercial Invoice support consists of maximum of 99 commodity line items. - - - - - Any comments that need to be communicated about this shipment. - - - - - Any freight charges that are associated with this shipment. - - - - - Any taxes or miscellaneous charges(other than Freight charges or Insurance charges) that are associated with this shipment. - - - - - Specifies which kind of charge is being recorded in the preceding field. - - - - - Any packing costs that are associated with this shipment. - - - - - Any handling costs that are associated with this shipment. - - - - - Free-form text. - - - - - Free-form text. - - - - - Free-form text. - - - - - The reason for the shipment. Note: SOLD is not a valid purpose for a Proforma Invoice. - - - - - Customer assigned Invoice number - - - - - Name of the International Expert that completed the Commercial Invoice different from Sender. - - - - - Required for dutiable international Express or Ground shipment. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice - - - - - - - The instructions indicating how to print the Commercial Invoice( e.g. image type) Specifies characteristics of a shipping document to be produced. - - - - - - Specifies the usage and identification of a customer supplied image to be used on this document. - - - - - - - Information about the transit time and delivery commitment date and time. - - - - - The Commodity applicable to this commitment. - - - - - The FedEx service type applicable to this commitment. - - - - - Shows the specific combination of service options combined with the service type that produced this committment in the set returned to the caller. - - - - - Supporting detail for applied options identified in preceding field. - - - - - THe delivery commitment date/time. Express Only. - - - - - The delivery commitment day of the week. - - - - - The number of transit days; applies to Ground and LTL Freight; indicates minimum transit time for SmartPost. - - - - - Maximum number of transit days, for SmartPost shipments. - - - - - The service area code for the destination of this shipment. Express only. - - - - - The address of the broker to be used for this shipment. - - - - - The FedEx location identifier for the broker. - - - - - The delivery commitment date/time the shipment will arrive at the border. - - - - - The delivery commitment day of the week the shipment will arrive at the border. - - - - - The number of days it will take for the shipment to make it from broker to destination - - - - - The delivery commitment date for shipment served by GSP (Global Service Provider) - - - - - The delivery commitment day of the week for the shipment served by GSP (Global Service Provider) - - - - - Messages concerning the ability to provide an accurate delivery commitment on an International commit quote. These could be messages providing information about why a commitment could not be returned or a successful message such as "REQUEST COMPLETED" - - - - - Messages concerning the delivery commitment on an International commit quote such as "0:00 A.M. IF NO CUSTOMS DELAY" - - - - - Information about why a shipment delivery is delayed and at what level (country/service etc.). - - - - - - Required documentation for this shipment. - - - - - Freight origin and destination city center information and total distance between origin and destination city centers. - - - - - - - The type of delay this shipment will encounter. - - - - - - - - - - - - - - - - - - - For international multiple piece shipments, commodity information must be passed in the Master and on each child transaction. - If this shipment cotains more than four commodities line items, the four highest valued should be included in the first 4 occurances for this request. - - - - - - total number of pieces of this commodity - - - - - total number of pieces of this commodity - - - - - Complete and accurate description of this commodity. - - 450 - - - - - - Country code where commodity contents were produced or manufactured in their final form. - - 2 - - - - - - - Unique alpha/numeric representing commodity item. - At least one occurrence is required for US Export shipments if the Customs Value is greater than $2500 or if a valid US Export license is required. - - - 14 - - - - - - Total weight of this commodity. 1 explicit decimal position. Max length 11 including decimal. - - - - - Number of units of a commodity in total number of pieces for this line item. Max length is 9 - - - - - Unit of measure used to express the quantity of this commodity line item. - - 3 - - - - - - Contains only additional quantitative information other than weight and quantity to calculate duties and taxes. - - - - - Value of each unit in Quantity. Six explicit decimal positions, Max length 18 including decimal. - - - - - - Total customs value for this line item. - It should equal the commodity unit quantity times commodity unit value. - Six explicit decimal positions, max length 18 including decimal. - - - - - - Defines additional characteristic of commodity used to calculate duties and taxes - - - - - Applicable to US export shipping only. - - 12 - - - - - - - - An identifying mark or number used on the packaging of a shipment to help customers identify a particular shipment. - - - 15 - - - - - - All data required for this commodity in NAFTA Certificate of Origin. - - - - - - - Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. - - - - - 1 of 12 possible zones to position data. - - - - - The identifiying text for the data in this zone. - - - - - A reference to a field in either the request or reply to print in this zone following the header. - - - - - A literal value to print after the header in this zone. - - - - - - - The descriptive data for a point-of-contact person. - - - - - Client provided identifier corresponding to this contact information. - - - - - Identifies the contact person's name. - - - - - Identifies the contact person's title. - - - - - Identifies the company this contact is associated with. - - - - - Identifies the phone number associated with this contact. - - - - - Identifies the phone extension associated with this contact. - - - - - Identifies the pager number associated with this contact. - - - - - Identifies the fax number associated with this contact. - - - - - Identifies the email address associated with this contact. - - - - - - - - - - - - - - - - - - - - - Specifies the currency exchange performed on financial amounts for this rate. - - - - - The currency code for the original (converted FROM) currency. - - - - - The currency code for the final (converted INTO) currency. - - - - - Multiplier used to convert fromCurrency units to intoCurrency units. - - - - - - - - - Indicates the type of custom delivery being requested. - - - - - Time by which delivery is requested. - - - - - Range of dates for custom delivery request; only used if type is BETWEEN. - - - - - Date for custom delivery request; only used for types of ON, BETWEEN, or AFTER. - - - - - - - - - - - - - - - Data required to produce a custom-specified document, either at shipment or package level. - - - - - Common information controlling document production. - - - - - Applicable only to documents produced on thermal printers with roll stock. - - - - - Applicable only to documents produced on thermal printers with roll stock. - - - - - Identifies the formatting specification used to construct this custom document. - - - - - - - Constructed string, based on format and zero or more data fields, printed in specified barcode symbology. - - - - - - - - - Width of thinnest bar/space element in the barcode. - - - - - - - - Solid (filled) rectangular area on label. - - - - - - - - - - - - - - - - - - - - - - - - Image to be included from printer's memory, or from a local file for offline clients. - - - - - - Printer-specific index of graphic image to be printed. - - - - - Fully-qualified path and file name for graphic image to be printed. - - - - - - - - - Horizontal position, relative to left edge of custom area. - - - - - Vertical position, relative to top edge of custom area. - - - - - - - Constructed string, based on format and zero or more data fields, printed in specified printer font (for thermal labels) or generic font/size (for plain paper labels). - - - - - - - - Printer-specific font name for use with thermal printer labels. - - - - - Generic font name for use with plain paper labels. - - - - - Generic font size for use with plain paper labels. - - - - - - - - - - - - - - - - - - - Reference information to be associated with this package. - - - - - - - - - - - - - - - - - - - - - - - Allows customer-specified control of label content. - - - - - If omitted, no doc tab will be produced (i.e. default = former NONE type). - - - - - Defines any custom content to print on the label. - - - - - Defines additional data to print in the Configurable portion of the label, this allows you to print the same type information on the label that can also be printed on the doc tab. - - - - - Controls which data/sections will be suppressed. - - - - - For customers producing their own Ground labels, this field specifies which secondary barcode will be printed on the label; so that the primary barcode produced by FedEx has the corect SCNC. - - - - - The language to use when printing the terms and conditions on the label. - - - - - Controls the number of additional copies of supplemental labels. - - - - - This value reduces the default quantity of destination/consignee air waybill labels. A value of zero indicates no change to default. A minimum of one copy will always be produced. - - - - - - - - - - Descriptive data identifying the Broker responsible for the shipmet. - Required if BROKER_SELECT_OPTION is requested in Special Services. - - - - - - Interacts both with properties of the shipment and contractual relationship with the shipper. - - - - - - Applicable only for Commercial Invoice. If the consignee and importer are not the same, the Following importer fields are required. - Importer/Contact/PersonName - Importer/Contact/CompanyName - Importer/Contact/PhoneNumber - Importer/Address/StreetLine[0] - Importer/Address/City - Importer/Address/StateOrProvinceCode - if Importer Country Code is US or CA - Importer/Address/PostalCode - if Importer Country Code is US or CA - Importer/Address/CountryCode - - - - - - Specifies how the recipient is identified for customs purposes; the requirements on this information vary with destination country. - - - - - Indicates how payment of duties for the shipment will be made. - - - - - Indicates whether this shipment contains documents only or non-documents. - - - - - The total customs value for the shipment. This total will rrepresent th esum of the values of all commodities, and may include freight, miscellaneous, and insurance charges. Must contain 2 explicit decimal positions with a max length of 17 including the decimal. For Express International MPS, the Total Customs Value is in the master transaction and all child transactions - - - - - Identifies responsibilities with respect to loss, damage, etc. - - - - - Documents amount paid to third party for coverage of shipment content. - - - - - - CommercialInvoice element is required for electronic upload of CI data. It will serve to create/transmit an Electronic Commercial Invoice through FedEx System. Customers are responsible for printing their own Commercial Invoice. Commercial Invoice support consists of a maximum of 20 commodity line items. - - - - - - For international multiple piece shipments, commodity information must be passed in the Master and on each child transaction. - If this shipment cotains more than four commodities line items, the four highest valued should be included in the first 4 occurances for this request. - - - - - - Country specific details of an International shipment. - - - - - FOOD_OR_PERISHABLE is required by FDA/BTA; must be true for food/perishable items coming to US or PR from non-US/non-PR origin. - - - - - - - Identifies whether or not the products being shipped are required to be accessible during delivery. - - - - - - - - - The descriptive data required for a FedEx shipment containing dangerous goods (hazardous materials). - - - - - Identifies whether or not the products being shipped are required to be accessible during delivery. - - - - - Shipment is packaged/documented for movement ONLY on cargo aircraft. - - - - - Indicates which kinds of hazardous content are in the current package. - - - - - Documents the kinds and quantities of all hazardous commodities in the current package. - - - - - Description of the packaging of this commodity, suitable for use on OP-900 and OP-950 forms. - - - - - Telephone number to use for contact in the event of an emergency. - - - - - Offeror's name or contract number, per DOT regulation. - - - - - - - - - - - - - - - - - - - - - - - - Information about why a shipment delivery is delayed and at what level( country/service etc.). - - - - - The date of the delay - - - - - - The attribute of the shipment that caused the delay(e.g. Country, City, LocationId, Zip, service area, special handling ) - - - - - The point where the delay is occurring (e.g. Origin, Destination, Broker location) - - - - - The reason for the delay (e.g. holiday, weekend, etc.). - - - - - The name of the holiday in that country that is causing the delay. - - - - - - - The attribute of the shipment that caused the delay(e.g. Country, City, LocationId, Zip, service area, special handling ) - - - - - - - - - - - - - - The point where the delay is occurring ( e.g. Origin, Destination, Broker location). - - - - - - - - - - - - Data required to complete the Destionation Control Statement for US exports. - - - - - - Comma-separated list of up to four country codes, required for DEPARTMENT_OF_STATE statement. - - - - - Name of end user, required for DEPARTMENT_OF_STATE statement. - - - - - - - Used to indicate whether the Destination Control Statement is of type Department of Commerce, Department of State or both. - - - - - - - - - The dimensions of this package and the unit type used for the measurements. - - - - - - - - - - - Driving or other transportation distances, distinct from dimension measurements. - - - - - Identifies the distance quantity. - - - - - Identifies the unit of measure for the distance value. - - - - - - - - - - - - - - - The DocTabContentType options available. - - - - - The DocTabContentType should be set to ZONE001 to specify additional Zone details. - - - - - The DocTabContentType should be set to BARCODED to specify additional BarCoded details. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Zone number can be between 1 and 12. - - - - - Header value on this zone. - - - - - Reference path to the element in the request/reply whose value should be printed on this zone. - - - - - Free form-text to be printed in this zone. - - - - - Justification for the text printed on this zone. - - - - - - - Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. - - - - - - - - - - - - Specific information about the delivery of the email and options for the shipment. - - - - - Email address to send the URL to. - - - - - A message to be inserted into the email. - - - - - - - Information describing email notifications that will be sent in relation to events that occur during package movement - - - - - A message that will be included in the email notifications - - - - - Information describing the destination of the email, format of the email and events to be notified on - - - - - - - - - - - - - - - The format of the email - - - - - - - - - - The descriptive data for a FedEx email notification recipient. - - - - - Identifies the relationship this email recipient has to the shipment. - - - - - The email address to send the notification to - - - - - The types of email notifications being requested for this recipient. - - - - - The format of the email notification. - - - - - The language/locale to be used in this email notification. - - - - - - - Identifies the set of valid email notification recipient types. For SHIPPER, RECIPIENT and BROKER the email address asssociated with their definitions will be used, any email address sent with the email notification for these three email notification recipient types will be ignored. - - - - - - - - - - - - - - - - - - - - Customer-declared value, with data type and legal values depending on excise condition, used in defining the taxable value of the item. - - - - - - - Specifies the types of Estimated Duties and Taxes to be included in a rate quotation for an international shipment. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Electronic Trade document references used with the ETD special service. - - - - - Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. - - - - - Currently not supported. - - - - - - - - Country specific details of an International shipment. - - - - - - Specifies which filing option is being exercised by the customer. - Required for non-document shipments originating in Canada destined for any country other than Canada, the United States, Puerto Rico or the U.S. Virgin Islands. - - - - - - General field for exporting-country-specific export data (e.g. B13A for CA, FTSR Exemption or AES Citation for US). - - - - - This field is applicable only to Canada export non-document shipments of any value to any destination. No special characters allowed. - - 10 - - - - - - Department of Commerce/Department of State information about this shipment. - - - - - - - Details specific to an Express freight shipment. - - - - - Indicates whether or nor a packing list is enclosed. - - - - - - Total shipment pieces. - ie. 3 boxes and 3 pallets of 100 pieces each = Shippers Load and Count of 303. - Applicable to International Priority Freight and International Economy Freight. - Values must be in the range of 1 - 99999 - - - - - - Required for International Freight shipping. Values must be 8- 12 characters in length. - - 12 - - - - - - Currently not supported. - - - - - Currently not supported. - - - - - Currently not supported. - - - - - - - Currently not supported. Delivery contact information for an Express freight shipment. - - - - - - - - - Indicates a FedEx Express operating region. - - - - - - - - - - - - Identifies a kind of FedEx facility. - - - - - - - - - - Specifies the optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. - - - - - - - - - - - - - - - - - - - - Individual charge which contributes to the total base charge for the shipment. - - - - - Freight class for this line item. - - - - - Effective freight class used for rating this line item. - - - - - NMFC Code for commodity. - - - - - Customer-provided description for this commodity or class line. - - - - - Weight for this commodity or class line. - - - - - Rate or factor applied to this line item. - - - - - Identifies the manner in which the chargeRate for this line item was applied. - - - - - The net or extended charge for this line item. - - - - - - - Specifies the way in which base charges for a Freight shipment or shipment leg are calculated. - - - - - - - - - - - - - - - - These values represent the industry-standard freight classes used for FedEx Freight and FedEx National Freight shipment description. (Note: The alphabetic prefixes are required to distinguish these values from decimal numbers on some client platforms.) - - - - - - - - - - - - - - - - - - - - - - - - - Information about the Freight Service Centers associated with this shipment. - - - - - Information about the origin Freight Service Center. - - - - - Information about the destination Freight Service Center. - - - - - The distance between the origin and destination FreightService Centers - - - - - - - - - - Date for all Freight guarantee types. - - - - - - - - - - - - - Identifies responsibilities with respect to loss, damage, etc. - - - - - - - - - Rate data specific to FedEx Freight or FedEx National Freight services. - - - - - A unique identifier for a specific rate quotation. - - - - - Specifies how total base charge is determined. - - - - - Freight charges which accumulate to the total base charge for the shipment. - - - - - Human-readable descriptions of additional information on this shipment rating. - - - - - - - Additional non-monetary data returned with Freight rates. - - - - - Unique identifier for notation. - - - - - Human-readable explanation of notation. - - - - - - - This class describes the relationship between a customer-specified address and the FedEx Freight / FedEx National Freight Service Center that supports that address. - - - - - Freight Industry standard non-FedEx carrier identification - - - - - The name of the Interline carrier. - - - - - Additional time it might take at the origin or destination to pickup or deliver the freight. This is usually due to the remoteness of the location. This time is included in the total transit time. - - - - - Service branding which may be used for local pickup or delivery, distinct from service used for line-haul of customer's shipment. - - - - - Distance between customer address (pickup or delivery) and the supporting Freight / National Freight service center. - - - - - Time to travel between customer address (pickup or delivery) and the supporting Freight / National Freight service center. - - - - - Specifies when/how the customer can arrange for pickup or delivery. - - - - - Specifies days of operation if localServiceScheduling is LIMITED. - - - - - Freight service center that is a gateway on the border of Canada or Mexico. - - - - - Alphabetical code identifying a Freight Service Center - - - - - Freight service center Contact and Address - - - - - - - Specifies the type of service scheduling offered from a Freight or National Freight Service Center to a customer-supplied address. - - - - - - - - - - Data applicable to shipments using FEDEX_FREIGHT and FEDEX_NATIONAL_FREIGHT services. - - - - - Account number used with FEDEX_FREIGHT service. - - - - - Used for validating FedEx Freight account number and (optionally) identifying third party payment on the bill of lading. - - - - - Account number used with FEDEX_NATIONAL_FREIGHT service. - - - - - Used for validating FedEx National Freight account number and (optionally) identifying third party payment on the bill of lading. - - - - - Indicates the role of the party submitting the transaction. - - - - - Designates which of the requester's tariffs will be used for rating. - - - - - Identifies the declared value for the shipment - - - - - Identifies the declared value units corresponding to the above defined declared value - - - - - - Identifiers for promotional discounts offered to customers. - - - - - Total number of individual handling units in the entire shipment (for unit pricing). - - - - - Estimated discount rate provided by client for unsecured rate quote. - - - - - Total weight of pallets used in shipment. - - - - - Overall shipment dimensions. - - - - - Description for the shipment. - - - - - Specifies which party will pay surcharges for any special services which support split billing. - - - - - Details of the commodities in the shipment. - - - - - - - Description of an individual commodity or class of content in a shipment. - - - - - Freight class for this line item. - - - - - Specification of handling-unit packaging for this commodity or class line. - - - - - Customer-provided description for this commodity or class line. - - - - - Weight for this commodity or class line. - - - - - FED EX INTERNAL USE ONLY - Individual line item dimensions. - - - - - Volume (cubic measure) for this commodity or class line. - - - - - - - Indicates the role of the party submitting the transaction. - - - - - - - - - - Specifies which party will be responsible for payment of any surcharges for Freight special services for which split billing is allowed. - - - - - Identifies the special service. - - - - - Indicates who will pay for the special service. - - - - - - - Data required to produce a General Agency Agreement document. Remaining content (business data) to be defined once requirements have been completed. - - - - - - - - Documents the kind and quantity of an individual hazardous commodity in a package. - - - - - Identifies and describes an individual hazardous commodity. - - - - - Specifies the amount of the commodity in alternate units. - - - - - Customer-provided specifications for handling individual commodities. - - - - - - - Identifies and describes an individual hazardous commodity. For 201001 load, this is based on data from the FedEx Ground Hazardous Materials Shipping Guide. - - - - - Regulatory identifier for a commodity (e.g. "UN ID" value). - - - - - - - - - - - - - Specifies how the commodity is to be labeled. - - - - - - - - - - Customer-provided specifications for handling individual commodities. - - - - - Specifies how the customer wishes the label text to be handled for this commodity in this package. - - - - - Text used in labeling the commodity under control of the labelTextOption field. - - - - - - - Indicates which kind of hazardous content (as defined by DOT) is being reported. - - - - - - - - - - - - Identifies number and type of packaging units for hazardous commodities. - - - - - Number of units of the type below. - - - - - Units in which the hazardous commodity is packaged. - - - - - - - Identifies DOT packing group for a hazardous commodity. - - - - - - - - - - Identifies amount and units for quantity of hazardous commodities. - - - - - Number of units of the type below. - - - - - Units by which the hazardous commodity is measured. - - - - - - - Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. - - - - - Contact phone number for recipient of shipment. - - - - - Contact and address of FedEx facility at which shipment is to be held. - - - - - Type of facility at which package/shipment is to be held. - - - - - Location identification (for facilities identified by an alphanumeric location code). - - - - - Location identification (for facilities identified by an numeric location code). - - - - - - - The descriptive data required by FedEx for home delivery services. - - - - - - Required for Date Certain Home Delivery. - - - - - Required for Date Certain and Appointment Home Delivery. - - 15 - - - - - - - - - - - - - - - - - - - - - - - - The type of International shipment. - - - - - - - - - Specifies the type of label to be returned. - - - - - - - - - - - - - Names for data elements / areas which may be suppressed from printing on labels. - - - - - - - - - - - - - - - - - This indicates if the top or bottom of the label comes out of the printer first. - - - - - - - - - Relative to normal orientation for the printer. - - - - - - - - - - - Description of shipping label to be returned in the reply - - - - - Specify type of label to be returned - - - - - - The type of image or printer commands the label is to be formatted in. - DPL = Unimark thermal printer language - EPL2 = Eltron thermal printer language - PDF = a label returned as a pdf image - PNG = a label returned as a png image - ZPLII = Zebra thermal printer language - - - - - - For thermal printer lables this indicates the size of the label and the location of the doc tab if present. - - - - - This indicates if the top or bottom of the label comes out of the printer first. - - - - - Relative to normal orientation for the printer. RIGHT=90 degrees clockwise, UPSIDE_DOWN=180 degrees, LEFT=90 degrees counterclockwise. - - - - - If present, this contact and address information will replace the return address information on the label. - - - - - Allows customer-specified control of label content. - - - - - - - For thermal printer labels this indicates the size of the label and the location of the doc tab if present. - - - - - - - - - - - - - - - - - - - - - - Identifies the Liability Coverage Amount. For Jan 2010 this value represents coverage amount per pound - - - - - - - - - - - - - Represents a one-dimensional measurement in small units (e.g. suitable for measuring a package or document), contrasted with Distance, which represents a large one-dimensional measurement (e.g. distance between cities). - - - - - The numerical quantity of this measurement. - - - - - The units for this measurement. - - - - - - - CM = centimeters, IN = inches - - - - - - - - - Identifies the representation of human-readable text. - - - - - Two-letter code for language (e.g. EN, FR, etc.) - - - - - Two-letter code for the region (e.g. us, ca, etc..). - - - - - - - - - - - - - Internal FedEx use only. - - - - - - - - - - - - - - - - - - Data required to produce a Certificate of Origin document. Remaining content (business data) to be defined once requirements have been completed. - - - - - - - Indicates which Party (if any) from the shipment is to be used as the source of importer data on the NAFTA COO form. - - - - - Contact information for "Authorized Signature" area of form. - - - - - - - - - - - - Defined by NAFTA regulations. - - - - - Defined by NAFTA regulations. - - - - - Identification of which producer is associated with this commodity (if multiple producers are used in a single shipment). - - - - - - Date range over which RVC net cost was calculated. - - - - - - - - - - - - - - - - Net cost method used. - - - - - - - - - - See instructions for NAFTA Certificate of Origin for code definitions. - - - - - - - - - - - - - - - - - - - See instructions for NAFTA Certificate of Origin for code definitions. - - - - - - - - - - - - - - - - - - - - The descriptive data regarding the result of the submitted transaction. - - - - - The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later - - - - - Indicates the source of this notification. Combined with the Code it uniquely identifies this notification - - - - - A code that represents this notification. Combined with the Source it uniquely identifies this notification. - - - - - Human-readable text that explains this notification. - - - - - The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. - - - - - A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. - - - - - - - - - Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). - - - - - The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). - - - - - - - Identifies the set of severity values for a Notification. - - - - - - - - - - - - The instructions indicating how to print the OP-900 form for hazardous materials packages. - - - - - Specifies characteristics of a shipping document to be produced. - - - - - Identifies which reference type (from the package's customer references) is to be used as the source for the reference on this OP-900. - - - - - Specifies the usage and identification of customer supplied images to be used on this document. - - - - - Data field to be used when a name is to be printed in the document instead of (or in addition to) a signature image. - - - - - - - The Oversize classification for a package. - - - - - - - - - - Data for a package's rates, as calculated per a specific rate type. - - - - - Type used for this specific set of rate data. - - - - - Indicates which weight was used. - - - - - INTERNAL FEDEX USE ONLY. - - - - - The weight that was used to calculate the rate. - - - - - The dimensional weight of this package (if greater than actual). - - - - - The oversize weight of this package (if the package is oversize). - - - - - The transportation charge only (prior to any discounts applied) for this package. - - - - - The sum of all discounts on this package. - - - - - This package's baseCharge - totalFreightDiscounts. - - - - - The sum of all surcharges on this package. - - - - - This package's netFreight + totalSurcharges (not including totalTaxes). - - - - - The sum of all taxes on this package. - - - - - This package's netFreight + totalSurcharges + totalTaxes. - - - - - The total sum of all rebates applied to this package. - - - - - All rate discounts that apply to this package. - - - - - All rebates that apply to this package. - - - - - All surcharges that apply to this package (either because of characteristics of the package itself, or because it is carrying per-shipment surcharges for the shipment of which it is a part). - - - - - All taxes applicable (or distributed to) this package. - - - - - The variable handling charges calculated based on the type variable handling charges requested. - - - - - - - Identifies the collection of special services offered by FedEx. - - - - - - - - - - - - - - - These special services are available at the package level for some or all service types. If the shipper is requesting a special service which requires additional data, the package special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. - - - - - The types of all special services requested for the enclosing shipment or package. - - - - - For use with FedEx Ground services only; COD must be present in shipment's special services. - - - - - Descriptive data required for a FedEx shipment containing dangerous materials. This element is required when SpecialServiceType.DANGEROUS_GOODS or HAZARDOUS_MATERIAL is present in the SpecialServiceTypes collection. - - - - - Descriptive data required for a FedEx shipment containing dry ice. This element is required when SpecialServiceType.DRY_ICE is present in the SpecialServiceTypes collection. - - - - - The descriptive data required for FedEx signature services. This element is required when SpecialServiceType.SIGNATURE_OPTION is present in the SpecialServiceTypes collection. - - - - - To be filled. - - - - - - - Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. - - - - - - - - - - - - - - The descriptive data for a person or company entitiy doing business with FedEx. - - - - - Identifies the FedEx account number assigned to the customer. - - 12 - - - - - - Descriptive data for taxpayer identification information. - - - - - Descriptive data identifying the point-of-contact person. - - - - - The descriptive data for a physical location. - - - - - - - The descriptive data for the monetary compensation given to FedEx for services rendered to the customer. - - - - - Identifies the method of payment for a service. See PaymentType for list of valid enumerated values. - - - - - Descriptive data identifying the party responsible for payment for a service. - - - - - - - Identifies the method of payment for a service. - - - - - - - - Descriptive data identifying the party responsible for payment for a service. - - - - - Identifies the FedEx account number assigned to the payor. - - 12 - - - - - - Identifies the country of the payor. - - - - - - - This information describes the kind of pending shipment being requested. - - - - - - Date after which the pending shipment will no longer be available for completion. - - - - - Only used with type of EMAIL. - - - - - - - - - - - - This enumeration rationalizes the former FedEx Express international "admissibility package" types (based on ANSI X.12) and the FedEx Freight packaging types. The values represented are those common to both carriers. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This class describes the pickup characteristics of a shipment (e.g. for use in a tag request). - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Currently not supported. - - - - - - - - - - - - - - - - - - Indicates the reason that a dim divisor value was chose. - - - - - - - - - - - - Identifies a discount applied to the shipment. - - - - - Identifies the type of discount applied to the shipment. - - - - - - The amount of the discount applied to the shipment. - - - - - The percentage of the discount applied to the shipment. - - - - - - - Identifies the type of discount applied to the shipment. - - - - - - - - - - - - Selects the value from a set of rate data to which the percentage is applied. - - - - - - - - - - - The response to a RateRequest. The Notifications indicate whether the request was successful or not. - - - - - This indicates the highest level of severity of all the notifications returned in this reply. - - - - - The descriptive data regarding the results of the submitted transaction. - - - - - Contains the CustomerTransactionId that was sent in the request. - - - - - The version of this reply. - - - - - Each element contains all rate data for a single service. If service was specified in the request, there will be a single entry in this array; if service was omitted in the request, there will be a separate entry in this array for each service being compared. - - - - - - - - - Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. - - - - - Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. - - - - - Shows the specific combination of service options combined with the service type that produced this committment in the set returned to the caller. - - - - - Supporting detail for applied options identified in preceding field. - - - - - - - - - Identification of an airport, using standard three-letter abbreviations. - - - - - Indicates whether or not this shipment is eligible for a money back guarantee. - - - - - Commitment code for the origin. - - - - - Commitment code for the destination. - - - - - Time in transit from pickup to delivery. - - - - - Maximum expected transit time - - - - - The signature option for this package. - - - - - The actual rate type of the charges for this package. - - - - - Each element contains all rate data for a single rate type. - - - - - - - Descriptive data sent to FedEx by a customer in order to rate a package/shipment. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Allows the caller to specify that the transit time and commit data are to be returned in the reply. - - - - - Candidate carriers for rate-shopping use case. This field is only considered if requestedShipment/serviceType is omitted. - - - - - Contains zero or more service options whose combinations are to be considered when replying with available services. - - - - - The shipment for which a rate quote (or rate-shopping comparison) is desired. - - - - - - - Indicates the type of rates to be returned. - - - - - - - - - Select the type of rate from which the element is to be selected. - - - - - - - - - If requesting rates using the PackageDetails element (one package at a time) in the request, the rates for each package will be returned in this element. Currently total piece total weight rates are also retuned in this element. - - - - - Echoed from the corresponding package in the rate request (if provided). - - - - - Used with request containing PACKAGE_GROUPS, to identify which group of identical packages was used to produce a reply item. - - - - - The difference between "list" and "account" net charge. - - - - - Ground COD is shipment level. - - - - - - Rate data that are tied to a specific package and rate type combination. - - - - - - - This class groups the shipment and package rating data for a specific rate type for use in a rating reply, which groups result data by rate type. - - - - - The difference between "list" and "account" total net charge. - - - - - Express COD is shipment level. - - - - - The shipment-level totals for this rate type. - - - - - The package-level data for this rate type. - - - - - - - The method used to calculate the weight to be used in rating the package.. - - - - - - - - - - - - - - - - - - - Identifies a discount applied to the shipment. - - - - - - - The amount of the discount applied to the shipment. - - - - - The percentage of the discount applied to the shipment. - - - - - - - Identifies the type of discount applied to the shipment. - - - - - - - - - - Specifies how the recipient is identified for customs purposes; the requirements on this information vary with destination country. - - - - - Specifies the kind of identification being used. - - - - - Contains the actual ID value, of the type specified above. - - - - - - - Type of Brazilian taxpayer identifier provided in Recipient/TaxPayerIdentification/Number. For shipments bound for Brazil this overrides the value in Recipient/TaxPayerIdentification/TinType - - - - - - - - - - FOOD_OR_PERISHABLE is required by FDA/BTA; must be true for food/perishable items coming to US or PR from non-US/non-PR origin - - - - - - - - - - This class rationalizes RequestedPackage and RequestedPackageSummary from previous interfaces. The way in which it is uses within a RequestedShipment depends on the RequestedPackageDetailType value specified for that shipment. - - - - - Used only with INDIVIDUAL_PACKAGE, as a unique identifier of each requested package. - - - - - Used only with PACKAGE_GROUPS, as a unique identifier of each group of identical packages. - - - - - Used only with PACKAGE_GROUPS, as a count of packages within a group of identical packages. - - - - - - Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. - - - - - Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalweight and packageCount on the shipment will be used to determine this value. - - - - - - Provides additional detail on how the customer has physically packaged this item. As of June 2009, required for packages moving under international and SmartPost services. - - - - - Human-readable text describing the package. - - - - - - - Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. - - - - - - - The descriptive data for the shipment being tendered to FedEx. - - - - - Identifies the date and time the package is tendered to FedEx. Both the date and time portions of the string are expected to be used. The date should not be a past date or a date more than 10 days in the future. The time is the local time of the shipment based on the shipper's time zone. The date component must be in the format: YYYY-MM-DD (e.g. 2006-06-26). The time component must be in the format: HH:MM:SS using a 24 hour clock (e.g. 11:00 a.m. is 11:00:00, whereas 5:00 p.m. is 17:00:00). The date and time parts are separated by the letter T (e.g. 2006-06-26T17:00:00). There is also a UTC offset component indicating the number of hours/mainutes from UTC (e.g 2006-06-26T17:00:00-0400 is defined form June 26, 2006 5:00 pm Eastern Time). - - - - - Identifies the method by which the package is to be tendered to FedEx. This element does not dispatch a courier for package pickup. See DropoffType for list of valid enumerated values. - - - - - Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. - - - - - Identifies the packaging used by the requestor for the package. See PackagingType for list of valid enumerated values. - - - - - Identifies the total weight of the shipment being conveyed to FedEx.This is only applicable to International shipments and should only be used on the first package of a mutiple piece shipment.This value contains 1 explicit decimal position - - - - - Total insured amount. - - - - - Descriptive data identifying the party responsible for shipping the package. Shipper and Origin should have the same address. - - - - - Descriptive data identifying the party receiving the package. - - - - - A unique identifier for a recipient location - - 10 - - - - - - Physical starting address for the shipment, if different from shipper's address. - - - - - Descriptive data indicating the method and means of payment to FedEx for providing shipping services. - - - - - Descriptive data regarding special services requested by the shipper for this shipment. If the shipper is requesting a special service which requires additional data (e.g. COD), the special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object. For example, to request COD, "COD" must be included in the SpecialServiceTypes collection and the CodDetail object must contain the required data. - - - - - Details specific to an Express freight shipment. - - - - - Data applicable to shipments using FEDEX_FREIGHT and FEDEX_NATIONAL_FREIGHT services. - - - - - Used with Ground Home Delivery and Freight. - - - - - Details about how to calculate variable handling charges at the shipment level. - - - - - Customs clearance data, used for both international and intra-country shipping. - - - - - For use in "process tag" transaction. - - - - - Specifies the characteristics of a shipment pertaining to SmartPost services. - - - - - If true, only the shipper/payor will have visibility of this shipment. - - - - - Details about the image format and printer type the label is to returned in. - - - - - Contains data used to create additional (non-label) shipping documents. - - - - - Specifies whether and what kind of rates the customer wishes to have quoted on this shipment. The reply will also be constrained by other data on the shipment and customer. - - - - - Specifies whether the customer wishes to have Estimated Duties and Taxes provided with the rate quotation on this shipment. Only applies with shipments moving under international services. - - - - - The total number of packages in the entire shipment (even when the shipment spans multiple transactions.) - - - - - Specifies which package-level data values are provided at the shipment-level only. The package-level data values types specified here will not be provided at the package-level. - - - - - One or more package-attribute descriptions, each of which describes an individual package, a group of identical packages, or (for the total-piece-total-weight case) common characteristics all packages in the shipment. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - These values are used to control the availability of certain special services at the time when a customer uses the e-mail label link to create a return shipment. - - - - - - - - - - - - Identifies the allowed (merchant-authorized) special services which may be selected when the subsequent shipment is created. Only services represented in EMailLabelAllowedSpecialServiceType will be controlled by this list. - - - - - - - Information relating to a return shipment. - - - - - The type of return shipment that is being requested. At present the only type of retrun shipment that is supported is PRINT_RETURN_LABEL. With this option you can print a return label to insert into the box of an outbound shipment. This option can not be used to print an outbound label. - - - - - Return Merchant Authorization - - - - - Specific information about the delivery of the email and options for the shipment. - - - - - - - The type of return shipment that is being requested. - - - - - - - - - - The "PAYOR..." rates are expressed in the currency identified in the payor's rate table(s). The "RATED..." rates are expressed in the currency of the origin country. Former "...COUNTER..." values have become "...RETAIL..." values, except for PAYOR_COUNTER and RATED_COUNTER, which have been removed. - - - - - - - - - - - - - - - Return Merchant Authorization - - - - - Return Merchant Authorization Number - - 20 - - - - - - The reason for the return. - - 60 - - - - - - - - - - - - - - - - These values control the optional features of service that may be combined in a commitment/rate comparision transaction. - - - - - - - - - - - Supporting detail for applied options identified in a rate quote. - - - - - Identifies the type of Freight Guarantee applied, if FREIGHT_GUARANTEE is applied to the rate quote. - - - - - Identifies the smartPostHubId used during rate quote, if SMART_POST_HUB_ID is a variable option on the rate request. - - - - - Identifies the indicia used during rate quote, if SMART_POST_ALLOWED_INDICIA is a variable option on the rate request. - - - - - - - Identifies the FedEx service to use in shipping the package. See ServiceType for list of valid enumerated values. - - - - - - - - - - - - - - - - - - - - - - - - - - - - Shipment-level totals of dry ice data across all packages. - - - - - Total number of packages in the shipment that contain dry ice. - - - - - Total shipment dry ice weight for all packages. - - - - - - - Data for a single leg of a shipment's total/summary rates, as calculated per a specific rate type. - - - - - Human-readable text describing the shipment leg. - - - - - Origin for this leg. - - - - - Destination for this leg. - - - - - Type used for this specific set of rate data. - - - - - Indicates the rate scale used. - - - - - Indicates the rate zone used (based on origin and destination). - - - - - - Indicates which weight was used. - - - - - INTERNAL FEDEX USE ONLY. - - - - - Specifies the currency exchange performed on financial amounts for this rate. - - - - - Indicates which special rating cases applied to this shipment. - - - - - - Identifies the type of dim divisor that was applied. - - - - - - - Sum of dimensional weights for all packages. - - - - - - - - - This shipment's totalNetFreight + totalSurcharges (not including totalTaxes). - - - - - Total of the transportation-based taxes. - - - - - - - Total of all values under this shipment's dutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment. - - - - - This shipment's totalNetCharge + totalDutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. - - - - - Rate data specific to FedEx Freight and FedEx National Freight services. - - - - - All rate discounts that apply to this shipment. - - - - - All rebates that apply to this shipment. - - - - - All surcharges that apply to this shipment. - - - - - All transportation-based taxes applicable to this shipment. - - - - - All commodity-based duties and taxes applicable to this shipment. - - - - - The "order level" variable handling charges. - - - - - The total of all variable handling charges at both shipment (order) and package level. - - - - - - - These values identify which package-level data values will be provided at the shipment-level. - - - - - - - - - - Data for a shipment's total/summary rates, as calculated per a specific rate type. The "total..." fields may differ from the sum of corresponding package data for Multiweight or Express MPS. - - - - - Type used for this specific set of rate data. - - - - - Indicates the rate scale used. - - - - - Indicates the rate zone used (based on origin and destination). - - - - - Indicates the type of pricing used for this shipment. - - - - - Indicates which weight was used. - - - - - INTERNAL FEDEX USE ONLY. - - - - - Specifies the currency exchange performed on financial amounts for this rate. - - - - - Indicates which special rating cases applied to this shipment. - - - - - The value used to calculate the weight based on the dimensions. - - - - - Identifies the type of dim divisor that was applied. - - - - - - The weight used to calculate these rates. - - - - - Sum of dimensional weights for all packages. - - - - - - The total discounts used in the rate calculation. - - - - - The freight charge minus discounts. - - - - - The total amount of all surcharges applied to this shipment. - - - - - This shipment's totalNetFreight + totalSurcharges (not including totalTaxes). - - - - - Total of the transportation-based taxes. - - - - - The net charge after applying all discounts and surcharges. - - - - - The total sum of all rebates applied to this shipment. - - - - - Total of all values under this shipment's dutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment. - - - - - This shipment's totalNetCharge + totalDutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. - - - - - Identifies the Rate Details per each leg in a Freight Shipment - - - - - Rate data specific to FedEx Freight and FedEx National Freight services. - - - - - All rate discounts that apply to this shipment. - - - - - All rebates that apply to this shipment. - - - - - All surcharges that apply to this shipment. - - - - - All transportation-based taxes applicable to this shipment. - - - - - All commodity-based duties and taxes applicable to this shipment. - - - - - The "order level" variable handling charges. - - - - - The total of all variable handling charges at both shipment (order) and package level. - - - - - - - Identifies the collection of special service offered by FedEx. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - These special services are available at the shipment level for some or all service types. If the shipper is requesting a special service which requires additional data (such as the COD amount), the shipment special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. - - - - - The types of all special services requested for the enclosing shipment (or other shipment-level transaction). - - - - - Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. This element is required when SpecialServiceType.COD is present in the SpecialServiceTypes collection. - - - - - Descriptive data required for a FedEx shipment that is to be held at the destination FedEx location for pickup by the recipient. This element is required when SpecialServiceType.HOLD_AT_LOCATION is present in the SpecialServiceTypes collection. - - - - - Descriptive data required for FedEx to provide email notification to the customer regarding the shipment. This element is required when SpecialServiceType.EMAIL_NOTIFICATION is present in the SpecialServiceTypes collection. - - - - - The descriptive data required for FedEx Printed Return Label. This element is required when SpecialServiceType.PRINTED_RETURN_LABEL is present in the SpecialServiceTypes collection - - - - - This field should be populated for pending shipments (e.g. e-mail label) It is required by a PENDING_SHIPMENT special service type. - - - - - The number of packages with dry ice and the total weight of the dry ice. - - - - - The descriptive data required for FedEx Home Delivery options. This element is required when SpecialServiceType.HOME_DELIVERY_PREMIUM is present in the SpecialServiceTypes collection - - - - - - - Electronic Trade document references. - - - - - Specification for date or range of dates on which delivery is to be attempted. - - - - - - - Each occurrence of this class specifies a particular way in which a kind of shipping document is to be produced and provided. - - - - - Values in this field specify how to create and return the document. - - - - - Specifies how to organize all documents of this type. - - - - - Specifies how to e-mail document images. - - - - - Specifies how a queued document is to be printed. - - - - - - - Specifies how to return a shipping document to the caller. - - - - - - - - - - - - - - Specifies how to e-mail shipping documents. - - - - - Provides the roles and email addresses for e-mail recipients. - - - - - Identifies the convention by which documents are to be grouped as e-mail attachments. - - - - - - - - - - - - - Specifies an individual recipient of e-mailed shipping document(s). - - - - - Identifies the relationship of this recipient in the shipment. - - - - - Address to which the document is to be sent. - - - - - - - Specifies characteristics of a shipping document to be produced. - - - - - Specifies how to create, organize, and return the document. - - - - - Specifies how far down the page to move the beginning of the image; allows for printing on letterhead and other pre-printed stock. - - - - - - - For those shipping document types which have both a "form" and "instructions" component (e.g. NAFTA Certificate of Origin and General Agency Agreement), this field indicates whether to provide the instructions. - - - - - Governs the language to be used for this individual document, independently from other content returned for the same shipment. - - - - - - - Specifies how to organize all shipping documents of the same type. - - - - - - - - - Specifies the image format used for a shipping document. - - - - - - - - - - - - Specifies printing options for a shipping document. - - - - - Provides environment-specific printer identification. - - - - - - - Contains all data required for additional (non-label) shipping documents to be produced in conjunction with a specific shipment. - - - - - Indicates the types of shipping documents requested by the shipper. - - - - - - - Specifies the production of each package-level custom document (the same specification is used for all packages). - - - - - Specifies the production of a shipment-level custom document. - - - - - Details pertaining to the GAA. - - - - - Details pertaining to NAFTA COO. - - - - - Specifies the production of the OP-900 document for hazardous materials packages. - - - - - - - Specifies the type of paper (stock) on which a document will be printed. - - - - - - - - - - - - - - - - - The descriptive data required for FedEx delivery signature services. - - - - - Identifies the delivery signature services option selected by the customer for this shipment. See OptionType for the list of valid values. - - - - - Identifies the delivery signature release authorization number. - - 10 - - - - - - - - Identifies the delivery signature services options offered by FedEx. - - - - - - - - - - - - These values are mutually exclusive; at most one of them can be attached to a SmartPost shipment. - - - - - - - - - - - - - - - - - - - - - Data required for shipments handled under the SMART_POST and GROUND_SMART_POST service types. - - - - - - - - - - - Indicates which special rating cases applied to this shipment. - - - - - - - - - Identifies each surcharge applied to the shipment. - - - - - The type of surcharge applied to the shipment. - - - - - - - The amount of the surcharge applied to the shipment. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Identifies each tax applied to the shipment. - - - - - - - - - - - - - - - - - - - - - Specifice the kind of tax or miscellaneous charge being reported on a Commercial Invoice. - - - - - - - - - - - - - The descriptive data for taxpayer identification information. - - - - - Identifies the category of the taxpayer identification number. See TinType for the list of values. - - - - - Identifies the taxpayer identification number. - - 18 - - - - - - Identifies the usage of Tax Identification Number in Shipment processing - - - - - - - - Required for dutiable international express or ground shipment. This field is not applicable to an international PIB (document) or a non-document which does not require a commercial invoice express shipment. - CFR_OR_CPT (Cost and Freight/Carriage Paid TO) - CIF_OR_CIP (Cost Insurance and Freight/Carraige Insurance Paid) - DDP (Delivered Duty Paid) - DDU (Delivered Duty Unpaid) - EXW (Ex Works) - FOB_OR_FCA (Free On Board/Free Carrier) - - - - - - - - - - - - - - Identifies the category of the taxpayer identification number. - - - - - - - - - - - - - - - - - - - - - - - - - - Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Free form text to be echoed back in the reply. Used to match requests and replies. - - - - - Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). - - - - - - - Time in transit from pickup to delivery. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This definition of variable handling charge detail is intended for use in Jan 2011 corp load. - - - - - Used with Variable handling charge type of FIXED_VALUE. Contains the amount to be added to the freight charge. Contains 2 explicit decimal positions with a total max length of 10 including the decimal. - - - - - Actual percentage (10 means 10%, which is a mutiplier of 0.1) - - - - - Select the value from a set of rate data to which the percentage is applied. - - - - - Select the type of rate from which the element is to be selected. - - - - - - - The variable handling charges calculated based on the type variable handling charges requested. - - - - - The variable handling charge amount calculated based on the requested variable handling charge detail. - - - - - The calculated varibale handling charge plus the net charge. - - - - - - - Three-dimensional volume/cubic measurement. - - - - - - - - - Units of three-dimensional volume/cubic measure. - - - - - - - - - The descriptive data for the heaviness of an object. - - - - - Identifies the unit of measure associated with a weight value. - - - - - Identifies the weight value of a package/shipment. - - - - - - - Identifies the unit of measure associated with a weight value. See WeightUnits for the list of valid enumerated values. - - - - - - - - - Used in authentication of the sender's identity. - - - - - Credential used to authenticate a specific software application. This value is provided by FedEx after registration. - - - - - - - Two part authentication string used for the sender's identity - - - - - Identifying part of authentication credential. This value is provided by FedEx after registration - - - - - Secret part of authentication key. This value is provided by FedEx after registration. - - - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies a system or sub-system which performs an operation. - - - - - Identifies the service business level. - - - - - Identifies the service interface level. - - - - - Identifies the service code level. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + + + + + + + + Specifies additional labels to be produced. All required labels for shipments will be produced without the need to request additional labels. These are only available as thermal labels. + + + + + The type of additional labels to return. + + + + + The number of this type label to return + + + + + + + + + + + + + + + + + + + Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). + + + + + Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + + + + + Name of city, town, etc. + + + + + Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + + + + + Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + + + + + Relevant only to addresses in Puerto Rico. + + + + + The two-letter code used to identify a country. + + + + + The fully spelt out name of a country. + + + + + Indicates whether this address residential (as opposed to commercial). + + + + + The geographic coordinates cooresponding to this address. + + + + + + + Specifies details for a package containing alcohol + + + + + The license type that the recipient of the alcohol package. + + + + + + + Specifies the type of license that the recipient of the alcohol shipment has. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identification of the type of barcode (symbology) used on FedEx documents and labels. + + + + + + + + + + + + + + + + + + + + Describes attributes of a battery or cell that are used for classification purposes. Typically this structure would be used to allow customers to declare batteries or cells for which full dangerous goods documentation and procedures are not required. + + + + + Describes the material composition of the battery or cell. + + + + + Describes the packing arrangement of the battery or cell with respect to other items within the same package. + + + + + A regulation specific classification for the battery or cell. + + + + + + + Describes the material composition of a battery or cell. + + + + + + + + + Describes the packing arrangement of a battery or cell with respect to other items within the same package. + + + + + + + + + + A regulation specific classification for a battery or cell. + + + + + + + + + + + + + + + + + + + + Identification of a FedEx operating company (transportation). + + + + + + + + + + + + + The instructions indicating how to print the Certificate of Origin ( e.g. whether or not to include the instructions, image type, etc ...) + + + + + Specifies characteristics of a shipping document to be produced. + + + + + Specifies the usage and identification of customer supplied images to be used on this document. + + + + + + + + + + + + + + + This represents the internal FedEx-system recognized country code. + + + + + This represents the internal FedEx-system recognized state or province code. + + + + + This represents the internal FedEx-system recognized postal code. + + + + + + The unique location identifier + + + + + The op-co specific numeric identifier for a location + + + + + + + + Specifies the type of brokerage to be applied to a shipment. + + + + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + Indicates the region from which the transaction is submitted. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + + + + + + + + + + + Select the type of rate from which the element is to be selected. + + + + + + + + + Identifies the type of funds FedEx should collect upon shipment delivery. + + + + + + + + + + Descriptive data required for a FedEx COD (Collect-On-Delivery) shipment. + + + + + + Specifies the details of the charges are to be added to the COD collect amount. + + + + + Identifies the type of funds FedEx should collect upon package delivery + + + + + For Express this is the descriptive data that is used for the recipient of the FedEx Letter containing the COD payment. For Ground this is the descriptive data for the party to receive the payment that prints the COD receipt. + + + + + When the FedEx COD payment type is not CASH, indicates the contact and address of the financial institution used to service the payment of the COD. + + + + + Specifies the name of person or company receiving the secured/unsecured funds payment + + + + + Indicates which type of reference information to include on the COD return shipping label. + + + + + Only used with multi-piece COD shipments sent in multiple transactions. Required on last transaction only. + + + + + + + + + + + + + + + CommercialInvoice element is required for electronic upload of CI data. It will serve to create/transmit an Electronic Commercial Invoice through the FedEx Systems. Customers are responsible for printing their own Commercial Invoice.If you would likeFedEx to generate a Commercial Invoice and transmit it to Customs. for clearance purposes, you need to specify that in the ShippingDocumentSpecification element. If you would like a copy of the Commercial Invoice that FedEx generated returned to you in reply it needs to be specified in the ETDDetail/RequestedDocumentCopies element. Commercial Invoice support consists of maximum of 99 commodity line items. + + + + + Any comments that need to be communicated about this shipment. + + + + + Any freight charges that are associated with this shipment. + + + + + Any taxes or miscellaneous charges(other than Freight charges or Insurance charges) that are associated with this shipment. + + + + + Specifies which kind of charge is being recorded in the preceding field. + + + + + Any packing costs that are associated with this shipment. + + + + + Any handling costs that are associated with this shipment. + + + + + Free-form text. + + + + + Free-form text. + + + + + Free-form text. + + + + + The reason for the shipment. Note: SOLD is not a valid purpose for a Proforma Invoice. + + + + + Name of the International Expert that completed the Commercial Invoice different from Sender. + + + + + Required for dutiable international Express or Ground shipments. This field is not applicable to an international PIB(document) or a non-document which does not require a Commercial Invoice. + + + + + + + The instructions indicating how to print the Commercial Invoice( e.g. image type) Specifies characteristics of a shipping document to be produced. + + + + + + Specifies the usage and identification of a customer supplied image to be used on this document. + + + + + + + Information about the transit time and delivery commitment date and time. + + + + + The Commodity applicable to this commitment. + + + + + The FedEx service type applicable to this commitment. + + + + + Shows the specific combination of service options combined with the service type that produced this committment in the set returned to the caller. + + + + + Supporting detail for applied options identified in preceding field. + + + + + + + + + THe delivery commitment date/time. Express Only. + + + + + The delivery commitment day of the week. + + + + + The number of transit days; applies to Ground and LTL Freight; indicates minimum transit time for SmartPost. + + + + + Maximum number of transit days, for SmartPost shipments. + + + + + The service area code for the destination of this shipment. Express only. + + + + + The address of the broker to be used for this shipment. + + + + + The FedEx location identifier for the broker. + + + + + The delivery commitment date/time the shipment will arrive at the border. + + + + + The delivery commitment day of the week the shipment will arrive at the border. + + + + + The number of days it will take for the shipment to make it from broker to destination + + + + + The delivery commitment date for shipment served by GSP (Global Service Provider) + + + + + The delivery commitment day of the week for the shipment served by GSP (Global Service Provider) + + + + + Messages concerning the ability to provide an accurate delivery commitment on an International commit quote. These could be messages providing information about why a commitment could not be returned or a successful message such as "REQUEST COMPLETED" + + + + + Messages concerning the delivery commitment on an International commit quote such as "0:00 A.M. IF NO CUSTOMS DELAY" + + + + + Information about why a shipment delivery is delayed and at what level (country/service etc.). + + + + + + Required documentation for this shipment. + + + + + Freight origin and destination city center information and total distance between origin and destination city centers. + + + + + + + The type of delay this shipment will encounter. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Contains only additional quantitative information other than weight and quantity to calculate duties and taxes. + + + + + + + Defines additional characteristic of commodity used to calculate duties and taxes + + + + + + + + + All data required for this commodity in NAFTA Certificate of Origin. + + + + + + + + + + + + + + + + + + + + + Uniquely identifies a consolidation, which is a logical container for a collection of shipments. + + + + + Specifies the type of consolidation. + + + + + Uniquely identifies the consolidation, within a given type and date. + + + + + The date on which the consolidation was created. + + + + + + + + + + + + + + + + The descriptive data for a point-of-contact person. + + + + + Client provided identifier corresponding to this contact information. + + + + + Identifies the contact person's name. + + + + + Identifies the contact person's title. + + + + + Identifies the company this contact is associated with. + + + + + Identifies the phone number associated with this contact. + + + + + Identifies the phone extension associated with this contact. + + + + + Identifies a toll free number, if any, associated with this contact. + + + + + Identifies the pager number associated with this contact. + + + + + Identifies the fax number associated with this contact. + + + + + Identifies the email address associated with this contact. + + + + + + + + + + + + + + + + + + + + + + + The currency code for the original (converted FROM) currency. + + + + + The currency code for the final (converted INTO) currency. + + + + + Multiplier used to convert fromCurrency units to intoCurrency units. + + + + + + + + + Indicates the type of custom delivery being requested. + + + + + Time by which delivery is requested. + + + + + Range of dates for custom delivery request; only used if type is BETWEEN. + + + + + Date for custom delivery request; only used for types of ON, BETWEEN, or AFTER. + + + + + + + + + + + + + + + Data required to produce a custom-specified document, either at shipment or package level. + + + + + Common information controlling document production. + + + + + Applicable only to documents produced on thermal printers with roll stock. + + + + + Applicable only to documents produced on thermal printers with roll stock. + + + + + Identifies the formatting specification used to construct this custom document. + + + + + + + + Constructed string, based on format and zero or more data fields, printed in specified barcode symbology. + + + + + + + + + Width of thinnest bar/space element in the barcode. + + + + + + + + Solid (filled) rectangular area on label. + + + + + + + + + + + + + + + + + + + + + + + + + Image to be included from printer's memory, or from a local file for offline clients. + + + + + + Printer-specific index of graphic image to be printed. + + + + + Fully-qualified path and file name for graphic image to be printed. + + + + + + + + + Horizontal position, relative to left edge of custom area. + + + + + Vertical position, relative to top edge of custom area. + + + + + + + Constructed string, based on format and zero or more data fields, printed in specified printer font (for thermal labels) or generic font/size (for plain paper labels). + + + + + + + + + + Printer-specific font name for use with thermal printer labels. + + + + + Generic font name for use with plain paper labels. + + + + + Generic font size for use with plain paper labels. + + + + + + + + Constructed string, based on format and zero or more data fields, printed in specified printer font (for thermal labels) or generic font/size (for plain paper labels). + + + + + + + + Printer-specific font name for use with thermal printer labels. + + + + + Generic font name for use with plain paper labels. + + + + + Generic font size for use with plain paper labels. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Allows customer-specified control of label content. + + + + + If omitted, no doc tab will be produced (i.e. default is former NONE type). + + + + + Controls the position of the customer specified content relative to the FedEx portion. + + + + + + + Controls which data/sections will be suppressed. + + + + + For customers producing their own Ground labels, this field specifies which secondary barcode will be printed on the label; so that the primary barcode produced by FedEx has the correct SCNC. + + + + + + + Controls the number of additional copies of supplemental labels. + + + + + This value reduces the default quantity of destination/consignee air waybill labels. A value of zero indicates no change to default. A minimum of one copy will always be produced. + + + + + + + + + + + + + + + + + Interacts both with properties of the shipment and contractual relationship with the shipper. + + + + + + + Specifies how the recipient is identified for customs purposes; the requirements on this information vary with destination country. + + + + + + + + Identifies responsibilities with respect to loss, damage, etc. + + + + + Documents amount paid to third party for coverage of shipment content. + + + + + + + + + + + + + + + Specifies additional description about customs options. This is a required field when the customs options type is "OTHER". + + + + + + + + + + + + + + + + + + + + + + + + + + + Describes an approved container used to package dangerous goods commodities. This does not describe any individual inner receptacles that may be within this container. + + + + + Indicates whether there are additional inner receptacles within this container. + + + + + Indicates the type of this dangerous goods container, as specified by the IATA packing instructions. For example, steel cylinder, fiberboard box, plastic jerrican and steel drum. + + + + + Indicates the packaging type of the container used to package the radioactive materials. + + + + + Indicates the number of occurrences of this container with identical dangerous goods configuration. + + + + + Documents the kinds and quantities of all hazardous commodities in the current container. + + + + + + + + + + + Shipment is packaged/documented for movement ONLY on cargo aircraft. + + + + + Indicates which kinds of hazardous content are in the current package. + + + + + Indicates whether there is additional customer provided packaging enclosing the approved dangerous goods containers. + + + + + Identifies the configuration of this dangerous goods package. The common configuration is represented at the shipment level. + + + + + Indicates one or more containers used to pack dangerous goods commodities. + + + + + Description of the packaging of this commodity, suitable for use on OP-900 and OP-950 forms. + + + + + Name, title and place of the signatory for this shipment. + + + + + Telephone number to use for contact in the event of an emergency. + + + + + Offeror's name or contract number, per DOT regulation. + + + + + Specifies the contact of the party responsible for handling the infectious substances, if any, in the dangerous goods shipment. + + + + + Specifies additional handling information for the current package. + + + + + Specifies the radioactivity detail for the current package, if the package contains radioactive materials. + + + + + + + + + + + + The instructions indicating how to print the 1421c form for dangerous goods shipment. + + + + + Specifies characteristics of a shipping document to be produced. + + + + + Specifies the usage and identification of customer supplied images to be used on this document. + + + + + + + Specifies that name, title and place of the signatory responsible for the dangerous goods shipment. + + + + + + + Indicates the place where the form is signed. + + + + + + + + + + + + + + + + + + + + + + + + Information about why a shipment delivery is delayed and at what level( country/service etc.). + + + + + The date of the delay + + + + + + The attribute of the shipment that caused the delay(e.g. Country, City, LocationId, Zip, service area, special handling ) + + + + + The point where the delay is occurring (e.g. Origin, Destination, Broker location) + + + + + The reason for the delay (e.g. holiday, weekend, etc.). + + + + + The name of the holiday in that country that is causing the delay. + + + + + + + The attribute of the shipment that caused the delay(e.g. Country, City, LocationId, Zip, service area, special handling ) + + + + + + + + + + + + + + The point where the delay is occurring ( e.g. Origin, Destination, Broker location). + + + + + + + + + + + + + + + Specifies the tracking id for the return, if preassigned. + + + + + + + Data required to complete the Destionation Control Statement for US exports. + + + + + + Comma-separated list of up to four country codes, required for DEPARTMENT_OF_STATE statement. + + + + + Name of end user, required for DEPARTMENT_OF_STATE statement. + + + + + + + + + + + + + + + + + + + + + Driving or other transportation distances, distinct from dimension measurements. + + + + + Identifies the distance quantity. + + + + + Identifies the unit of measure for the distance value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This is a structure for providing document line item content (in part or in whole) to a service. + + + + + + + + + + + + + + + + + + + + Specifies the name associated with the email address. + + + + + + + + + + + + + + + + + + + + + + + + Customer-declared value, with data type and legal values depending on excise condition, used in defining the taxable value of the item. + + + + + + + Specifies the types of Estimated Duties and Taxes to be included in a rate quotation for an international shipment. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Electronic Trade document references used with the ETD special service. + + + + + + Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. + + + + + + + + The instructions indicating how to print the Export Declaration. + + + + + Specifies characteristics of a shipping document to be produced. + + + + + Specifies the usage and identification of customer supplied images to be used on this document. + + + + + + + + + + General field for exporting-country-specific export data (e.g. B13A for CA, FTSR Exemption or AES Citation for US). + + + + + + + + + + + + + + + + + + + + + + + + + Indicates a FedEx Express operating region. + + + + + + + + + + + + Identifies a kind of FedEx facility. + + + + + + + + + + + + + + + Specifies the optional features/characteristics requested for a Freight shipment utilizing a flatbed trailer. + + + + + + + + + + + + + + Data required to produce the Freight handling-unit-level address labels. Note that the number of UNIQUE labels (the N as in 1 of N, 2 of N, etc.) is determined by total handling units. + + + + + + Indicates the number of copies to be produced for each unique label. + + + + + Specifies the quadrant of the page on which the label printing will start. + + + + + If omitted, no doc tab will be produced (i.e. default = former NONE type). + + + + + Controls the position of the customer specified content relative to the FedEx portion. + + + + + + + + Individual charge which contributes to the total base charge for the shipment. + + + + + Freight class for this line item. + + + + + Effective freight class used for rating this line item. + + + + + NMFC Code for commodity. + + + + + Customer-provided description for this commodity or class line. + + + + + Weight for this commodity or class line. + + + + + Rate or factor applied to this line item. + + + + + Identifies the manner in which the chargeRate for this line item was applied. + + + + + The net or extended charge for this line item. + + + + + + + Specifies the way in which base charges for a Freight shipment or shipment leg are calculated. + + + + + + + + + + + + + + + + These values represent the industry-standard freight classes used for FedEx Freight and FedEx National Freight shipment description. (Note: The alphabetic prefixes are required to distinguish these values from decimal numbers on some client platforms.) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Information about the Freight Service Centers associated with this shipment. + + + + + Information about the origin Freight Service Center. + + + + + Information about the destination Freight Service Center. + + + + + The distance between the origin and destination FreightService Centers + + + + + + + + + + Date for all Freight guarantee types. + + + + + + + + + + + + + Identifies responsibilities with respect to loss, damage, etc. + + + + + + + + + Rate data specific to FedEx Freight or FedEx National Freight services. + + + + + A unique identifier for a specific rate quotation. + + + + + Specifies whether the rate quote was automated or manual. + + + + + Specifies how total base charge is determined. + + + + + Freight charges which accumulate to the total base charge for the shipment. + + + + + Human-readable descriptions of additional information on this shipment rating. + + + + + + + Additional non-monetary data returned with Freight rates. + + + + + Unique identifier for notation. + + + + + Human-readable explanation of notation. + + + + + + + Specifies the type of rate quote + + + + + + + + + This class describes the relationship between a customer-specified address and the FedEx Freight / FedEx National Freight Service Center that supports that address. + + + + + Freight Industry standard non-FedEx carrier identification + + + + + The name of the Interline carrier. + + + + + Additional time it might take at the origin or destination to pickup or deliver the freight. This is usually due to the remoteness of the location. This time is included in the total transit time. + + + + + Service branding which may be used for local pickup or delivery, distinct from service used for line-haul of customer's shipment. + + + + + Distance between customer address (pickup or delivery) and the supporting Freight / National Freight service center. + + + + + Time to travel between customer address (pickup or delivery) and the supporting Freight / National Freight service center. + + + + + Specifies when/how the customer can arrange for pickup or delivery. + + + + + Specifies days of operation if localServiceScheduling is LIMITED. + + + + + Freight service center that is a gateway on the border of Canada or Mexico. + + + + + Alphabetical code identifying a Freight Service Center + + + + + Freight service center Contact and Address + + + + + + + Specifies the type of service scheduling offered from a Freight or National Freight Service Center to a customer-supplied address. + + + + + + + + + + Data applicable to shipments using FEDEX_FREIGHT_ECONOMY and FEDEX_FREIGHT_PRIORITY services. + + + + + Account number used with FEDEX_FREIGHT service. + + + + + Used for validating FedEx Freight account number and (optionally) identifying third party payment on the bill of lading. + + + + + Used in connection with "Send Bill To" (SBT) identification of customer's account used for billing. + + + + + Indicates the role of the party submitting the transaction. + + + + + Designates the terms of the "collect" payment for a Freight Shipment. + + + + + Identifies the declared value for the shipment + + + + + Identifies the declared value units corresponding to the above defined declared value + + + + + + Identifiers for promotional discounts offered to customers. + + + + + Total number of individual handling units in the entire shipment (for unit pricing). + + + + + Estimated discount rate provided by client for unsecured rate quote. + + + + + Total weight of pallets used in shipment. + + + + + Overall shipment dimensions. + + + + + Description for the shipment. + + + + + Specifies which party will pay surcharges for any special services which support split billing. + + + + + + Details of the commodities in the shipment. + + + + + + + Description of an individual commodity or class of content in a shipment. + + + + + Freight class for this line item. + + + + + Specification of handling-unit packaging for this commodity or class line. + + + + + Number of pieces for this commodity or class line. + + + + + Customer-provided description for this commodity or class line. + + + + + Weight for this commodity or class line. + + + + + + Volume (cubic measure) for this commodity or class line. + + + + + + + Indicates the role of the party submitting the transaction. + + + + + + + + + Specifies which party will be responsible for payment of any surcharges for Freight special services for which split billing is allowed. + + + + + Identifies the special service. + + + + + Indicates who will pay for the special service. + + + + + + + Data required to produce a General Agency Agreement document. Remaining content (business data) to be defined once requirements have been completed. + + + + + + + + Documents the kind and quantity of an individual hazardous commodity in a package. + + + + + Identifies and describes an individual hazardous commodity. + + + + + Specifies the amount of the commodity in alternate units. + + + + + This describes the inner receptacle details for a hazardous commodity within the dangerous goods container. + + + + + Customer-provided specifications for handling individual commodities. + + + + + Specifies the details of any radio active materials within the commodity. + + + + + The total mass of the contained explosive substances, without the mass of any casings, bullets, shells, etc. + + + + + + + Identifies and describes an individual hazardous commodity. + + + + + Regulatory identifier for a commodity (e.g. "UN ID" value). + + + + + In conjunction with the regulatory identifier, this field uniquely identifies a specific hazardous materials commodity. + + + + + + + + + + + + + + Indicates any special processing options to be applied to the description of the dangerous goods commodity. + + + + + Information related to quantity limitations and operator or state variations as may be applicable to the dangerous goods commodity. + + + + + + + Specifies any special processing to be applied to the dangerous goods commodity description validation. + + + + + + + + This describes information about the inner receptacles for the hazardous commodity in a particular dangerous goods container. + + + + + This specifies the quantity contained in the inner receptacle. + + + + + + + Specifies how the commodity is to be labeled. + + + + + + + + + + Customer-provided specifications for handling individual commodities. + + + + + Specifies how the customer wishes the label text to be handled for this commodity in this package. + + + + + Text used in labeling the commodity under control of the labelTextOption field. + + + + + + + Indicates which kind of hazardous content is being reported. + + + + + + + + + + + + + Identifies number and type of packaging units for hazardous commodities. + + + + + Number of units of the type below. + + + + + Units in which the hazardous commodity is packaged. + + + + + + + Specifies documentation and limits for validation of an individual packing group/category. + + + + + + Coded specification for how commodity is to be packed. + + + + + + + Identifies DOT packing group for a hazardous commodity. + + + + + + + + + + + Identifies amount and units for quantity of hazardous commodities. + + + + + Number of units of the type below. + + + + + Units by which the hazardous commodity is measured. For IATA commodity, the units values are restricted based on regulation type. + + + + + Specifies which measure of quantity is to be validated. + + + + + + + Specifies the measure of quantity to be validated against a prescribed limit. + + + + + + + + + Identifies the source of regulation for hazardous commodity data. + + + + + + + + + + + + + + + + + + Contact phone number for recipient of shipment. + + + + + Contact and address of FedEx facility at which shipment is to be held. + + + + + Type of facility at which package/shipment is to be held. + + + + + Location identification (for facilities identified by an alphanumeric location code). + + + + + Location identification (for facilities identified by an numeric location code). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Names for data elements / areas which may be suppressed from printing on labels. + + + + + + + + + + + + + + + + + + Specifies the order in which the labels will be returned + + + + + + + + + + + + + + + Relative to normal orientation for the printer. + + + + + + + + + + + + + + + + + + Specifies the order in which the labels are requested to be returned + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identifies the Liability Coverage Amount. For Jan 2010 this value represents coverage amount per pound + + + + + + + + + + + + + Represents a one-dimensional measurement in small units (e.g. suitable for measuring a package or document), contrasted with Distance, which represents a large one-dimensional measurement (e.g. distance between cities). + + + + + The numerical quantity of this measurement. + + + + + The units for this measurement. + + + + + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + + + + + + + + + + + + + + + + + + + + + + Data required to produce a Certificate of Origin document. Remaining content (business data) to be defined once requirements have been completed. + + + + + + + Indicates which Party (if any) from the shipment is to be used as the source of importer data on the NAFTA COO form. + + + + + Contact information for "Authorized Signature" area of form. + + + + + + + + + + + + Defined by NAFTA regulations. + + + + + Defined by NAFTA regulations. + + + + + Identification of which producer is associated with this commodity (if multiple producers are used in a single shipment). + + + + + + Date range over which RVC net cost was calculated. + + + + + + + + + + + + + + + + + + + + + See instructions for NAFTA Certificate of Origin for code definitions. + + + + + + + + + + + + + + + + + + + See instructions for NAFTA Certificate of Origin for code definitions. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Indicates the type of notification that will be sent. + + + + + Specifies the email notification details. + + + + + Specifies the localization for this notification. + + + + + + + + + + + + + + + + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + + + + + + The instructions indicating how to print the OP-900 form for hazardous materials packages. + + + + + Specifies characteristics of a shipping document to be produced. + + + + + Identifies which reference type (from the package's customer references) is to be used as the source for the reference on this OP-900. + + + + + Specifies the usage and identification of customer supplied images to be used on this document. + + + + + Data field to be used when a name is to be printed in the document instead of (or in addition to) a signature image. + + + + + + + + + + + + + + Data for a package's rates, as calculated per a specific rate type. + + + + + Type used for this specific set of rate data. + + + + + Indicates which weight was used. + + + + + INTERNAL FEDEX USE ONLY. + + + + + + The dimensional weight of this package (if greater than actual). + + + + + The oversize weight of this package (if the package is oversize). + + + + + The transportation charge only (prior to any discounts applied) for this package. + + + + + The sum of all discounts on this package. + + + + + This package's baseCharge - totalFreightDiscounts. + + + + + The sum of all surcharges on this package. + + + + + This package's netFreight + totalSurcharges (not including totalTaxes). + + + + + The sum of all taxes on this package. + + + + + This package's netFreight + totalSurcharges + totalTaxes. + + + + + + All rate discounts that apply to this package. + + + + + All rebates that apply to this package. + + + + + All surcharges that apply to this package (either because of characteristics of the package itself, or because it is carrying per-shipment surcharges for the shipment of which it is a part). + + + + + All taxes applicable (or distributed to) this package. + + + + + + + + + + + + + + + + + + + + + These special services are available at the package level for some or all service types. If the shipper is requesting a special service which requires additional data, the package special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. + + + + + The types of all special services requested for the enclosing shipment or package. + + + + + For use with FedEx Ground services only; COD must be present in shipment's special services. + + + + + + Provides details about the batteries or cells that are contained within this specific package. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This information describes the kind of pending shipment being requested. + + + + + + Date after which the pending shipment will no longer be available for completion. + + + + + + These are documents that are recommended to be included with the shipment. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This enumeration rationalizes the former FedEx Express international "admissibility package" types (based on ANSI X.12) and the FedEx Freight packaging types. The values represented are those common to both carriers. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This class describes the pickup characteristics of a shipment (e.g. for use in a tag request). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates the packaging type of the container used to package radioactive hazardous materials. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Indicates whether packaging type "EXCEPTED" or "EXCEPTED_PACKAGE" is for radioactive material in reportable quantity. + + + + + + + + + Indicates the reason that a dim divisor value was chose. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Selects the value from a set of rate data to which the percentage is applied. + + + + + + + + + + + The response to a RateRequest. The Notifications indicate whether the request was successful or not. + + + + + This indicates the highest level of severity of all the notifications returned in this reply. + + + + + The descriptive data regarding the results of the submitted transaction. + + + + + Contains the CustomerTransactionId that was sent in the request. + + + + + The version of this reply. + + + + + Each element contains all rate data for a single service. If service was specified in the request, there will be a single entry in this array; if service was omitted in the request, there will be a separate entry in this array for each service being compared. + + + + + + + + + + + Shows the specific combination of service options combined with the service type that produced this committment in the set returned to the caller. + + + + + Supporting detail for applied options identified in preceding field. + + + + + + + + + + + Not populated by FAST service in Jan07. + + + + + Not populated by FAST service in Jan07. + + + + + Not populated by FAST service in Jan07. + + + + + Maximum expected transit time + + + + + Not populated by FAST service in Jan07. Actual signature option applied, to allow for cases in wihch the original value conflicted with other service features in the shipment. + + + + + + Each element contains all rate data for a single rate type. + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + Allows the caller to specify that the transit time and commit data are to be returned in the reply. + + + + + Candidate carriers for rate-shopping use case. This field is only considered if requestedShipment/serviceType is omitted. + + + + + Contains zero or more service options whose combinations are to be considered when replying with available services. + + + + + If provided, identifies the consolidation to which this open shipment should be added after successful creation. + + + + + The shipment for which a rate quote (or rate-shopping comparison) is desired. + + + + + + + + + + + + + + Select the type of rate from which the element is to be selected. + + + + + + + + + + + Echoed from the corresponding package in the rate request (if provided). + + + + + Used with request containing PACKAGE_GROUPS, to identify which group of identical packages was used to produce a reply item. + + + + + The difference between "list" and "account" net charge. + + + + + Ground COD is shipment level. + + + + + + Rate data that are tied to a specific package and rate type combination. + + + + + + + This class groups the shipment and package rating data for a specific rate type for use in a rating reply, which groups result data by rate type. + + + + + The difference between "list" and "account" total net charge. + + + + + Express COD is shipment level. + + + + + The shipment-level totals for this rate type. + + + + + The package-level data for this rate type. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies how the recipient is identified for customs purposes; the requirements on this information vary with destination country. + + + + + Specifies the kind of identification being used. + + + + + Contains the actual ID value, of the type specified above. + + + + + + + + + + + + + + Specifies the details about documents that are recommended to be included with the shipment for ease of shipment processing and transportation. + + + + + + + + Type of documents that are recommended to be included with the shipment. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies details needed to generate any label artifacts required due to regulatory requirements. + + + + + + Specifies how the customer requested the regulatory label to be generated. + + + + + + + + + + + + Describes the vertical position of an item relative to another item. + + + + + + + + + This class rationalizes RequestedPackage and RequestedPackageSummary from previous interfaces. + + + + + Used only with INDIVIDUAL_PACKAGE, as a unique identifier of each requested package. + + + + + Used only with PACKAGE_GROUPS, as a unique identifier of each group of identical packages. + + + + + Used only with PACKAGE_GROUPS, as a count of packages within a group of identical packages. + + + + + + Specifies the declared value for carriage of the package. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the package. This field is only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case totalInsuredValue and packageCount on the shipment will be used to determine this value. + + + + + Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. Ignored for PACKAGE_SUMMARY, in which case total weight and packageCount on the shipment will be used to determine this value. + + + + + + Provides additional detail on how the customer has physically packaged this item. As of June 2009, required for packages moving under international and SmartPost services. + + + + + Human-readable text describing the package. + + + + + Human-readable text describing the contents of the package to be used for clearance purposes. + + + + + + + Only used for INDIVIDUAL_PACKAGES and PACKAGE_GROUPS. + + + + + + + + + + + + + The shipment variations for the current shipment expressed in key-value pairs. + + + + + + Specifies the total declared value for carriage of the shipment. The declared value for carriage represents the maximum liability of FedEx in connection with a shipment, including, but not limited to, any loss, damage, delay, mis-delivery, nondelivery, misinformation, any failure to provide information, or mis-delivery of information relating to the shipment. + + + + + This attribute indicates the currency the caller requests to have used in all returned monetary values (when a choice is possible). + + + + + Specifies details about the entity responsible for the shipment. + + + + + + + + Physical starting address for the shipment, if different from shipper's address. + + + + + + + + + Data applicable to shipments using FEDEX_FREIGHT_ECONOMY and FEDEX_FREIGHT_PRIORITY services. + + + + + Used with Ground Home Delivery and Freight. + + + + + + Customs clearance data, used for both international and intra-country shipping. + + + + + For use in "process tag" transaction. + + + + + Specifies the characteristics of a shipment pertaining to SmartPost services. + + + + + If true, only the shipper/payor will have visibility of this shipment. + + + + + + Contains data used to create additional (non-label) shipping documents. + + + + + Specifies whether and what kind of rates the customer wishes to have quoted on this shipment. The reply will also be constrained by other data on the shipment and customer. + + + + + Specifies whether the customer wishes to have Estimated Duties and Taxes provided with the rate quotation on this shipment. Only applies with shipments moving under international services. + + + + + The total number of packages in the entire shipment (even when the shipment spans multiple transactions.) + + + + + Specifies which package-level data values are provided at the shipment-level only. The package-level data values types specified here will not be provided at the package-level. + + + + + Specifies data structures that may be re-used multiple times with s single shipment. + + + + + One or more package-attribute descriptions, each of which describes an individual package, a group of identical packages, or (for the total-piece-total-weight case) common characteristics all packages in the shipment. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the tracking number of the master associated with the return shipment. + + + + + + + + These values are used to control the availability of certain special services at the time when a customer uses the e-mail label link to create a return shipment. + + + + + + + + + + + + Identifies the allowed (merchant-authorized) special services which may be selected when the subsequent shipment is created. Only services represented in EMailLabelAllowedSpecialServiceType will be controlled by this list. + + + + + + + The instructions indicating how to print the return instructions( e.g. image type) Specifies characteristics of a shipping document to be produced. + + + + + + Specifies additional customer provided text to be inserted into the return document. + + + + + + + + + + + + + + + + + + + + + + The "PAYOR..." rates are expressed in the currency identified in the payor's rate table(s). The "RATED..." rates are expressed in the currency of the origin country. Former "...COUNTER..." values have become "...RETAIL..." values, except for PAYOR_COUNTER and RATED_COUNTER, which have been removed. + + + + + + + + + + + + + + + + + June 2011 ITG 121203 IR-RMA number has been removed from this structure and added as a new customer reference type. The structure remains because of the reason field below. + + + + + + + + Describes the rotation of an item from its default orientation. + + + + + + + + + + + + + + + + + + + These values control the optional features of service that may be combined in a commitment/rate comparision transaction. + + + + + + + + + + + + Supporting detail for applied options identified in a rate quote. + + + + + Identifies the type of Freight Guarantee applied, if FREIGHT_GUARANTEE is applied to the rate quote. + + + + + Identifies the smartPostHubId used during rate quote, if SMART_POST_HUB_ID is a variable option on the rate request. + + + + + Identifies the indicia used during rate quote, if SMART_POST_ALLOWED_INDICIA is a variable option on the rate request. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies data structures that may be re-used multiple times with s single shipment. + + + + + Specifies the data that is common to dangerous goods packages in the shipment. This is populated when the shipment contains packages with identical dangerous goods commodities. + + + + + + + Shipment-level totals of dry ice data across all packages. + + + + + Total number of packages in the shipment that contain dry ice. + + + + + Total shipment dry ice weight for all packages. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Data for a single leg of a shipment's total/summary rates, as calculated per a specific rate type. + + + + + Human-readable text describing the shipment leg. + + + + + Origin for this leg. + + + + + Specifies the location id the origin of shipment leg. + + + + + Destination for this leg. + + + + + Specifies the location id the destination of shipment leg. + + + + + Type used for this specific set of rate data. + + + + + Indicates the rate scale used. + + + + + Indicates the rate zone used (based on origin and destination). + + + + + + Indicates which weight was used. + + + + + INTERNAL FEDEX USE ONLY. + + + + + Specifies the currency exchange performed on financial amounts for this rate. + + + + + Indicates which special rating cases applied to this shipment. + + + + + + Identifies the type of dim divisor that was applied. + + + + + + + Sum of dimensional weights for all packages. + + + + + + + + + This shipment's totalNetFreight + totalSurcharges (not including totalTaxes). + + + + + Total of the transportation-based taxes. + + + + + + + Total of all values under this shipment's dutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment. + + + + + This shipment's totalNetCharge + totalDutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. + + + + + Rate data specific to FedEx Freight and FedEx National Freight services. + + + + + All rate discounts that apply to this shipment. + + + + + All rebates that apply to this shipment. + + + + + All surcharges that apply to this shipment. + + + + + All transportation-based taxes applicable to this shipment. + + + + + All commodity-based duties and taxes applicable to this shipment. + + + + + The "order level" variable handling charges. + + + + + The total of all variable handling charges at both shipment (order) and package level. + + + + + + + + + + + + + + + + + + + + + + + + + + + These values identify which package-level data values will be provided at the shipment-level. + + + + + + + + + + Data for a shipment's total/summary rates, as calculated per a specific rate type. The "total..." fields may differ from the sum of corresponding package data for Multiweight or Express MPS. + + + + + Type used for this specific set of rate data. + + + + + Indicates the rate scale used. + + + + + Indicates the rate zone used (based on origin and destination). + + + + + + Indicates which weight was used. + + + + + INTERNAL FEDEX USE ONLY. + + + + + Specifies the currency exchange performed on financial amounts for this rate. + + + + + Indicates which special rating cases applied to this shipment. + + + + + + Identifies the type of dim divisor that was applied. + + + + + + + Sum of dimensional weights for all packages. + + + + + + + + + This shipment's totalNetFreight + totalSurcharges (not including totalTaxes). + + + + + Total of the transportation-based taxes. + + + + + + + Total of all values under this shipment's dutiesAndTaxes; only provided if estimated duties and taxes were calculated for this shipment. + + + + + Identifies the total amount of the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + + + + + The total of the totalDutiesAndTaxes plus the totalAncillaryFeesAndTaxes. + + + + + This shipment's totalNetCharge + totalDutiesTaxesAndFees; some duties and taxes are only provided if estimated duties and taxes were calculated for this shipment AND duties, taxes and transportation charges are all paid by the same sender's account. + + + + + Identifies the Rate Details per each leg in a Freight Shipment + + + + + Rate data specific to FedEx Freight and FedEx National Freight services. + + + + + All rate discounts that apply to this shipment. + + + + + All rebates that apply to this shipment. + + + + + All surcharges that apply to this shipment. + + + + + All transportation-based taxes applicable to this shipment. + + + + + All commodity-based duties and taxes applicable to this shipment. + + + + + Identifies the shipment-level fees and taxes that are not based on transportation charges or commodity-level estimated duties and taxes. + + + + + The "order level" variable handling charges. + + + + + The total of all variable handling charges at both shipment (order) and package level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + These special services are available at the shipment level for some or all service types. If the shipper is requesting a special service which requires additional data (such as the COD amount), the shipment special service type must be present in the specialServiceTypes collection, and the supporting detail must be provided in the appropriate sub-object below. + + + + + The types of all special services requested for the enclosing shipment (or other shipment-level transaction). + + + + + + + + This replaces eMailNotificationDetail + + + + + + This field should be populated for pending shipments (e.g. e-mail label) It is required by a PENDING_SHIPMENT special service type. + + + + + + + + + + + Electronic Trade document references. + + + + + Specification for date or range of dates on which delivery is to be attempted. + + + + + + + + + Specifies the name or the key for the shipment variation. + + + + + The values that are valid for the specified shipment variation in the context of the current shipment. + + + + + + + Each occurrence of this class specifies a particular way in which a kind of shipping document is to be produced and provided. + + + + + Values in this field specify how to create and return the document. + + + + + Specifies how to organize all documents of this type. + + + + + Specifies how to e-mail document images. + + + + + Specifies how a queued document is to be printed. + + + + + + + Specifies how to return a shipping document to the caller. + + + + + + + + + + + + + + + Specifies how to e-mail shipping documents. + + + + + Provides the roles and email addresses for e-mail recipients. + + + + + Identifies the convention by which documents are to be grouped as e-mail attachments. + + + + + Specifies the language in which the email containing the document is requested to be composed. + + + + + + + + + + + + + Specifies an individual recipient of e-mailed shipping document(s). + + + + + Identifies the relationship of this recipient in the shipment. + + + + + Address to which the document is to be sent. + + + + + + + Specifies characteristics of a shipping document to be produced. + + + + + Specifies how to create, organize, and return the document. + + + + + Specifies how far down the page to move the beginning of the image; allows for printing on letterhead and other pre-printed stock. + + + + + + + For those shipping document types which have both a "form" and "instructions" component (e.g. NAFTA Certificate of Origin and General Agency Agreement), this field indicates whether to provide the instructions. + + + + + + Governs the language to be used for this individual document, independently from other content returned for the same shipment. + + + + + + + Specifies how to organize all shipping documents of the same type. + + + + + + + + + Specifies the image format used for a shipping document. + + + + + + + + + + + Specifies printing options for a shipping document. + + + + + Provides environment-specific printer identification. + + + + + + + Contains all data required for additional (non-label) shipping documents to be produced in conjunction with a specific shipment. + + + + + Indicates the types of shipping documents requested by the shipper. + + + + + + + Specifies the production of each package-level custom document (the same specification is used for all packages). + + + + + Specifies the production of a shipment-level custom document. + + + + + + + + Specifies the production of the OP-900 document for hazardous materials packages. + + + + + Specifies the production of the 1421c document for dangerous goods shipment. + + + + + Specifies the production of the OP-900 document for hazardous materials. + + + + + Specifies the production of the return instructions document. + + + + + + + Specifies the type of paper (stock) on which a document will be printed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + These values are mutually exclusive; at most one of them can be attached to a SmartPost shipment. + + + + + + + + + + + + + + + + + + + + + Data required for shipments handled under the SMART_POST and GROUND_SMART_POST service types. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifice the kind of tax or miscellaneous charge being reported on a Commercial Invoice. + + + + + + + + + + + + + + + + + Identifies the usage of Tax Identification Number in Shipment processing + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the application that is responsible for managing the document id. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Description of the uploaded document. + + + + + + + + + + + + + + + + + + + + + + This definition of variable handling charge detail is intended for use in Jan 2011 corp load. + + + + + + Actual percentage (10 means 10%, which is a mutiplier of 0.1) + + + + + Select the value from a set of rate data to which the percentage is applied. + + + + + Select the type of rate from which the element is to be selected. + + + + + + + + + + + + + + + Three-dimensional volume/cubic measurement. + + + + + + + + + Units of three-dimensional volume/cubic measure. + + + + + + + + + The descriptive data for the heaviness of an object. + + + + + Identifies the unit of measure associated with a weight value. + + + + + Identifies the weight value of a package/shipment. + + + + + + + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 3e265a0e..6d02cc19 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -49,7 +49,7 @@ protected function execute(InputInterface $input, OutputInterface $output) } //RateRequest - $wsdlPath = $fedexSrcDir . '/_wsdl/RateService_v10.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/RateService_v22.wsdl'; $baseNamespace = 'FedEx\RateService'; $subpackageName = 'Rate Service'; From c256784f65755a648ad6086de00019cd2508b859 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 5 Nov 2017 09:38:59 -0600 Subject: [PATCH 06/33] Updated Track Service to version 14. --- CHANGELOG.md | 3 +- examples/track-by-id.php | 57 +- .../TrackService/ComplexType/Address.php | 26 + .../ComplexType/AppointmentDetail.php | 49 + .../ComplexType/AppointmentTimeDetail.php | 62 + .../ComplexType/AvailableImagesDetail.php | 49 + .../TrackService/ComplexType/ClientDetail.php | 2 +- .../TrackService/ComplexType/Commodity.php | 270 ++ .../ComplexType/CompletedTrackDetail.php | 114 + .../TrackService/ComplexType/Contact.php | 13 + .../ComplexType/ContentRecord.php | 75 + .../CustomerExceptionRequestDetail.php | 75 + .../ComplexType/CustomsOptionDetail.php | 49 + .../TrackService/ComplexType/DateRange.php | 49 + .../DeliveryOptionEligibilityDetail.php | 49 + .../TrackService/ComplexType/Dimensions.php | 2 +- .../TrackService/ComplexType/DocumentPart.php | 49 + .../TrackService/ComplexType/EMailDetail.php | 49 + .../ComplexType/EMailNotificationDetail.php | 49 - .../EMailNotificationRecipient.php | 88 - .../ComplexType/EdtExciseCondition.php | 49 + ...eply.php => GetTrackingDocumentsReply.php} | 24 +- .../GetTrackingDocumentsRequest.php | 101 + .../ComplexType/LocalTimeRange.php | 49 + .../TrackService/ComplexType/Measure.php | 49 + src/FedEx/TrackService/ComplexType/Money.php | 49 + .../ComplexType/NaftaCommodityDetail.php | 88 + .../TrackService/ComplexType/Notification.php | 2 +- .../ComplexType/NotificationDetail.php | 62 + .../TrackService/ComplexType/PagingDetail.php | 49 + .../PieceCountVerificationDetail.php | 62 + .../ComplexType/QualifiedTrackingNumber.php | 88 - ...onReply.php => SendNotificationsReply.php} | 6 +- ...quest.php => SendNotificationsRequest.php} | 18 +- .../ShipmentEventNotificationDetail.php | 62 + ...ShipmentEventNotificationSpecification.php | 75 + ...hipmentNotificationFormatSpecification.php | 36 + .../ComplexType/SignatureImageDetail.php | 49 + .../SignatureProofOfDeliveryFaxReply.php | 88 - .../SignatureProofOfDeliveryFaxRequest.php | 127 - .../SignatureProofOfDeliveryLetterRequest.php | 127 - .../SpecialInstructionStatusDetail.php | 49 + .../TrackAdvanceNotificationDetail.php | 88 + .../ComplexType/TrackChargeDetail.php | 49 + .../TrackService/ComplexType/TrackDetail.php | 526 ++- .../TrackService/ComplexType/TrackEvent.php | 13 + .../TrackInformationNoteDetail.php | 49 + .../TrackNotificationRecipientDetail.php | 6 +- .../TrackOtherIdentifierDetail.php | 62 + .../ComplexType/TrackPackageIdentifier.php | 18 +- .../TrackService/ComplexType/TrackPayment.php | 62 + .../TrackService/ComplexType/TrackReply.php | 51 +- .../TrackService/ComplexType/TrackRequest.php | 123 +- .../ComplexType/TrackReturnDetail.php | 75 + .../ComplexType/TrackSelectionDetail.php | 166 + .../TrackServiceDescriptionDetail.php | 62 + .../ComplexType/TrackSpecialHandling.php | 62 + .../ComplexType/TrackSpecialInstruction.php | 101 + .../TrackStatusAncillaryDetail.php | 75 + .../ComplexType/TrackStatusDetail.php | 88 + .../TrackingBillOfLadingDocumentDetail.php | 36 + .../ComplexType/TrackingDateOrTimestamp.php | 49 + .../ComplexType/TrackingDocument.php | 88 + .../TrackingDocumentDispositionDetail.php | 49 + .../TrackingDocumentEmailDetail.php | 75 + .../ComplexType/TrackingDocumentFormat.php | 75 + .../TrackingDocumentSpecification.php | 75 + .../TrackingFreightBillingDocumentDetail.php | 36 + ...TrackingSignatureProofOfDeliveryDetail.php | 36 + .../ComplexType/TransactionDetail.php | 2 +- .../ComplexType/WebAuthenticationDetail.php | 13 + src/FedEx/TrackService/Request.php | 69 +- .../SimpleType/AppointmentWindowType.php | 19 + .../SimpleType/ArrivalLocationType.php | 1 + .../SimpleType/AvailableImageType.php | 17 + .../SimpleType/CommodityPurposeType.php | 17 + .../SimpleType/CustomsOptionType.php | 25 + .../SimpleType/DeliveryOptionType.php | 19 + .../TrackService/SimpleType/DistanceUnits.php | 2 +- ...ligibilityType.php => EligibilityType.php} | 4 +- .../SimpleType/FedExLocationType.php | 25 + .../TrackService/SimpleType/ImageSizeType.php | 17 + .../TrackService/SimpleType/LinearUnits.php | 2 +- .../SimpleType/NaftaNetCostMethodCode.php | 17 + .../NaftaPreferenceCriterionCode.php | 21 + .../NaftaProducerDeterminationCode.php | 19 + ...ventType.php => NotificationEventType.php} | 5 +- ...matType.php => NotificationFormatType.php} | 5 +- .../SimpleType/NotificationSeverityType.php | 2 +- .../SimpleType/NotificationType.php | 16 + .../SimpleType/OperatingCompanyType.php | 11 + .../TrackService/SimpleType/PackagingType.php | 6 +- .../SimpleType/PhysicalPackagingType.php | 46 + .../SimpleType/PieceCountLocationType.php | 17 + .../TrackService/SimpleType/ServiceType.php | 29 +- .../ShipmentNotificationAggregationType.php | 17 + ...e.php => ShipmentNotificationRoleType.php} | 5 +- .../SpecialInstructionsStatusCode.php | 23 + .../TrackAdvanceNotificationStatusType.php | 17 + .../SimpleType/TrackChargeDetailType.php | 16 + .../TrackChargesPaymentClassificationType.php | 17 + .../SimpleType/TrackDeliveryLocationType.php | 8 +- .../SimpleType/TrackDeliveryOptionType.php | 21 + .../SimpleType/TrackDetailAttributeType.php | 16 + .../SimpleType/TrackIdentifierType.php | 5 +- .../SimpleType/TrackPaymentType.php | 23 + .../SimpleType/TrackPossessionStatusType.php | 22 + .../TrackRequestProcessingOptionType.php | 16 + .../TrackReturnMovementStatusType.php | 17 + .../SimpleType/TrackSpecialHandlingType.php | 123 + .../TrackingDateOrTimestampType.php | 23 + .../TrackingDocumentDispositionType.php | 18 + .../TrackingDocumentGroupingType.php | 17 + ...Type.php => TrackingDocumentImageType.php} | 5 +- .../SimpleType/TrackingDocumentType.php | 18 + .../TrackService/SimpleType/WeightUnits.php | 2 +- ...kService_v5.wsdl => TrackService_v14.wsdl} | 3784 ++++++++++------- tests/FedEx/Tests/TrackServiceTest.php | 12 - .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 119 files changed, 6894 insertions(+), 2442 deletions(-) create mode 100644 src/FedEx/TrackService/ComplexType/AppointmentDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/AppointmentTimeDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/AvailableImagesDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/Commodity.php create mode 100644 src/FedEx/TrackService/ComplexType/CompletedTrackDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/ContentRecord.php create mode 100644 src/FedEx/TrackService/ComplexType/CustomerExceptionRequestDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/CustomsOptionDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/DateRange.php create mode 100644 src/FedEx/TrackService/ComplexType/DeliveryOptionEligibilityDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/DocumentPart.php create mode 100644 src/FedEx/TrackService/ComplexType/EMailDetail.php delete mode 100644 src/FedEx/TrackService/ComplexType/EMailNotificationDetail.php delete mode 100644 src/FedEx/TrackService/ComplexType/EMailNotificationRecipient.php create mode 100644 src/FedEx/TrackService/ComplexType/EdtExciseCondition.php rename src/FedEx/TrackService/ComplexType/{SignatureProofOfDeliveryLetterReply.php => GetTrackingDocumentsReply.php} (63%) create mode 100644 src/FedEx/TrackService/ComplexType/GetTrackingDocumentsRequest.php create mode 100644 src/FedEx/TrackService/ComplexType/LocalTimeRange.php create mode 100644 src/FedEx/TrackService/ComplexType/Measure.php create mode 100644 src/FedEx/TrackService/ComplexType/Money.php create mode 100644 src/FedEx/TrackService/ComplexType/NaftaCommodityDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/NotificationDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/PagingDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/PieceCountVerificationDetail.php delete mode 100644 src/FedEx/TrackService/ComplexType/QualifiedTrackingNumber.php rename src/FedEx/TrackService/ComplexType/{TrackNotificationReply.php => SendNotificationsReply.php} (96%) rename src/FedEx/TrackService/ComplexType/{TrackNotificationRequest.php => SendNotificationsRequest.php} (88%) create mode 100644 src/FedEx/TrackService/ComplexType/ShipmentEventNotificationDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/ShipmentEventNotificationSpecification.php create mode 100644 src/FedEx/TrackService/ComplexType/ShipmentNotificationFormatSpecification.php create mode 100644 src/FedEx/TrackService/ComplexType/SignatureImageDetail.php delete mode 100644 src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxReply.php delete mode 100644 src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxRequest.php delete mode 100644 src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterRequest.php create mode 100644 src/FedEx/TrackService/ComplexType/SpecialInstructionStatusDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackAdvanceNotificationDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackChargeDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackInformationNoteDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackOtherIdentifierDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackPayment.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackReturnDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackSelectionDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackServiceDescriptionDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackSpecialHandling.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackSpecialInstruction.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackStatusAncillaryDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackStatusDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingBillOfLadingDocumentDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingDateOrTimestamp.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingDocument.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingDocumentEmailDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingDocumentFormat.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingDocumentSpecification.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingFreightBillingDocumentDetail.php create mode 100644 src/FedEx/TrackService/ComplexType/TrackingSignatureProofOfDeliveryDetail.php create mode 100644 src/FedEx/TrackService/SimpleType/AppointmentWindowType.php create mode 100644 src/FedEx/TrackService/SimpleType/AvailableImageType.php create mode 100644 src/FedEx/TrackService/SimpleType/CommodityPurposeType.php create mode 100644 src/FedEx/TrackService/SimpleType/CustomsOptionType.php create mode 100644 src/FedEx/TrackService/SimpleType/DeliveryOptionType.php rename src/FedEx/TrackService/SimpleType/{RedirectToHoldEligibilityType.php => EligibilityType.php} (77%) create mode 100644 src/FedEx/TrackService/SimpleType/FedExLocationType.php create mode 100644 src/FedEx/TrackService/SimpleType/ImageSizeType.php create mode 100644 src/FedEx/TrackService/SimpleType/NaftaNetCostMethodCode.php create mode 100644 src/FedEx/TrackService/SimpleType/NaftaPreferenceCriterionCode.php create mode 100644 src/FedEx/TrackService/SimpleType/NaftaProducerDeterminationCode.php rename src/FedEx/TrackService/SimpleType/{EMailNotificationEventType.php => NotificationEventType.php} (73%) rename src/FedEx/TrackService/SimpleType/{EMailNotificationFormatType.php => NotificationFormatType.php} (70%) create mode 100644 src/FedEx/TrackService/SimpleType/NotificationType.php create mode 100644 src/FedEx/TrackService/SimpleType/PhysicalPackagingType.php create mode 100644 src/FedEx/TrackService/SimpleType/PieceCountLocationType.php create mode 100644 src/FedEx/TrackService/SimpleType/ShipmentNotificationAggregationType.php rename src/FedEx/TrackService/SimpleType/{EMailNotificationRecipientType.php => ShipmentNotificationRoleType.php} (72%) create mode 100644 src/FedEx/TrackService/SimpleType/SpecialInstructionsStatusCode.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackAdvanceNotificationStatusType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackChargeDetailType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackChargesPaymentClassificationType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackDeliveryOptionType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackDetailAttributeType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackPaymentType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackPossessionStatusType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackRequestProcessingOptionType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackReturnMovementStatusType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackingDocumentDispositionType.php create mode 100644 src/FedEx/TrackService/SimpleType/TrackingDocumentGroupingType.php rename src/FedEx/TrackService/SimpleType/{SignatureProofOfDeliveryImageType.php => TrackingDocumentImageType.php} (69%) create mode 100644 src/FedEx/TrackService/SimpleType/TrackingDocumentType.php rename src/FedEx/_wsdl/{TrackService_v5.wsdl => TrackService_v14.wsdl} (53%) mode change 100644 => 100755 diff --git a/CHANGELOG.md b/CHANGELOG.md index 3bba7523..de372d02 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ - Updated Ship Service - Updated Address Validation Service - Updated Rate Service +- Updated Track Service |Service|Version| |---|---| @@ -18,7 +19,7 @@ |Rate|22| |Return Tag|1| |Ship|21| -|Track|5| +|Track|14| |Upload Document|11| |Open Ship|11| |Validation Availability and Commitment Service|6| diff --git a/examples/track-by-id.php b/examples/track-by-id.php index fd6f8b4f..95a50c7b 100644 --- a/examples/track-by-id.php +++ b/examples/track-by-id.php @@ -3,40 +3,41 @@ require_once 'credentials.php'; require_once 'bootstrap.php'; -use FedEx\TrackService, - FedEx\TrackService\ComplexType, - FedEx\TrackService\SimpleType; +use FedEx\TrackService\Request; +use FedEx\TrackService\ComplexType; +use FedEx\TrackService\SimpleType; -$trackingId = 123456789012; +$trackingId1 = 123456789012; +$trackingId2 = 123456789012; -$userCredential = new ComplexType\WebAuthenticationCredential(); -$userCredential->setKey(FEDEX_KEY) - ->setPassword(FEDEX_PASSWORD); +$trackRequest = new ComplexType\TrackRequest(); -$webAuthenticationDetail = new ComplexType\WebAuthenticationDetail(); -$webAuthenticationDetail->setUserCredential($userCredential); +// User Credential +$trackRequest->WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$trackRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; -$clientDetail = new ComplexType\ClientDetail(); -$clientDetail->setAccountNumber(FEDEX_ACCOUNT_NUMBER) - ->setMeterNumber(FEDEX_METER_NUMBER); +// Client Detail +$trackRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$trackRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; -$version = new ComplexType\VersionId(); -$version->setMajor(5) - ->setIntermediate(0) - ->setMinor(0) - ->setServiceId('trck'); +// Version +$trackRequest->Version->ServiceId = 'trck'; +$trackRequest->Version->Major = 14; +$trackRequest->Version->Intermediate = 0; +$trackRequest->Version->Minor = 0; -$identifier = new ComplexType\TrackPackageIdentifier(); -$identifier->setType(SimpleType\TrackIdentifierType::_TRACKING_NUMBER_OR_DOORTAG) - ->setValue($trackingId); +// Track 2 shipments +$trackRequest->SelectionDetails = [new ComplexType\TrackSelectionDetail(), new ComplexType\TrackSelectionDetail()]; -$request = new ComplexType\TrackRequest(); -$request->setWebAuthenticationDetail($webAuthenticationDetail) - ->setClientDetail($clientDetail) - ->setVersion($version) - ->setPackageIdentifier($identifier); +// Track shipment 1 +$trackRequest->SelectionDetails[0]->PackageIdentifier->Value = $trackingId1; +$trackRequest->SelectionDetails[0]->PackageIdentifier->Type = SimpleType\TrackIdentifierType::_TRACKING_NUMBER_OR_DOORTAG; -$response = (new TrackService\Request())->getTrackReply($request); +// Track shipment 2 +$trackRequest->SelectionDetails[1]->PackageIdentifier->Value = $trackingId2; +$trackRequest->SelectionDetails[1]->PackageIdentifier->Type = SimpleType\TrackIdentifierType::_TRACKING_NUMBER_OR_DOORTAG; -var_dump($response); - \ No newline at end of file +$request = new Request(); +$trackReply = $request->getTrackReply($trackRequest); + +var_dump($trackReply); diff --git a/src/FedEx/TrackService/ComplexType/Address.php b/src/FedEx/TrackService/ComplexType/Address.php index 41d475aa..a2585d08 100644 --- a/src/FedEx/TrackService/ComplexType/Address.php +++ b/src/FedEx/TrackService/ComplexType/Address.php @@ -16,7 +16,9 @@ * @property string $PostalCode * @property string $UrbanizationCode * @property string $CountryCode + * @property string $CountryName * @property boolean $Residential + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -100,6 +102,18 @@ public function setCountryCode($countryCode) return $this; } + /** + * The fully spelt out name of a country. + * + * @param string $countryName + * @return $this + */ + public function setCountryName($countryName) + { + $this->values['CountryName'] = $countryName; + return $this; + } + /** * Indicates whether this address residential (as opposed to commercial). * @@ -111,4 +125,16 @@ public function setResidential($residential) $this->values['Residential'] = $residential; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/TrackService/ComplexType/AppointmentDetail.php b/src/FedEx/TrackService/ComplexType/AppointmentDetail.php new file mode 100644 index 00000000..6093b60f --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/AppointmentDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Date + * @property AppointmentTimeDetail[] $WindowDetails + + */ +class AppointmentDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AppointmentDetail'; + + /** + * Set Date + * + * @param string $date + * @return $this + */ + public function setDate($date) + { + $this->values['Date'] = $date; + return $this; + } + + /** + * Different appointment time windows on the date specified. + * + * @param AppointmentTimeDetail[] $windowDetails + * @return $this + */ + public function setWindowDetails(array $windowDetails) + { + $this->values['WindowDetails'] = $windowDetails; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/AppointmentTimeDetail.php b/src/FedEx/TrackService/ComplexType/AppointmentTimeDetail.php new file mode 100644 index 00000000..a4c52ea6 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/AppointmentTimeDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\AppointmentWindowType|string $Type + * @property LocalTimeRange $Window + * @property string $Description + + */ +class AppointmentTimeDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AppointmentTimeDetail'; + + /** + * The description that FedEx Ground uses for the appointment window being specified. + * + * @param \FedEx\TrackService\SimpleType\AppointmentWindowType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Specifies the window of time for an appointment. + * + * @param LocalTimeRange $window + * @return $this + */ + public function setWindow(LocalTimeRange $window) + { + $this->values['Window'] = $window; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/AvailableImagesDetail.php b/src/FedEx/TrackService/ComplexType/AvailableImagesDetail.php new file mode 100644 index 00000000..0c3ac413 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/AvailableImagesDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\AvailableImageType|string $Type + * @property \FedEx\TrackService\SimpleType\ImageSizeType|string $Size + + */ +class AvailableImagesDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AvailableImagesDetail'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\AvailableImageType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Size + * + * @param \FedEx\TrackService\SimpleType\ImageSizeType|string $size + * @return $this + */ + public function setSize($size) + { + $this->values['Size'] = $size; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/ClientDetail.php b/src/FedEx/TrackService/ComplexType/ClientDetail.php index 19bfa212..25a9e097 100644 --- a/src/FedEx/TrackService/ComplexType/ClientDetail.php +++ b/src/FedEx/TrackService/ComplexType/ClientDetail.php @@ -50,7 +50,7 @@ public function setMeterNumber($meterNumber) } /** - * Only used in transactions which require identification of the Fed Ex Office integrator. + * Only used in transactions which require identification of the FedEx Office integrator. * * @param string $integratorId * @return $this diff --git a/src/FedEx/TrackService/ComplexType/Commodity.php b/src/FedEx/TrackService/ComplexType/Commodity.php new file mode 100644 index 00000000..a385f5e3 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/Commodity.php @@ -0,0 +1,270 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $CommodityId + * @property string $Name + * @property int $NumberOfPieces + * @property string $Description + * @property \FedEx\TrackService\SimpleType\CommodityPurposeType|string $Purpose + * @property string $CountryOfManufacture + * @property string $HarmonizedCode + * @property Weight $Weight + * @property float $Quantity + * @property string $QuantityUnits + * @property Measure[] $AdditionalMeasures + * @property Money $UnitPrice + * @property Money $CustomsValue + * @property EdtExciseCondition[] $ExciseConditions + * @property string $ExportLicenseNumber + * @property string $ExportLicenseExpirationDate + * @property string $CIMarksAndNumbers + * @property string $PartNumber + * @property NaftaCommodityDetail $NaftaDetail + + */ +class Commodity extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Commodity'; + + /** + * Value used to identify a commodity description; must be unique within the containing shipment. + * + * @param string $commodityId + * @return $this + */ + public function setCommodityId($commodityId) + { + $this->values['CommodityId'] = $commodityId; + return $this; + } + + /** + * Set Name + * + * @param string $name + * @return $this + */ + public function setName($name) + { + $this->values['Name'] = $name; + return $this; + } + + /** + * Set NumberOfPieces + * + * @param int $numberOfPieces + * @return $this + */ + public function setNumberOfPieces($numberOfPieces) + { + $this->values['NumberOfPieces'] = $numberOfPieces; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set Purpose + * + * @param \FedEx\TrackService\SimpleType\CommodityPurposeType|string $purpose + * @return $this + */ + public function setPurpose($purpose) + { + $this->values['Purpose'] = $purpose; + return $this; + } + + /** + * Set CountryOfManufacture + * + * @param string $countryOfManufacture + * @return $this + */ + public function setCountryOfManufacture($countryOfManufacture) + { + $this->values['CountryOfManufacture'] = $countryOfManufacture; + return $this; + } + + /** + * Set HarmonizedCode + * + * @param string $harmonizedCode + * @return $this + */ + public function setHarmonizedCode($harmonizedCode) + { + $this->values['HarmonizedCode'] = $harmonizedCode; + return $this; + } + + /** + * Set Weight + * + * @param Weight $weight + * @return $this + */ + public function setWeight(Weight $weight) + { + $this->values['Weight'] = $weight; + return $this; + } + + /** + * Set Quantity + * + * @param float $quantity + * @return $this + */ + public function setQuantity($quantity) + { + $this->values['Quantity'] = $quantity; + return $this; + } + + /** + * Set QuantityUnits + * + * @param string $quantityUnits + * @return $this + */ + public function setQuantityUnits($quantityUnits) + { + $this->values['QuantityUnits'] = $quantityUnits; + return $this; + } + + /** + * Contains only additional quantitative information other than weight and quantity to calculate duties and taxes. + * + * @param Measure[] $additionalMeasures + * @return $this + */ + public function setAdditionalMeasures(array $additionalMeasures) + { + $this->values['AdditionalMeasures'] = $additionalMeasures; + return $this; + } + + /** + * Set UnitPrice + * + * @param Money $unitPrice + * @return $this + */ + public function setUnitPrice(Money $unitPrice) + { + $this->values['UnitPrice'] = $unitPrice; + return $this; + } + + /** + * Set CustomsValue + * + * @param Money $customsValue + * @return $this + */ + public function setCustomsValue(Money $customsValue) + { + $this->values['CustomsValue'] = $customsValue; + return $this; + } + + /** + * Defines additional characteristic of commodity used to calculate duties and taxes + * + * @param EdtExciseCondition[] $exciseConditions + * @return $this + */ + public function setExciseConditions(array $exciseConditions) + { + $this->values['ExciseConditions'] = $exciseConditions; + return $this; + } + + /** + * Set ExportLicenseNumber + * + * @param string $exportLicenseNumber + * @return $this + */ + public function setExportLicenseNumber($exportLicenseNumber) + { + $this->values['ExportLicenseNumber'] = $exportLicenseNumber; + return $this; + } + + /** + * Set ExportLicenseExpirationDate + * + * @param string $exportLicenseExpirationDate + * @return $this + */ + public function setExportLicenseExpirationDate($exportLicenseExpirationDate) + { + $this->values['ExportLicenseExpirationDate'] = $exportLicenseExpirationDate; + return $this; + } + + /** + * Set CIMarksAndNumbers + * + * @param string $cIMarksAndNumbers + * @return $this + */ + public function setCIMarksAndNumbers($cIMarksAndNumbers) + { + $this->values['CIMarksAndNumbers'] = $cIMarksAndNumbers; + return $this; + } + + /** + * Set PartNumber + * + * @param string $partNumber + * @return $this + */ + public function setPartNumber($partNumber) + { + $this->values['PartNumber'] = $partNumber; + return $this; + } + + /** + * All data required for this commodity in NAFTA Certificate of Origin. + * + * @param NaftaCommodityDetail $naftaDetail + * @return $this + */ + public function setNaftaDetail(NaftaCommodityDetail $naftaDetail) + { + $this->values['NaftaDetail'] = $naftaDetail; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/CompletedTrackDetail.php b/src/FedEx/TrackService/ComplexType/CompletedTrackDetail.php new file mode 100644 index 00000000..3898d848 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/CompletedTrackDetail.php @@ -0,0 +1,114 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\NotificationSeverityType|string $HighestSeverity + * @property Notification[] $Notifications + * @property boolean $DuplicateWaybill + * @property boolean $MoreData + * @property string $PagingToken + * @property int $TrackDetailsCount + * @property TrackDetail[] $TrackDetails + + */ +class CompletedTrackDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CompletedTrackDetail'; + + /** + * Set HighestSeverity + * + * @param \FedEx\TrackService\SimpleType\NotificationSeverityType|string $highestSeverity + * @return $this + */ + public function setHighestSeverity($highestSeverity) + { + $this->values['HighestSeverity'] = $highestSeverity; + return $this; + } + + /** + * Set Notifications + * + * @param Notification[] $notifications + * @return $this + */ + public function setNotifications(array $notifications) + { + $this->values['Notifications'] = $notifications; + return $this; + } + + /** + * True if duplicate packages (more than one package with the same tracking number) have been found, and only limited data will be provided for each one. + * + * @param boolean $duplicateWaybill + * @return $this + */ + public function setDuplicateWaybill($duplicateWaybill) + { + $this->values['DuplicateWaybill'] = $duplicateWaybill; + return $this; + } + + /** + * True if additional packages remain to be retrieved. + * + * @param boolean $moreData + * @return $this + */ + public function setMoreData($moreData) + { + $this->values['MoreData'] = $moreData; + return $this; + } + + /** + * Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true). + * + * @param string $pagingToken + * @return $this + */ + public function setPagingToken($pagingToken) + { + $this->values['PagingToken'] = $pagingToken; + return $this; + } + + /** + * Identifies the total number of available track details across all pages. + * + * @param int $trackDetailsCount + * @return $this + */ + public function setTrackDetailsCount($trackDetailsCount) + { + $this->values['TrackDetailsCount'] = $trackDetailsCount; + return $this; + } + + /** + * Contains detailed tracking information for the requested packages(s). + * + * @param TrackDetail[] $trackDetails + * @return $this + */ + public function setTrackDetails(array $trackDetails) + { + $this->values['TrackDetails'] = $trackDetails; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/Contact.php b/src/FedEx/TrackService/ComplexType/Contact.php index 15b1bca3..a51eac93 100644 --- a/src/FedEx/TrackService/ComplexType/Contact.php +++ b/src/FedEx/TrackService/ComplexType/Contact.php @@ -15,6 +15,7 @@ * @property string $CompanyName * @property string $PhoneNumber * @property string $PhoneExtension + * @property string $TollFreePhoneNumber * @property string $PagerNumber * @property string $FaxNumber * @property string $EMailAddress @@ -89,6 +90,18 @@ public function setPhoneExtension($phoneExtension) return $this; } + /** + * Identifies a toll free number, if any, associated with this contact. + * + * @param string $tollFreePhoneNumber + * @return $this + */ + public function setTollFreePhoneNumber($tollFreePhoneNumber) + { + $this->values['TollFreePhoneNumber'] = $tollFreePhoneNumber; + return $this; + } + /** * Identifies the pager number associated with this contact. * diff --git a/src/FedEx/TrackService/ComplexType/ContentRecord.php b/src/FedEx/TrackService/ComplexType/ContentRecord.php new file mode 100644 index 00000000..d701403f --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/ContentRecord.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $PartNumber + * @property string $ItemNumber + * @property int $ReceivedQuantity + * @property string $Description + + */ +class ContentRecord extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ContentRecord'; + + /** + * Set PartNumber + * + * @param string $partNumber + * @return $this + */ + public function setPartNumber($partNumber) + { + $this->values['PartNumber'] = $partNumber; + return $this; + } + + /** + * Set ItemNumber + * + * @param string $itemNumber + * @return $this + */ + public function setItemNumber($itemNumber) + { + $this->values['ItemNumber'] = $itemNumber; + return $this; + } + + /** + * Set ReceivedQuantity + * + * @param int $receivedQuantity + * @return $this + */ + public function setReceivedQuantity($receivedQuantity) + { + $this->values['ReceivedQuantity'] = $receivedQuantity; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/CustomerExceptionRequestDetail.php b/src/FedEx/TrackService/ComplexType/CustomerExceptionRequestDetail.php new file mode 100644 index 00000000..0b3473fd --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/CustomerExceptionRequestDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Id + * @property string $StatusCode + * @property string $StatusDescription + * @property string $CreateTime + + */ +class CustomerExceptionRequestDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CustomerExceptionRequestDetail'; + + /** + * Unique identifier for the customer exception request. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + + /** + * Set StatusCode + * + * @param string $statusCode + * @return $this + */ + public function setStatusCode($statusCode) + { + $this->values['StatusCode'] = $statusCode; + return $this; + } + + /** + * Set StatusDescription + * + * @param string $statusDescription + * @return $this + */ + public function setStatusDescription($statusDescription) + { + $this->values['StatusDescription'] = $statusDescription; + return $this; + } + + /** + * Set CreateTime + * + * @param string $createTime + * @return $this + */ + public function setCreateTime($createTime) + { + $this->values['CreateTime'] = $createTime; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/CustomsOptionDetail.php b/src/FedEx/TrackService/ComplexType/CustomsOptionDetail.php new file mode 100644 index 00000000..0eacf4bb --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/CustomsOptionDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\CustomsOptionType|string $Type + * @property string $Description + + */ +class CustomsOptionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CustomsOptionDetail'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\CustomsOptionType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Specifies additional description about customs options. This is a required field when the customs options type is "OTHER". + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/DateRange.php b/src/FedEx/TrackService/ComplexType/DateRange.php new file mode 100644 index 00000000..90c91ed0 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/DateRange.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Begins + * @property string $Ends + + */ +class DateRange extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DateRange'; + + /** + * Set Begins + * + * @param string $begins + * @return $this + */ + public function setBegins($begins) + { + $this->values['Begins'] = $begins; + return $this; + } + + /** + * Set Ends + * + * @param string $ends + * @return $this + */ + public function setEnds($ends) + { + $this->values['Ends'] = $ends; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/DeliveryOptionEligibilityDetail.php b/src/FedEx/TrackService/ComplexType/DeliveryOptionEligibilityDetail.php new file mode 100644 index 00000000..2562f6b2 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/DeliveryOptionEligibilityDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\DeliveryOptionType|string $Option + * @property \FedEx\TrackService\SimpleType\EligibilityType|string $Eligibility + + */ +class DeliveryOptionEligibilityDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DeliveryOptionEligibilityDetail'; + + /** + * Type of delivery option. + * + * @param \FedEx\TrackService\SimpleType\DeliveryOptionType|string $option + * @return $this + */ + public function setOption($option) + { + $this->values['Option'] = $option; + return $this; + } + + /** + * Eligibility of the customer for the specific delivery option. + * + * @param \FedEx\TrackService\SimpleType\EligibilityType|string $eligibility + * @return $this + */ + public function setEligibility($eligibility) + { + $this->values['Eligibility'] = $eligibility; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/Dimensions.php b/src/FedEx/TrackService/ComplexType/Dimensions.php index 635b366a..e049f89b 100644 --- a/src/FedEx/TrackService/ComplexType/Dimensions.php +++ b/src/FedEx/TrackService/ComplexType/Dimensions.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The dimensions of this package and the unit type used for the measurements. + * Dimensions * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/TrackService/ComplexType/DocumentPart.php b/src/FedEx/TrackService/ComplexType/DocumentPart.php new file mode 100644 index 00000000..567a02ec --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/DocumentPart.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property int $SequenceNumber + * @property string $Content + + */ +class DocumentPart extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentPart'; + + /** + * The one-origin position of this part within a document. + * + * @param int $sequenceNumber + * @return $this + */ + public function setSequenceNumber($sequenceNumber) + { + $this->values['SequenceNumber'] = $sequenceNumber; + return $this; + } + + /** + * Graphic or printer commands for this image within a document. + * + * @param string $content + * @return $this + */ + public function setContent($content) + { + $this->values['Content'] = $content; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/EMailDetail.php b/src/FedEx/TrackService/ComplexType/EMailDetail.php new file mode 100644 index 00000000..a0ba9cea --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/EMailDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $EmailAddress + * @property string $Name + + */ +class EMailDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EMailDetail'; + + /** + * Set EmailAddress + * + * @param string $emailAddress + * @return $this + */ + public function setEmailAddress($emailAddress) + { + $this->values['EmailAddress'] = $emailAddress; + return $this; + } + + /** + * Specifies the name associated with the email address. + * + * @param string $name + * @return $this + */ + public function setName($name) + { + $this->values['Name'] = $name; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/EMailNotificationDetail.php b/src/FedEx/TrackService/ComplexType/EMailNotificationDetail.php deleted file mode 100644 index 244d15c1..00000000 --- a/src/FedEx/TrackService/ComplexType/EMailNotificationDetail.php +++ /dev/null @@ -1,49 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Package Movement Information Service - * - * @property string $PersonalMessage - * @property EMailNotificationRecipient[] $Recipients - - */ -class EMailNotificationDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationDetail'; - - /** - * A message that will be included in the email notifications - * - * @param string $personalMessage - * @return $this - */ - public function setPersonalMessage($personalMessage) - { - $this->values['PersonalMessage'] = $personalMessage; - return $this; - } - - /** - * Information describing the destination of the email, format of the email and events to be notified on - * - * @param EMailNotificationRecipient[] $recipients - * @return $this - */ - public function setRecipients(array $recipients) - { - $this->values['Recipients'] = $recipients; - return $this; - } -} diff --git a/src/FedEx/TrackService/ComplexType/EMailNotificationRecipient.php b/src/FedEx/TrackService/ComplexType/EMailNotificationRecipient.php deleted file mode 100644 index b6b2744f..00000000 --- a/src/FedEx/TrackService/ComplexType/EMailNotificationRecipient.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Package Movement Information Service - * - * @property \FedEx\TrackService\SimpleType\EMailNotificationRecipientType|string $EMailNotificationRecipientType - * @property string $EMailAddress - * @property \FedEx\TrackService\SimpleType\EMailNotificationEventType|string[] $NotificationEventsRequested - * @property \FedEx\TrackService\SimpleType\EMailNotificationFormatType|string $Format - * @property Localization $Localization - - */ -class EMailNotificationRecipient extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationRecipient'; - - /** - * Identifies the relationship this email recipient has to the shipment. - * - * @param \FedEx\TrackService\SimpleType\EMailNotificationRecipientType|string $eMailNotificationRecipientType - * @return $this - */ - public function setEMailNotificationRecipientType($eMailNotificationRecipientType) - { - $this->values['EMailNotificationRecipientType'] = $eMailNotificationRecipientType; - return $this; - } - - /** - * The email address to send the notification to - * - * @param string $eMailAddress - * @return $this - */ - public function setEMailAddress($eMailAddress) - { - $this->values['EMailAddress'] = $eMailAddress; - return $this; - } - - /** - * The types of email notifications being requested for this recipient. - * - * @param \FedEx\TrackService\SimpleType\EMailNotificationEventType[]|string[] $notificationEventsRequested - * @return $this - */ - public function setNotificationEventsRequested(array $notificationEventsRequested) - { - $this->values['NotificationEventsRequested'] = $notificationEventsRequested; - return $this; - } - - /** - * The format of the email notification. - * - * @param \FedEx\TrackService\SimpleType\EMailNotificationFormatType|string $format - * @return $this - */ - public function setFormat($format) - { - $this->values['Format'] = $format; - return $this; - } - - /** - * The language/locale to be used in this email notification. - * - * @param Localization $localization - * @return $this - */ - public function setLocalization(Localization $localization) - { - $this->values['Localization'] = $localization; - return $this; - } -} diff --git a/src/FedEx/TrackService/ComplexType/EdtExciseCondition.php b/src/FedEx/TrackService/ComplexType/EdtExciseCondition.php new file mode 100644 index 00000000..daaa786f --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/EdtExciseCondition.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Category + * @property string $Value + + */ +class EdtExciseCondition extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'EdtExciseCondition'; + + /** + * Set Category + * + * @param string $category + * @return $this + */ + public function setCategory($category) + { + $this->values['Category'] = $category; + return $this; + } + + /** + * Customer-declared value, with data type and legal values depending on excise condition, used in defining the taxable value of the item. + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterReply.php b/src/FedEx/TrackService/ComplexType/GetTrackingDocumentsReply.php similarity index 63% rename from src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterReply.php rename to src/FedEx/TrackService/ComplexType/GetTrackingDocumentsReply.php index 0146f924..57a3cfc8 100644 --- a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterReply.php +++ b/src/FedEx/TrackService/ComplexType/GetTrackingDocumentsReply.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * FedEx Signature Proof Of Delivery Letter reply. + * GetTrackingDocumentsReply * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,20 +14,20 @@ * @property Notification[] $Notifications * @property TransactionDetail $TransactionDetail * @property VersionId $Version - * @property string $Letter + * @property TrackingDocument[] $Documents */ -class SignatureProofOfDeliveryLetterReply extends AbstractComplexType +class GetTrackingDocumentsReply extends AbstractComplexType { /** * Name of this complex type * * @var string */ - protected $name = 'SignatureProofOfDeliveryLetterReply'; + protected $name = 'GetTrackingDocumentsReply'; /** - * This contains the severity type of the most severe Notification in the Notifications array. + * Set HighestSeverity * * @param \FedEx\TrackService\SimpleType\NotificationSeverityType|string $highestSeverity * @return $this @@ -39,7 +39,7 @@ public function setHighestSeverity($highestSeverity) } /** - * Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. + * Set Notifications * * @param Notification[] $notifications * @return $this @@ -51,7 +51,7 @@ public function setNotifications(array $notifications) } /** - * Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. + * Set TransactionDetail * * @param TransactionDetail $transactionDetail * @return $this @@ -63,7 +63,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Image of letter encoded in Base64 format. + * Set Version * * @param VersionId $version * @return $this @@ -75,14 +75,14 @@ public function setVersion(VersionId $version) } /** - * Image of letter encoded in Base64 format. + * Set Documents * - * @param string $letter + * @param TrackingDocument[] $documents * @return $this */ - public function setLetter($letter) + public function setDocuments(array $documents) { - $this->values['Letter'] = $letter; + $this->values['Documents'] = $documents; return $this; } } diff --git a/src/FedEx/TrackService/ComplexType/GetTrackingDocumentsRequest.php b/src/FedEx/TrackService/ComplexType/GetTrackingDocumentsRequest.php new file mode 100644 index 00000000..ebc06daa --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/GetTrackingDocumentsRequest.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property WebAuthenticationDetail $WebAuthenticationDetail + * @property ClientDetail $ClientDetail + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property TrackSelectionDetail[] $SelectionDetails + * @property TrackingDocumentSpecification $TrackingDocumentSpecification + + */ +class GetTrackingDocumentsRequest extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'GetTrackingDocumentsRequest'; + + /** + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * + * @param WebAuthenticationDetail $webAuthenticationDetail + * @return $this + */ + public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) + { + $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; + return $this; + } + + /** + * Set ClientDetail + * + * @param ClientDetail $clientDetail + * @return $this + */ + public function setClientDetail(ClientDetail $clientDetail) + { + $this->values['ClientDetail'] = $clientDetail; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Set SelectionDetails + * + * @param TrackSelectionDetail[] $selectionDetails + * @return $this + */ + public function setSelectionDetails(array $selectionDetails) + { + $this->values['SelectionDetails'] = $selectionDetails; + return $this; + } + + /** + * Set TrackingDocumentSpecification + * + * @param TrackingDocumentSpecification $trackingDocumentSpecification + * @return $this + */ + public function setTrackingDocumentSpecification(TrackingDocumentSpecification $trackingDocumentSpecification) + { + $this->values['TrackingDocumentSpecification'] = $trackingDocumentSpecification; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/LocalTimeRange.php b/src/FedEx/TrackService/ComplexType/LocalTimeRange.php new file mode 100644 index 00000000..90fc68cb --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/LocalTimeRange.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Begins + * @property string $Ends + + */ +class LocalTimeRange extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocalTimeRange'; + + /** + * Set Begins + * + * @param string $begins + * @return $this + */ + public function setBegins($begins) + { + $this->values['Begins'] = $begins; + return $this; + } + + /** + * Set Ends + * + * @param string $ends + * @return $this + */ + public function setEnds($ends) + { + $this->values['Ends'] = $ends; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/Measure.php b/src/FedEx/TrackService/ComplexType/Measure.php new file mode 100644 index 00000000..197ca9d0 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/Measure.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property float $Quantity + * @property string $Units + + */ +class Measure extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Measure'; + + /** + * Set Quantity + * + * @param float $quantity + * @return $this + */ + public function setQuantity($quantity) + { + $this->values['Quantity'] = $quantity; + return $this; + } + + /** + * Set Units + * + * @param string $units + * @return $this + */ + public function setUnits($units) + { + $this->values['Units'] = $units; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/Money.php b/src/FedEx/TrackService/ComplexType/Money.php new file mode 100644 index 00000000..30f8324b --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/Money.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Currency + * @property float $Amount + + */ +class Money extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Money'; + + /** + * Set Currency + * + * @param string $currency + * @return $this + */ + public function setCurrency($currency) + { + $this->values['Currency'] = $currency; + return $this; + } + + /** + * Set Amount + * + * @param float $amount + * @return $this + */ + public function setAmount($amount) + { + $this->values['Amount'] = $amount; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/NaftaCommodityDetail.php b/src/FedEx/TrackService/ComplexType/NaftaCommodityDetail.php new file mode 100644 index 00000000..83a704a9 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/NaftaCommodityDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\NaftaPreferenceCriterionCode|string $PreferenceCriterion + * @property \FedEx\TrackService\SimpleType\NaftaProducerDeterminationCode|string $ProducerDetermination + * @property string $ProducerId + * @property \FedEx\TrackService\SimpleType\NaftaNetCostMethodCode|string $NetCostMethod + * @property DateRange $NetCostDateRange + + */ +class NaftaCommodityDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NaftaCommodityDetail'; + + /** + * Defined by NAFTA regulations. + * + * @param \FedEx\TrackService\SimpleType\NaftaPreferenceCriterionCode|string $preferenceCriterion + * @return $this + */ + public function setPreferenceCriterion($preferenceCriterion) + { + $this->values['PreferenceCriterion'] = $preferenceCriterion; + return $this; + } + + /** + * Defined by NAFTA regulations. + * + * @param \FedEx\TrackService\SimpleType\NaftaProducerDeterminationCode|string $producerDetermination + * @return $this + */ + public function setProducerDetermination($producerDetermination) + { + $this->values['ProducerDetermination'] = $producerDetermination; + return $this; + } + + /** + * Identification of which producer is associated with this commodity (if multiple producers are used in a single shipment). + * + * @param string $producerId + * @return $this + */ + public function setProducerId($producerId) + { + $this->values['ProducerId'] = $producerId; + return $this; + } + + /** + * Set NetCostMethod + * + * @param \FedEx\TrackService\SimpleType\NaftaNetCostMethodCode|string $netCostMethod + * @return $this + */ + public function setNetCostMethod($netCostMethod) + { + $this->values['NetCostMethod'] = $netCostMethod; + return $this; + } + + /** + * Date range over which RVC net cost was calculated. + * + * @param DateRange $netCostDateRange + * @return $this + */ + public function setNetCostDateRange(DateRange $netCostDateRange) + { + $this->values['NetCostDateRange'] = $netCostDateRange; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/Notification.php b/src/FedEx/TrackService/ComplexType/Notification.php index bf62a905..b72e91f9 100644 --- a/src/FedEx/TrackService/ComplexType/Notification.php +++ b/src/FedEx/TrackService/ComplexType/Notification.php @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/TrackService/ComplexType/NotificationDetail.php b/src/FedEx/TrackService/ComplexType/NotificationDetail.php new file mode 100644 index 00000000..3507792f --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/NotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\NotificationType|string $NotificationType + * @property EMailDetail $EmailDetail + * @property Localization $Localization + + */ +class NotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NotificationDetail'; + + /** + * Indicates the type of notification that will be sent. + * + * @param \FedEx\TrackService\SimpleType\NotificationType|string $notificationType + * @return $this + */ + public function setNotificationType($notificationType) + { + $this->values['NotificationType'] = $notificationType; + return $this; + } + + /** + * Specifies the email notification details. + * + * @param EMailDetail $emailDetail + * @return $this + */ + public function setEmailDetail(EMailDetail $emailDetail) + { + $this->values['EmailDetail'] = $emailDetail; + return $this; + } + + /** + * Specifies the localization for this notification. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/PagingDetail.php b/src/FedEx/TrackService/ComplexType/PagingDetail.php new file mode 100644 index 00000000..11fc0e0c --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/PagingDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $PagingToken + * @property int $NumberOfResultsPerPage + + */ +class PagingDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PagingDetail'; + + /** + * When the MoreData field = true in a TrackReply the PagingToken must be sent in the subsequent TrackRequest to retrieve the next page of data. + * + * @param string $pagingToken + * @return $this + */ + public function setPagingToken($pagingToken) + { + $this->values['PagingToken'] = $pagingToken; + return $this; + } + + /** + * Specifies the number of results to display per page when the there is more than one page in the subsequent TrackReply. + * + * @param int $numberOfResultsPerPage + * @return $this + */ + public function setNumberOfResultsPerPage($numberOfResultsPerPage) + { + $this->values['NumberOfResultsPerPage'] = $numberOfResultsPerPage; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/PieceCountVerificationDetail.php b/src/FedEx/TrackService/ComplexType/PieceCountVerificationDetail.php new file mode 100644 index 00000000..929c1cb3 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/PieceCountVerificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\PieceCountLocationType|string $CountLocationType + * @property int $Count + * @property string $Description + + */ +class PieceCountVerificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PieceCountVerificationDetail'; + + /** + * Set CountLocationType + * + * @param \FedEx\TrackService\SimpleType\PieceCountLocationType|string $countLocationType + * @return $this + */ + public function setCountLocationType($countLocationType) + { + $this->values['CountLocationType'] = $countLocationType; + return $this; + } + + /** + * Set Count + * + * @param int $count + * @return $this + */ + public function setCount($count) + { + $this->values['Count'] = $count; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/QualifiedTrackingNumber.php b/src/FedEx/TrackService/ComplexType/QualifiedTrackingNumber.php deleted file mode 100644 index b9b3ef2a..00000000 --- a/src/FedEx/TrackService/ComplexType/QualifiedTrackingNumber.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Package Movement Information Service - * - * @property string $TrackingNumber - * @property string $ShipDate - * @property string $AccountNumber - * @property \FedEx\TrackService\SimpleType\CarrierCodeType|string $Carrier - * @property Address $Destination - - */ -class QualifiedTrackingNumber extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'QualifiedTrackingNumber'; - - /** - * FedEx assigned identifier for a package/shipment. - * - * @param string $trackingNumber - * @return $this - */ - public function setTrackingNumber($trackingNumber) - { - $this->values['TrackingNumber'] = $trackingNumber; - return $this; - } - - /** - * The date the package was shipped. - * - * @param string $shipDate - * @return $this - */ - public function setShipDate($shipDate) - { - $this->values['ShipDate'] = $shipDate; - return $this; - } - - /** - * If the account number used to ship the package is provided in the request the shipper and recipient information is included on the letter or fax. - * - * @param string $accountNumber - * @return $this - */ - public function setAccountNumber($accountNumber) - { - $this->values['AccountNumber'] = $accountNumber; - return $this; - } - - /** - * FedEx operating company that delivered the package. - * - * @param \FedEx\TrackService\SimpleType\CarrierCodeType|string $carrier - * @return $this - */ - public function setCarrier($carrier) - { - $this->values['Carrier'] = $carrier; - return $this; - } - - /** - * Only country is used for elimination of duplicate tracking numbers. - * - * @param Address $destination - * @return $this - */ - public function setDestination(Address $destination) - { - $this->values['Destination'] = $destination; - return $this; - } -} diff --git a/src/FedEx/TrackService/ComplexType/TrackNotificationReply.php b/src/FedEx/TrackService/ComplexType/SendNotificationsReply.php similarity index 96% rename from src/FedEx/TrackService/ComplexType/TrackNotificationReply.php rename to src/FedEx/TrackService/ComplexType/SendNotificationsReply.php index 475b5454..975c258e 100644 --- a/src/FedEx/TrackService/ComplexType/TrackNotificationReply.php +++ b/src/FedEx/TrackService/ComplexType/SendNotificationsReply.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * FedEx Track Notification reply. + * SendNotificationsReply * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -20,14 +20,14 @@ * @property TrackNotificationPackage[] $Packages */ -class TrackNotificationReply extends AbstractComplexType +class SendNotificationsReply extends AbstractComplexType { /** * Name of this complex type * * @var string */ - protected $name = 'TrackNotificationReply'; + protected $name = 'SendNotificationsReply'; /** * This contains the severity type of the most severe Notification in the Notifications array. diff --git a/src/FedEx/TrackService/ComplexType/TrackNotificationRequest.php b/src/FedEx/TrackService/ComplexType/SendNotificationsRequest.php similarity index 88% rename from src/FedEx/TrackService/ComplexType/TrackNotificationRequest.php rename to src/FedEx/TrackService/ComplexType/SendNotificationsRequest.php index e4fc6b69..98a57228 100644 --- a/src/FedEx/TrackService/ComplexType/TrackNotificationRequest.php +++ b/src/FedEx/TrackService/ComplexType/SendNotificationsRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * FedEx Track Notification request. + * SendNotificationsRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -22,17 +22,17 @@ * @property string $ShipDateRangeEnd * @property string $SenderEMailAddress * @property string $SenderContactName - * @property EMailNotificationDetail $NotificationDetail + * @property ShipmentEventNotificationDetail $EventNotificationDetail */ -class TrackNotificationRequest extends AbstractComplexType +class SendNotificationsRequest extends AbstractComplexType { /** * Name of this complex type * * @var string */ - protected $name = 'TrackNotificationRequest'; + protected $name = 'SendNotificationsRequest'; /** * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). @@ -71,7 +71,7 @@ public function setTransactionDetail(TransactionDetail $transactionDetail) } /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + * Set Version * * @param VersionId $version * @return $this @@ -179,14 +179,14 @@ public function setSenderContactName($senderContactName) } /** - * Who to send the email notifications to and for which events. The notificationRecipientType and NotifyOnShipment fields are not used in this request. + * This replaces eMailNotificationDetail * - * @param EMailNotificationDetail $notificationDetail + * @param ShipmentEventNotificationDetail $eventNotificationDetail * @return $this */ - public function setNotificationDetail(EMailNotificationDetail $notificationDetail) + public function setEventNotificationDetail(ShipmentEventNotificationDetail $eventNotificationDetail) { - $this->values['NotificationDetail'] = $notificationDetail; + $this->values['EventNotificationDetail'] = $eventNotificationDetail; return $this; } } diff --git a/src/FedEx/TrackService/ComplexType/ShipmentEventNotificationDetail.php b/src/FedEx/TrackService/ComplexType/ShipmentEventNotificationDetail.php new file mode 100644 index 00000000..8fe94632 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/ShipmentEventNotificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\ShipmentNotificationAggregationType|string $AggregationType + * @property string $PersonalMessage + * @property ShipmentEventNotificationSpecification[] $EventNotifications + + */ +class ShipmentEventNotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationDetail'; + + /** + * Set AggregationType + * + * @param \FedEx\TrackService\SimpleType\ShipmentNotificationAggregationType|string $aggregationType + * @return $this + */ + public function setAggregationType($aggregationType) + { + $this->values['AggregationType'] = $aggregationType; + return $this; + } + + /** + * Set PersonalMessage + * + * @param string $personalMessage + * @return $this + */ + public function setPersonalMessage($personalMessage) + { + $this->values['PersonalMessage'] = $personalMessage; + return $this; + } + + /** + * Set EventNotifications + * + * @param ShipmentEventNotificationSpecification[] $eventNotifications + * @return $this + */ + public function setEventNotifications(array $eventNotifications) + { + $this->values['EventNotifications'] = $eventNotifications; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/ShipmentEventNotificationSpecification.php b/src/FedEx/TrackService/ComplexType/ShipmentEventNotificationSpecification.php new file mode 100644 index 00000000..7e8148aa --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/ShipmentEventNotificationSpecification.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\ShipmentNotificationRoleType|string $Role + * @property \FedEx\TrackService\SimpleType\NotificationEventType|string[] $Events + * @property NotificationDetail $NotificationDetail + * @property ShipmentNotificationFormatSpecification $FormatSpecification + + */ +class ShipmentEventNotificationSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentEventNotificationSpecification'; + + /** + * Set Role + * + * @param \FedEx\TrackService\SimpleType\ShipmentNotificationRoleType|string $role + * @return $this + */ + public function setRole($role) + { + $this->values['Role'] = $role; + return $this; + } + + /** + * Set Events + * + * @param \FedEx\TrackService\SimpleType\NotificationEventType[]|string[] $events + * @return $this + */ + public function setEvents(array $events) + { + $this->values['Events'] = $events; + return $this; + } + + /** + * Set NotificationDetail + * + * @param NotificationDetail $notificationDetail + * @return $this + */ + public function setNotificationDetail(NotificationDetail $notificationDetail) + { + $this->values['NotificationDetail'] = $notificationDetail; + return $this; + } + + /** + * Set FormatSpecification + * + * @param ShipmentNotificationFormatSpecification $formatSpecification + * @return $this + */ + public function setFormatSpecification(ShipmentNotificationFormatSpecification $formatSpecification) + { + $this->values['FormatSpecification'] = $formatSpecification; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/ShipmentNotificationFormatSpecification.php b/src/FedEx/TrackService/ComplexType/ShipmentNotificationFormatSpecification.php new file mode 100644 index 00000000..e75be23b --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/ShipmentNotificationFormatSpecification.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\NotificationFormatType|string $Type + + */ +class ShipmentNotificationFormatSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShipmentNotificationFormatSpecification'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\NotificationFormatType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/SignatureImageDetail.php b/src/FedEx/TrackService/ComplexType/SignatureImageDetail.php new file mode 100644 index 00000000..2d522e1b --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/SignatureImageDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Image + * @property Notification[] $Notifications + + */ +class SignatureImageDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SignatureImageDetail'; + + /** + * Set Image + * + * @param string $image + * @return $this + */ + public function setImage($image) + { + $this->values['Image'] = $image; + return $this; + } + + /** + * Set Notifications + * + * @param Notification[] $notifications + * @return $this + */ + public function setNotifications(array $notifications) + { + $this->values['Notifications'] = $notifications; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxReply.php b/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxReply.php deleted file mode 100644 index 269e8a99..00000000 --- a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxReply.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Package Movement Information Service - * - * @property \FedEx\TrackService\SimpleType\NotificationSeverityType|string $HighestSeverity - * @property Notification[] $Notifications - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property string $FaxConfirmationNumber - - */ -class SignatureProofOfDeliveryFaxReply extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'SignatureProofOfDeliveryFaxReply'; - - /** - * This contains the severity type of the most severe Notification in the Notifications array. - * - * @param \FedEx\TrackService\SimpleType\NotificationSeverityType|string $highestSeverity - * @return $this - */ - public function setHighestSeverity($highestSeverity) - { - $this->values['HighestSeverity'] = $highestSeverity; - return $this; - } - - /** - * Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. - * - * @param Notification[] $notifications - * @return $this - */ - public function setNotifications(array $notifications) - { - $this->values['Notifications'] = $notifications; - return $this; - } - - /** - * Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Contains the version of the reply being used. - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * Confirmation of fax transmission. - * - * @param string $faxConfirmationNumber - * @return $this - */ - public function setFaxConfirmationNumber($faxConfirmationNumber) - { - $this->values['FaxConfirmationNumber'] = $faxConfirmationNumber; - return $this; - } -} diff --git a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxRequest.php b/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxRequest.php deleted file mode 100644 index 40fc28c8..00000000 --- a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryFaxRequest.php +++ /dev/null @@ -1,127 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Package Movement Information Service - * - * @property WebAuthenticationDetail $WebAuthenticationDetail - * @property ClientDetail $ClientDetail - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property QualifiedTrackingNumber $QualifiedTrackingNumber - * @property string $AdditionalComments - * @property ContactAndAddress $FaxSender - * @property ContactAndAddress $FaxRecipient - - */ -class SignatureProofOfDeliveryFaxRequest extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'SignatureProofOfDeliveryFaxRequest'; - - /** - * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - * - * @param WebAuthenticationDetail $webAuthenticationDetail - * @return $this - */ - public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) - { - $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; - return $this; - } - - /** - * Descriptive data identifying the client submitting the transaction. - * - * @param ClientDetail $clientDetail - * @return $this - */ - public function setClientDetail(ClientDetail $clientDetail) - { - $this->values['ClientDetail'] = $clientDetail; - return $this; - } - - /** - * Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * The version of the request being used. - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * Tracking number and additional shipment data used to identify a unique shipment for proof of delivery. - * - * @param QualifiedTrackingNumber $qualifiedTrackingNumber - * @return $this - */ - public function setQualifiedTrackingNumber(QualifiedTrackingNumber $qualifiedTrackingNumber) - { - $this->values['QualifiedTrackingNumber'] = $qualifiedTrackingNumber; - return $this; - } - - /** - * Additional customer-supplied text to be added to the body of the letter. - * - * @param string $additionalComments - * @return $this - */ - public function setAdditionalComments($additionalComments) - { - $this->values['AdditionalComments'] = $additionalComments; - return $this; - } - - /** - * Contact and address information about the person requesting the fax to be sent. - * - * @param ContactAndAddress $faxSender - * @return $this - */ - public function setFaxSender(ContactAndAddress $faxSender) - { - $this->values['FaxSender'] = $faxSender; - return $this; - } - - /** - * Contact and address information, including the fax number, about the person to receive the fax. - * - * @param ContactAndAddress $faxRecipient - * @return $this - */ - public function setFaxRecipient(ContactAndAddress $faxRecipient) - { - $this->values['FaxRecipient'] = $faxRecipient; - return $this; - } -} diff --git a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterRequest.php b/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterRequest.php deleted file mode 100644 index cfe1293d..00000000 --- a/src/FedEx/TrackService/ComplexType/SignatureProofOfDeliveryLetterRequest.php +++ /dev/null @@ -1,127 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Package Movement Information Service - * - * @property WebAuthenticationDetail $WebAuthenticationDetail - * @property ClientDetail $ClientDetail - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property QualifiedTrackingNumber $QualifiedTrackingNumber - * @property string $AdditionalComments - * @property \FedEx\TrackService\SimpleType\SignatureProofOfDeliveryImageType|string $LetterFormat - * @property ContactAndAddress $Consignee - - */ -class SignatureProofOfDeliveryLetterRequest extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'SignatureProofOfDeliveryLetterRequest'; - - /** - * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - * - * @param WebAuthenticationDetail $webAuthenticationDetail - * @return $this - */ - public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) - { - $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; - return $this; - } - - /** - * Descriptive data identifying the client submitting the transaction. - * - * @param ClientDetail $clientDetail - * @return $this - */ - public function setClientDetail(ClientDetail $clientDetail) - { - $this->values['ClientDetail'] = $clientDetail; - return $this; - } - - /** - * Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * The version of the request being used. - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * Tracking number and additional shipment data used to identify a unique shipment for proof of delivery. - * - * @param QualifiedTrackingNumber $qualifiedTrackingNumber - * @return $this - */ - public function setQualifiedTrackingNumber(QualifiedTrackingNumber $qualifiedTrackingNumber) - { - $this->values['QualifiedTrackingNumber'] = $qualifiedTrackingNumber; - return $this; - } - - /** - * Additional customer-supplied text to be added to the body of the letter. - * - * @param string $additionalComments - * @return $this - */ - public function setAdditionalComments($additionalComments) - { - $this->values['AdditionalComments'] = $additionalComments; - return $this; - } - - /** - * Identifies the set of SPOD image types. - * - * @param \FedEx\TrackService\SimpleType\SignatureProofOfDeliveryImageType|string $letterFormat - * @return $this - */ - public function setLetterFormat($letterFormat) - { - $this->values['LetterFormat'] = $letterFormat; - return $this; - } - - /** - * If provided this information will be print on the letter. - * - * @param ContactAndAddress $consignee - * @return $this - */ - public function setConsignee(ContactAndAddress $consignee) - { - $this->values['Consignee'] = $consignee; - return $this; - } -} diff --git a/src/FedEx/TrackService/ComplexType/SpecialInstructionStatusDetail.php b/src/FedEx/TrackService/ComplexType/SpecialInstructionStatusDetail.php new file mode 100644 index 00000000..622aac5a --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/SpecialInstructionStatusDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\SpecialInstructionsStatusCode|string $Status + * @property string $StatusCreateTime + + */ +class SpecialInstructionStatusDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SpecialInstructionStatusDetail'; + + /** + * Specifies the status of the track special instructions requested. + * + * @param \FedEx\TrackService\SimpleType\SpecialInstructionsStatusCode|string $status + * @return $this + */ + public function setStatus($status) + { + $this->values['Status'] = $status; + return $this; + } + + /** + * Time when the status was changed. + * + * @param string $statusCreateTime + * @return $this + */ + public function setStatusCreateTime($statusCreateTime) + { + $this->values['StatusCreateTime'] = $statusCreateTime; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackAdvanceNotificationDetail.php b/src/FedEx/TrackService/ComplexType/TrackAdvanceNotificationDetail.php new file mode 100644 index 00000000..328a94b1 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackAdvanceNotificationDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $EstimatedTimeOfArrival + * @property string $Reason + * @property \FedEx\TrackService\SimpleType\TrackAdvanceNotificationStatusType|string $Status + * @property string $StatusDescription + * @property string $StatusTime + + */ +class TrackAdvanceNotificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackAdvanceNotificationDetail'; + + /** + * Set EstimatedTimeOfArrival + * + * @param string $estimatedTimeOfArrival + * @return $this + */ + public function setEstimatedTimeOfArrival($estimatedTimeOfArrival) + { + $this->values['EstimatedTimeOfArrival'] = $estimatedTimeOfArrival; + return $this; + } + + /** + * Set Reason + * + * @param string $reason + * @return $this + */ + public function setReason($reason) + { + $this->values['Reason'] = $reason; + return $this; + } + + /** + * Set Status + * + * @param \FedEx\TrackService\SimpleType\TrackAdvanceNotificationStatusType|string $status + * @return $this + */ + public function setStatus($status) + { + $this->values['Status'] = $status; + return $this; + } + + /** + * Set StatusDescription + * + * @param string $statusDescription + * @return $this + */ + public function setStatusDescription($statusDescription) + { + $this->values['StatusDescription'] = $statusDescription; + return $this; + } + + /** + * Set StatusTime + * + * @param string $statusTime + * @return $this + */ + public function setStatusTime($statusTime) + { + $this->values['StatusTime'] = $statusTime; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackChargeDetail.php b/src/FedEx/TrackService/ComplexType/TrackChargeDetail.php new file mode 100644 index 00000000..5ade8a39 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackChargeDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackChargeDetailType|string $Type + * @property Money $ChargeAmount + + */ +class TrackChargeDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackChargeDetail'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\TrackChargeDetailType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set ChargeAmount + * + * @param Money $chargeAmount + * @return $this + */ + public function setChargeAmount(Money $chargeAmount) + { + $this->values['ChargeAmount'] = $chargeAmount; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackDetail.php b/src/FedEx/TrackService/ComplexType/TrackDetail.php index f173b7d9..87fec26a 100644 --- a/src/FedEx/TrackService/ComplexType/TrackDetail.php +++ b/src/FedEx/TrackService/ComplexType/TrackDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Detailed tracking information about a particular package. + * TrackDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,45 +14,75 @@ * @property string $TrackingNumber * @property StringBarcode $Barcode * @property string $TrackingNumberUniqueIdentifier - * @property string $StatusCode - * @property string $StatusDescription + * @property TrackStatusDetail $StatusDetail + * @property TrackInformationNoteDetail[] $InformationNotes + * @property CustomerExceptionRequestDetail[] $CustomerExceptionRequests * @property TrackReconciliation $Reconciliation * @property string $ServiceCommitMessage + * @property string $DestinationServiceArea + * @property string $DestinationServiceAreaDescription * @property \FedEx\TrackService\SimpleType\CarrierCodeType|string $CarrierCode * @property \FedEx\TrackService\SimpleType\OperatingCompanyType|string $OperatingCompany + * @property string $OperatingCompanyOrCarrierDescription + * @property string $CartageAgentCompanyName * @property ContactAndAddress $ProductionLocationContactAndAddress - * @property TrackPackageIdentifier[] $OtherIdentifiers - * @property string $ServiceInfo - * @property \FedEx\TrackService\SimpleType\ServiceType|string $ServiceType + * @property TrackOtherIdentifierDetail[] $OtherIdentifiers + * @property string $FormId + * @property TrackServiceDescriptionDetail $Service * @property Weight $PackageWeight * @property Dimensions $PackageDimensions * @property Weight $PackageDimensionalWeight * @property Weight $ShipmentWeight * @property string $Packaging * @property \FedEx\TrackService\SimpleType\PackagingType|string $PackagingType + * @property \FedEx\TrackService\SimpleType\PhysicalPackagingType|string $PhysicalPackagingType * @property int $PackageSequenceNumber * @property int $PackageCount - * @property \FedEx\TrackService\SimpleType\TrackReturnLabelType|string $TrackReturnLabelType - * @property string $TrackReturnDescription + * @property string $CreatorSoftwareId + * @property TrackChargeDetail[] $Charges + * @property string $NickName + * @property string $Notes + * @property \FedEx\TrackService\SimpleType\TrackDetailAttributeType|string[] $Attributes + * @property ContentRecord[] $ShipmentContents + * @property string[] $PackageContents + * @property string $ClearanceLocationCode + * @property Commodity[] $Commodities + * @property TrackReturnDetail $ReturnDetail + * @property CustomsOptionDetail[] $CustomsOptionDetails + * @property TrackAdvanceNotificationDetail $AdvanceNotificationDetail + * @property TrackSpecialHandling[] $SpecialHandlings + * @property TrackPayment[] $Payments + * @property Contact $Shipper + * @property \FedEx\TrackService\SimpleType\TrackPossessionStatusType|string $PossessionStatus * @property Address $ShipperAddress * @property Address $OriginLocationAddress - * @property string $EstimatedPickupTimestamp - * @property string $ShipTimestamp + * @property string $OriginStationId + * @property TrackingDateOrTimestamp[] $DatesOrTimes * @property Distance $TotalTransitDistance * @property Distance $DistanceToDestination + * @property TrackSpecialInstruction[] $SpecialInstructions + * @property Contact $Recipient + * @property Address $LastUpdatedDestinationAddress * @property Address $DestinationAddress + * @property Contact $HoldAtLocationContact + * @property Address $HoldAtLocationAddress + * @property string $DestinationStationId * @property Address $DestinationLocationAddress - * @property string $EstimatedDeliveryTimestamp - * @property string $ActualDeliveryTimestamp + * @property \FedEx\TrackService\SimpleType\FedExLocationType|string $DestinationLocationType + * @property string $DestinationLocationTimeZoneOffset * @property Address $ActualDeliveryAddress * @property \FedEx\TrackService\SimpleType\OfficeOrderDeliveryMethodType|string $OfficeOrderDeliveryMethod * @property \FedEx\TrackService\SimpleType\TrackDeliveryLocationType|string $DeliveryLocationType * @property string $DeliveryLocationDescription + * @property int $DeliveryAttempts * @property string $DeliverySignatureName - * @property boolean $SignatureProofOfDeliveryAvailable - * @property \FedEx\TrackService\SimpleType\EMailNotificationEventType|string[] $NotificationEventsAvailable + * @property PieceCountVerificationDetail[] $PieceCountVerificationDetails + * @property int $TotalUniqueAddressCountInConsolidation + * @property AvailableImagesDetail[] $AvailableImages + * @property SignatureImageDetail $Signature + * @property \FedEx\TrackService\SimpleType\NotificationEventType|string[] $NotificationEventsAvailable * @property TrackSplitShipmentPart[] $SplitShipmentParts - * @property \FedEx\TrackService\SimpleType\RedirectToHoldEligibilityType|string $RedirectToHoldEligibility + * @property DeliveryOptionEligibilityDetail[] $DeliveryOptionEligibilityDetails * @property TrackEvent[] $Events */ @@ -114,26 +144,38 @@ public function setTrackingNumberUniqueIdentifier($trackingNumberUniqueIdentifie } /** - * A code that identifies this type of status. This is the most recent status. + * Specifies details about the status of the shipment being tracked. * - * @param string $statusCode + * @param TrackStatusDetail $statusDetail * @return $this */ - public function setStatusCode($statusCode) + public function setStatusDetail(TrackStatusDetail $statusDetail) { - $this->values['StatusCode'] = $statusCode; + $this->values['StatusDetail'] = $statusDetail; return $this; } /** - * A human-readable description of this status. + * Notifications to the end user that provide additional information relevant to the tracked shipment. For example, a notification may indicate that a change in behavior has occurred. * - * @param string $statusDescription + * @param TrackInformationNoteDetail[] $informationNotes * @return $this */ - public function setStatusDescription($statusDescription) + public function setInformationNotes(array $informationNotes) { - $this->values['StatusDescription'] = $statusDescription; + $this->values['InformationNotes'] = $informationNotes; + return $this; + } + + /** + * Set CustomerExceptionRequests + * + * @param CustomerExceptionRequestDetail[] $customerExceptionRequests + * @return $this + */ + public function setCustomerExceptionRequests(array $customerExceptionRequests) + { + $this->values['CustomerExceptionRequests'] = $customerExceptionRequests; return $this; } @@ -161,6 +203,30 @@ public function setServiceCommitMessage($serviceCommitMessage) return $this; } + /** + * Set DestinationServiceArea + * + * @param string $destinationServiceArea + * @return $this + */ + public function setDestinationServiceArea($destinationServiceArea) + { + $this->values['DestinationServiceArea'] = $destinationServiceArea; + return $this; + } + + /** + * Set DestinationServiceAreaDescription + * + * @param string $destinationServiceAreaDescription + * @return $this + */ + public function setDestinationServiceAreaDescription($destinationServiceAreaDescription) + { + $this->values['DestinationServiceAreaDescription'] = $destinationServiceAreaDescription; + return $this; + } + /** * Identifies a FedEx operating company (transportation). * @@ -185,6 +251,30 @@ public function setOperatingCompany($operatingCompany) return $this; } + /** + * Specifies a detailed description about the carrier or the operating company. + * + * @param string $operatingCompanyOrCarrierDescription + * @return $this + */ + public function setOperatingCompanyOrCarrierDescription($operatingCompanyOrCarrierDescription) + { + $this->values['OperatingCompanyOrCarrierDescription'] = $operatingCompanyOrCarrierDescription; + return $this; + } + + /** + * If the package was interlined to a cartage agent, this is the name of the cartage agent. (Returned for CSR SL only.) + * + * @param string $cartageAgentCompanyName + * @return $this + */ + public function setCartageAgentCompanyName($cartageAgentCompanyName) + { + $this->values['CartageAgentCompanyName'] = $cartageAgentCompanyName; + return $this; + } + /** * Specifies the FXO production centre contact and address. * @@ -198,9 +288,9 @@ public function setProductionLocationContactAndAddress(ContactAndAddress $produc } /** - * Other related identifiers for this package such as reference numbers. + * Set OtherIdentifiers * - * @param TrackPackageIdentifier[] $otherIdentifiers + * @param TrackOtherIdentifierDetail[] $otherIdentifiers * @return $this */ public function setOtherIdentifiers(array $otherIdentifiers) @@ -210,26 +300,26 @@ public function setOtherIdentifiers(array $otherIdentifiers) } /** - * Retained for legacy compatibility only. User/screen friendly description of the Service type (e.g. Priority Overnight). + * (Returned for CSR SL only.) * - * @param string $serviceInfo + * @param string $formId * @return $this */ - public function setServiceInfo($serviceInfo) + public function setFormId($formId) { - $this->values['ServiceInfo'] = $serviceInfo; + $this->values['FormId'] = $formId; return $this; } /** - * Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT). + * Specifies details about service such as service description and type. * - * @param \FedEx\TrackService\SimpleType\ServiceType|string $serviceType + * @param TrackServiceDescriptionDetail $service * @return $this */ - public function setServiceType($serviceType) + public function setService(TrackServiceDescriptionDetail $service) { - $this->values['ServiceType'] = $serviceType; + $this->values['Service'] = $service; return $this; } @@ -305,6 +395,18 @@ public function setPackagingType($packagingType) return $this; } + /** + * Set PhysicalPackagingType + * + * @param \FedEx\TrackService\SimpleType\PhysicalPackagingType|string $physicalPackagingType + * @return $this + */ + public function setPhysicalPackagingType($physicalPackagingType) + { + $this->values['PhysicalPackagingType'] = $physicalPackagingType; + return $this; + } + /** * The sequence number of this package in a shipment. This would be 2 if it was package number 2 of 4. * @@ -330,31 +432,199 @@ public function setPackageCount($packageCount) } /** - * Set TrackReturnLabelType + * FOR FEDEX INTERNAL USE ONLY: Specifies the software id of the device that was used to create this tracked shipment. + * + * @param string $creatorSoftwareId + * @return $this + */ + public function setCreatorSoftwareId($creatorSoftwareId) + { + $this->values['CreatorSoftwareId'] = $creatorSoftwareId; + return $this; + } + + /** + * Specifies the details about the SPOC details. + * + * @param TrackChargeDetail[] $charges + * @return $this + */ + public function setCharges(array $charges) + { + $this->values['Charges'] = $charges; + return $this; + } + + /** + * Set NickName + * + * @param string $nickName + * @return $this + */ + public function setNickName($nickName) + { + $this->values['NickName'] = $nickName; + return $this; + } + + /** + * Set Notes + * + * @param string $notes + * @return $this + */ + public function setNotes($notes) + { + $this->values['Notes'] = $notes; + return $this; + } + + /** + * Set Attributes + * + * @param \FedEx\TrackService\SimpleType\TrackDetailAttributeType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } + + /** + * Set ShipmentContents + * + * @param ContentRecord[] $shipmentContents + * @return $this + */ + public function setShipmentContents(array $shipmentContents) + { + $this->values['ShipmentContents'] = $shipmentContents; + return $this; + } + + /** + * Set PackageContents + * + * @param string $packageContents + * @return $this + */ + public function setPackageContents($packageContents) + { + $this->values['PackageContents'] = $packageContents; + return $this; + } + + /** + * Set ClearanceLocationCode + * + * @param string $clearanceLocationCode + * @return $this + */ + public function setClearanceLocationCode($clearanceLocationCode) + { + $this->values['ClearanceLocationCode'] = $clearanceLocationCode; + return $this; + } + + /** + * Set Commodities + * + * @param Commodity[] $commodities + * @return $this + */ + public function setCommodities(array $commodities) + { + $this->values['Commodities'] = $commodities; + return $this; + } + + /** + * Set ReturnDetail * - * @param \FedEx\TrackService\SimpleType\TrackReturnLabelType|string $trackReturnLabelType + * @param TrackReturnDetail $returnDetail * @return $this */ - public function setTrackReturnLabelType($trackReturnLabelType) + public function setReturnDetail(TrackReturnDetail $returnDetail) { - $this->values['TrackReturnLabelType'] = $trackReturnLabelType; + $this->values['ReturnDetail'] = $returnDetail; return $this; } /** - * Set TrackReturnDescription + * Specifies the reason for return. * - * @param string $trackReturnDescription + * @param CustomsOptionDetail[] $customsOptionDetails * @return $this */ - public function setTrackReturnDescription($trackReturnDescription) + public function setCustomsOptionDetails(array $customsOptionDetails) { - $this->values['TrackReturnDescription'] = $trackReturnDescription; + $this->values['CustomsOptionDetails'] = $customsOptionDetails; return $this; } /** - * The address information for the shipper. + * Set AdvanceNotificationDetail + * + * @param TrackAdvanceNotificationDetail $advanceNotificationDetail + * @return $this + */ + public function setAdvanceNotificationDetail(TrackAdvanceNotificationDetail $advanceNotificationDetail) + { + $this->values['AdvanceNotificationDetail'] = $advanceNotificationDetail; + return $this; + } + + /** + * List of special handlings that applied to this package. + * + * @param TrackSpecialHandling[] $specialHandlings + * @return $this + */ + public function setSpecialHandlings(array $specialHandlings) + { + $this->values['SpecialHandlings'] = $specialHandlings; + return $this; + } + + /** + * Specifies the details about the payments for the shipment being tracked. + * + * @param TrackPayment[] $payments + * @return $this + */ + public function setPayments(array $payments) + { + $this->values['Payments'] = $payments; + return $this; + } + + /** + * (Returned for CSR SL only.) + * + * @param Contact $shipper + * @return $this + */ + public function setShipper(Contact $shipper) + { + $this->values['Shipper'] = $shipper; + return $this; + } + + /** + * Indicates last-known possession of package (Returned for CSR SL only.) + * + * @param \FedEx\TrackService\SimpleType\TrackPossessionStatusType|string $possessionStatus + * @return $this + */ + public function setPossessionStatus($possessionStatus) + { + $this->values['PossessionStatus'] = $possessionStatus; + return $this; + } + + /** + * Set ShipperAddress * * @param Address $shipperAddress * @return $this @@ -378,26 +648,26 @@ public function setOriginLocationAddress(Address $originLocationAddress) } /** - * Estimated package pickup time for shipments that haven't been picked up. + * (Returned for CSR SL only.) * - * @param string $estimatedPickupTimestamp + * @param string $originStationId * @return $this */ - public function setEstimatedPickupTimestamp($estimatedPickupTimestamp) + public function setOriginStationId($originStationId) { - $this->values['EstimatedPickupTimestamp'] = $estimatedPickupTimestamp; + $this->values['OriginStationId'] = $originStationId; return $this; } /** - * Time package was shipped/tendered over to FedEx. Time portion will be populated if available, otherwise will be set to midnight. + * Set DatesOrTimes * - * @param string $shipTimestamp + * @param TrackingDateOrTimestamp[] $datesOrTimes * @return $this */ - public function setShipTimestamp($shipTimestamp) + public function setDatesOrTimes(array $datesOrTimes) { - $this->values['ShipTimestamp'] = $shipTimestamp; + $this->values['DatesOrTimes'] = $datesOrTimes; return $this; } @@ -425,6 +695,42 @@ public function setDistanceToDestination(Distance $distanceToDestination) return $this; } + /** + * Provides additional details about package delivery. + * + * @param TrackSpecialInstruction[] $specialInstructions + * @return $this + */ + public function setSpecialInstructions(array $specialInstructions) + { + $this->values['SpecialInstructions'] = $specialInstructions; + return $this; + } + + /** + * (Returned for CSR SL only.) + * + * @param Contact $recipient + * @return $this + */ + public function setRecipient(Contact $recipient) + { + $this->values['Recipient'] = $recipient; + return $this; + } + + /** + * This is the latest updated destination address. + * + * @param Address $lastUpdatedDestinationAddress + * @return $this + */ + public function setLastUpdatedDestinationAddress(Address $lastUpdatedDestinationAddress) + { + $this->values['LastUpdatedDestinationAddress'] = $lastUpdatedDestinationAddress; + return $this; + } + /** * The address this package is to be (or has been) delivered. * @@ -437,6 +743,42 @@ public function setDestinationAddress(Address $destinationAddress) return $this; } + /** + * Set HoldAtLocationContact + * + * @param Contact $holdAtLocationContact + * @return $this + */ + public function setHoldAtLocationContact(Contact $holdAtLocationContact) + { + $this->values['HoldAtLocationContact'] = $holdAtLocationContact; + return $this; + } + + /** + * The address this package is requested to placed on hold. + * + * @param Address $holdAtLocationAddress + * @return $this + */ + public function setHoldAtLocationAddress(Address $holdAtLocationAddress) + { + $this->values['HoldAtLocationAddress'] = $holdAtLocationAddress; + return $this; + } + + /** + * (Returned for CSR SL only.) + * + * @param string $destinationStationId + * @return $this + */ + public function setDestinationStationId($destinationStationId) + { + $this->values['DestinationStationId'] = $destinationStationId; + return $this; + } + /** * The address of the FedEx delivery location/facility. * @@ -450,26 +792,26 @@ public function setDestinationLocationAddress(Address $destinationLocationAddres } /** - * Projected package delivery time based on ship time stamp, service and destination. Not populated if delivery has already occurred. + * Set DestinationLocationType * - * @param string $estimatedDeliveryTimestamp + * @param \FedEx\TrackService\SimpleType\FedExLocationType|string $destinationLocationType * @return $this */ - public function setEstimatedDeliveryTimestamp($estimatedDeliveryTimestamp) + public function setDestinationLocationType($destinationLocationType) { - $this->values['EstimatedDeliveryTimestamp'] = $estimatedDeliveryTimestamp; + $this->values['DestinationLocationType'] = $destinationLocationType; return $this; } /** - * The time the package was actually delivered. + * Set DestinationLocationTimeZoneOffset * - * @param string $actualDeliveryTimestamp + * @param string $destinationLocationTimeZoneOffset * @return $this */ - public function setActualDeliveryTimestamp($actualDeliveryTimestamp) + public function setDestinationLocationTimeZoneOffset($destinationLocationTimeZoneOffset) { - $this->values['ActualDeliveryTimestamp'] = $actualDeliveryTimestamp; + $this->values['DestinationLocationTimeZoneOffset'] = $destinationLocationTimeZoneOffset; return $this; } @@ -521,6 +863,18 @@ public function setDeliveryLocationDescription($deliveryLocationDescription) return $this; } + /** + * Specifies the number of delivery attempts made to deliver the shipment. + * + * @param int $deliveryAttempts + * @return $this + */ + public function setDeliveryAttempts($deliveryAttempts) + { + $this->values['DeliveryAttempts'] = $deliveryAttempts; + return $this; + } + /** * This is either the name of the person that signed for the package or "Signature not requested" or "Signature on file". * @@ -534,21 +888,57 @@ public function setDeliverySignatureName($deliverySignatureName) } /** - * True if signed for by signature image is available. + * Specifies the details about the count of the packages delivered at the delivery location and the count of the packages at the origin. + * + * @param PieceCountVerificationDetail[] $pieceCountVerificationDetails + * @return $this + */ + public function setPieceCountVerificationDetails(array $pieceCountVerificationDetails) + { + $this->values['PieceCountVerificationDetails'] = $pieceCountVerificationDetails; + return $this; + } + + /** + * Specifies the total number of unique addresses on the CRNs in a consolidation. + * + * @param int $totalUniqueAddressCountInConsolidation + * @return $this + */ + public function setTotalUniqueAddressCountInConsolidation($totalUniqueAddressCountInConsolidation) + { + $this->values['TotalUniqueAddressCountInConsolidation'] = $totalUniqueAddressCountInConsolidation; + return $this; + } + + /** + * Set AvailableImages + * + * @param AvailableImagesDetail[] $availableImages + * @return $this + */ + public function setAvailableImages(array $availableImages) + { + $this->values['AvailableImages'] = $availableImages; + return $this; + } + + /** + * Set Signature * - * @param boolean $signatureProofOfDeliveryAvailable + * @param SignatureImageDetail $signature * @return $this */ - public function setSignatureProofOfDeliveryAvailable($signatureProofOfDeliveryAvailable) + public function setSignature(SignatureImageDetail $signature) { - $this->values['SignatureProofOfDeliveryAvailable'] = $signatureProofOfDeliveryAvailable; + $this->values['Signature'] = $signature; return $this; } /** - * The types of email notifications that are available for the package. + * Set NotificationEventsAvailable * - * @param \FedEx\TrackService\SimpleType\EMailNotificationEventType[]|string[] $notificationEventsAvailable + * @param \FedEx\TrackService\SimpleType\NotificationEventType[]|string[] $notificationEventsAvailable * @return $this */ public function setNotificationEventsAvailable(array $notificationEventsAvailable) @@ -570,14 +960,14 @@ public function setSplitShipmentParts(array $splitShipmentParts) } /** - * Indicates redirection eligibility as determined by tracking service, subject to refinement/override by redirect-to-hold service. + * Specifies the details about the eligibility for different delivery options. * - * @param \FedEx\TrackService\SimpleType\RedirectToHoldEligibilityType|string $redirectToHoldEligibility + * @param DeliveryOptionEligibilityDetail[] $deliveryOptionEligibilityDetails * @return $this */ - public function setRedirectToHoldEligibility($redirectToHoldEligibility) + public function setDeliveryOptionEligibilityDetails(array $deliveryOptionEligibilityDetails) { - $this->values['RedirectToHoldEligibility'] = $redirectToHoldEligibility; + $this->values['DeliveryOptionEligibilityDetails'] = $deliveryOptionEligibilityDetails; return $this; } diff --git a/src/FedEx/TrackService/ComplexType/TrackEvent.php b/src/FedEx/TrackService/ComplexType/TrackEvent.php index 5dfa6160..1564bd12 100644 --- a/src/FedEx/TrackService/ComplexType/TrackEvent.php +++ b/src/FedEx/TrackService/ComplexType/TrackEvent.php @@ -16,6 +16,7 @@ * @property string $StatusExceptionCode * @property string $StatusExceptionDescription * @property Address $Address + * @property string $StationId * @property \FedEx\TrackService\SimpleType\ArrivalLocationType|string $ArrivalLocation */ @@ -100,6 +101,18 @@ public function setAddress(Address $address) return $this; } + /** + * FedEx location ID where the scan took place. (Returned for CSR SL only.) + * + * @param string $stationId + * @return $this + */ + public function setStationId($stationId) + { + $this->values['StationId'] = $stationId; + return $this; + } + /** * Indicates where the arrival actually occurred. * diff --git a/src/FedEx/TrackService/ComplexType/TrackInformationNoteDetail.php b/src/FedEx/TrackService/ComplexType/TrackInformationNoteDetail.php new file mode 100644 index 00000000..7e9039a3 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackInformationNoteDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Code + * @property string $Description + + */ +class TrackInformationNoteDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackInformationNoteDetail'; + + /** + * A code that designates the type of informational message being returned. + * + * @param string $code + * @return $this + */ + public function setCode($code) + { + $this->values['Code'] = $code; + return $this; + } + + /** + * The informational message in human readable form. + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackNotificationRecipientDetail.php b/src/FedEx/TrackService/ComplexType/TrackNotificationRecipientDetail.php index 939a883a..118646fe 100644 --- a/src/FedEx/TrackService/ComplexType/TrackNotificationRecipientDetail.php +++ b/src/FedEx/TrackService/ComplexType/TrackNotificationRecipientDetail.php @@ -10,7 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service * - * @property \FedEx\TrackService\SimpleType\EMailNotificationEventType|string[] $NotificationEventsAvailable + * @property \FedEx\TrackService\SimpleType\NotificationEventType|string[] $NotificationEventsAvailable */ class TrackNotificationRecipientDetail extends AbstractComplexType @@ -23,9 +23,9 @@ class TrackNotificationRecipientDetail extends AbstractComplexType protected $name = 'TrackNotificationRecipientDetail'; /** - * The types of email notifications available for this recipient. + * Set NotificationEventsAvailable * - * @param \FedEx\TrackService\SimpleType\EMailNotificationEventType[]|string[] $notificationEventsAvailable + * @param \FedEx\TrackService\SimpleType\NotificationEventType[]|string[] $notificationEventsAvailable * @return $this */ public function setNotificationEventsAvailable(array $notificationEventsAvailable) diff --git a/src/FedEx/TrackService/ComplexType/TrackOtherIdentifierDetail.php b/src/FedEx/TrackService/ComplexType/TrackOtherIdentifierDetail.php new file mode 100644 index 00000000..1549e893 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackOtherIdentifierDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property TrackPackageIdentifier $PackageIdentifier + * @property string $TrackingNumberUniqueIdentifier + * @property \FedEx\TrackService\SimpleType\CarrierCodeType|string $CarrierCode + + */ +class TrackOtherIdentifierDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackOtherIdentifierDetail'; + + /** + * Set PackageIdentifier + * + * @param TrackPackageIdentifier $packageIdentifier + * @return $this + */ + public function setPackageIdentifier(TrackPackageIdentifier $packageIdentifier) + { + $this->values['PackageIdentifier'] = $packageIdentifier; + return $this; + } + + /** + * Set TrackingNumberUniqueIdentifier + * + * @param string $trackingNumberUniqueIdentifier + * @return $this + */ + public function setTrackingNumberUniqueIdentifier($trackingNumberUniqueIdentifier) + { + $this->values['TrackingNumberUniqueIdentifier'] = $trackingNumberUniqueIdentifier; + return $this; + } + + /** + * Set CarrierCode + * + * @param \FedEx\TrackService\SimpleType\CarrierCodeType|string $carrierCode + * @return $this + */ + public function setCarrierCode($carrierCode) + { + $this->values['CarrierCode'] = $carrierCode; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackPackageIdentifier.php b/src/FedEx/TrackService/ComplexType/TrackPackageIdentifier.php index fbeb4412..be42b932 100644 --- a/src/FedEx/TrackService/ComplexType/TrackPackageIdentifier.php +++ b/src/FedEx/TrackService/ComplexType/TrackPackageIdentifier.php @@ -10,8 +10,8 @@ * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service * - * @property string $Value * @property \FedEx\TrackService\SimpleType\TrackIdentifierType|string $Type + * @property string $Value */ class TrackPackageIdentifier extends AbstractComplexType @@ -24,26 +24,26 @@ class TrackPackageIdentifier extends AbstractComplexType protected $name = 'TrackPackageIdentifier'; /** - * The value to be used to retrieve tracking information for a package. + * The type of the Value to be used to retrieve tracking information for a package (e.g. SHIPPER_REFERENCE, PURCHASE_ORDER, TRACKING_NUMBER_OR_DOORTAG, etc..) . * - * @param string $value + * @param \FedEx\TrackService\SimpleType\TrackIdentifierType|string $type * @return $this */ - public function setValue($value) + public function setType($type) { - $this->values['Value'] = $value; + $this->values['Type'] = $type; return $this; } /** - * The type of the Value to be used to retrieve tracking information for a package (e.g. SHIPPER_REFERENCE, PURCHASE_ORDER, TRACKING_NUMBER_OR_DOORTAG, etc..) . + * The value to be used to retrieve tracking information for a package. * - * @param \FedEx\TrackService\SimpleType\TrackIdentifierType|string $type + * @param string $value * @return $this */ - public function setType($type) + public function setValue($value) { - $this->values['Type'] = $type; + $this->values['Value'] = $value; return $this; } } diff --git a/src/FedEx/TrackService/ComplexType/TrackPayment.php b/src/FedEx/TrackService/ComplexType/TrackPayment.php new file mode 100644 index 00000000..352b7bdc --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackPayment.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackChargesPaymentClassificationType|string $Classification + * @property \FedEx\TrackService\SimpleType\TrackPaymentType|string $Type + * @property string $Description + + */ +class TrackPayment extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackPayment'; + + /** + * Indicates the classification of the charges being paid. + * + * @param \FedEx\TrackService\SimpleType\TrackChargesPaymentClassificationType|string $classification + * @return $this + */ + public function setClassification($classification) + { + $this->values['Classification'] = $classification; + return $this; + } + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\TrackPaymentType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackReply.php b/src/FedEx/TrackService/ComplexType/TrackReply.php index 4e50f416..1e908de7 100644 --- a/src/FedEx/TrackService/ComplexType/TrackReply.php +++ b/src/FedEx/TrackService/ComplexType/TrackReply.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data returned from a FedEx package tracking request. + * TrackReply * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,10 +14,7 @@ * @property Notification[] $Notifications * @property TransactionDetail $TransactionDetail * @property VersionId $Version - * @property boolean $DuplicateWaybill - * @property boolean $MoreData - * @property string $PagingToken - * @property TrackDetail[] $TrackDetails + * @property CompletedTrackDetail[] $CompletedTrackDetails */ class TrackReply extends AbstractComplexType @@ -78,50 +75,14 @@ public function setVersion(VersionId $version) } /** - * True if duplicate packages (more than one package with the same tracking number) have been found, and only limited data will be provided for each one. + * Contains detailed tracking entity information. * - * @param boolean $duplicateWaybill + * @param CompletedTrackDetail[] $completedTrackDetails * @return $this */ - public function setDuplicateWaybill($duplicateWaybill) + public function setCompletedTrackDetails(array $completedTrackDetails) { - $this->values['DuplicateWaybill'] = $duplicateWaybill; - return $this; - } - - /** - * True if additional packages remain to be retrieved. - * - * @param boolean $moreData - * @return $this - */ - public function setMoreData($moreData) - { - $this->values['MoreData'] = $moreData; - return $this; - } - - /** - * Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true). - * - * @param string $pagingToken - * @return $this - */ - public function setPagingToken($pagingToken) - { - $this->values['PagingToken'] = $pagingToken; - return $this; - } - - /** - * Contains detailed tracking information for the requested packages(s). - * - * @param TrackDetail[] $trackDetails - * @return $this - */ - public function setTrackDetails(array $trackDetails) - { - $this->values['TrackDetails'] = $trackDetails; + $this->values['CompletedTrackDetails'] = $completedTrackDetails; return $this; } } diff --git a/src/FedEx/TrackService/ComplexType/TrackRequest.php b/src/FedEx/TrackService/ComplexType/TrackRequest.php index fee437c2..b6c74219 100644 --- a/src/FedEx/TrackService/ComplexType/TrackRequest.php +++ b/src/FedEx/TrackService/ComplexType/TrackRequest.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * The descriptive data sent by a client to track a FedEx package. + * TrackRequest * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -14,16 +14,9 @@ * @property ClientDetail $ClientDetail * @property TransactionDetail $TransactionDetail * @property VersionId $Version - * @property \FedEx\TrackService\SimpleType\CarrierCodeType|string $CarrierCode - * @property \FedEx\TrackService\SimpleType\OperatingCompanyType|string $OperatingCompany - * @property TrackPackageIdentifier $PackageIdentifier - * @property string $TrackingNumberUniqueIdentifier - * @property string $ShipDateRangeBegin - * @property string $ShipDateRangeEnd - * @property string $ShipmentAccountNumber - * @property Address $Destination - * @property boolean $IncludeDetailedScans - * @property string $PagingToken + * @property TrackSelectionDetail[] $SelectionDetails + * @property int $TransactionTimeOutValueInMilliseconds + * @property \FedEx\TrackService\SimpleType\TrackRequestProcessingOptionType|string[] $ProcessingOptions */ class TrackRequest extends AbstractComplexType @@ -84,122 +77,38 @@ public function setVersion(VersionId $version) } /** - * The FedEx operating company (transportation) used for this package's delivery. + * Specifies the details needed to select the shipment being requested to be tracked. * - * @param \FedEx\TrackService\SimpleType\CarrierCodeType|string $carrierCode + * @param TrackSelectionDetail[] $selectionDetails * @return $this */ - public function setCarrierCode($carrierCode) + public function setSelectionDetails(array $selectionDetails) { - $this->values['CarrierCode'] = $carrierCode; + $this->values['SelectionDetails'] = $selectionDetails; return $this; } /** - * Identifies operating transportation company that is the specific to the carrier code. + * The customer can specify a desired time out value for this particular transaction. * - * @param \FedEx\TrackService\SimpleType\OperatingCompanyType|string $operatingCompany + * @param int $transactionTimeOutValueInMilliseconds * @return $this */ - public function setOperatingCompany($operatingCompany) + public function setTransactionTimeOutValueInMilliseconds($transactionTimeOutValueInMilliseconds) { - $this->values['OperatingCompany'] = $operatingCompany; + $this->values['TransactionTimeOutValueInMilliseconds'] = $transactionTimeOutValueInMilliseconds; return $this; } /** - * The type and value of the package identifier that is to be used to retrieve the tracking information for a package or group of packages. + * Set ProcessingOptions * - * @param TrackPackageIdentifier $packageIdentifier + * @param \FedEx\TrackService\SimpleType\TrackRequestProcessingOptionType[]|string[] $processingOptions * @return $this */ - public function setPackageIdentifier(TrackPackageIdentifier $packageIdentifier) + public function setProcessingOptions(array $processingOptions) { - $this->values['PackageIdentifier'] = $packageIdentifier; - return $this; - } - - /** - * Used to distinguish duplicate FedEx tracking numbers. - * - * @param string $trackingNumberUniqueIdentifier - * @return $this - */ - public function setTrackingNumberUniqueIdentifier($trackingNumberUniqueIdentifier) - { - $this->values['TrackingNumberUniqueIdentifier'] = $trackingNumberUniqueIdentifier; - return $this; - } - - /** - * To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. - * - * @param string $shipDateRangeBegin - * @return $this - */ - public function setShipDateRangeBegin($shipDateRangeBegin) - { - $this->values['ShipDateRangeBegin'] = $shipDateRangeBegin; - return $this; - } - - /** - * To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. - * - * @param string $shipDateRangeEnd - * @return $this - */ - public function setShipDateRangeEnd($shipDateRangeEnd) - { - $this->values['ShipDateRangeEnd'] = $shipDateRangeEnd; - return $this; - } - - /** - * For tracking by references information either the account number or destination postal code and country must be provided. - * - * @param string $shipmentAccountNumber - * @return $this - */ - public function setShipmentAccountNumber($shipmentAccountNumber) - { - $this->values['ShipmentAccountNumber'] = $shipmentAccountNumber; - return $this; - } - - /** - * For tracking by references information either the account number or destination postal code and country must be provided. - * - * @param Address $destination - * @return $this - */ - public function setDestination(Address $destination) - { - $this->values['Destination'] = $destination; - return $this; - } - - /** - * If false the reply will contain summary/profile data including current status. If true the reply contains profile + detailed scan activity for each package. - * - * @param boolean $includeDetailedScans - * @return $this - */ - public function setIncludeDetailedScans($includeDetailedScans) - { - $this->values['IncludeDetailedScans'] = $includeDetailedScans; - return $this; - } - - /** - * When the MoreData field = true in a TrackReply the PagingToken must be sent in the subsequent TrackRequest to retrieve the next page of data. - * - * @param string $pagingToken - * @return $this - */ - public function setPagingToken($pagingToken) - { - $this->values['PagingToken'] = $pagingToken; + $this->values['ProcessingOptions'] = $processingOptions; return $this; } } diff --git a/src/FedEx/TrackService/ComplexType/TrackReturnDetail.php b/src/FedEx/TrackService/ComplexType/TrackReturnDetail.php new file mode 100644 index 00000000..c5bf7edb --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackReturnDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackReturnMovementStatusType|string $MovementStatus + * @property \FedEx\TrackService\SimpleType\TrackReturnLabelType|string $LabelType + * @property string $Description + * @property string $AuthorizationName + + */ +class TrackReturnDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackReturnDetail'; + + /** + * Set MovementStatus + * + * @param \FedEx\TrackService\SimpleType\TrackReturnMovementStatusType|string $movementStatus + * @return $this + */ + public function setMovementStatus($movementStatus) + { + $this->values['MovementStatus'] = $movementStatus; + return $this; + } + + /** + * Set LabelType + * + * @param \FedEx\TrackService\SimpleType\TrackReturnLabelType|string $labelType + * @return $this + */ + public function setLabelType($labelType) + { + $this->values['LabelType'] = $labelType; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set AuthorizationName + * + * @param string $authorizationName + * @return $this + */ + public function setAuthorizationName($authorizationName) + { + $this->values['AuthorizationName'] = $authorizationName; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackSelectionDetail.php b/src/FedEx/TrackService/ComplexType/TrackSelectionDetail.php new file mode 100644 index 00000000..9f9c4b3a --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackSelectionDetail.php @@ -0,0 +1,166 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\CarrierCodeType|string $CarrierCode + * @property \FedEx\TrackService\SimpleType\OperatingCompanyType|string $OperatingCompany + * @property TrackPackageIdentifier $PackageIdentifier + * @property string $TrackingNumberUniqueIdentifier + * @property string $ShipDateRangeBegin + * @property string $ShipDateRangeEnd + * @property string $ShipmentAccountNumber + * @property string $SecureSpodAccount + * @property Address $Destination + * @property PagingDetail $PagingDetail + * @property int $CustomerSpecifiedTimeOutValueInMilliseconds + + */ +class TrackSelectionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackSelectionDetail'; + + /** + * The FedEx operating company (transportation) used for this package's delivery. + * + * @param \FedEx\TrackService\SimpleType\CarrierCodeType|string $carrierCode + * @return $this + */ + public function setCarrierCode($carrierCode) + { + $this->values['CarrierCode'] = $carrierCode; + return $this; + } + + /** + * Identifies operating transportation company that is the specific to the carrier code. + * + * @param \FedEx\TrackService\SimpleType\OperatingCompanyType|string $operatingCompany + * @return $this + */ + public function setOperatingCompany($operatingCompany) + { + $this->values['OperatingCompany'] = $operatingCompany; + return $this; + } + + /** + * The type and value of the package identifier that is to be used to retrieve the tracking information for a package or group of packages. + * + * @param TrackPackageIdentifier $packageIdentifier + * @return $this + */ + public function setPackageIdentifier(TrackPackageIdentifier $packageIdentifier) + { + $this->values['PackageIdentifier'] = $packageIdentifier; + return $this; + } + + /** + * Used to distinguish duplicate FedEx tracking numbers. + * + * @param string $trackingNumberUniqueIdentifier + * @return $this + */ + public function setTrackingNumberUniqueIdentifier($trackingNumberUniqueIdentifier) + { + $this->values['TrackingNumberUniqueIdentifier'] = $trackingNumberUniqueIdentifier; + return $this; + } + + /** + * To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. + * + * @param string $shipDateRangeBegin + * @return $this + */ + public function setShipDateRangeBegin($shipDateRangeBegin) + { + $this->values['ShipDateRangeBegin'] = $shipDateRangeBegin; + return $this; + } + + /** + * To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. + * + * @param string $shipDateRangeEnd + * @return $this + */ + public function setShipDateRangeEnd($shipDateRangeEnd) + { + $this->values['ShipDateRangeEnd'] = $shipDateRangeEnd; + return $this; + } + + /** + * For tracking by references information either the account number or destination postal code and country must be provided. + * + * @param string $shipmentAccountNumber + * @return $this + */ + public function setShipmentAccountNumber($shipmentAccountNumber) + { + $this->values['ShipmentAccountNumber'] = $shipmentAccountNumber; + return $this; + } + + /** + * Specifies the SPOD account number for the shipment being tracked. + * + * @param string $secureSpodAccount + * @return $this + */ + public function setSecureSpodAccount($secureSpodAccount) + { + $this->values['SecureSpodAccount'] = $secureSpodAccount; + return $this; + } + + /** + * For tracking by references information either the account number or destination postal code and country must be provided. + * + * @param Address $destination + * @return $this + */ + public function setDestination(Address $destination) + { + $this->values['Destination'] = $destination; + return $this; + } + + /** + * Specifies the details about how to retrieve the subsequent pages when there is more than one page in the TrackReply. + * + * @param PagingDetail $pagingDetail + * @return $this + */ + public function setPagingDetail(PagingDetail $pagingDetail) + { + $this->values['PagingDetail'] = $pagingDetail; + return $this; + } + + /** + * The customer can specify a desired time out value for this particular tracking number. + * + * @param int $customerSpecifiedTimeOutValueInMilliseconds + * @return $this + */ + public function setCustomerSpecifiedTimeOutValueInMilliseconds($customerSpecifiedTimeOutValueInMilliseconds) + { + $this->values['CustomerSpecifiedTimeOutValueInMilliseconds'] = $customerSpecifiedTimeOutValueInMilliseconds; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackServiceDescriptionDetail.php b/src/FedEx/TrackService/ComplexType/TrackServiceDescriptionDetail.php new file mode 100644 index 00000000..e03abc2b --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackServiceDescriptionDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\ServiceType|string $Type + * @property string $Description + * @property string $ShortDescription + + */ +class TrackServiceDescriptionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackServiceDescriptionDetail'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\ServiceType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Specifies a shorter description for the service that is calculated per the service code. + * + * @param string $shortDescription + * @return $this + */ + public function setShortDescription($shortDescription) + { + $this->values['ShortDescription'] = $shortDescription; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackSpecialHandling.php b/src/FedEx/TrackService/ComplexType/TrackSpecialHandling.php new file mode 100644 index 00000000..0fddad21 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackSpecialHandling.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackSpecialHandlingType|string $Type + * @property string $Description + * @property \FedEx\TrackService\SimpleType\TrackPaymentType|string $PaymentType + + */ +class TrackSpecialHandling extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackSpecialHandling'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\TrackSpecialHandlingType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set PaymentType + * + * @param \FedEx\TrackService\SimpleType\TrackPaymentType|string $paymentType + * @return $this + */ + public function setPaymentType($paymentType) + { + $this->values['PaymentType'] = $paymentType; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackSpecialInstruction.php b/src/FedEx/TrackService/ComplexType/TrackSpecialInstruction.php new file mode 100644 index 00000000..634579ff --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackSpecialInstruction.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Description + * @property \FedEx\TrackService\SimpleType\TrackDeliveryOptionType|string $DeliveryOption + * @property SpecialInstructionStatusDetail $StatusDetail + * @property string $OriginalEstimatedDeliveryTimestamp + * @property string $OriginalRequestTime + * @property AppointmentDetail $RequestedAppointmentTime + + */ +class TrackSpecialInstruction extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackSpecialInstruction'; + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set DeliveryOption + * + * @param \FedEx\TrackService\SimpleType\TrackDeliveryOptionType|string $deliveryOption + * @return $this + */ + public function setDeliveryOption($deliveryOption) + { + $this->values['DeliveryOption'] = $deliveryOption; + return $this; + } + + /** + * Specifies the status and status update time of the track special instructions. + * + * @param SpecialInstructionStatusDetail $statusDetail + * @return $this + */ + public function setStatusDetail(SpecialInstructionStatusDetail $statusDetail) + { + $this->values['StatusDetail'] = $statusDetail; + return $this; + } + + /** + * Specifies the estimated delivery time that was originally estimated when the shipment was shipped. + * + * @param string $originalEstimatedDeliveryTimestamp + * @return $this + */ + public function setOriginalEstimatedDeliveryTimestamp($originalEstimatedDeliveryTimestamp) + { + $this->values['OriginalEstimatedDeliveryTimestamp'] = $originalEstimatedDeliveryTimestamp; + return $this; + } + + /** + * Specifies the time the customer requested a change to the shipment. + * + * @param string $originalRequestTime + * @return $this + */ + public function setOriginalRequestTime($originalRequestTime) + { + $this->values['OriginalRequestTime'] = $originalRequestTime; + return $this; + } + + /** + * The requested appointment time for delivery. + * + * @param AppointmentDetail $requestedAppointmentTime + * @return $this + */ + public function setRequestedAppointmentTime(AppointmentDetail $requestedAppointmentTime) + { + $this->values['RequestedAppointmentTime'] = $requestedAppointmentTime; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackStatusAncillaryDetail.php b/src/FedEx/TrackService/ComplexType/TrackStatusAncillaryDetail.php new file mode 100644 index 00000000..fb9e0469 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackStatusAncillaryDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $Reason + * @property string $ReasonDescription + * @property string $Action + * @property string $ActionDescription + + */ +class TrackStatusAncillaryDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackStatusAncillaryDetail'; + + /** + * Set Reason + * + * @param string $reason + * @return $this + */ + public function setReason($reason) + { + $this->values['Reason'] = $reason; + return $this; + } + + /** + * Set ReasonDescription + * + * @param string $reasonDescription + * @return $this + */ + public function setReasonDescription($reasonDescription) + { + $this->values['ReasonDescription'] = $reasonDescription; + return $this; + } + + /** + * Set Action + * + * @param string $action + * @return $this + */ + public function setAction($action) + { + $this->values['Action'] = $action; + return $this; + } + + /** + * Set ActionDescription + * + * @param string $actionDescription + * @return $this + */ + public function setActionDescription($actionDescription) + { + $this->values['ActionDescription'] = $actionDescription; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackStatusDetail.php b/src/FedEx/TrackService/ComplexType/TrackStatusDetail.php new file mode 100644 index 00000000..efc6ec72 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackStatusDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $CreationTime + * @property string $Code + * @property string $Description + * @property Address $Location + * @property TrackStatusAncillaryDetail[] $AncillaryDetails + + */ +class TrackStatusDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackStatusDetail'; + + /** + * Set CreationTime + * + * @param string $creationTime + * @return $this + */ + public function setCreationTime($creationTime) + { + $this->values['CreationTime'] = $creationTime; + return $this; + } + + /** + * Set Code + * + * @param string $code + * @return $this + */ + public function setCode($code) + { + $this->values['Code'] = $code; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set Location + * + * @param Address $location + * @return $this + */ + public function setLocation(Address $location) + { + $this->values['Location'] = $location; + return $this; + } + + /** + * Set AncillaryDetails + * + * @param TrackStatusAncillaryDetail[] $ancillaryDetails + * @return $this + */ + public function setAncillaryDetails(array $ancillaryDetails) + { + $this->values['AncillaryDetails'] = $ancillaryDetails; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingBillOfLadingDocumentDetail.php b/src/FedEx/TrackService/ComplexType/TrackingBillOfLadingDocumentDetail.php new file mode 100644 index 00000000..f2ce2cc8 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingBillOfLadingDocumentDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property TrackingDocumentFormat $DocumentFormat + + */ +class TrackingBillOfLadingDocumentDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingBillOfLadingDocumentDetail'; + + /** + * Set DocumentFormat + * + * @param TrackingDocumentFormat $documentFormat + * @return $this + */ + public function setDocumentFormat(TrackingDocumentFormat $documentFormat) + { + $this->values['DocumentFormat'] = $documentFormat; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDateOrTimestamp.php b/src/FedEx/TrackService/ComplexType/TrackingDateOrTimestamp.php new file mode 100644 index 00000000..b4d31f26 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingDateOrTimestamp.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackingDateOrTimestampType|string $Type + * @property string $DateOrTimestamp + + */ +class TrackingDateOrTimestamp extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingDateOrTimestamp'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\TrackingDateOrTimestampType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set DateOrTimestamp + * + * @param string $dateOrTimestamp + * @return $this + */ + public function setDateOrTimestamp($dateOrTimestamp) + { + $this->values['DateOrTimestamp'] = $dateOrTimestamp; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDocument.php b/src/FedEx/TrackService/ComplexType/TrackingDocument.php new file mode 100644 index 00000000..4780809e --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingDocument.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackingDocumentType|string $Type + * @property Localization[] $Localizations + * @property \FedEx\TrackService\SimpleType\TrackingDocumentImageType|string $ImageType + * @property int $Resolution + * @property DocumentPart[] $Parts + + */ +class TrackingDocument extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingDocument'; + + /** + * Set Type + * + * @param \FedEx\TrackService\SimpleType\TrackingDocumentType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Localizations + * + * @param Localization[] $localizations + * @return $this + */ + public function setLocalizations(array $localizations) + { + $this->values['Localizations'] = $localizations; + return $this; + } + + /** + * Set ImageType + * + * @param \FedEx\TrackService\SimpleType\TrackingDocumentImageType|string $imageType + * @return $this + */ + public function setImageType($imageType) + { + $this->values['ImageType'] = $imageType; + return $this; + } + + /** + * Set Resolution + * + * @param int $resolution + * @return $this + */ + public function setResolution($resolution) + { + $this->values['Resolution'] = $resolution; + return $this; + } + + /** + * Set Parts + * + * @param DocumentPart[] $parts + * @return $this + */ + public function setParts(array $parts) + { + $this->values['Parts'] = $parts; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php b/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php new file mode 100644 index 00000000..1fbedf38 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackingDocumentDispositionType|string $DispositionType + * @property TrackingDocumentEmailDetail $EMailDetail + + */ +class TrackingDocumentDispositionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingDocumentDispositionDetail'; + + /** + * Set DispositionType + * + * @param \FedEx\TrackService\SimpleType\TrackingDocumentDispositionType|string $dispositionType + * @return $this + */ + public function setDispositionType($dispositionType) + { + $this->values['DispositionType'] = $dispositionType; + return $this; + } + + /** + * Set EMailDetail + * + * @param TrackingDocumentEmailDetail $eMailDetail + * @return $this + */ + public function setEMailDetail(TrackingDocumentEmailDetail $eMailDetail) + { + $this->values['EMailDetail'] = $eMailDetail; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDocumentEmailDetail.php b/src/FedEx/TrackService/ComplexType/TrackingDocumentEmailDetail.php new file mode 100644 index 00000000..38de7485 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingDocumentEmailDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property EMailDetail[] $Recipients + * @property EMailDetail $Sender + * @property Localization $Localization + * @property string $PersonalMessage + + */ +class TrackingDocumentEmailDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingDocumentEmailDetail'; + + /** + * Specifies the recipients of the email. + * + * @param EMailDetail[] $recipients + * @return $this + */ + public function setRecipients(array $recipients) + { + $this->values['Recipients'] = $recipients; + return $this; + } + + /** + * Identifies the person initiating the email. + * + * @param EMailDetail $sender + * @return $this + */ + public function setSender(EMailDetail $sender) + { + $this->values['Sender'] = $sender; + return $this; + } + + /** + * This is the localization of the email content. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } + + /** + * A message included in the body of the email. + * + * @param string $personalMessage + * @return $this + */ + public function setPersonalMessage($personalMessage) + { + $this->values['PersonalMessage'] = $personalMessage; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDocumentFormat.php b/src/FedEx/TrackService/ComplexType/TrackingDocumentFormat.php new file mode 100644 index 00000000..6972f3c7 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingDocumentFormat.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property TrackingDocumentDispositionDetail[] $Dispositions + * @property \FedEx\TrackService\SimpleType\TrackingDocumentGroupingType|string $Grouping + * @property \FedEx\TrackService\SimpleType\TrackingDocumentImageType|string $ImageType + * @property Localization $Localization + + */ +class TrackingDocumentFormat extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingDocumentFormat'; + + /** + * Set Dispositions + * + * @param TrackingDocumentDispositionDetail[] $dispositions + * @return $this + */ + public function setDispositions(array $dispositions) + { + $this->values['Dispositions'] = $dispositions; + return $this; + } + + /** + * Set Grouping + * + * @param \FedEx\TrackService\SimpleType\TrackingDocumentGroupingType|string $grouping + * @return $this + */ + public function setGrouping($grouping) + { + $this->values['Grouping'] = $grouping; + return $this; + } + + /** + * Set ImageType + * + * @param \FedEx\TrackService\SimpleType\TrackingDocumentImageType|string $imageType + * @return $this + */ + public function setImageType($imageType) + { + $this->values['ImageType'] = $imageType; + return $this; + } + + /** + * The localization for the generated document. + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDocumentSpecification.php b/src/FedEx/TrackService/ComplexType/TrackingDocumentSpecification.php new file mode 100644 index 00000000..38768beb --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingDocumentSpecification.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property \FedEx\TrackService\SimpleType\TrackingDocumentType|string[] $DocumentTypes + * @property TrackingBillOfLadingDocumentDetail $BillOfLadingDocumentDetail + * @property TrackingFreightBillingDocumentDetail $FreightBillingDocumentDetail + * @property TrackingSignatureProofOfDeliveryDetail $SignatureProofOfDeliveryDetail + + */ +class TrackingDocumentSpecification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingDocumentSpecification'; + + /** + * Set DocumentTypes + * + * @param \FedEx\TrackService\SimpleType\TrackingDocumentType[]|string[] $documentTypes + * @return $this + */ + public function setDocumentTypes(array $documentTypes) + { + $this->values['DocumentTypes'] = $documentTypes; + return $this; + } + + /** + * Set BillOfLadingDocumentDetail + * + * @param TrackingBillOfLadingDocumentDetail $billOfLadingDocumentDetail + * @return $this + */ + public function setBillOfLadingDocumentDetail(TrackingBillOfLadingDocumentDetail $billOfLadingDocumentDetail) + { + $this->values['BillOfLadingDocumentDetail'] = $billOfLadingDocumentDetail; + return $this; + } + + /** + * Set FreightBillingDocumentDetail + * + * @param TrackingFreightBillingDocumentDetail $freightBillingDocumentDetail + * @return $this + */ + public function setFreightBillingDocumentDetail(TrackingFreightBillingDocumentDetail $freightBillingDocumentDetail) + { + $this->values['FreightBillingDocumentDetail'] = $freightBillingDocumentDetail; + return $this; + } + + /** + * Set SignatureProofOfDeliveryDetail + * + * @param TrackingSignatureProofOfDeliveryDetail $signatureProofOfDeliveryDetail + * @return $this + */ + public function setSignatureProofOfDeliveryDetail(TrackingSignatureProofOfDeliveryDetail $signatureProofOfDeliveryDetail) + { + $this->values['SignatureProofOfDeliveryDetail'] = $signatureProofOfDeliveryDetail; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingFreightBillingDocumentDetail.php b/src/FedEx/TrackService/ComplexType/TrackingFreightBillingDocumentDetail.php new file mode 100644 index 00000000..3a0f5d84 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingFreightBillingDocumentDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property TrackingDocumentFormat $DocumentFormat + + */ +class TrackingFreightBillingDocumentDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingFreightBillingDocumentDetail'; + + /** + * Set DocumentFormat + * + * @param TrackingDocumentFormat $documentFormat + * @return $this + */ + public function setDocumentFormat(TrackingDocumentFormat $documentFormat) + { + $this->values['DocumentFormat'] = $documentFormat; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingSignatureProofOfDeliveryDetail.php b/src/FedEx/TrackService/ComplexType/TrackingSignatureProofOfDeliveryDetail.php new file mode 100644 index 00000000..7650641f --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/TrackingSignatureProofOfDeliveryDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property TrackingDocumentFormat $DocumentFormat + + */ +class TrackingSignatureProofOfDeliveryDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TrackingSignatureProofOfDeliveryDetail'; + + /** + * Set DocumentFormat + * + * @param TrackingDocumentFormat $documentFormat + * @return $this + */ + public function setDocumentFormat(TrackingDocumentFormat $documentFormat) + { + $this->values['DocumentFormat'] = $documentFormat; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TransactionDetail.php b/src/FedEx/TrackService/ComplexType/TransactionDetail.php index a584cc94..3d066683 100644 --- a/src/FedEx/TrackService/ComplexType/TransactionDetail.php +++ b/src/FedEx/TrackService/ComplexType/TransactionDetail.php @@ -4,7 +4,7 @@ use FedEx\AbstractComplexType; /** - * Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. + * TransactionDetail * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/TrackService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/TrackService/ComplexType/WebAuthenticationDetail.php index e5e3d620..e2db334a 100644 --- a/src/FedEx/TrackService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/TrackService/ComplexType/WebAuthenticationDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/TrackService/Request.php b/src/FedEx/TrackService/Request.php index 7666484f..445686a3 100644 --- a/src/FedEx/TrackService/Request.php +++ b/src/FedEx/TrackService/Request.php @@ -15,81 +15,62 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/track'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/track'; - protected static $wsdlFileName = 'TrackService_v5.wsdl'; + protected static $wsdlFileName = 'TrackService_v14.wsdl'; /** - * Sends the TrackNotificationRequest and returns the response - * - * @param ComplexType\TrackNotificationRequest $trackNotificationRequest - * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\TrackNotificationReply|stdClass - */ - public function getGetTrackNotificationReply(ComplexType\TrackNotificationRequest $trackNotificationRequest, $returnStdClass = false) - { - $response = $this->getSoapClient()->getTrackNotification($trackNotificationRequest->toArray()); - if ($returnStdClass) { - return $response; - } - - $trackNotificationReply = new ComplexType\TrackNotificationReply; - $trackNotificationReply->populateFromStdClass($response); - return $trackNotificationReply; - } - - /** - * Sends the SignatureProofOfDeliveryLetterRequest and returns the response + * Sends the TrackRequest and returns the response * - * @param ComplexType\SignatureProofOfDeliveryLetterRequest $signatureProofOfDeliveryLetterRequest + * @param ComplexType\TrackRequest $trackRequest * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\SignatureProofOfDeliveryLetterReply|stdClass + * @return ComplexType\TrackReply|stdClass */ - public function getRetrieveSignatureProofOfDeliveryLetterReply(ComplexType\SignatureProofOfDeliveryLetterRequest $signatureProofOfDeliveryLetterRequest, $returnStdClass = false) + public function getTrackReply(ComplexType\TrackRequest $trackRequest, $returnStdClass = false) { - $response = $this->getSoapClient()->retrieveSignatureProofOfDeliveryLetter($signatureProofOfDeliveryLetterRequest->toArray()); + $response = $this->getSoapClient()->track($trackRequest->toArray()); if ($returnStdClass) { return $response; } - $signatureProofOfDeliveryLetterReply = new ComplexType\SignatureProofOfDeliveryLetterReply; - $signatureProofOfDeliveryLetterReply->populateFromStdClass($response); - return $signatureProofOfDeliveryLetterReply; + $trackReply = new ComplexType\TrackReply; + $trackReply->populateFromStdClass($response); + return $trackReply; } /** - * Sends the TrackRequest and returns the response + * Sends the GetTrackingDocumentsRequest and returns the response * - * @param ComplexType\TrackRequest $trackRequest + * @param ComplexType\GetTrackingDocumentsRequest $getTrackingDocumentsRequest * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\TrackReply|stdClass + * @return ComplexType\GetTrackingDocumentsReply|stdClass */ - public function getTrackReply(ComplexType\TrackRequest $trackRequest, $returnStdClass = false) + public function getGetTrackingDocumentsReply(ComplexType\GetTrackingDocumentsRequest $getTrackingDocumentsRequest, $returnStdClass = false) { - $response = $this->getSoapClient()->track($trackRequest->toArray()); + $response = $this->getSoapClient()->getTrackingDocuments($getTrackingDocumentsRequest->toArray()); if ($returnStdClass) { return $response; } - $trackReply = new ComplexType\TrackReply; - $trackReply->populateFromStdClass($response); - return $trackReply; + $getTrackingDocumentsReply = new ComplexType\GetTrackingDocumentsReply; + $getTrackingDocumentsReply->populateFromStdClass($response); + return $getTrackingDocumentsReply; } /** - * Sends the SignatureProofOfDeliveryFaxRequest and returns the response + * Sends the SendNotificationsRequest and returns the response * - * @param ComplexType\SignatureProofOfDeliveryFaxRequest $signatureProofOfDeliveryFaxRequest + * @param ComplexType\SendNotificationsRequest $sendNotificationsRequest * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\SignatureProofOfDeliveryFaxReply|stdClass + * @return ComplexType\SendNotificationsReply|stdClass */ - public function getSendSignatureProofOfDeliveryFaxReply(ComplexType\SignatureProofOfDeliveryFaxRequest $signatureProofOfDeliveryFaxRequest, $returnStdClass = false) + public function getSendNotificationsReply(ComplexType\SendNotificationsRequest $sendNotificationsRequest, $returnStdClass = false) { - $response = $this->getSoapClient()->sendSignatureProofOfDeliveryFax($signatureProofOfDeliveryFaxRequest->toArray()); + $response = $this->getSoapClient()->sendNotifications($sendNotificationsRequest->toArray()); if ($returnStdClass) { return $response; } - $signatureProofOfDeliveryFaxReply = new ComplexType\SignatureProofOfDeliveryFaxReply; - $signatureProofOfDeliveryFaxReply->populateFromStdClass($response); - return $signatureProofOfDeliveryFaxReply; + $sendNotificationsReply = new ComplexType\SendNotificationsReply; + $sendNotificationsReply->populateFromStdClass($response); + return $sendNotificationsReply; } } diff --git a/src/FedEx/TrackService/SimpleType/AppointmentWindowType.php b/src/FedEx/TrackService/SimpleType/AppointmentWindowType.php new file mode 100644 index 00000000..719ed724 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/AppointmentWindowType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class AppointmentWindowType extends AbstractSimpleType +{ + const _AFTERNOON = 'AFTERNOON'; + const _LATE_AFTERNOON = 'LATE_AFTERNOON'; + const _MID_DAY = 'MID_DAY'; + const _MORNING = 'MORNING'; +} diff --git a/src/FedEx/TrackService/SimpleType/ArrivalLocationType.php b/src/FedEx/TrackService/SimpleType/ArrivalLocationType.php index 36353f76..89d38a6c 100644 --- a/src/FedEx/TrackService/SimpleType/ArrivalLocationType.php +++ b/src/FedEx/TrackService/SimpleType/ArrivalLocationType.php @@ -29,6 +29,7 @@ class ArrivalLocationType extends AbstractSimpleType const _PICKUP_LOCATION = 'PICKUP_LOCATION'; const _PLANE = 'PLANE'; const _PORT_OF_ENTRY = 'PORT_OF_ENTRY'; + const _SHIP_AND_GET_LOCATION = 'SHIP_AND_GET_LOCATION'; const _SORT_FACILITY = 'SORT_FACILITY'; const _TURNPOINT = 'TURNPOINT'; const _VEHICLE = 'VEHICLE'; diff --git a/src/FedEx/TrackService/SimpleType/AvailableImageType.php b/src/FedEx/TrackService/SimpleType/AvailableImageType.php new file mode 100644 index 00000000..1417d99a --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/AvailableImageType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class AvailableImageType extends AbstractSimpleType +{ + const _BILL_OF_LADING = 'BILL_OF_LADING'; + const _SIGNATURE_PROOF_OF_DELIVERY = 'SIGNATURE_PROOF_OF_DELIVERY'; +} diff --git a/src/FedEx/TrackService/SimpleType/CommodityPurposeType.php b/src/FedEx/TrackService/SimpleType/CommodityPurposeType.php new file mode 100644 index 00000000..63b26f28 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/CommodityPurposeType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class CommodityPurposeType extends AbstractSimpleType +{ + const _BUSINESS = 'BUSINESS'; + const _CONSUMER = 'CONSUMER'; +} diff --git a/src/FedEx/TrackService/SimpleType/CustomsOptionType.php b/src/FedEx/TrackService/SimpleType/CustomsOptionType.php new file mode 100644 index 00000000..2b841275 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/CustomsOptionType.php @@ -0,0 +1,25 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class CustomsOptionType extends AbstractSimpleType +{ + const _COURTESY_RETURN_LABEL = 'COURTESY_RETURN_LABEL'; + const _EXHIBITION_TRADE_SHOW = 'EXHIBITION_TRADE_SHOW'; + const _FAULTY_ITEM = 'FAULTY_ITEM'; + const _FOLLOWING_REPAIR = 'FOLLOWING_REPAIR'; + const _FOR_REPAIR = 'FOR_REPAIR'; + const _ITEM_FOR_LOAN = 'ITEM_FOR_LOAN'; + const _OTHER = 'OTHER'; + const _REJECTED = 'REJECTED'; + const _REPLACEMENT = 'REPLACEMENT'; + const _TRIAL = 'TRIAL'; +} diff --git a/src/FedEx/TrackService/SimpleType/DeliveryOptionType.php b/src/FedEx/TrackService/SimpleType/DeliveryOptionType.php new file mode 100644 index 00000000..205a72a1 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/DeliveryOptionType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class DeliveryOptionType extends AbstractSimpleType +{ + const _INDIRECT_SIGNATURE_RELEASE = 'INDIRECT_SIGNATURE_RELEASE'; + const _REDIRECT_TO_HOLD_AT_LOCATION = 'REDIRECT_TO_HOLD_AT_LOCATION'; + const _REROUTE = 'REROUTE'; + const _RESCHEDULE = 'RESCHEDULE'; +} diff --git a/src/FedEx/TrackService/SimpleType/DistanceUnits.php b/src/FedEx/TrackService/SimpleType/DistanceUnits.php index a1b93d9c..98284e87 100644 --- a/src/FedEx/TrackService/SimpleType/DistanceUnits.php +++ b/src/FedEx/TrackService/SimpleType/DistanceUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of units of measure that can be associated with a distance value. + * DistanceUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/TrackService/SimpleType/RedirectToHoldEligibilityType.php b/src/FedEx/TrackService/SimpleType/EligibilityType.php similarity index 77% rename from src/FedEx/TrackService/SimpleType/RedirectToHoldEligibilityType.php rename to src/FedEx/TrackService/SimpleType/EligibilityType.php index b32c1d32..e802f967 100644 --- a/src/FedEx/TrackService/SimpleType/RedirectToHoldEligibilityType.php +++ b/src/FedEx/TrackService/SimpleType/EligibilityType.php @@ -4,13 +4,13 @@ use FedEx\AbstractSimpleType; /** - * RedirectToHoldEligibilityType + * Specifies different values of eligibility status * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service */ -class RedirectToHoldEligibilityType extends AbstractSimpleType +class EligibilityType extends AbstractSimpleType { const _ELIGIBLE = 'ELIGIBLE'; const _INELIGIBLE = 'INELIGIBLE'; diff --git a/src/FedEx/TrackService/SimpleType/FedExLocationType.php b/src/FedEx/TrackService/SimpleType/FedExLocationType.php new file mode 100644 index 00000000..2cf525dd --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/FedExLocationType.php @@ -0,0 +1,25 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class FedExLocationType extends AbstractSimpleType +{ + const _FEDEX_AUTHORIZED_SHIP_CENTER = 'FEDEX_AUTHORIZED_SHIP_CENTER'; + const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; + const _FEDEX_FACILITY = 'FEDEX_FACILITY'; + const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; + const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; + const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; + const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; + const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; +} diff --git a/src/FedEx/TrackService/SimpleType/ImageSizeType.php b/src/FedEx/TrackService/SimpleType/ImageSizeType.php new file mode 100644 index 00000000..0f839338 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/ImageSizeType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class ImageSizeType extends AbstractSimpleType +{ + const _LARGE = 'LARGE'; + const _SMALL = 'SMALL'; +} diff --git a/src/FedEx/TrackService/SimpleType/LinearUnits.php b/src/FedEx/TrackService/SimpleType/LinearUnits.php index 7e5b5e9b..0ead9c10 100644 --- a/src/FedEx/TrackService/SimpleType/LinearUnits.php +++ b/src/FedEx/TrackService/SimpleType/LinearUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * CM = centimeters, IN = inches + * LinearUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/TrackService/SimpleType/NaftaNetCostMethodCode.php b/src/FedEx/TrackService/SimpleType/NaftaNetCostMethodCode.php new file mode 100644 index 00000000..3fd8c75b --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/NaftaNetCostMethodCode.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class NaftaNetCostMethodCode extends AbstractSimpleType +{ + const _NC = 'NC'; + const _NO = 'NO'; +} diff --git a/src/FedEx/TrackService/SimpleType/NaftaPreferenceCriterionCode.php b/src/FedEx/TrackService/SimpleType/NaftaPreferenceCriterionCode.php new file mode 100644 index 00000000..6645f28c --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/NaftaPreferenceCriterionCode.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class NaftaPreferenceCriterionCode extends AbstractSimpleType +{ + const _A = 'A'; + const _B = 'B'; + const _C = 'C'; + const _D = 'D'; + const _E = 'E'; + const _F = 'F'; +} diff --git a/src/FedEx/TrackService/SimpleType/NaftaProducerDeterminationCode.php b/src/FedEx/TrackService/SimpleType/NaftaProducerDeterminationCode.php new file mode 100644 index 00000000..13886310 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/NaftaProducerDeterminationCode.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class NaftaProducerDeterminationCode extends AbstractSimpleType +{ + const _NO_1 = 'NO_1'; + const _NO_2 = 'NO_2'; + const _NO_3 = 'NO_3'; + const _YES = 'YES'; +} diff --git a/src/FedEx/TrackService/SimpleType/EMailNotificationEventType.php b/src/FedEx/TrackService/SimpleType/NotificationEventType.php similarity index 73% rename from src/FedEx/TrackService/SimpleType/EMailNotificationEventType.php rename to src/FedEx/TrackService/SimpleType/NotificationEventType.php index 89cae71c..4da1d113 100644 --- a/src/FedEx/TrackService/SimpleType/EMailNotificationEventType.php +++ b/src/FedEx/TrackService/SimpleType/NotificationEventType.php @@ -4,15 +4,16 @@ use FedEx\AbstractSimpleType; /** - * EMailNotificationEventType + * NotificationEventType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service */ -class EMailNotificationEventType extends AbstractSimpleType +class NotificationEventType extends AbstractSimpleType { const _ON_DELIVERY = 'ON_DELIVERY'; + const _ON_ESTIMATED_DELIVERY = 'ON_ESTIMATED_DELIVERY'; const _ON_EXCEPTION = 'ON_EXCEPTION'; const _ON_SHIPMENT = 'ON_SHIPMENT'; const _ON_TENDER = 'ON_TENDER'; diff --git a/src/FedEx/TrackService/SimpleType/EMailNotificationFormatType.php b/src/FedEx/TrackService/SimpleType/NotificationFormatType.php similarity index 70% rename from src/FedEx/TrackService/SimpleType/EMailNotificationFormatType.php rename to src/FedEx/TrackService/SimpleType/NotificationFormatType.php index aaea9f01..e2affbfd 100644 --- a/src/FedEx/TrackService/SimpleType/EMailNotificationFormatType.php +++ b/src/FedEx/TrackService/SimpleType/NotificationFormatType.php @@ -4,15 +4,14 @@ use FedEx\AbstractSimpleType; /** - * The format of the email + * NotificationFormatType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service */ -class EMailNotificationFormatType extends AbstractSimpleType +class NotificationFormatType extends AbstractSimpleType { const _HTML = 'HTML'; const _TEXT = 'TEXT'; - const _WIRELESS = 'WIRELESS'; } diff --git a/src/FedEx/TrackService/SimpleType/NotificationSeverityType.php b/src/FedEx/TrackService/SimpleType/NotificationSeverityType.php index 82b3ec2e..244a0139 100644 --- a/src/FedEx/TrackService/SimpleType/NotificationSeverityType.php +++ b/src/FedEx/TrackService/SimpleType/NotificationSeverityType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of severity values for a Notification. + * NotificationSeverityType * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/TrackService/SimpleType/NotificationType.php b/src/FedEx/TrackService/SimpleType/NotificationType.php new file mode 100644 index 00000000..a2791c16 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/NotificationType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class NotificationType extends AbstractSimpleType +{ + const _EMAIL = 'EMAIL'; +} diff --git a/src/FedEx/TrackService/SimpleType/OperatingCompanyType.php b/src/FedEx/TrackService/SimpleType/OperatingCompanyType.php index 23beb7ef..156e618a 100644 --- a/src/FedEx/TrackService/SimpleType/OperatingCompanyType.php +++ b/src/FedEx/TrackService/SimpleType/OperatingCompanyType.php @@ -12,5 +12,16 @@ */ class OperatingCompanyType extends AbstractSimpleType { + const _FEDEX_CARGO = 'FEDEX_CARGO'; + const _FEDEX_CORPORATE_SERVICES = 'FEDEX_CORPORATE_SERVICES'; + const _FEDEX_CORPORATION = 'FEDEX_CORPORATION'; + const _FEDEX_CUSTOMER_INFORMATION_SYSTEMS = 'FEDEX_CUSTOMER_INFORMATION_SYSTEMS'; + const _FEDEX_CUSTOM_CRITICAL = 'FEDEX_CUSTOM_CRITICAL'; + const _FEDEX_EXPRESS = 'FEDEX_EXPRESS'; + const _FEDEX_FREIGHT = 'FEDEX_FREIGHT'; + const _FEDEX_GROUND = 'FEDEX_GROUND'; + const _FEDEX_KINKOS = 'FEDEX_KINKOS'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_SERVICES = 'FEDEX_SERVICES'; + const _FEDEX_TRADE_NETWORKS = 'FEDEX_TRADE_NETWORKS'; } diff --git a/src/FedEx/TrackService/SimpleType/PackagingType.php b/src/FedEx/TrackService/SimpleType/PackagingType.php index 24134ef9..e0a07828 100644 --- a/src/FedEx/TrackService/SimpleType/PackagingType.php +++ b/src/FedEx/TrackService/SimpleType/PackagingType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The enumerated packaging type used for this package. + * PackagingType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -16,7 +16,11 @@ class PackagingType extends AbstractSimpleType const _FEDEX_25KG_BOX = 'FEDEX_25KG_BOX'; const _FEDEX_BOX = 'FEDEX_BOX'; const _FEDEX_ENVELOPE = 'FEDEX_ENVELOPE'; + const _FEDEX_EXTRA_LARGE_BOX = 'FEDEX_EXTRA_LARGE_BOX'; + const _FEDEX_LARGE_BOX = 'FEDEX_LARGE_BOX'; + const _FEDEX_MEDIUM_BOX = 'FEDEX_MEDIUM_BOX'; const _FEDEX_PAK = 'FEDEX_PAK'; + const _FEDEX_SMALL_BOX = 'FEDEX_SMALL_BOX'; const _FEDEX_TUBE = 'FEDEX_TUBE'; const _YOUR_PACKAGING = 'YOUR_PACKAGING'; } diff --git a/src/FedEx/TrackService/SimpleType/PhysicalPackagingType.php b/src/FedEx/TrackService/SimpleType/PhysicalPackagingType.php new file mode 100644 index 00000000..ee263cff --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/PhysicalPackagingType.php @@ -0,0 +1,46 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class PhysicalPackagingType extends AbstractSimpleType +{ + const _BAG = 'BAG'; + const _BARREL = 'BARREL'; + const _BASKET = 'BASKET'; + const _BOX = 'BOX'; + const _BUCKET = 'BUCKET'; + const _BUNDLE = 'BUNDLE'; + const _CAGE = 'CAGE'; + const _CARTON = 'CARTON'; + const _CASE = 'CASE'; + const _CHEST = 'CHEST'; + const _CONTAINER = 'CONTAINER'; + const _CRATE = 'CRATE'; + const _CYLINDER = 'CYLINDER'; + const _DRUM = 'DRUM'; + const _ENVELOPE = 'ENVELOPE'; + const _HAMPER = 'HAMPER'; + const _OTHER = 'OTHER'; + const _PACKAGE = 'PACKAGE'; + const _PAIL = 'PAIL'; + const _PALLET = 'PALLET'; + const _PARCEL = 'PARCEL'; + const _PIECE = 'PIECE'; + const _REEL = 'REEL'; + const _ROLL = 'ROLL'; + const _SACK = 'SACK'; + const _SHRINK_WRAPPED = 'SHRINK_WRAPPED'; + const _SKID = 'SKID'; + const _TANK = 'TANK'; + const _TOTE_BIN = 'TOTE_BIN'; + const _TUBE = 'TUBE'; + const _UNIT = 'UNIT'; +} diff --git a/src/FedEx/TrackService/SimpleType/PieceCountLocationType.php b/src/FedEx/TrackService/SimpleType/PieceCountLocationType.php new file mode 100644 index 00000000..ac4c6909 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/PieceCountLocationType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class PieceCountLocationType extends AbstractSimpleType +{ + const _DESTINATION = 'DESTINATION'; + const _ORIGIN = 'ORIGIN'; +} diff --git a/src/FedEx/TrackService/SimpleType/ServiceType.php b/src/FedEx/TrackService/SimpleType/ServiceType.php index 402e5381..a30dcb57 100644 --- a/src/FedEx/TrackService/SimpleType/ServiceType.php +++ b/src/FedEx/TrackService/SimpleType/ServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The service type of the package/shipment. + * ServiceType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -18,11 +18,34 @@ class ServiceType extends AbstractSimpleType const _FEDEX_2_DAY_AM = 'FEDEX_2_DAY_AM'; const _FEDEX_2_DAY_FREIGHT = 'FEDEX_2_DAY_FREIGHT'; const _FEDEX_3_DAY_FREIGHT = 'FEDEX_3_DAY_FREIGHT'; + const _FEDEX_CARGO_AIRPORT_TO_AIRPORT = 'FEDEX_CARGO_AIRPORT_TO_AIRPORT'; + const _FEDEX_CARGO_FREIGHT_FORWARDING = 'FEDEX_CARGO_FREIGHT_FORWARDING'; + const _FEDEX_CARGO_INTERNATIONAL_EXPRESS_FREIGHT = 'FEDEX_CARGO_INTERNATIONAL_EXPRESS_FREIGHT'; + const _FEDEX_CARGO_INTERNATIONAL_PREMIUM = 'FEDEX_CARGO_INTERNATIONAL_PREMIUM'; + const _FEDEX_CARGO_MAIL = 'FEDEX_CARGO_MAIL'; + const _FEDEX_CARGO_REGISTERED_MAIL = 'FEDEX_CARGO_REGISTERED_MAIL'; + const _FEDEX_CARGO_SURFACE_MAIL = 'FEDEX_CARGO_SURFACE_MAIL'; + const _FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE = 'FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE'; + const _FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_EXCLUSIVE_USE = 'FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_EXCLUSIVE_USE'; + const _FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_NETWORK = 'FEDEX_CUSTOM_CRITICAL_AIR_EXPEDITE_NETWORK'; + const _FEDEX_CUSTOM_CRITICAL_CHARTER_AIR = 'FEDEX_CUSTOM_CRITICAL_CHARTER_AIR'; + const _FEDEX_CUSTOM_CRITICAL_POINT_TO_POINT = 'FEDEX_CUSTOM_CRITICAL_POINT_TO_POINT'; + const _FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE = 'FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE'; + const _FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE_EXCLUSIVE_USE = 'FEDEX_CUSTOM_CRITICAL_SURFACE_EXPEDITE_EXCLUSIVE_USE'; + const _FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_AIR = 'FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_AIR'; + const _FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_VALIDATED_AIR = 'FEDEX_CUSTOM_CRITICAL_TEMP_ASSURE_VALIDATED_AIR'; + const _FEDEX_CUSTOM_CRITICAL_WHITE_GLOVE_SERVICES = 'FEDEX_CUSTOM_CRITICAL_WHITE_GLOVE_SERVICES'; + const _FEDEX_DISTANCE_DEFERRED = 'FEDEX_DISTANCE_DEFERRED'; const _FEDEX_EXPRESS_SAVER = 'FEDEX_EXPRESS_SAVER'; const _FEDEX_FIRST_FREIGHT = 'FEDEX_FIRST_FREIGHT'; const _FEDEX_FREIGHT_ECONOMY = 'FEDEX_FREIGHT_ECONOMY'; const _FEDEX_FREIGHT_PRIORITY = 'FEDEX_FREIGHT_PRIORITY'; const _FEDEX_GROUND = 'FEDEX_GROUND'; + const _FEDEX_NEXT_DAY_AFTERNOON = 'FEDEX_NEXT_DAY_AFTERNOON'; + const _FEDEX_NEXT_DAY_EARLY_MORNING = 'FEDEX_NEXT_DAY_EARLY_MORNING'; + const _FEDEX_NEXT_DAY_END_OF_DAY = 'FEDEX_NEXT_DAY_END_OF_DAY'; + const _FEDEX_NEXT_DAY_FREIGHT = 'FEDEX_NEXT_DAY_FREIGHT'; + const _FEDEX_NEXT_DAY_MID_MORNING = 'FEDEX_NEXT_DAY_MID_MORNING'; const _FIRST_OVERNIGHT = 'FIRST_OVERNIGHT'; const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; const _INTERNATIONAL_DISTRIBUTION_FREIGHT = 'INTERNATIONAL_DISTRIBUTION_FREIGHT'; @@ -32,8 +55,12 @@ class ServiceType extends AbstractSimpleType const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; + const _SAME_DAY = 'SAME_DAY'; + const _SAME_DAY_CITY = 'SAME_DAY_CITY'; const _SMART_POST = 'SMART_POST'; const _STANDARD_OVERNIGHT = 'STANDARD_OVERNIGHT'; + const _TRANSBORDER_DISTRIBUTION_CONSOLIDATION = 'TRANSBORDER_DISTRIBUTION_CONSOLIDATION'; } diff --git a/src/FedEx/TrackService/SimpleType/ShipmentNotificationAggregationType.php b/src/FedEx/TrackService/SimpleType/ShipmentNotificationAggregationType.php new file mode 100644 index 00000000..5a76de18 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/ShipmentNotificationAggregationType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class ShipmentNotificationAggregationType extends AbstractSimpleType +{ + const _PER_PACKAGE = 'PER_PACKAGE'; + const _PER_SHIPMENT = 'PER_SHIPMENT'; +} diff --git a/src/FedEx/TrackService/SimpleType/EMailNotificationRecipientType.php b/src/FedEx/TrackService/SimpleType/ShipmentNotificationRoleType.php similarity index 72% rename from src/FedEx/TrackService/SimpleType/EMailNotificationRecipientType.php rename to src/FedEx/TrackService/SimpleType/ShipmentNotificationRoleType.php index a1630a1a..fb14c52f 100644 --- a/src/FedEx/TrackService/SimpleType/EMailNotificationRecipientType.php +++ b/src/FedEx/TrackService/SimpleType/ShipmentNotificationRoleType.php @@ -4,16 +4,17 @@ use FedEx\AbstractSimpleType; /** - * EMailNotificationRecipientType + * ShipmentNotificationRoleType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service */ -class EMailNotificationRecipientType extends AbstractSimpleType +class ShipmentNotificationRoleType extends AbstractSimpleType { const _BROKER = 'BROKER'; const _OTHER = 'OTHER'; const _RECIPIENT = 'RECIPIENT'; const _SHIPPER = 'SHIPPER'; + const _THIRD_PARTY = 'THIRD_PARTY'; } diff --git a/src/FedEx/TrackService/SimpleType/SpecialInstructionsStatusCode.php b/src/FedEx/TrackService/SimpleType/SpecialInstructionsStatusCode.php new file mode 100644 index 00000000..0786cee2 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/SpecialInstructionsStatusCode.php @@ -0,0 +1,23 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class SpecialInstructionsStatusCode extends AbstractSimpleType +{ + const _ACCEPTED = 'ACCEPTED'; + const _CANCELLED = 'CANCELLED'; + const _DENIED = 'DENIED'; + const _HELD = 'HELD'; + const _MODIFIED = 'MODIFIED'; + const _RELINQUISHED = 'RELINQUISHED'; + const _REQUESTED = 'REQUESTED'; + const _SET = 'SET'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackAdvanceNotificationStatusType.php b/src/FedEx/TrackService/SimpleType/TrackAdvanceNotificationStatusType.php new file mode 100644 index 00000000..bfb633b2 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackAdvanceNotificationStatusType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackAdvanceNotificationStatusType extends AbstractSimpleType +{ + const _BACK_ON_TRACK = 'BACK_ON_TRACK'; + const _FAIL = 'FAIL'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackChargeDetailType.php b/src/FedEx/TrackService/SimpleType/TrackChargeDetailType.php new file mode 100644 index 00000000..6aceb5c1 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackChargeDetailType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackChargeDetailType extends AbstractSimpleType +{ + const _ORIGINAL_CHARGES = 'ORIGINAL_CHARGES'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackChargesPaymentClassificationType.php b/src/FedEx/TrackService/SimpleType/TrackChargesPaymentClassificationType.php new file mode 100644 index 00000000..9ad768c3 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackChargesPaymentClassificationType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackChargesPaymentClassificationType extends AbstractSimpleType +{ + const _DUTIES_AND_TAXES = 'DUTIES_AND_TAXES'; + const _TRANSPORTATION = 'TRANSPORTATION'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackDeliveryLocationType.php b/src/FedEx/TrackService/SimpleType/TrackDeliveryLocationType.php index effa27d7..9a83a5fc 100644 --- a/src/FedEx/TrackService/SimpleType/TrackDeliveryLocationType.php +++ b/src/FedEx/TrackService/SimpleType/TrackDeliveryLocationType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The delivery location at the delivered to address. + * TrackDeliveryLocationType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -12,13 +12,19 @@ */ class TrackDeliveryLocationType extends AbstractSimpleType { + const _APARTMENT_OFFICE = 'APARTMENT_OFFICE'; const _FEDEX_LOCATION = 'FEDEX_LOCATION'; + const _GATE_HOUSE = 'GATE_HOUSE'; const _GUARD_OR_SECURITY_STATION = 'GUARD_OR_SECURITY_STATION'; const _IN_BOND_OR_CAGE = 'IN_BOND_OR_CAGE'; + const _LEASING_OFFICE = 'LEASING_OFFICE'; const _MAILROOM = 'MAILROOM'; + const _MAIN_OFFICE = 'MAIN_OFFICE'; + const _MANAGER_OFFICE = 'MANAGER_OFFICE'; const _OTHER = 'OTHER'; const _PHARMACY = 'PHARMACY'; const _RECEPTIONIST_OR_FRONT_DESK = 'RECEPTIONIST_OR_FRONT_DESK'; + const _RENTAL_OFFICE = 'RENTAL_OFFICE'; const _RESIDENCE = 'RESIDENCE'; const _SHIPPING_RECEIVING = 'SHIPPING_RECEIVING'; } diff --git a/src/FedEx/TrackService/SimpleType/TrackDeliveryOptionType.php b/src/FedEx/TrackService/SimpleType/TrackDeliveryOptionType.php new file mode 100644 index 00000000..462a4f16 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackDeliveryOptionType.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackDeliveryOptionType extends AbstractSimpleType +{ + const _APPOINTMENT = 'APPOINTMENT'; + const _DATE_CERTAIN = 'DATE_CERTAIN'; + const _ELECTRONIC_SIGNATURE_RELEASE = 'ELECTRONIC_SIGNATURE_RELEASE'; + const _EVENING = 'EVENING'; + const _REDIRECT_TO_HOLD_AT_LOCATION = 'REDIRECT_TO_HOLD_AT_LOCATION'; + const _REROUTE = 'REROUTE'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackDetailAttributeType.php b/src/FedEx/TrackService/SimpleType/TrackDetailAttributeType.php new file mode 100644 index 00000000..3609e0c0 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackDetailAttributeType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackDetailAttributeType extends AbstractSimpleType +{ + const _INCLUDED_IN_WATCHLIST = 'INCLUDED_IN_WATCHLIST'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackIdentifierType.php b/src/FedEx/TrackService/SimpleType/TrackIdentifierType.php index 806a087f..929524aa 100644 --- a/src/FedEx/TrackService/SimpleType/TrackIdentifierType.php +++ b/src/FedEx/TrackService/SimpleType/TrackIdentifierType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * The type of track to be performed. + * TrackIdentifierType * * @author Jeremy Dunn * @package PHP FedEx API wrapper @@ -17,6 +17,7 @@ class TrackIdentifierType extends AbstractSimpleType const _CUSTOMER_AUTHORIZATION_NUMBER = 'CUSTOMER_AUTHORIZATION_NUMBER'; const _CUSTOMER_REFERENCE = 'CUSTOMER_REFERENCE'; const _DEPARTMENT = 'DEPARTMENT'; + const _DOCUMENT_AIRWAY_BILL = 'DOCUMENT_AIRWAY_BILL'; const _FREE_FORM_REFERENCE = 'FREE_FORM_REFERENCE'; const _GROUND_INTERNATIONAL = 'GROUND_INTERNATIONAL'; const _GROUND_SHIPMENT_ID = 'GROUND_SHIPMENT_ID'; @@ -25,9 +26,11 @@ class TrackIdentifierType extends AbstractSimpleType const _JOB_GLOBAL_TRACKING_NUMBER = 'JOB_GLOBAL_TRACKING_NUMBER'; const _ORDER_GLOBAL_TRACKING_NUMBER = 'ORDER_GLOBAL_TRACKING_NUMBER'; const _ORDER_TO_PAY_NUMBER = 'ORDER_TO_PAY_NUMBER'; + const _OUTBOUND_LINK_TO_RETURN = 'OUTBOUND_LINK_TO_RETURN'; const _PARTNER_CARRIER_NUMBER = 'PARTNER_CARRIER_NUMBER'; const _PART_NUMBER = 'PART_NUMBER'; const _PURCHASE_ORDER = 'PURCHASE_ORDER'; + const _REROUTE_TRACKING_NUMBER = 'REROUTE_TRACKING_NUMBER'; const _RETURNED_TO_SHIPPER_TRACKING_NUMBER = 'RETURNED_TO_SHIPPER_TRACKING_NUMBER'; const _RETURN_MATERIALS_AUTHORIZATION = 'RETURN_MATERIALS_AUTHORIZATION'; const _SHIPPER_REFERENCE = 'SHIPPER_REFERENCE'; diff --git a/src/FedEx/TrackService/SimpleType/TrackPaymentType.php b/src/FedEx/TrackService/SimpleType/TrackPaymentType.php new file mode 100644 index 00000000..b0e4f8af --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackPaymentType.php @@ -0,0 +1,23 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackPaymentType extends AbstractSimpleType +{ + const _CASH_OR_CHECK_AT_DESTINATION = 'CASH_OR_CHECK_AT_DESTINATION'; + const _CASH_OR_CHECK_AT_ORIGIN = 'CASH_OR_CHECK_AT_ORIGIN'; + const _CREDIT_CARD_AT_DESTINATION = 'CREDIT_CARD_AT_DESTINATION'; + const _CREDIT_CARD_AT_ORIGIN = 'CREDIT_CARD_AT_ORIGIN'; + const _OTHER = 'OTHER'; + const _RECIPIENT_ACCOUNT = 'RECIPIENT_ACCOUNT'; + const _SHIPPER_ACCOUNT = 'SHIPPER_ACCOUNT'; + const _THIRD_PARTY_ACCOUNT = 'THIRD_PARTY_ACCOUNT'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackPossessionStatusType.php b/src/FedEx/TrackService/SimpleType/TrackPossessionStatusType.php new file mode 100644 index 00000000..3ef9309e --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackPossessionStatusType.php @@ -0,0 +1,22 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackPossessionStatusType extends AbstractSimpleType +{ + const _BROKER = 'BROKER'; + const _CARRIER = 'CARRIER'; + const _CUSTOMS = 'CUSTOMS'; + const _RECIPIENT = 'RECIPIENT'; + const _SHIPPER = 'SHIPPER'; + const _SPLIT_STATUS = 'SPLIT_STATUS'; + const _TRANSFER_PARTNER = 'TRANSFER_PARTNER'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackRequestProcessingOptionType.php b/src/FedEx/TrackService/SimpleType/TrackRequestProcessingOptionType.php new file mode 100644 index 00000000..f92e661e --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackRequestProcessingOptionType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackRequestProcessingOptionType extends AbstractSimpleType +{ + const _INCLUDE_DETAILED_SCANS = 'INCLUDE_DETAILED_SCANS'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackReturnMovementStatusType.php b/src/FedEx/TrackService/SimpleType/TrackReturnMovementStatusType.php new file mode 100644 index 00000000..70d1eb38 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackReturnMovementStatusType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackReturnMovementStatusType extends AbstractSimpleType +{ + const _MOVEMENT_OCCURRED = 'MOVEMENT_OCCURRED'; + const _NO_MOVEMENT = 'NO_MOVEMENT'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php b/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php new file mode 100644 index 00000000..ba2d6d1b --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php @@ -0,0 +1,123 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackSpecialHandlingType extends AbstractSimpleType +{ + const _ACCESSIBLE_DANGEROUS_GOODS = 'ACCESSIBLE_DANGEROUS_GOODS'; + const _ADULT_SIGNATURE_OPTION = 'ADULT_SIGNATURE_OPTION'; + const _AIRBILL_AUTOMATION = 'AIRBILL_AUTOMATION'; + const _AIRBILL_DELIVERY = 'AIRBILL_DELIVERY'; + const _ALCOHOL = 'ALCOHOL'; + const _AM_DELIVERY_GUARANTEE = 'AM_DELIVERY_GUARANTEE'; + const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _BATTERY = 'BATTERY'; + const _BILL_RECIPIENT = 'BILL_RECIPIENT'; + const _BROKER_SELECT_OPTION = 'BROKER_SELECT_OPTION'; + const _CALL_BEFORE_DELIVERY = 'CALL_BEFORE_DELIVERY'; + const _CALL_TAG = 'CALL_TAG'; + const _CALL_TAG_DAMAGE = 'CALL_TAG_DAMAGE'; + const _CHARGEABLE_CODE = 'CHARGEABLE_CODE'; + const _COD = 'COD'; + const _COLLECT = 'COLLECT'; + const _CONSOLIDATION = 'CONSOLIDATION'; + const _CONSOLIDATION_SMALLS_BAG = 'CONSOLIDATION_SMALLS_BAG'; + const _CURRENCY = 'CURRENCY'; + const _CUT_FLOWERS = 'CUT_FLOWERS'; + const _DATE_CERTAIN_DELIVERY = 'DATE_CERTAIN_DELIVERY'; + const _DELIVERY_ON_INVOICE_ACCEPTANCE = 'DELIVERY_ON_INVOICE_ACCEPTANCE'; + const _DELIVERY_REATTEMPT = 'DELIVERY_REATTEMPT'; + const _DELIVERY_RECEIPT = 'DELIVERY_RECEIPT'; + const _DELIVER_WEEKDAY = 'DELIVER_WEEKDAY'; + const _DIRECT_SIGNATURE_OPTION = 'DIRECT_SIGNATURE_OPTION'; + const _DOMESTIC = 'DOMESTIC'; + const _DO_NOT_BREAK_DOWN_PALLETS = 'DO_NOT_BREAK_DOWN_PALLETS'; + const _DO_NOT_STACK_PALLETS = 'DO_NOT_STACK_PALLETS'; + const _DRY_ICE = 'DRY_ICE'; + const _DRY_ICE_ADDED = 'DRY_ICE_ADDED'; + const _EAST_COAST_SPECIAL = 'EAST_COAST_SPECIAL'; + const _ELECTRONIC_COD = 'ELECTRONIC_COD'; + const _ELECTRONIC_DOCUMENTS_WITH_ORIGINALS = 'ELECTRONIC_DOCUMENTS_WITH_ORIGINALS'; + const _ELECTRONIC_SIGNATURE_SERVICE = 'ELECTRONIC_SIGNATURE_SERVICE'; + const _ELECTRONIC_TRADE_DOCUMENTS = 'ELECTRONIC_TRADE_DOCUMENTS'; + const _EVENING_DELIVERY = 'EVENING_DELIVERY'; + const _EXCLUSIVE_USE = 'EXCLUSIVE_USE'; + const _EXTENDED_DELIVERY = 'EXTENDED_DELIVERY'; + const _EXTENDED_PICKUP = 'EXTENDED_PICKUP'; + const _EXTRA_LABOR = 'EXTRA_LABOR'; + const _EXTREME_LENGTH = 'EXTREME_LENGTH'; + const _FOOD = 'FOOD'; + const _FREIGHT_ON_VALUE_CARRIER_RISK = 'FREIGHT_ON_VALUE_CARRIER_RISK'; + const _FREIGHT_ON_VALUE_OWN_RISK = 'FREIGHT_ON_VALUE_OWN_RISK'; + const _FREIGHT_TO_COLLECT = 'FREIGHT_TO_COLLECT'; + const _FULLY_REGULATED_DANGEROUS_GOODS = 'FULLY_REGULATED_DANGEROUS_GOODS'; + const _GEL_PACKS_ADDED_OR_REPLACED = 'GEL_PACKS_ADDED_OR_REPLACED'; + const _GROUND_SUPPORT_FOR_SMARTPOST = 'GROUND_SUPPORT_FOR_SMARTPOST'; + const _GUARANTEED_FUNDS = 'GUARANTEED_FUNDS'; + const _HAZMAT = 'HAZMAT'; + const _HIGH_FLOOR = 'HIGH_FLOOR'; + const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; + const _HOLIDAY_DELIVERY = 'HOLIDAY_DELIVERY'; + const _INACCESSIBLE_DANGEROUS_GOODS = 'INACCESSIBLE_DANGEROUS_GOODS'; + const _INDIRECT_SIGNATURE_OPTION = 'INDIRECT_SIGNATURE_OPTION'; + const _INSIDE_DELIVERY = 'INSIDE_DELIVERY'; + const _INSIDE_PICKUP = 'INSIDE_PICKUP'; + const _INTERNATIONAL = 'INTERNATIONAL'; + const _INTERNATIONAL_CONTROLLED_EXPORT = 'INTERNATIONAL_CONTROLLED_EXPORT'; + const _INTERNATIONAL_MAIL_SERVICE = 'INTERNATIONAL_MAIL_SERVICE'; + const _INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS = 'INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS'; + const _LIFTGATE = 'LIFTGATE'; + const _LIFTGATE_DELIVERY = 'LIFTGATE_DELIVERY'; + const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; + const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; + const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; + const _LIMITED_QUANTITIES_DANGEROUS_GOODS = 'LIMITED_QUANTITIES_DANGEROUS_GOODS'; + const _MARKING_OR_TAGGING = 'MARKING_OR_TAGGING'; + const _NET_RETURN = 'NET_RETURN'; + const _NON_BUSINESS_TIME = 'NON_BUSINESS_TIME'; + const _NON_STANDARD_CONTAINER = 'NON_STANDARD_CONTAINER'; + const _NO_SIGNATURE_REQUIRED_SIGNATURE_OPTION = 'NO_SIGNATURE_REQUIRED_SIGNATURE_OPTION'; + const _ORDER_NOTIFY = 'ORDER_NOTIFY'; + const _OTHER = 'OTHER'; + const _OTHER_REGULATED_MATERIAL_DOMESTIC = 'OTHER_REGULATED_MATERIAL_DOMESTIC'; + const _PACKAGE_RETURN_PROGRAM = 'PACKAGE_RETURN_PROGRAM'; + const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; + const _POISON = 'POISON'; + const _PREPAID = 'PREPAID'; + const _PRIORITY_ALERT = 'PRIORITY_ALERT'; + const _PRIORITY_ALERT_PLUS = 'PRIORITY_ALERT_PLUS'; + const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; + const _RAIL_MODE = 'RAIL_MODE'; + const _RECONSIGNMENT_CHARGES = 'RECONSIGNMENT_CHARGES'; + const _REROUTE_CROSS_COUNTRY_DEFERRED = 'REROUTE_CROSS_COUNTRY_DEFERRED'; + const _REROUTE_CROSS_COUNTRY_EXPEDITED = 'REROUTE_CROSS_COUNTRY_EXPEDITED'; + const _REROUTE_LOCAL = 'REROUTE_LOCAL'; + const _RESIDENTIAL_DELIVERY = 'RESIDENTIAL_DELIVERY'; + const _RESIDENTIAL_PICKUP = 'RESIDENTIAL_PICKUP'; + const _RETURNS_CLEARANCE = 'RETURNS_CLEARANCE'; + const _RETURNS_CLEARANCE_SPECIAL_ROUTING_REQUIRED = 'RETURNS_CLEARANCE_SPECIAL_ROUTING_REQUIRED'; + const _RETURN_MANAGER = 'RETURN_MANAGER'; + const _SATURDAY_DELIVERY = 'SATURDAY_DELIVERY'; + const _SHIPMENT_PLACED_IN_COLD_STORAGE = 'SHIPMENT_PLACED_IN_COLD_STORAGE'; + const _SINGLE_SHIPMENT = 'SINGLE_SHIPMENT'; + const _SMALL_QUANTITY_EXCEPTION = 'SMALL_QUANTITY_EXCEPTION'; + const _SORT_AND_SEGREGATE = 'SORT_AND_SEGREGATE'; + const _SPECIAL_DELIVERY = 'SPECIAL_DELIVERY'; + const _SPECIAL_EQUIPMENT = 'SPECIAL_EQUIPMENT'; + const _STANDARD_GROUND_SERVICE = 'STANDARD_GROUND_SERVICE'; + const _STORAGE = 'STORAGE'; + const _SUNDAY_DELIVERY = 'SUNDAY_DELIVERY'; + const _THIRD_PARTY_BILLING = 'THIRD_PARTY_BILLING'; + const _THIRD_PARTY_CONSIGNEE = 'THIRD_PARTY_CONSIGNEE'; + const _TOP_LOAD = 'TOP_LOAD'; + const _WEEKEND_DELIVERY = 'WEEKEND_DELIVERY'; + const _WEEKEND_PICKUP = 'WEEKEND_PICKUP'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php b/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php new file mode 100644 index 00000000..9ff09aa2 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php @@ -0,0 +1,23 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackingDateOrTimestampType extends AbstractSimpleType +{ + const _ACTUAL_DELIVERY = 'ACTUAL_DELIVERY'; + const _ACTUAL_PICKUP = 'ACTUAL_PICKUP'; + const _ACTUAL_TENDER = 'ACTUAL_TENDER'; + const _ANTICIPATED_TENDER = 'ANTICIPATED_TENDER'; + const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _ESTIMATED_DELIVERY = 'ESTIMATED_DELIVERY'; + const _ESTIMATED_PICKUP = 'ESTIMATED_PICKUP'; + const _SHIP = 'SHIP'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackingDocumentDispositionType.php b/src/FedEx/TrackService/SimpleType/TrackingDocumentDispositionType.php new file mode 100644 index 00000000..16ac79d8 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackingDocumentDispositionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackingDocumentDispositionType extends AbstractSimpleType +{ + const _EMAIL = 'EMAIL'; + const _FAX = 'FAX'; + const _RETURN = 'RETURN'; +} diff --git a/src/FedEx/TrackService/SimpleType/TrackingDocumentGroupingType.php b/src/FedEx/TrackService/SimpleType/TrackingDocumentGroupingType.php new file mode 100644 index 00000000..dff068b3 --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackingDocumentGroupingType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackingDocumentGroupingType extends AbstractSimpleType +{ + const _CONSOLIDATED_BY_DOCUMENT_TYPE = 'CONSOLIDATED_BY_DOCUMENT_TYPE'; + const _INDIVIDUAL = 'INDIVIDUAL'; +} diff --git a/src/FedEx/TrackService/SimpleType/SignatureProofOfDeliveryImageType.php b/src/FedEx/TrackService/SimpleType/TrackingDocumentImageType.php similarity index 69% rename from src/FedEx/TrackService/SimpleType/SignatureProofOfDeliveryImageType.php rename to src/FedEx/TrackService/SimpleType/TrackingDocumentImageType.php index 11e4c9fd..1262697b 100644 --- a/src/FedEx/TrackService/SimpleType/SignatureProofOfDeliveryImageType.php +++ b/src/FedEx/TrackService/SimpleType/TrackingDocumentImageType.php @@ -4,13 +4,14 @@ use FedEx\AbstractSimpleType; /** - * Identifies the set of SPOD image types. + * TrackingDocumentImageType * * @author Jeremy Dunn * @package PHP FedEx API wrapper * @subpackage Package Movement Information Service */ -class SignatureProofOfDeliveryImageType extends AbstractSimpleType +class TrackingDocumentImageType extends AbstractSimpleType { const _PDF = 'PDF'; + const _PNG = 'PNG'; } diff --git a/src/FedEx/TrackService/SimpleType/TrackingDocumentType.php b/src/FedEx/TrackService/SimpleType/TrackingDocumentType.php new file mode 100644 index 00000000..9251be0d --- /dev/null +++ b/src/FedEx/TrackService/SimpleType/TrackingDocumentType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + */ +class TrackingDocumentType extends AbstractSimpleType +{ + const _BILL_OF_LADING = 'BILL_OF_LADING'; + const _FREIGHT_BILLING_DOCUMENT = 'FREIGHT_BILLING_DOCUMENT'; + const _SIGNATURE_PROOF_OF_DELIVERY = 'SIGNATURE_PROOF_OF_DELIVERY'; +} diff --git a/src/FedEx/TrackService/SimpleType/WeightUnits.php b/src/FedEx/TrackService/SimpleType/WeightUnits.php index a769da56..ab20d766 100644 --- a/src/FedEx/TrackService/SimpleType/WeightUnits.php +++ b/src/FedEx/TrackService/SimpleType/WeightUnits.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Identifies the collection of units of measure that can be associated with a weight value. + * WeightUnits * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/_wsdl/TrackService_v5.wsdl b/src/FedEx/_wsdl/TrackService_v14.wsdl old mode 100644 new mode 100755 similarity index 53% rename from src/FedEx/_wsdl/TrackService_v5.wsdl rename to src/FedEx/_wsdl/TrackService_v14.wsdl index 2c9f815d..9c402406 --- a/src/FedEx/_wsdl/TrackService_v5.wsdl +++ b/src/FedEx/_wsdl/TrackService_v14.wsdl @@ -1,1510 +1,2274 @@ - - - - - - - - - - - - - - Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). - - - - - Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. - - - - - Name of city, town, etc. - - - - - Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. - - - - - Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. - - - - - Relevant only to addresses in Puerto Rico. - - - - - The two-letter code used to identify a country. - - - - - Indicates whether this address residential (as opposed to commercial). - - - - - - - Identifies where a tracking event occurs. - - - - - - - - - - - - - - - - - - - - - - - - - - - Identification of a FedEx operating company (transportation). - - - - - - - - - - - - - Descriptive data for the client submitting a transaction. - - - - - The FedEx account number associated with this transaction. - - - - - This number is assigned by FedEx and identifies the unique device from which the request is originating - - - - - Only used in transactions which require identification of the Fed Ex Office integrator. - - - - - The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - - - - - - - The descriptive data for a point-of-contact person. - - - - - Identifies the contact person's name. - - - - - Identifies the contact person's title. - - - - - Identifies the company this contact is associated with. - - - - - Identifies the phone number associated with this contact. - - - - - Identifies the phone extension associated with this contact. - - - - - Identifies the pager number associated with this contact. - - - - - Identifies the fax number associated with this contact. - - - - - Identifies the email address associated with this contact. - - - - - - - - - - - - - The dimensions of this package and the unit type used for the measurements. - - - - - - - - - - - Driving or other transportation distances, distinct from dimension measurements. - - - - - Identifies the distance quantity. - - - - - Identifies the unit of measure for the distance value. - - - - - - - Identifies the collection of units of measure that can be associated with a distance value. - - - - - - - - - Information describing email notifications that will be sent in relation to events that occur during package movement - - - - - A message that will be included in the email notifications - - - - - Information describing the destination of the email, format of the email and events to be notified on - - - - - - - - - - - - - - - The format of the email - - - - - - - - - - - - Identifies the relationship this email recipient has to the shipment. - - - - - The email address to send the notification to - - - - - The types of email notifications being requested for this recipient. - - - - - The format of the email notification. - - - - - The language/locale to be used in this email notification. - - - - - - - - - - - - - - - CM = centimeters, IN = inches - - - - - - - - - Identifies the representation of human-readable text. - - - - - Two-letter code for language (e.g. EN, FR, etc.) - - - - - Two-letter code for the region (e.g. us, ca, etc..). - - - - - - - The descriptive data regarding the result of the submitted transaction. - - - - - The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later - - - - - Indicates the source of this notification. Combined with the Code it uniquely identifies this notification - - - - - A code that represents this notification. Combined with the Source it uniquely identifies this notification. - - - - - Human-readable text that explains this notification. - - - - - The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. - - - - - A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) witout having to parse the message string. - - - - - - - - - Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). - - - - - The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). - - - - - - - Identifies the set of severity values for a Notification. - - - - - - - - - - - - - - - - - - - - Identification for a FedEx operating company (transportation and non-transportation). - - - - - - - - The enumerated packaging type used for this package. - - - - - - - - - - - - - - Tracking number and additional shipment data used to identify a unique shipment for proof of delivery. - - - - - FedEx assigned identifier for a package/shipment. - - - - - The date the package was shipped. - - - - - If the account number used to ship the package is provided in the request the shipper and recipient information is included on the letter or fax. - - - - - FedEx operating company that delivered the package. - - - - - Only country is used for elimination of duplicate tracking numbers. - - - - - - - - - - - - - - The service type of the package/shipment. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - FedEx Signature Proof Of Delivery Fax reply. - - - - - This contains the severity type of the most severe Notification in the Notifications array. - - - - - Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. - - - - - Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. - - - - - Contains the version of the reply being used. - - - - - Confirmation of fax transmission. - - - - - - - FedEx Signature Proof Of Delivery Fax request. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations. - - - - - The version of the request being used. - - - - - Tracking number and additional shipment data used to identify a unique shipment for proof of delivery. - - - - - Additional customer-supplied text to be added to the body of the letter. - - - - - Contact and address information about the person requesting the fax to be sent. - - - - - Contact and address information, including the fax number, about the person to receive the fax. - - - - - - - Identifies the set of SPOD image types. - - - - - - - - FedEx Signature Proof Of Delivery Letter reply. - - - - - This contains the severity type of the most severe Notification in the Notifications array. - - - - - Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. - - - - - Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. - - - - - Image of letter encoded in Base64 format. - - - - - Image of letter encoded in Base64 format. - - - - - - - FedEx Signature Proof Of Delivery Letter request. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations. - - - - - The version of the request being used. - - - - - Tracking number and additional shipment data used to identify a unique shipment for proof of delivery. - - - - - Additional customer-supplied text to be added to the body of the letter. - - - - - Identifies the set of SPOD image types. - - - - - If provided this information will be print on the letter. - - - - - - - Each instance of this data type represents a barcode whose content must be represented as ASCII text (i.e. not binary data). - - - - - The kind of barcode data in this instance. - - - - - The data content of this instance. - - - - - - - - - - - - - - - - - The delivery location at the delivered to address. - - - - - - - - - - - - - - - - Detailed tracking information about a particular package. - - - - - To report soft error on an individual track detail. - - - - - The FedEx package identifier. - - - - - - When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number. - - - - - A code that identifies this type of status. This is the most recent status. - - - - - A human-readable description of this status. - - - - - Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for. - - - - - Used to convey information such as. 1. FedEx has received information about a package but has not yet taken possession of it. 2. FedEx has handed the package off to a third party for final delivery. 3. The package delivery has been cancelled - - - - - Identifies a FedEx operating company (transportation). - - - - - Identifies operating transportation company that is the specific to the carrier code. - - - - - Specifies the FXO production centre contact and address. - - - - - Other related identifiers for this package such as reference numbers. - - - - - Retained for legacy compatibility only. User/screen friendly description of the Service type (e.g. Priority Overnight). - - - - - Strict representation of the Service type (e.g. PRIORITY_OVERNIGHT). - - - - - The weight of this package. - - - - - Physical dimensions of the package. - - - - - The dimensional weight of the package. - - - - - The weight of the entire shipment. - - - - - Retained for legacy compatibility only. - - - - - Strict representation of the Packaging type (e.g. FEDEX_BOX, YOUR_PACKAGING). - - - - - The sequence number of this package in a shipment. This would be 2 if it was package number 2 of 4. - - - - - The number of packages in this shipment. - - - - - - - The address information for the shipper. - - - - - The address of the FedEx pickup location/facility. - - - - - Estimated package pickup time for shipments that haven't been picked up. - - - - - Time package was shipped/tendered over to FedEx. Time portion will be populated if available, otherwise will be set to midnight. - - - - - The distance from the origin to the destination. Returned for Custom Critical shipments. - - - - - Total distance package still has to travel. Returned for Custom Critical shipments. - - - - - The address this package is to be (or has been) delivered. - - - - - The address of the FedEx delivery location/facility. - - - - - Projected package delivery time based on ship time stamp, service and destination. Not populated if delivery has already occurred. - - - - - The time the package was actually delivered. - - - - - Actual address where package was delivered. Differs from destinationAddress, which indicates where the package was to be delivered; This field tells where delivery actually occurred (next door, at station, etc.) - - - - - Identifies the method of office order delivery. - - - - - Strict text indicating the delivery location at the delivered to address. - - - - - User/screen friendly representation of the DeliveryLocationType (delivery location at the delivered to address). Can be returned in localized text. - - - - - This is either the name of the person that signed for the package or "Signature not requested" or "Signature on file". - - - - - True if signed for by signature image is available. - - - - - The types of email notifications that are available for the package. - - - - - Returned for cargo shipments only when they are currently split across vehicles. - - - - - Indicates redirection eligibility as determined by tracking service, subject to refinement/override by redirect-to-hold service. - - - - - Event information for a tracking number. - - - - - - - FedEx scanning information about a package. - - - - - The time this event occurred. - - - - - Carrier's scan code. Pairs with EventDescription. - - - - - Literal description that pairs with the EventType. - - - - - Further defines the Scan Type code's specific type (e.g., DEX08 business closed). Pairs with StatusExceptionDescription. - - - - - Literal description that pairs with the StatusExceptionCode. - - - - - Address information of the station that is responsible for the scan. - - - - - Indicates where the arrival actually occurred. - - - - - - - The type of track to be performed. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - FedEx assigned identifier for a package/shipment. - - - - - When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number. - - - - - Identification of a FedEx operating company (transportation). - - - - - The date the package was shipped (tendered to FedEx). - - - - - The destination address of this package. Only city, state/province, and country are returned. - - - - - Options available for a tracking notification recipient. - - - - - - - Options available for a tracking notification recipient. - - - - - The types of email notifications available for this recipient. - - - - - - - FedEx Track Notification reply. - - - - - This contains the severity type of the most severe Notification in the Notifications array. - - - - - Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. - - - - - Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. - - - - - Contains the version of the reply being used. - - - - - True if duplicate packages (more than one package with the same tracking number) have been found, the packages array contains information about each duplicate. Use this information to determine which of the tracking numbers is the one you need and resend your request using the tracking number and TrackingNumberUniqueIdentifier for that package. - - - - - True if additional packages remain to be retrieved. - - - - - Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true). - - - - - Information about the notifications that are available for this tracking number. If there are duplicates the ship date and destination address information is returned for determining which TrackingNumberUniqueIdentifier to use on a subsequent request. - - - - - - - FedEx Track Notification request. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - The tracking number to which the notifications will be triggered from. - - - - - Indicates whether to return tracking information for all associated packages. - - - - - When the MoreDataAvailable field is true in a TrackNotificationReply the PagingToken must be sent in the subsequent TrackNotificationRequest to retrieve the next page of data. - - - - - Use this field when your original request informs you that there are duplicates of this tracking number. If you get duplicates you will also receive some information about each of the duplicate tracking numbers to enable you to chose one and resend that number along with the TrackingNumberUniqueId to get notifications for that tracking number. - - - - - To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. - - - - - To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. - - - - - Included in the email notification identifying the requester of this notification. - - - - - Included in the email notification identifying the requester of this notification. - - - - - Who to send the email notifications to and for which events. The notificationRecipientType and NotifyOnShipment fields are not used in this request. - - - - - - - The type and value of the package identifier that is to be used to retrieve the tracking information for a package. - - - - - The value to be used to retrieve tracking information for a package. - - - - - The type of the Value to be used to retrieve tracking information for a package (e.g. SHIPPER_REFERENCE, PURCHASE_ORDER, TRACKING_NUMBER_OR_DOORTAG, etc..) . - - - - - - - Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for. - - - - - An identifier for this type of status. - - - - - A human-readable description of this status. - - - - - - - The descriptive data returned from a FedEx package tracking request. - - - - - This contains the severity type of the most severe Notification in the Notifications array. - - - - - Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. - - - - - Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. - - - - - Contains the version of the reply being used. - - - - - True if duplicate packages (more than one package with the same tracking number) have been found, and only limited data will be provided for each one. - - - - - True if additional packages remain to be retrieved. - - - - - Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true). - - - - - Contains detailed tracking information for the requested packages(s). - - - - - - - The descriptive data sent by a client to track a FedEx package. - - - - - Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - Descriptive data identifying the client submitting the transaction. - - - - - Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations. - - - - - The version of the request being used. - - - - - The FedEx operating company (transportation) used for this package's delivery. - - - - - Identifies operating transportation company that is the specific to the carrier code. - - - - - The type and value of the package identifier that is to be used to retrieve the tracking information for a package or group of packages. - - - - - Used to distinguish duplicate FedEx tracking numbers. - - - - - To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. - - - - - To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. - - - - - For tracking by references information either the account number or destination postal code and country must be provided. - - - - - For tracking by references information either the account number or destination postal code and country must be provided. - - - - - If false the reply will contain summary/profile data including current status. If true the reply contains profile + detailed scan activity for each package. - - - - - When the MoreData field = true in a TrackReply the PagingToken must be sent in the subsequent TrackRequest to retrieve the next page of data. - - - - - - - - - - - - - Used when a cargo shipment is split across vehicles. This is used to give the status of each part of the shipment. - - - - - The number of pieces in this part. - - - - - The date and time this status began. - - - - - A code that identifies this type of status. - - - - - A human-readable description of this status. - - - - - - - Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Free form text to be echoed back in the reply. Used to match requests and replies. - - - - - Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). - - - - - - - The descriptive data for the heaviness of an object. - - - - - Identifies the unit of measure associated with a weight value. - - - - - Identifies the weight value of a package/shipment. - - - - - - - Identifies the collection of units of measure that can be associated with a weight value. - - - - - - - - - Used in authentication of the sender's identity. - - - - - Credential used to authenticate a specific software application. This value is provided by FedEx after registration. - - - - - - - Two part authentication string used for the sender's identity - - - - - Identifying part of authentication credential. This value is provided by FedEx after registration - - - - - Secret part of authentication key. This value is provided by FedEx after registration. - - - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Identifies a system or sub-system which performs an operation. - - - - - Identifies the service business level. - - - - - Identifies the service interface level. - - - - - Identifies the service code level. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + + + + + + + + + + + + Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). + + + + + Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + + + + + Name of city, town, etc. + + + + + Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + + + + + Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + + + + + Relevant only to addresses in Puerto Rico. + + + + + The two-letter code used to identify a country. + + + + + The fully spelt out name of a country. + + + + + Indicates whether this address residential (as opposed to commercial). + + + + + The geographic coordinates cooresponding to this address. + + + + + + + Specifies the different appointment times on a specific date. + + + + + + Different appointment time windows on the date specified. + + + + + + + Specifies the details about the appointment time window. + + + + + The description that FedEx Ground uses for the appointment window being specified. + + + + + Specifies the window of time for an appointment. + + + + + + + + The description that FedEx uses for a given appointment window. + + + + + + + + + + + Identifies where a tracking event occurs. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identification of a FedEx operating company (transportation). + + + + + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + + + Value used to identify a commodity description; must be unique within the containing shipment. + + + + + + + + + + + + + + Contains only additional quantitative information other than weight and quantity to calculate duties and taxes. + + + + + + + Defines additional characteristic of commodity used to calculate duties and taxes + + + + + + + + + All data required for this commodity in NAFTA Certificate of Origin. + + + + + + + + + + + + + + + + + True if duplicate packages (more than one package with the same tracking number) have been found, and only limited data will be provided for each one. + + + + + True if additional packages remain to be retrieved. + + + + + Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true). + + + + + Identifies the total number of available track details across all pages. + + + + + Contains detailed tracking information for the requested packages(s). + + + + + + + The descriptive data for a point-of-contact person. + + + + + Identifies the contact person's name. + + + + + Identifies the contact person's title. + + + + + Identifies the company this contact is associated with. + + + + + Identifies the phone number associated with this contact. + + + + + Identifies the phone extension associated with this contact. + + + + + Identifies a toll free number, if any, associated with this contact. + + + + + Identifies the pager number associated with this contact. + + + + + Identifies the fax number associated with this contact. + + + + + Identifies the email address associated with this contact. + + + + + + + + + + + + + + + + + + + + + + + Unique identifier for the customer exception request. + + + + + + + + + + + + + Specifies additional description about customs options. This is a required field when the customs options type is "OTHER". + + + + + + + + + + + + + + + + + + + + + + + + + + + Details about the eligibility for a delivery option. + + + + + Type of delivery option. + + + + + Eligibility of the customer for the specific delivery option. + + + + + + + Specifies the different option types for delivery. + + + + + + + + + + + + + + + + + + + Driving or other transportation distances, distinct from dimension measurements. + + + + + Identifies the distance quantity. + + + + + Identifies the unit of measure for the distance value. + + + + + + + + + + + + + Successive parts of the document (only one, for PDF documents). + + + + + The one-origin position of this part within a document. + + + + + Graphic or printer commands for this image within a document. + + + + + + + + + + Specifies the name associated with the email address. + + + + + + + + + + Customer-declared value, with data type and legal values depending on excise condition, used in defining the taxable value of the item. + + + + + + + Specifies different values of eligibility status + + + + + + + + + + Identifies a kind of FedEx facility. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + + + + + + + + + + + Time Range specified in local time. + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + + + + + + + + + + + + + + + Defined by NAFTA regulations. + + + + + Defined by NAFTA regulations. + + + + + Identification of which producer is associated with this commodity (if multiple producers are used in a single shipment). + + + + + + Date range over which RVC net cost was calculated. + + + + + + + + + + + + + See instructions for NAFTA Certificate of Origin for code definitions. + + + + + + + + + + + + + See instructions for NAFTA Certificate of Origin for code definitions. + + + + + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Indicates the type of notification that will be sent. + + + + + Specifies the email notification details. + + + + + Specifies the localization for this notification. + + + + + + + + + + + + + + + + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Identification for a FedEx operating company (transportation and non-transportation). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + When the MoreData field = true in a TrackReply the PagingToken must be sent in the subsequent TrackRequest to retrieve the next page of data. + + + + + Specifies the number of results to display per page when the there is more than one page in the subsequent TrackReply. + + + + + + + This enumeration rationalizes the former FedEx Express international "admissibility package" types (based on ANSI X.12) and the FedEx Freight packaging types. The values represented are those common to both carriers. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This contains the severity type of the most severe Notification in the Notifications array. + + + + + Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. + + + + + Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. + + + + + Contains the version of the reply being used. + + + + + True if duplicate packages (more than one package with the same tracking number) have been found, the packages array contains information about each duplicate. Use this information to determine which of the tracking numbers is the one you need and resend your request using the tracking number and TrackingNumberUniqueIdentifier for that package. + + + + + True if additional packages remain to be retrieved. + + + + + Value that must be passed in a TrackNotification request to retrieve the next set of packages (when MoreDataAvailable = true). + + + + + Information about the notifications that are available for this tracking number. If there are duplicates the ship date and destination address information is returned for determining which TrackingNumberUniqueIdentifier to use on a subsequent request. + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + Descriptive data identifying the client submitting the transaction. + + + + + Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations + + + + + + The tracking number to which the notifications will be triggered from. + + + + + Indicates whether to return tracking information for all associated packages. + + + + + When the MoreDataAvailable field is true in a TrackNotificationReply the PagingToken must be sent in the subsequent TrackNotificationRequest to retrieve the next page of data. + + + + + Use this field when your original request informs you that there are duplicates of this tracking number. If you get duplicates you will also receive some information about each of the duplicate tracking numbers to enable you to chose one and resend that number along with the TrackingNumberUniqueId to get notifications for that tracking number. + + + + + To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. + + + + + To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. + + + + + Included in the email notification identifying the requester of this notification. + + + + + Included in the email notification identifying the requester of this notification. + + + + + This replaces eMailNotificationDetail + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the status of the track special instructions requested. + + + + + Time when the status was changed. + + + + + + + + + + + + + + + + + + + Each instance of this data type represents a barcode whose content must be represented as ASCII text (i.e. not binary data). + + + + + The kind of barcode data in this instance. + + + + + The data content of this instance. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To report soft error on an individual track detail. + + + + + The FedEx package identifier. + + + + + + When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number. + + + + + Specifies details about the status of the shipment being tracked. + + + + + Notifications to the end user that provide additional information relevant to the tracked shipment. For example, a notification may indicate that a change in behavior has occurred. + + + + + + Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for. + + + + + Used to convey information such as. 1. FedEx has received information about a package but has not yet taken possession of it. 2. FedEx has handed the package off to a third party for final delivery. 3. The package delivery has been cancelled + + + + + + + Identifies a FedEx operating company (transportation). + + + + + Identifies operating transportation company that is the specific to the carrier code. + + + + + Specifies a detailed description about the carrier or the operating company. + + + + + If the package was interlined to a cartage agent, this is the name of the cartage agent. (Returned for CSR SL only.) + + + + + Specifies the FXO production centre contact and address. + + + + + + (Returned for CSR SL only.) + + + + + Specifies details about service such as service description and type. + + + + + The weight of this package. + + + + + Physical dimensions of the package. + + + + + The dimensional weight of the package. + + + + + The weight of the entire shipment. + + + + + Retained for legacy compatibility only. + + + + + Strict representation of the Packaging type (e.g. FEDEX_BOX, YOUR_PACKAGING). + + + + + + The sequence number of this package in a shipment. This would be 2 if it was package number 2 of 4. + + + + + The number of packages in this shipment. + + + + + FOR FEDEX INTERNAL USE ONLY: Specifies the software id of the device that was used to create this tracked shipment. + + + + + Specifies the details about the SPOC details. + + + + + + + + + + + + + Specifies the reason for return. + + + + + + List of special handlings that applied to this package. + + + + + Specifies the details about the payments for the shipment being tracked. + + + + + (Returned for CSR SL only.) + + + + + Indicates last-known possession of package (Returned for CSR SL only.) + + + + + + The address of the FedEx pickup location/facility. + + + + + (Returned for CSR SL only.) + + + + + + The distance from the origin to the destination. Returned for Custom Critical shipments. + + + + + Total distance package still has to travel. Returned for Custom Critical shipments. + + + + + Provides additional details about package delivery. + + + + + (Returned for CSR SL only.) + + + + + This is the latest updated destination address. + + + + + The address this package is to be (or has been) delivered. + + + + + + The address this package is requested to placed on hold. + + + + + (Returned for CSR SL only.) + + + + + The address of the FedEx delivery location/facility. + + + + + + + Actual address where package was delivered. Differs from destinationAddress, which indicates where the package was to be delivered; This field tells where delivery actually occurred (next door, at station, etc.) + + + + + Identifies the method of office order delivery. + + + + + Strict text indicating the delivery location at the delivered to address. + + + + + User/screen friendly representation of the DeliveryLocationType (delivery location at the delivered to address). Can be returned in localized text. + + + + + Specifies the number of delivery attempts made to deliver the shipment. + + + + + This is either the name of the person that signed for the package or "Signature not requested" or "Signature on file". + + + + + Specifies the details about the count of the packages delivered at the delivery location and the count of the packages at the origin. + + + + + Specifies the total number of unique addresses on the CRNs in a consolidation. + + + + + + + + Returned for cargo shipments only when they are currently split across vehicles. + + + + + Specifies the details about the eligibility for different delivery options. + + + + + Event information for a tracking number. + + + + + + + + + + + + FedEx scanning information about a package. + + + + + The time this event occurred. + + + + + Carrier's scan code. Pairs with EventDescription. + + + + + Literal description that pairs with the EventType. + + + + + Further defines the Scan Type code's specific type (e.g., DEX08 business closed). Pairs with StatusExceptionDescription. + + + + + Literal description that pairs with the StatusExceptionCode. + + + + + Address information of the station that is responsible for the scan. + + + + + FedEx location ID where the scan took place. (Returned for CSR SL only.) + + + + + Indicates where the arrival actually occurred. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A code that designates the type of informational message being returned. + + + + + The informational message in human readable form. + + + + + + + + + FedEx assigned identifier for a package/shipment. + + + + + When duplicate tracking numbers exist this data is returned with summary information for each of the duplicates. The summary information is used to determine which of the duplicates the intended tracking number is. This identifier is used on a subsequent track request to retrieve the tracking data for the desired tracking number. + + + + + Identification of a FedEx operating company (transportation). + + + + + The date the package was shipped (tendered to FedEx). + + + + + The destination address of this package. Only city, state/province, and country are returned. + + + + + Options available for a tracking notification recipient. + + + + + + + Options available for a tracking notification recipient. + + + + + + + + + + + + + + + The type and value of the package identifier that is to be used to retrieve the tracking information for a package. + + + + + The type of the Value to be used to retrieve tracking information for a package (e.g. SHIPPER_REFERENCE, PURCHASE_ORDER, TRACKING_NUMBER_OR_DOORTAG, etc..) . + + + + + The value to be used to retrieve tracking information for a package. + + + + + + + + + Indicates the classification of the charges being paid. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Used to report the status of a piece of a multiple piece shipment which is no longer traveling with the rest of the packages in the shipment or has not been accounted for. + + + + + An identifier for this type of status. + + + + + A human-readable description of this status. + + + + + + + + + This contains the severity type of the most severe Notification in the Notifications array. + + + + + Information about the request/reply such was the transaction successful or not, and any additional information relevant to the request and/or reply. There may be multiple Notifications in a reply. + + + + + Contains the CustomerTransactionDetail that is echoed back to the caller for matching requests and replies and a Localization element for defining the language/translation used in the reply data. + + + + + Contains the version of the reply being used. + + + + + Contains detailed tracking entity information. + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + Descriptive data identifying the client submitting the transaction. + + + + + Contains a free form field that is echoed back in the reply to match requests with replies and data that governs the data payload language/translations. + + + + + The version of the request being used. + + + + + Specifies the details needed to select the shipment being requested to be tracked. + + + + + The customer can specify a desired time out value for this particular transaction. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The FedEx operating company (transportation) used for this package's delivery. + + + + + Identifies operating transportation company that is the specific to the carrier code. + + + + + The type and value of the package identifier that is to be used to retrieve the tracking information for a package or group of packages. + + + + + Used to distinguish duplicate FedEx tracking numbers. + + + + + To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. + + + + + To narrow the search to a period in time the ShipDateRangeBegin and ShipDateRangeEnd can be used to help eliminate duplicates. + + + + + For tracking by references information either the account number or destination postal code and country must be provided. + + + + + Specifies the SPOD account number for the shipment being tracked. + + + + + For tracking by references information either the account number or destination postal code and country must be provided. + + + + + Specifies the details about how to retrieve the subsequent pages when there is more than one page in the TrackReply. + + + + + The customer can specify a desired time out value for this particular tracking number. + + + + + + + + + + + Specifies a shorter description for the service that is calculated per the service code. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the status and status update time of the track special instructions. + + + + + Specifies the estimated delivery time that was originally estimated when the shipment was shipped. + + + + + Specifies the time the customer requested a change to the shipment. + + + + + The requested appointment time for delivery. + + + + + + + Used when a cargo shipment is split across vehicles. This is used to give the status of each part of the shipment. + + + + + The number of pieces in this part. + + + + + The date and time this status began. + + + + + A code that identifies this type of status. + + + + + A human-readable description of this status. + + + + + + + + + + + + + + + Specifies the details about the status of the track information for the shipments being tracked. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the recipients of the email. + + + + + Identifies the person initiating the email. + + + + + This is the localization of the email content. + + + + + A message included in the body of the email. + + + + + + + + + + + + The localization for the generated document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + The descriptive data for the heaviness of an object. + + + + + Identifies the unit of measure associated with a weight value. + + + + + Identifies the weight value of a package/shipment. + + + + + + + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/FedEx/Tests/TrackServiceTest.php b/tests/FedEx/Tests/TrackServiceTest.php index 8ee40af2..ea76a085 100644 --- a/tests/FedEx/Tests/TrackServiceTest.php +++ b/tests/FedEx/Tests/TrackServiceTest.php @@ -10,28 +10,16 @@ class TrackServiceTest extends TestCase { public function testTrackServiceRequest() { - $trackNotificationRequest = new ComplexType\TrackNotificationRequest(); - $retrieveSignatureProofOfDeliveryLetterRequest = new ComplexType\SignatureProofOfDeliveryLetterRequest(); - $sendSignatureProofOfDeliveryFaxRequest = new ComplexType\SignatureProofOfDeliveryFaxRequest(); $trackRequest = new ComplexType\TrackRequest(); $populator = new ComplexTypePopulator(); - $populator->populate($trackNotificationRequest); - $populator->populate($retrieveSignatureProofOfDeliveryLetterRequest); - $populator->populate($sendSignatureProofOfDeliveryFaxRequest); $populator->populate($trackRequest); $mockSoapClient = $this->getMockFromWsdl(Request::getWsdlPath()); - $mockSoapClient->method('getTrackNotification')->will($this->returnValue(ComplexType\TrackNotificationRequest::class)); - $mockSoapClient->method('retrieveSignatureProofOfDeliveryLetter')->will($this->returnValue(ComplexType\SignatureProofOfDeliveryLetterRequest::class)); - $mockSoapClient->method('sendSignatureProofOfDeliveryFax')->will($this->returnValue(ComplexType\SignatureProofOfDeliveryFaxRequest::class)); $mockSoapClient->method('track')->will($this->returnValue(ComplexType\TrackRequest::class)); $request = new Request($mockSoapClient); - $this->assertEquals(ComplexType\TrackNotificationRequest::class, $request->getGetTrackNotificationReply($trackNotificationRequest, true)); - $this->assertEquals(ComplexType\SignatureProofOfDeliveryLetterRequest::class, $request->getRetrieveSignatureProofOfDeliveryLetterReply($retrieveSignatureProofOfDeliveryLetterRequest, true)); - $this->assertEquals(ComplexType\SignatureProofOfDeliveryFaxRequest::class, $request->getSendSignatureProofOfDeliveryFaxReply($sendSignatureProofOfDeliveryFaxRequest, true)); $this->assertEquals(ComplexType\TrackRequest::class, $request->getTrackReply($trackRequest, true)); } } diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 6d02cc19..26b87bab 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -92,7 +92,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //TrackService - $wsdlPath = $fedexSrcDir . '/_wsdl/TrackService_v5.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/TrackService_v14.wsdl'; $baseNamespace = 'FedEx\TrackService'; $subPackageName = 'Track Service'; From ecfcc6b4fbd0fd97bd31d07bfe93e0cbb824a4f0 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 5 Nov 2017 09:45:23 -0600 Subject: [PATCH 07/33] Updated Validation Availability and Commitment Service to version 8. --- ...idation-availability-and-commitment-service.php | 2 +- .../ComplexType/Address.php | 13 +++++++++++++ .../Request.php | 2 +- .../SimpleType/ServiceType.php | 1 + ...dationAvailabilityAndCommitmentService_v8.wsdl} | 14 ++++++++++---- util/Cli/GenerateCode/Command/GenerateCode.php | 2 +- 6 files changed, 27 insertions(+), 7 deletions(-) rename src/FedEx/_wsdl/{ValidationAvailabilityAndCommitmentService_v6.wsdl => ValidationAvailabilityAndCommitmentService_v8.wsdl} (96%) diff --git a/examples/validation-availability-and-commitment-service.php b/examples/validation-availability-and-commitment-service.php index f25bdaff..f0c6c3aa 100644 --- a/examples/validation-availability-and-commitment-service.php +++ b/examples/validation-availability-and-commitment-service.php @@ -18,7 +18,7 @@ $serviceAvailabilityRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; //version $serviceAvailabilityRequest->Version->ServiceId = 'vacs'; -$serviceAvailabilityRequest->Version->Major = 6; +$serviceAvailabilityRequest->Version->Major = 8; $serviceAvailabilityRequest->Version->Intermediate = 0; $serviceAvailabilityRequest->Version->Minor = 0; //origin diff --git a/src/FedEx/ValidationAvailabilityAndCommitmentService/ComplexType/Address.php b/src/FedEx/ValidationAvailabilityAndCommitmentService/ComplexType/Address.php index 9f1df82a..66a78f1d 100644 --- a/src/FedEx/ValidationAvailabilityAndCommitmentService/ComplexType/Address.php +++ b/src/FedEx/ValidationAvailabilityAndCommitmentService/ComplexType/Address.php @@ -12,6 +12,7 @@ * * @property string $PostalCode * @property string $CountryCode + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -46,4 +47,16 @@ public function setCountryCode($countryCode) $this->values['CountryCode'] = $countryCode; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/ValidationAvailabilityAndCommitmentService/Request.php b/src/FedEx/ValidationAvailabilityAndCommitmentService/Request.php index 4d6f4528..46ae514d 100644 --- a/src/FedEx/ValidationAvailabilityAndCommitmentService/Request.php +++ b/src/FedEx/ValidationAvailabilityAndCommitmentService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/ValidationAvailabilityAndCommitment'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/ValidationAvailabilityAndCommitment'; - protected static $wsdlFileName = 'ValidationAvailabilityAndCommitmentService_v6.wsdl'; + protected static $wsdlFileName = 'ValidationAvailabilityAndCommitmentService_v8.wsdl'; /** * Sends the ServiceAvailabilityRequest and returns the response diff --git a/src/FedEx/ValidationAvailabilityAndCommitmentService/SimpleType/ServiceType.php b/src/FedEx/ValidationAvailabilityAndCommitmentService/SimpleType/ServiceType.php index f7806238..084066fa 100644 --- a/src/FedEx/ValidationAvailabilityAndCommitmentService/SimpleType/ServiceType.php +++ b/src/FedEx/ValidationAvailabilityAndCommitmentService/SimpleType/ServiceType.php @@ -36,6 +36,7 @@ class ServiceType extends AbstractSimpleType const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; const _SAME_DAY = 'SAME_DAY'; diff --git a/src/FedEx/_wsdl/ValidationAvailabilityAndCommitmentService_v6.wsdl b/src/FedEx/_wsdl/ValidationAvailabilityAndCommitmentService_v8.wsdl similarity index 96% rename from src/FedEx/_wsdl/ValidationAvailabilityAndCommitmentService_v6.wsdl rename to src/FedEx/_wsdl/ValidationAvailabilityAndCommitmentService_v8.wsdl index 6ab1817e..fdec1fa1 100755 --- a/src/FedEx/_wsdl/ValidationAvailabilityAndCommitmentService_v6.wsdl +++ b/src/FedEx/_wsdl/ValidationAvailabilityAndCommitmentService_v8.wsdl @@ -1,6 +1,6 @@ - + - + @@ -18,6 +18,11 @@ The two-letter code used to identify a country. + + + The geographic coordinates cooresponding to this address. + + @@ -230,6 +235,7 @@ + @@ -320,7 +326,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -354,7 +360,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 26b87bab..2041bbf2 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -315,7 +315,7 @@ protected function execute(InputInterface $input, OutputInterface $output) /* * Validation and Commitment Service (v6) */ - $wsdlPath = $fedexSrcDir . '/_wsdl/ValidationAvailabilityAndCommitmentService_v6.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/ValidationAvailabilityAndCommitmentService_v8.wsdl'; $baseNamespace = 'FedEx\ValidationAvailabilityAndCommitmentService'; $subPackageName = 'Validation Availability And Commitment Service Service'; From 3b4195cc94b41ee5feac04079a1493329e6e2588 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 5 Nov 2017 09:56:01 -0600 Subject: [PATCH 08/33] Updated Locations Service to version 7. --- CHANGELOG.md | 3 +- README.md | 2 +- .../ComplexType/Address.php | 40 +- .../ComplexType/AddressAncillaryDetail.php | 166 +++ .../AddressToLocationRelationshipDetail.php | 62 + .../ComplexType/CarrierDetail.php | 127 ++ .../ComplexType/ClearanceCountryDetail.php | 49 + .../ComplexType/ClearanceLocationDetail.php | 101 ++ .../ComplexType/ClientDetail.php | 101 ++ .../LocationsService/ComplexType/Contact.php | 153 +++ .../ComplexType/Distance.php | 14 +- .../ComplexType/DistanceAndLocationDetail.php | 75 ++ .../LocationsService/ComplexType/Holiday.php | 49 + .../ComplexType/LatestDropOffDetail.php | 62 + .../LatestDropoffOverlayDetail.php | 49 + .../ComplexType/Localization.php | 10 +- .../ComplexType/LocationContactAndAddress.php | 62 + .../ComplexType/LocationDetail.php | 257 +++++ .../ComplexType/LocationHours.php | 62 + .../LocationIdentificationDetail.php | 62 + .../ComplexType/LocationSortDetail.php | 49 + .../ComplexType/Notification.php | 22 +- .../ComplexType/NotificationParameter.php | 8 +- .../ReservationAvailabilityDetail.php | 36 + .../ComplexType/SearchLocationConstraints.php | 140 +++ .../ComplexType/SearchLocationsReply.php | 127 ++ .../ComplexType/SearchLocationsRequest.php | 192 ++++ .../ComplexType/ShippingHoliday.php | 49 + .../ComplexType/TimeRange.php | 49 + .../ComplexType/TransactionDetail.php | 10 +- .../ComplexType/UniqueTrackingNumber.php | 62 + .../ComplexType/VersionId.php | 12 +- .../WebAuthenticationCredential.php | 10 +- .../ComplexType/WebAuthenticationDetail.php | 17 +- src/FedEx/LocationsService/Request.php | 38 + .../SimpleType/CarrierCodeType.php | 21 + .../SimpleType/ConsolidationType.php | 20 + .../SimpleType/CountryRelationshipType.php | 17 + .../SimpleType/DayOfWeekType.php | 22 + .../SimpleType/DistanceUnits.php | 6 +- .../SimpleType/DistributionClearanceType.php | 17 + .../SimpleType/ExpressRegionCode.php | 20 + .../SimpleType/FedExLocationType.php | 25 + .../SimpleType/LatestDropOffOverlayType.php | 16 + .../SimpleType/LocationAccessibilityType.php | 17 + .../SimpleType/LocationAttributesType.php | 47 + .../SimpleType/LocationContentOptionType.php | 19 + .../SimpleType/LocationSearchFilterType.php | 17 + .../SimpleType/LocationSortCriteriaType.php | 19 + .../SimpleType/LocationSortOrderType.php | 17 + .../LocationsSearchCriteriaType.php | 18 + .../SimpleType/MultipleMatchesActionType.php | 18 + .../SimpleType/NotificationSeverityType.php | 6 +- .../SimpleType/OperationalHoursType.php | 18 + .../SimpleType/PackageSpecialServiceType.php | 24 + .../SimpleType/ReservationAttributesType.php | 16 + .../SimpleType/ServiceCategoryType.php | 17 + .../SimpleType/ServiceType.php | 49 + .../SimpleType/ShippingActionType.php | 17 + .../SupportedRedirectToHoldServiceType.php | 18 + .../ComplexType/ClientDetail.php | 62 - .../ComplexType/DropoffLocation.php | 114 -- .../ComplexType/DropoffLocationProfile.php | 205 ---- .../ComplexType/DropoffServicesDesired.php | 231 ---- .../ComplexType/FedExLocatorReply.php | 101 -- .../ComplexType/FedExLocatorRequest.php | 153 --- src/FedEx/LocatorService/Request.php | 38 - .../SimpleType/RedirectToHoldLocationType.php | 18 - src/FedEx/_wsdl/LocationsService_v7.wsdl | 1024 +++++++++++++++++ src/FedEx/_wsdl/LocatorService_v2.wsdl | 680 ----------- tests/FedEx/Tests/LocatorServiceTest.php | 12 +- tests/FedEx/Tests/TestCase.php | 10 +- .../Cli/GenerateCode/Command/GenerateCode.php | 14 +- 73 files changed, 3813 insertions(+), 1677 deletions(-) rename src/FedEx/{LocatorService => LocationsService}/ComplexType/Address.php (64%) create mode 100644 src/FedEx/LocationsService/ComplexType/AddressAncillaryDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/AddressToLocationRelationshipDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/CarrierDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/ClearanceLocationDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/ClientDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/Contact.php rename src/FedEx/{LocatorService => LocationsService}/ComplexType/Distance.php (56%) create mode 100644 src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/Holiday.php create mode 100644 src/FedEx/LocationsService/ComplexType/LatestDropOffDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/LatestDropoffOverlayDetail.php rename src/FedEx/{LocatorService => LocationsService}/ComplexType/Localization.php (75%) create mode 100644 src/FedEx/LocationsService/ComplexType/LocationContactAndAddress.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationHours.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationIdentificationDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationSortDetail.php rename src/FedEx/{LocatorService => LocationsService}/ComplexType/Notification.php (51%) rename src/FedEx/{LocatorService => LocationsService}/ComplexType/NotificationParameter.php (75%) create mode 100644 src/FedEx/LocationsService/ComplexType/ReservationAvailabilityDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php create mode 100644 src/FedEx/LocationsService/ComplexType/SearchLocationsReply.php create mode 100644 src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php create mode 100644 src/FedEx/LocationsService/ComplexType/ShippingHoliday.php create mode 100644 src/FedEx/LocationsService/ComplexType/TimeRange.php rename src/FedEx/{LocatorService => LocationsService}/ComplexType/TransactionDetail.php (64%) create mode 100644 src/FedEx/LocationsService/ComplexType/UniqueTrackingNumber.php rename src/FedEx/{LocatorService => LocationsService}/ComplexType/VersionId.php (82%) rename src/FedEx/{LocatorService => LocationsService}/ComplexType/WebAuthenticationCredential.php (72%) rename src/FedEx/{LocatorService => LocationsService}/ComplexType/WebAuthenticationDetail.php (63%) create mode 100644 src/FedEx/LocationsService/Request.php create mode 100644 src/FedEx/LocationsService/SimpleType/CarrierCodeType.php create mode 100644 src/FedEx/LocationsService/SimpleType/ConsolidationType.php create mode 100644 src/FedEx/LocationsService/SimpleType/CountryRelationshipType.php create mode 100644 src/FedEx/LocationsService/SimpleType/DayOfWeekType.php rename src/FedEx/{LocatorService => LocationsService}/SimpleType/DistanceUnits.php (63%) create mode 100644 src/FedEx/LocationsService/SimpleType/DistributionClearanceType.php create mode 100644 src/FedEx/LocationsService/SimpleType/ExpressRegionCode.php create mode 100644 src/FedEx/LocationsService/SimpleType/FedExLocationType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LatestDropOffOverlayType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationAccessibilityType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationAttributesType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationContentOptionType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationSortCriteriaType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationSortOrderType.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationsSearchCriteriaType.php create mode 100644 src/FedEx/LocationsService/SimpleType/MultipleMatchesActionType.php rename src/FedEx/{LocatorService => LocationsService}/SimpleType/NotificationSeverityType.php (71%) create mode 100644 src/FedEx/LocationsService/SimpleType/OperationalHoursType.php create mode 100644 src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php create mode 100644 src/FedEx/LocationsService/SimpleType/ReservationAttributesType.php create mode 100644 src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php create mode 100644 src/FedEx/LocationsService/SimpleType/ServiceType.php create mode 100644 src/FedEx/LocationsService/SimpleType/ShippingActionType.php create mode 100644 src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php delete mode 100644 src/FedEx/LocatorService/ComplexType/ClientDetail.php delete mode 100644 src/FedEx/LocatorService/ComplexType/DropoffLocation.php delete mode 100644 src/FedEx/LocatorService/ComplexType/DropoffLocationProfile.php delete mode 100644 src/FedEx/LocatorService/ComplexType/DropoffServicesDesired.php delete mode 100644 src/FedEx/LocatorService/ComplexType/FedExLocatorReply.php delete mode 100644 src/FedEx/LocatorService/ComplexType/FedExLocatorRequest.php delete mode 100644 src/FedEx/LocatorService/Request.php delete mode 100644 src/FedEx/LocatorService/SimpleType/RedirectToHoldLocationType.php create mode 100755 src/FedEx/_wsdl/LocationsService_v7.wsdl delete mode 100644 src/FedEx/_wsdl/LocatorService_v2.wsdl diff --git a/CHANGELOG.md b/CHANGELOG.md index de372d02..cb6d97db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,13 +7,14 @@ - Updated Address Validation Service - Updated Rate Service - Updated Track Service +- Updated Locations Service |Service|Version| |---|---| |Address Validation|4| |Close|5| |Courier Dispatch|3| -|Locator|2| +|Locations|7| |Package Movement Information|5| |Pickup|15| |Rate|22| diff --git a/README.md b/README.md index ea87ae67..e659a222 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Each web service has it's own class namespace. See the official FedEx web servic * [Address Validation Service](src/FedEx/AddressValidationService) * [Close Service](src/FedEx/CloseService) * [Courier Dispatch Service](src/FedEx/CourierDispatchService) -* [Locator Service](src/FedEx/LocatorService) +* [Locations Service](src/FedEx/LocationsService) * [Package Movement Information Service](src/FedEx/PackageMovementInformationService) * [Pickup Service](src/FedEx/PickupService) * [Rate Service](src/FedEx/RateService) diff --git a/src/FedEx/LocatorService/ComplexType/Address.php b/src/FedEx/LocationsService/ComplexType/Address.php similarity index 64% rename from src/FedEx/LocatorService/ComplexType/Address.php rename to src/FedEx/LocationsService/ComplexType/Address.php index 95a7515f..382cdb18 100644 --- a/src/FedEx/LocatorService/ComplexType/Address.php +++ b/src/FedEx/LocationsService/ComplexType/Address.php @@ -1,14 +1,14 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property string[] $StreetLines * @property string $City @@ -16,7 +16,9 @@ * @property string $PostalCode * @property string $UrbanizationCode * @property string $CountryCode + * @property string $CountryName * @property boolean $Residential + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -29,7 +31,7 @@ class Address extends AbstractComplexType protected $name = 'Address'; /** - * Combination of number, street name, etc. Empty lines should not be included. + * Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. * * @param string $streetLines * @return $this @@ -77,7 +79,7 @@ public function setPostalCode($postalCode) } /** - * Relevant only to addresses in Puerto Rico. In Puerto Rico, multiple addresses within the same ZIP code can have the same house number and street name. When this is the case, the urbanization code is needed to distinguish them. + * Relevant only to addresses in Puerto Rico. * * @param string $urbanizationCode * @return $this @@ -89,7 +91,7 @@ public function setUrbanizationCode($urbanizationCode) } /** - * Identification of a country. Defaults to "US". Valid values: US - United States, CA - Canada. + * The two-letter code used to identify a country. * * @param string $countryCode * @return $this @@ -101,7 +103,19 @@ public function setCountryCode($countryCode) } /** - * Indicates whether this address is residential (as opposed to commercial). + * The fully spelt out name of a country. + * + * @param string $countryName + * @return $this + */ + public function setCountryName($countryName) + { + $this->values['CountryName'] = $countryName; + return $this; + } + + /** + * Indicates whether this address residential (as opposed to commercial). * * @param boolean $residential * @return $this @@ -111,4 +125,16 @@ public function setResidential($residential) $this->values['Residential'] = $residential; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/LocationsService/ComplexType/AddressAncillaryDetail.php b/src/FedEx/LocationsService/ComplexType/AddressAncillaryDetail.php new file mode 100644 index 00000000..4988a77f --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/AddressAncillaryDetail.php @@ -0,0 +1,166 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $LocationInCity + * @property string $LocationInProperty + * @property \FedEx\LocationsService\SimpleType\LocationAccessibilityType|string $Accessibility + * @property string $Building + * @property string $Department + * @property string $RoomFloor + * @property string $Suite + * @property string $Apartment + * @property string $Room + * @property string $CrossStreet + * @property string[] $AdditionalDescriptions + + */ +class AddressAncillaryDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AddressAncillaryDetail'; + + /** + * Set LocationInCity + * + * @param string $locationInCity + * @return $this + */ + public function setLocationInCity($locationInCity) + { + $this->values['LocationInCity'] = $locationInCity; + return $this; + } + + /** + * Set LocationInProperty + * + * @param string $locationInProperty + * @return $this + */ + public function setLocationInProperty($locationInProperty) + { + $this->values['LocationInProperty'] = $locationInProperty; + return $this; + } + + /** + * Indicates whether how this location can be accessed. + * + * @param \FedEx\LocationsService\SimpleType\LocationAccessibilityType|string $accessibility + * @return $this + */ + public function setAccessibility($accessibility) + { + $this->values['Accessibility'] = $accessibility; + return $this; + } + + /** + * Specifies building number or name. + * + * @param string $building + * @return $this + */ + public function setBuilding($building) + { + $this->values['Building'] = $building; + return $this; + } + + /** + * Specifies a department in the company or retail store. + * + * @param string $department + * @return $this + */ + public function setDepartment($department) + { + $this->values['Department'] = $department; + return $this; + } + + /** + * Specifies the floor number. + * + * @param string $roomFloor + * @return $this + */ + public function setRoomFloor($roomFloor) + { + $this->values['RoomFloor'] = $roomFloor; + return $this; + } + + /** + * Set Suite + * + * @param string $suite + * @return $this + */ + public function setSuite($suite) + { + $this->values['Suite'] = $suite; + return $this; + } + + /** + * Specifies apartment number. + * + * @param string $apartment + * @return $this + */ + public function setApartment($apartment) + { + $this->values['Apartment'] = $apartment; + return $this; + } + + /** + * Specifies the room number, if one is specified. + * + * @param string $room + * @return $this + */ + public function setRoom($room) + { + $this->values['Room'] = $room; + return $this; + } + + /** + * Set CrossStreet + * + * @param string $crossStreet + * @return $this + */ + public function setCrossStreet($crossStreet) + { + $this->values['CrossStreet'] = $crossStreet; + return $this; + } + + /** + * This is used to specify additional details about the address such as landmark. For e.g. This field is used to capture details such as an address being inside a facility such as, Chilli's Care Center, St. Jude - Inside. + * + * @param string $additionalDescriptions + * @return $this + */ + public function setAdditionalDescriptions($additionalDescriptions) + { + $this->values['AdditionalDescriptions'] = $additionalDescriptions; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/AddressToLocationRelationshipDetail.php b/src/FedEx/LocationsService/ComplexType/AddressToLocationRelationshipDetail.php new file mode 100644 index 00000000..8ffcfec9 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/AddressToLocationRelationshipDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Address $MatchedAddress + * @property string $MatchedAddressGeographicCoordinates + * @property DistanceAndLocationDetail[] $DistanceAndLocationDetails + + */ +class AddressToLocationRelationshipDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AddressToLocationRelationshipDetail'; + + /** + * Address as provided in the request. + * + * @param Address $matchedAddress + * @return $this + */ + public function setMatchedAddress(Address $matchedAddress) + { + $this->values['MatchedAddress'] = $matchedAddress; + return $this; + } + + /** + * Specify the geographic co-ordinates for the matched address. + * + * @param string $matchedAddressGeographicCoordinates + * @return $this + */ + public function setMatchedAddressGeographicCoordinates($matchedAddressGeographicCoordinates) + { + $this->values['MatchedAddressGeographicCoordinates'] = $matchedAddressGeographicCoordinates; + return $this; + } + + /** + * Specifies the distance between the matched address and the addresses of matched FedEx locations. Also specifies the details of the FedEx locations. + * + * @param DistanceAndLocationDetail[] $distanceAndLocationDetails + * @return $this + */ + public function setDistanceAndLocationDetails(array $distanceAndLocationDetails) + { + $this->values['DistanceAndLocationDetails'] = $distanceAndLocationDetails; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/CarrierDetail.php b/src/FedEx/LocationsService/ComplexType/CarrierDetail.php new file mode 100644 index 00000000..843e53ed --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/CarrierDetail.php @@ -0,0 +1,127 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\CarrierCodeType|string $Carrier + * @property \FedEx\LocationsService\SimpleType\ServiceCategoryType|string $ServiceCategory + * @property \FedEx\LocationsService\SimpleType\ServiceType|string $ServiceType + * @property \FedEx\LocationsService\SimpleType\CountryRelationshipType|string $CountryRelationship + * @property LatestDropOffDetail[] $NormalLatestDropOffDetails + * @property LatestDropOffDetail[] $ExceptionalLatestDropOffDetails + * @property LatestDropOffDetail $EffectiveLatestDropOffDetails + * @property ShippingHoliday[] $ShippingHolidays + + */ +class CarrierDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'CarrierDetail'; + + /** + * Set Carrier + * + * @param \FedEx\LocationsService\SimpleType\CarrierCodeType|string $carrier + * @return $this + */ + public function setCarrier($carrier) + { + $this->values['Carrier'] = $carrier; + return $this; + } + + /** + * Set ServiceCategory + * + * @param \FedEx\LocationsService\SimpleType\ServiceCategoryType|string $serviceCategory + * @return $this + */ + public function setServiceCategory($serviceCategory) + { + $this->values['ServiceCategory'] = $serviceCategory; + return $this; + } + + /** + * Set ServiceType + * + * @param \FedEx\LocationsService\SimpleType\ServiceType|string $serviceType + * @return $this + */ + public function setServiceType($serviceType) + { + $this->values['ServiceType'] = $serviceType; + return $this; + } + + /** + * This field describe a subset of the carrier's products or services which may have unique characteristics: i.e. latest drop-off times at a particular location vary depending on the destination type. + * + * @param \FedEx\LocationsService\SimpleType\CountryRelationshipType|string $countryRelationship + * @return $this + */ + public function setCountryRelationship($countryRelationship) + { + $this->values['CountryRelationship'] = $countryRelationship; + return $this; + } + + /** + * Specifies the details about the latest times a drop off can be made at a location most days. These are the normal drop off times. + * + * @param LatestDropOffDetail[] $normalLatestDropOffDetails + * @return $this + */ + public function setNormalLatestDropOffDetails(array $normalLatestDropOffDetails) + { + $this->values['NormalLatestDropOffDetails'] = $normalLatestDropOffDetails; + return $this; + } + + /** + * Specifies the details about the exceptional latest times a drop off can be made at a location. These are drop off times that are a variation from the normal drop off times. + * + * @param LatestDropOffDetail[] $exceptionalLatestDropOffDetails + * @return $this + */ + public function setExceptionalLatestDropOffDetails(array $exceptionalLatestDropOffDetails) + { + $this->values['ExceptionalLatestDropOffDetails'] = $exceptionalLatestDropOffDetails; + return $this; + } + + /** + * Specifies the details about the effective latest times drop off can be made at a location on the date requested. These are drop off times that are derived from the normal and exceptional drop off times, depending upon the date requested. + * + * @param LatestDropOffDetail $effectiveLatestDropOffDetails + * @return $this + */ + public function setEffectiveLatestDropOffDetails(LatestDropOffDetail $effectiveLatestDropOffDetails) + { + $this->values['EffectiveLatestDropOffDetails'] = $effectiveLatestDropOffDetails; + return $this; + } + + /** + * Set ShippingHolidays + * + * @param ShippingHoliday[] $shippingHolidays + * @return $this + */ + public function setShippingHolidays(array $shippingHolidays) + { + $this->values['ShippingHolidays'] = $shippingHolidays; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php b/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php new file mode 100644 index 00000000..bae95a10 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $ClearanceCountry + * @property \FedEx\LocationsService\SimpleType\PackageSpecialServiceType|string[] $SpecialServicesSupported + + */ +class ClearanceCountryDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ClearanceCountryDetail'; + + /** + * Identifies the country whose special services are specified below. + * + * @param string $clearanceCountry + * @return $this + */ + public function setClearanceCountry($clearanceCountry) + { + $this->values['ClearanceCountry'] = $clearanceCountry; + return $this; + } + + /** + * Identifies the constrained special services supported for the country above. + * + * @param \FedEx\LocationsService\SimpleType\PackageSpecialServiceType[]|string[] $specialServicesSupported + * @return $this + */ + public function setSpecialServicesSupported(array $specialServicesSupported) + { + $this->values['SpecialServicesSupported'] = $specialServicesSupported; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/ClearanceLocationDetail.php b/src/FedEx/LocationsService/ComplexType/ClearanceLocationDetail.php new file mode 100644 index 00000000..2923b467 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/ClearanceLocationDetail.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\ServiceType|string[] $ServicesSupported + * @property \FedEx\LocationsService\SimpleType\ConsolidationType|string $ConsolidationType + * @property \FedEx\LocationsService\SimpleType\DistributionClearanceType|string $ClearanceLocationType + * @property \FedEx\LocationsService\SimpleType\PackageSpecialServiceType|string[] $SpecialServicesSupported + * @property ClearanceCountryDetail[] $ClearanceCountries + * @property string $ClearanceRoutingCode + + */ +class ClearanceLocationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ClearanceLocationDetail'; + + /** + * Services supported for clearance + * + * @param \FedEx\LocationsService\SimpleType\ServiceType[]|string[] $servicesSupported + * @return $this + */ + public function setServicesSupported(array $servicesSupported) + { + $this->values['ServicesSupported'] = $servicesSupported; + return $this; + } + + /** + * Identifies the type of consolidation for which these clearance location attributes were extracted. + * + * @param \FedEx\LocationsService\SimpleType\ConsolidationType|string $consolidationType + * @return $this + */ + public function setConsolidationType($consolidationType) + { + $this->values['ConsolidationType'] = $consolidationType; + return $this; + } + + /** + * Identifies the type of clearance performed at this location. + * + * @param \FedEx\LocationsService\SimpleType\DistributionClearanceType|string $clearanceLocationType + * @return $this + */ + public function setClearanceLocationType($clearanceLocationType) + { + $this->values['ClearanceLocationType'] = $clearanceLocationType; + return $this; + } + + /** + * Identifies the constrained special services supported at this location. + * + * @param \FedEx\LocationsService\SimpleType\PackageSpecialServiceType[]|string[] $specialServicesSupported + * @return $this + */ + public function setSpecialServicesSupported(array $specialServicesSupported) + { + $this->values['SpecialServicesSupported'] = $specialServicesSupported; + return $this; + } + + /** + * Set ClearanceCountries + * + * @param ClearanceCountryDetail[] $clearanceCountries + * @return $this + */ + public function setClearanceCountries(array $clearanceCountries) + { + $this->values['ClearanceCountries'] = $clearanceCountries; + return $this; + } + + /** + * Set ClearanceRoutingCode + * + * @param string $clearanceRoutingCode + * @return $this + */ + public function setClearanceRoutingCode($clearanceRoutingCode) + { + $this->values['ClearanceRoutingCode'] = $clearanceRoutingCode; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/ClientDetail.php b/src/FedEx/LocationsService/ComplexType/ClientDetail.php new file mode 100644 index 00000000..ffe1625d --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/ClientDetail.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $AccountNumber + * @property string $MeterNumber + * @property string $MeterInstance + * @property string $IntegratorId + * @property \FedEx\LocationsService\SimpleType\ExpressRegionCode|string $Region + * @property Localization $Localization + + */ +class ClientDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ClientDetail'; + + /** + * The FedEx account number associated with this transaction. + * + * @param string $accountNumber + * @return $this + */ + public function setAccountNumber($accountNumber) + { + $this->values['AccountNumber'] = $accountNumber; + return $this; + } + + /** + * This number is assigned by FedEx and identifies the unique device from which the request is originating + * + * @param string $meterNumber + * @return $this + */ + public function setMeterNumber($meterNumber) + { + $this->values['MeterNumber'] = $meterNumber; + return $this; + } + + /** + * Set MeterInstance + * + * @param string $meterInstance + * @return $this + */ + public function setMeterInstance($meterInstance) + { + $this->values['MeterInstance'] = $meterInstance; + return $this; + } + + /** + * Only used in transactions which require identification of the FedEx Office integrator. + * + * @param string $integratorId + * @return $this + */ + public function setIntegratorId($integratorId) + { + $this->values['IntegratorId'] = $integratorId; + return $this; + } + + /** + * Indicates the region from which the transaction is submitted. + * + * @param \FedEx\LocationsService\SimpleType\ExpressRegionCode|string $region + * @return $this + */ + public function setRegion($region) + { + $this->values['Region'] = $region; + return $this; + } + + /** + * The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/Contact.php b/src/FedEx/LocationsService/ComplexType/Contact.php new file mode 100644 index 00000000..98c7bac3 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/Contact.php @@ -0,0 +1,153 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $ContactId + * @property string $PersonName + * @property string $Title + * @property string $CompanyName + * @property string $PhoneNumber + * @property string $PhoneExtension + * @property string $TollFreePhoneNumber + * @property string $PagerNumber + * @property string $FaxNumber + * @property string $EMailAddress + + */ +class Contact extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Contact'; + + /** + * Client provided identifier corresponding to this contact information. + * + * @param string $contactId + * @return $this + */ + public function setContactId($contactId) + { + $this->values['ContactId'] = $contactId; + return $this; + } + + /** + * Identifies the contact person's name. + * + * @param string $personName + * @return $this + */ + public function setPersonName($personName) + { + $this->values['PersonName'] = $personName; + return $this; + } + + /** + * Identifies the contact person's title. + * + * @param string $title + * @return $this + */ + public function setTitle($title) + { + $this->values['Title'] = $title; + return $this; + } + + /** + * Identifies the company this contact is associated with. + * + * @param string $companyName + * @return $this + */ + public function setCompanyName($companyName) + { + $this->values['CompanyName'] = $companyName; + return $this; + } + + /** + * Identifies the phone number associated with this contact. + * + * @param string $phoneNumber + * @return $this + */ + public function setPhoneNumber($phoneNumber) + { + $this->values['PhoneNumber'] = $phoneNumber; + return $this; + } + + /** + * Identifies the phone extension associated with this contact. + * + * @param string $phoneExtension + * @return $this + */ + public function setPhoneExtension($phoneExtension) + { + $this->values['PhoneExtension'] = $phoneExtension; + return $this; + } + + /** + * Identifies a toll free number, if any, associated with this contact. + * + * @param string $tollFreePhoneNumber + * @return $this + */ + public function setTollFreePhoneNumber($tollFreePhoneNumber) + { + $this->values['TollFreePhoneNumber'] = $tollFreePhoneNumber; + return $this; + } + + /** + * Identifies the pager number associated with this contact. + * + * @param string $pagerNumber + * @return $this + */ + public function setPagerNumber($pagerNumber) + { + $this->values['PagerNumber'] = $pagerNumber; + return $this; + } + + /** + * Identifies the fax number associated with this contact. + * + * @param string $faxNumber + * @return $this + */ + public function setFaxNumber($faxNumber) + { + $this->values['FaxNumber'] = $faxNumber; + return $this; + } + + /** + * Identifies the email address associated with this contact. + * + * @param string $eMailAddress + * @return $this + */ + public function setEMailAddress($eMailAddress) + { + $this->values['EMailAddress'] = $eMailAddress; + return $this; + } +} diff --git a/src/FedEx/LocatorService/ComplexType/Distance.php b/src/FedEx/LocationsService/ComplexType/Distance.php similarity index 56% rename from src/FedEx/LocatorService/ComplexType/Distance.php rename to src/FedEx/LocationsService/ComplexType/Distance.php index a8cd0f05..ae161c56 100644 --- a/src/FedEx/LocatorService/ComplexType/Distance.php +++ b/src/FedEx/LocationsService/ComplexType/Distance.php @@ -1,17 +1,17 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property float $Value - * @property \FedEx\LocatorService\SimpleType\DistanceUnits|string $Units + * @property \FedEx\LocationsService\SimpleType\DistanceUnits|string $Units */ class Distance extends AbstractComplexType @@ -24,7 +24,7 @@ class Distance extends AbstractComplexType protected $name = 'Distance'; /** - * Identifies the value of distance from the point indicated by the search location (e.g. "12.5"). + * Identifies the distance quantity. * * @param float $value * @return $this @@ -36,9 +36,9 @@ public function setValue($value) } /** - * Identifies the unit of distance from the point indicated by the search location (e.g. "MI"). See DistanceUnits for list of returned values. + * Identifies the unit of measure for the distance value. * - * @param \FedEx\LocatorService\SimpleType\DistanceUnits|string $units + * @param \FedEx\LocationsService\SimpleType\DistanceUnits|string $units * @return $this */ public function setUnits($units) diff --git a/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php b/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php new file mode 100644 index 00000000..83479a4d --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Distance $Distance + * @property ReservationAvailabilityDetail $ReservationAvailabilityDetail + * @property \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType|string[] $SupportedRedirectToHoldServices + * @property LocationDetail $LocationDetail + + */ +class DistanceAndLocationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DistanceAndLocationDetail'; + + /** + * Distance between an address of a geographic location and an address of a FedEx location. + * + * @param Distance $distance + * @return $this + */ + public function setDistance(Distance $distance) + { + $this->values['Distance'] = $distance; + return $this; + } + + /** + * Set ReservationAvailabilityDetail + * + * @param ReservationAvailabilityDetail $reservationAvailabilityDetail + * @return $this + */ + public function setReservationAvailabilityDetail(ReservationAvailabilityDetail $reservationAvailabilityDetail) + { + $this->values['ReservationAvailabilityDetail'] = $reservationAvailabilityDetail; + return $this; + } + + /** + * Set SupportedRedirectToHoldServices + * + * @param \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType[]|string[] $supportedRedirectToHoldServices + * @return $this + */ + public function setSupportedRedirectToHoldServices(array $supportedRedirectToHoldServices) + { + $this->values['SupportedRedirectToHoldServices'] = $supportedRedirectToHoldServices; + return $this; + } + + /** + * Details about a FedEx location such as services offered, working hours and pick and drop off times. + * + * @param LocationDetail $locationDetail + * @return $this + */ + public function setLocationDetail(LocationDetail $locationDetail) + { + $this->values['LocationDetail'] = $locationDetail; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/Holiday.php b/src/FedEx/LocationsService/ComplexType/Holiday.php new file mode 100644 index 00000000..3f1024a7 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/Holiday.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $Name + * @property string $Date + + */ +class Holiday extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Holiday'; + + /** + * Set Name + * + * @param string $name + * @return $this + */ + public function setName($name) + { + $this->values['Name'] = $name; + return $this; + } + + /** + * Set Date + * + * @param string $date + * @return $this + */ + public function setDate($date) + { + $this->values['Date'] = $date; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LatestDropOffDetail.php b/src/FedEx/LocationsService/ComplexType/LatestDropOffDetail.php new file mode 100644 index 00000000..a466bf68 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LatestDropOffDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\DayOfWeekType|string $DayOfWeek + * @property string $Time + * @property LatestDropoffOverlayDetail[] $Overlays + + */ +class LatestDropOffDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LatestDropOffDetail'; + + /** + * Set DayOfWeek + * + * @param \FedEx\LocationsService\SimpleType\DayOfWeekType|string $dayOfWeek + * @return $this + */ + public function setDayOfWeek($dayOfWeek) + { + $this->values['DayOfWeek'] = $dayOfWeek; + return $this; + } + + /** + * Set Time + * + * @param string $time + * @return $this + */ + public function setTime($time) + { + $this->values['Time'] = $time; + return $this; + } + + /** + * Specifies the details about the overlay to the last drop off time for a carrier at a FedEx location. + * + * @param LatestDropoffOverlayDetail[] $overlays + * @return $this + */ + public function setOverlays(array $overlays) + { + $this->values['Overlays'] = $overlays; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LatestDropoffOverlayDetail.php b/src/FedEx/LocationsService/ComplexType/LatestDropoffOverlayDetail.php new file mode 100644 index 00000000..cb43c330 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LatestDropoffOverlayDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\LatestDropOffOverlayType|string $Type + * @property string $Time + + */ +class LatestDropoffOverlayDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LatestDropoffOverlayDetail'; + + /** + * Set Type + * + * @param \FedEx\LocationsService\SimpleType\LatestDropOffOverlayType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Time + * + * @param string $time + * @return $this + */ + public function setTime($time) + { + $this->values['Time'] = $time; + return $this; + } +} diff --git a/src/FedEx/LocatorService/ComplexType/Localization.php b/src/FedEx/LocationsService/ComplexType/Localization.php similarity index 75% rename from src/FedEx/LocatorService/ComplexType/Localization.php rename to src/FedEx/LocationsService/ComplexType/Localization.php index 741ea6b7..2a7a4b97 100644 --- a/src/FedEx/LocatorService/ComplexType/Localization.php +++ b/src/FedEx/LocationsService/ComplexType/Localization.php @@ -1,14 +1,14 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property string $LanguageCode * @property string $LocaleCode @@ -24,7 +24,7 @@ class Localization extends AbstractComplexType protected $name = 'Localization'; /** - * Identifies the language to use for human-readable messages. + * Two-letter code for language (e.g. EN, FR, etc.) * * @param string $languageCode * @return $this @@ -36,7 +36,7 @@ public function setLanguageCode($languageCode) } /** - * Identifies the locale (i.e.country code). + * Two-letter code for the region (e.g. us, ca, etc..). * * @param string $localeCode * @return $this diff --git a/src/FedEx/LocationsService/ComplexType/LocationContactAndAddress.php b/src/FedEx/LocationsService/ComplexType/LocationContactAndAddress.php new file mode 100644 index 00000000..db8f32d0 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationContactAndAddress.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Contact $Contact + * @property Address $Address + * @property AddressAncillaryDetail $AddressAncillaryDetail + + */ +class LocationContactAndAddress extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationContactAndAddress'; + + /** + * Set Contact + * + * @param Contact $contact + * @return $this + */ + public function setContact(Contact $contact) + { + $this->values['Contact'] = $contact; + return $this; + } + + /** + * Set Address + * + * @param Address $address + * @return $this + */ + public function setAddress(Address $address) + { + $this->values['Address'] = $address; + return $this; + } + + /** + * Set AddressAncillaryDetail + * + * @param AddressAncillaryDetail $addressAncillaryDetail + * @return $this + */ + public function setAddressAncillaryDetail(AddressAncillaryDetail $addressAncillaryDetail) + { + $this->values['AddressAncillaryDetail'] = $addressAncillaryDetail; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationDetail.php b/src/FedEx/LocationsService/ComplexType/LocationDetail.php new file mode 100644 index 00000000..5ceabcbb --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationDetail.php @@ -0,0 +1,257 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $LocationId + * @property string $StoreNumber + * @property LocationContactAndAddress $LocationContactAndAddress + * @property string $SpecialInstructions + * @property string $GeographicCoordinates + * @property string $TimeZoneOffset + * @property \FedEx\LocationsService\SimpleType\FedExLocationType|string $LocationType + * @property \FedEx\LocationsService\SimpleType\LocationAttributesType|string[] $Attributes + * @property ClearanceLocationDetail $ClearanceLocationDetail + * @property LocationIdentificationDetail[] $ServicingLocationDetails + * @property string $AcceptedCurrency + * @property Holiday[] $LocationHolidays + * @property string $MapUrl + * @property string $EntityId + * @property LocationHours[] $NormalHours + * @property LocationHours[] $ExceptionalHours + * @property LocationHours[] $HoursForEffectiveDate + * @property CarrierDetail[] $CarrierDetails + + */ +class LocationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationDetail'; + + /** + * Set LocationId + * + * @param string $locationId + * @return $this + */ + public function setLocationId($locationId) + { + $this->values['LocationId'] = $locationId; + return $this; + } + + /** + * Set StoreNumber + * + * @param string $storeNumber + * @return $this + */ + public function setStoreNumber($storeNumber) + { + $this->values['StoreNumber'] = $storeNumber; + return $this; + } + + /** + * Set LocationContactAndAddress + * + * @param LocationContactAndAddress $locationContactAndAddress + * @return $this + */ + public function setLocationContactAndAddress(LocationContactAndAddress $locationContactAndAddress) + { + $this->values['LocationContactAndAddress'] = $locationContactAndAddress; + return $this; + } + + /** + * Set SpecialInstructions + * + * @param string $specialInstructions + * @return $this + */ + public function setSpecialInstructions($specialInstructions) + { + $this->values['SpecialInstructions'] = $specialInstructions; + return $this; + } + + /** + * Set GeographicCoordinates + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } + + /** + * Set TimeZoneOffset + * + * @param string $timeZoneOffset + * @return $this + */ + public function setTimeZoneOffset($timeZoneOffset) + { + $this->values['TimeZoneOffset'] = $timeZoneOffset; + return $this; + } + + /** + * Set LocationType + * + * @param \FedEx\LocationsService\SimpleType\FedExLocationType|string $locationType + * @return $this + */ + public function setLocationType($locationType) + { + $this->values['LocationType'] = $locationType; + return $this; + } + + /** + * Set Attributes + * + * @param \FedEx\LocationsService\SimpleType\LocationAttributesType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } + + /** + * Details about the clearance location. + * + * @param ClearanceLocationDetail $clearanceLocationDetail + * @return $this + */ + public function setClearanceLocationDetail(ClearanceLocationDetail $clearanceLocationDetail) + { + $this->values['ClearanceLocationDetail'] = $clearanceLocationDetail; + return $this; + } + + /** + * Details about the FedEx administrative locations that may provide services to this location. + * + * @param LocationIdentificationDetail[] $servicingLocationDetails + * @return $this + */ + public function setServicingLocationDetails(array $servicingLocationDetails) + { + $this->values['ServicingLocationDetails'] = $servicingLocationDetails; + return $this; + } + + /** + * Set AcceptedCurrency + * + * @param string $acceptedCurrency + * @return $this + */ + public function setAcceptedCurrency($acceptedCurrency) + { + $this->values['AcceptedCurrency'] = $acceptedCurrency; + return $this; + } + + /** + * Set LocationHolidays + * + * @param Holiday[] $locationHolidays + * @return $this + */ + public function setLocationHolidays(array $locationHolidays) + { + $this->values['LocationHolidays'] = $locationHolidays; + return $this; + } + + /** + * Set MapUrl + * + * @param string $mapUrl + * @return $this + */ + public function setMapUrl($mapUrl) + { + $this->values['MapUrl'] = $mapUrl; + return $this; + } + + /** + * Set EntityId + * + * @param string $entityId + * @return $this + */ + public function setEntityId($entityId) + { + $this->values['EntityId'] = $entityId; + return $this; + } + + /** + * Normal operating hours for the location. + * + * @param LocationHours[] $normalHours + * @return $this + */ + public function setNormalHours(array $normalHours) + { + $this->values['NormalHours'] = $normalHours; + return $this; + } + + /** + * Operating hours for the location that are exception from the normal hours of operation. + * + * @param LocationHours[] $exceptionalHours + * @return $this + */ + public function setExceptionalHours(array $exceptionalHours) + { + $this->values['ExceptionalHours'] = $exceptionalHours; + return $this; + } + + /** + * Set HoursForEffectiveDate + * + * @param LocationHours[] $hoursForEffectiveDate + * @return $this + */ + public function setHoursForEffectiveDate(array $hoursForEffectiveDate) + { + $this->values['HoursForEffectiveDate'] = $hoursForEffectiveDate; + return $this; + } + + /** + * Set CarrierDetails + * + * @param CarrierDetail[] $carrierDetails + * @return $this + */ + public function setCarrierDetails(array $carrierDetails) + { + $this->values['CarrierDetails'] = $carrierDetails; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationHours.php b/src/FedEx/LocationsService/ComplexType/LocationHours.php new file mode 100644 index 00000000..b10ddc5f --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationHours.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\DayOfWeekType|string $DayofWeek + * @property \FedEx\LocationsService\SimpleType\OperationalHoursType|string $OperationalHours + * @property TimeRange[] $Hours + + */ +class LocationHours extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationHours'; + + /** + * Set DayofWeek + * + * @param \FedEx\LocationsService\SimpleType\DayOfWeekType|string $dayofWeek + * @return $this + */ + public function setDayofWeek($dayofWeek) + { + $this->values['DayofWeek'] = $dayofWeek; + return $this; + } + + /** + * Set OperationalHours + * + * @param \FedEx\LocationsService\SimpleType\OperationalHoursType|string $operationalHours + * @return $this + */ + public function setOperationalHours($operationalHours) + { + $this->values['OperationalHours'] = $operationalHours; + return $this; + } + + /** + * Set Hours + * + * @param TimeRange[] $hours + * @return $this + */ + public function setHours(array $hours) + { + $this->values['Hours'] = $hours; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationIdentificationDetail.php b/src/FedEx/LocationsService/ComplexType/LocationIdentificationDetail.php new file mode 100644 index 00000000..7da2ad5f --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationIdentificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\FedExLocationType|string $Type + * @property string $Id + * @property int $Number + + */ +class LocationIdentificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationIdentificationDetail'; + + /** + * Set Type + * + * @param \FedEx\LocationsService\SimpleType\FedExLocationType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set Id + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + + /** + * Set Number + * + * @param int $number + * @return $this + */ + public function setNumber($number) + { + $this->values['Number'] = $number; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationSortDetail.php b/src/FedEx/LocationsService/ComplexType/LocationSortDetail.php new file mode 100644 index 00000000..7af1ae71 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationSortDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\LocationSortCriteriaType|string $Criterion + * @property \FedEx\LocationsService\SimpleType\LocationSortOrderType|string $Order + + */ +class LocationSortDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationSortDetail'; + + /** + * Specifies the criterion to be used to sort the location details. + * + * @param \FedEx\LocationsService\SimpleType\LocationSortCriteriaType|string $criterion + * @return $this + */ + public function setCriterion($criterion) + { + $this->values['Criterion'] = $criterion; + return $this; + } + + /** + * Specifies sort order of the location details. + * + * @param \FedEx\LocationsService\SimpleType\LocationSortOrderType|string $order + * @return $this + */ + public function setOrder($order) + { + $this->values['Order'] = $order; + return $this; + } +} diff --git a/src/FedEx/LocatorService/ComplexType/Notification.php b/src/FedEx/LocationsService/ComplexType/Notification.php similarity index 51% rename from src/FedEx/LocatorService/ComplexType/Notification.php rename to src/FedEx/LocationsService/ComplexType/Notification.php index e90d8eac..b3aa69b6 100644 --- a/src/FedEx/LocatorService/ComplexType/Notification.php +++ b/src/FedEx/LocationsService/ComplexType/Notification.php @@ -1,16 +1,16 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * - * @property \FedEx\LocatorService\SimpleType\NotificationSeverityType|string $Severity + * @property \FedEx\LocationsService\SimpleType\NotificationSeverityType|string $Severity * @property string $Source * @property string $Code * @property string $Message @@ -28,9 +28,9 @@ class Notification extends AbstractComplexType protected $name = 'Notification'; /** - * Identifies the severity of the Notification item. See NotificationSeverityType for list of returned values. + * The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later * - * @param \FedEx\LocatorService\SimpleType\NotificationSeverityType|string $severity + * @param \FedEx\LocationsService\SimpleType\NotificationSeverityType|string $severity * @return $this */ public function setSeverity($severity) @@ -40,7 +40,7 @@ public function setSeverity($severity) } /** - * Identifies the source - what FedEx system, sub-system, or component generated the Notification item. + * Indicates the source of this notification. Combined with the Code it uniquely identifies this notification * * @param string $source * @return $this @@ -52,7 +52,7 @@ public function setSource($source) } /** - * Identifies the error code generated by the FedEx system, sub-system or component. + * A code that represents this notification. Combined with the Source it uniquely identifies this notification. * * @param string $code * @return $this @@ -64,7 +64,7 @@ public function setCode($code) } /** - * Identifies the error message text. + * Human-readable text that explains this notification. * * @param string $message * @return $this @@ -76,7 +76,7 @@ public function setMessage($message) } /** - * Identifies the error message text in the localization requested. Currently not supported. + * The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. * * @param string $localizedMessage * @return $this @@ -88,7 +88,7 @@ public function setLocalizedMessage($localizedMessage) } /** - * Used internally by FedEx systems for message translation. + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. * * @param NotificationParameter[] $messageParameters * @return $this diff --git a/src/FedEx/LocatorService/ComplexType/NotificationParameter.php b/src/FedEx/LocationsService/ComplexType/NotificationParameter.php similarity index 75% rename from src/FedEx/LocatorService/ComplexType/NotificationParameter.php rename to src/FedEx/LocationsService/ComplexType/NotificationParameter.php index da6444c6..109146ca 100644 --- a/src/FedEx/LocatorService/ComplexType/NotificationParameter.php +++ b/src/FedEx/LocationsService/ComplexType/NotificationParameter.php @@ -1,5 +1,5 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property string $Id * @property string $Value @@ -24,7 +24,7 @@ class NotificationParameter extends AbstractComplexType protected $name = 'NotificationParameter'; /** - * Name identifiying the type of the data in the element 'Value' + * Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). * * @param string $id * @return $this @@ -36,7 +36,7 @@ public function setId($id) } /** - * The value that was used as the replacement parameter. + * The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). * * @param string $value * @return $this diff --git a/src/FedEx/LocationsService/ComplexType/ReservationAvailabilityDetail.php b/src/FedEx/LocationsService/ComplexType/ReservationAvailabilityDetail.php new file mode 100644 index 00000000..4f07b0c6 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/ReservationAvailabilityDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\ReservationAttributesType|string[] $Attributes + + */ +class ReservationAvailabilityDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ReservationAvailabilityDetail'; + + /** + * Set Attributes + * + * @param \FedEx\LocationsService\SimpleType\ReservationAttributesType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php b/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php new file mode 100644 index 00000000..c410a220 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php @@ -0,0 +1,140 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Distance $RadiusDistance + * @property string $ExpressDropOffTimeNeeded + * @property \FedEx\LocationsService\SimpleType\LocationSearchFilterType|string[] $ResultsFilters + * @property \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType|string[] $SupportedRedirectToHoldServices + * @property \FedEx\LocationsService\SimpleType\LocationAttributesType|string[] $RequiredLocationAttributes + * @property int $ResultsToSkip + * @property int $ResultsRequested + * @property \FedEx\LocationsService\SimpleType\LocationContentOptionType|string[] $LocationContentOptions + * @property \FedEx\LocationsService\SimpleType\FedExLocationType|string[] $LocationTypesToInclude + + */ +class SearchLocationConstraints extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SearchLocationConstraints'; + + /** + * Specifies value and units of the radius around the address to search for FedEx locations. + * + * @param Distance $radiusDistance + * @return $this + */ + public function setRadiusDistance(Distance $radiusDistance) + { + $this->values['RadiusDistance'] = $radiusDistance; + return $this; + } + + /** + * The latest time at which the customer can drop off a package for being shipped using an express service. + * + * @param string $expressDropOffTimeNeeded + * @return $this + */ + public function setExpressDropOffTimeNeeded($expressDropOffTimeNeeded) + { + $this->values['ExpressDropOffTimeNeeded'] = $expressDropOffTimeNeeded; + return $this; + } + + /** + * Specifies the criteria used to filter the results of locations search. + * + * @param \FedEx\LocationsService\SimpleType\LocationSearchFilterType[]|string[] $resultsFilters + * @return $this + */ + public function setResultsFilters(array $resultsFilters) + { + $this->values['ResultsFilters'] = $resultsFilters; + return $this; + } + + /** + * Specifies the types of services supported by a FedEx location for redirect to hold. + * + * @param \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType[]|string[] $supportedRedirectToHoldServices + * @return $this + */ + public function setSupportedRedirectToHoldServices(array $supportedRedirectToHoldServices) + { + $this->values['SupportedRedirectToHoldServices'] = $supportedRedirectToHoldServices; + return $this; + } + + /** + * Set RequiredLocationAttributes + * + * @param \FedEx\LocationsService\SimpleType\LocationAttributesType[]|string[] $requiredLocationAttributes + * @return $this + */ + public function setRequiredLocationAttributes(array $requiredLocationAttributes) + { + $this->values['RequiredLocationAttributes'] = $requiredLocationAttributes; + return $this; + } + + /** + * Set ResultsToSkip + * + * @param int $resultsToSkip + * @return $this + */ + public function setResultsToSkip($resultsToSkip) + { + $this->values['ResultsToSkip'] = $resultsToSkip; + return $this; + } + + /** + * Set ResultsRequested + * + * @param int $resultsRequested + * @return $this + */ + public function setResultsRequested($resultsRequested) + { + $this->values['ResultsRequested'] = $resultsRequested; + return $this; + } + + /** + * Set LocationContentOptions + * + * @param \FedEx\LocationsService\SimpleType\LocationContentOptionType[]|string[] $locationContentOptions + * @return $this + */ + public function setLocationContentOptions(array $locationContentOptions) + { + $this->values['LocationContentOptions'] = $locationContentOptions; + return $this; + } + + /** + * Set LocationTypesToInclude + * + * @param \FedEx\LocationsService\SimpleType\FedExLocationType[]|string[] $locationTypesToInclude + * @return $this + */ + public function setLocationTypesToInclude(array $locationTypesToInclude) + { + $this->values['LocationTypesToInclude'] = $locationTypesToInclude; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/SearchLocationsReply.php b/src/FedEx/LocationsService/ComplexType/SearchLocationsReply.php new file mode 100644 index 00000000..4044a260 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/SearchLocationsReply.php @@ -0,0 +1,127 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\NotificationSeverityType|string $HighestSeverity + * @property Notification[] $Notifications + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property int $TotalResultsAvailable + * @property int $ResultsReturned + * @property Address $FormattedAddress + * @property AddressToLocationRelationshipDetail[] $AddressToLocationRelationships + + */ +class SearchLocationsReply extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SearchLocationsReply'; + + /** + * Set HighestSeverity + * + * @param \FedEx\LocationsService\SimpleType\NotificationSeverityType|string $highestSeverity + * @return $this + */ + public function setHighestSeverity($highestSeverity) + { + $this->values['HighestSeverity'] = $highestSeverity; + return $this; + } + + /** + * Set Notifications + * + * @param Notification[] $notifications + * @return $this + */ + public function setNotifications(array $notifications) + { + $this->values['Notifications'] = $notifications; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Specifies total number of location results that are available. + * + * @param int $totalResultsAvailable + * @return $this + */ + public function setTotalResultsAvailable($totalResultsAvailable) + { + $this->values['TotalResultsAvailable'] = $totalResultsAvailable; + return $this; + } + + /** + * Specifies the number of location results returned in this reply. + * + * @param int $resultsReturned + * @return $this + */ + public function setResultsReturned($resultsReturned) + { + $this->values['ResultsReturned'] = $resultsReturned; + return $this; + } + + /** + * Specifies the address formatted to have correct postal code per USPS standards. + * + * @param Address $formattedAddress + * @return $this + */ + public function setFormattedAddress(Address $formattedAddress) + { + $this->values['FormattedAddress'] = $formattedAddress; + return $this; + } + + /** + * The details about the relationship between the address requested and the locations returned. + * + * @param AddressToLocationRelationshipDetail[] $addressToLocationRelationships + * @return $this + */ + public function setAddressToLocationRelationships(array $addressToLocationRelationships) + { + $this->values['AddressToLocationRelationships'] = $addressToLocationRelationships; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php b/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php new file mode 100644 index 00000000..0eb90ee3 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php @@ -0,0 +1,192 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property WebAuthenticationDetail $WebAuthenticationDetail + * @property ClientDetail $ClientDetail + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property string $EffectiveDate + * @property \FedEx\LocationsService\SimpleType\LocationsSearchCriteriaType|string $LocationsSearchCriterion + * @property UniqueTrackingNumber $UniqueTrackingNumber + * @property Address $Address + * @property string $PhoneNumber + * @property string $GeographicCoordinates + * @property \FedEx\LocationsService\SimpleType\MultipleMatchesActionType|string $MultipleMatchesAction + * @property LocationSortDetail $SortDetail + * @property SearchLocationConstraints $Constraints + + */ +class SearchLocationsRequest extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'SearchLocationsRequest'; + + /** + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * + * @param WebAuthenticationDetail $webAuthenticationDetail + * @return $this + */ + public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) + { + $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; + return $this; + } + + /** + * Set ClientDetail + * + * @param ClientDetail $clientDetail + * @return $this + */ + public function setClientDetail(ClientDetail $clientDetail) + { + $this->values['ClientDetail'] = $clientDetail; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Set EffectiveDate + * + * @param string $effectiveDate + * @return $this + */ + public function setEffectiveDate($effectiveDate) + { + $this->values['EffectiveDate'] = $effectiveDate; + return $this; + } + + /** + * Specifies the criterion that may be used to search for FedEx locations. + * + * @param \FedEx\LocationsService\SimpleType\LocationsSearchCriteriaType|string $locationsSearchCriterion + * @return $this + */ + public function setLocationsSearchCriterion($locationsSearchCriterion) + { + $this->values['LocationsSearchCriterion'] = $locationsSearchCriterion; + return $this; + } + + /** + * Tracking number to be used when searching for locations. This tracking number, along with other location search constraints, help to narrow the search for locations. + * + * @param UniqueTrackingNumber $uniqueTrackingNumber + * @return $this + */ + public function setUniqueTrackingNumber(UniqueTrackingNumber $uniqueTrackingNumber) + { + $this->values['UniqueTrackingNumber'] = $uniqueTrackingNumber; + return $this; + } + + /** + * Set Address + * + * @param Address $address + * @return $this + */ + public function setAddress(Address $address) + { + $this->values['Address'] = $address; + return $this; + } + + /** + * Set PhoneNumber + * + * @param string $phoneNumber + * @return $this + */ + public function setPhoneNumber($phoneNumber) + { + $this->values['PhoneNumber'] = $phoneNumber; + return $this; + } + + /** + * Set GeographicCoordinates + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } + + /** + * Specifies the criterion to be used to return location results when there are mutiple matches. + * + * @param \FedEx\LocationsService\SimpleType\MultipleMatchesActionType|string $multipleMatchesAction + * @return $this + */ + public function setMultipleMatchesAction($multipleMatchesAction) + { + $this->values['MultipleMatchesAction'] = $multipleMatchesAction; + return $this; + } + + /** + * Specifies the details on how the location search results be sorted in the reply. + * + * @param LocationSortDetail $sortDetail + * @return $this + */ + public function setSortDetail(LocationSortDetail $sortDetail) + { + $this->values['SortDetail'] = $sortDetail; + return $this; + } + + /** + * Contraints to be applied to location attributes. + * + * @param SearchLocationConstraints $constraints + * @return $this + */ + public function setConstraints(SearchLocationConstraints $constraints) + { + $this->values['Constraints'] = $constraints; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/ShippingHoliday.php b/src/FedEx/LocationsService/ComplexType/ShippingHoliday.php new file mode 100644 index 00000000..55a0eb47 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/ShippingHoliday.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Holiday $Holiday + * @property \FedEx\LocationsService\SimpleType\ShippingActionType|string[] $UnavailableActions + + */ +class ShippingHoliday extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShippingHoliday'; + + /** + * Set Holiday + * + * @param Holiday $holiday + * @return $this + */ + public function setHoliday(Holiday $holiday) + { + $this->values['Holiday'] = $holiday; + return $this; + } + + /** + * Set UnavailableActions + * + * @param \FedEx\LocationsService\SimpleType\ShippingActionType[]|string[] $unavailableActions + * @return $this + */ + public function setUnavailableActions(array $unavailableActions) + { + $this->values['UnavailableActions'] = $unavailableActions; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/TimeRange.php b/src/FedEx/LocationsService/ComplexType/TimeRange.php new file mode 100644 index 00000000..2adf5be3 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/TimeRange.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $Begins + * @property string $Ends + + */ +class TimeRange extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TimeRange'; + + /** + * Set Begins + * + * @param string $begins + * @return $this + */ + public function setBegins($begins) + { + $this->values['Begins'] = $begins; + return $this; + } + + /** + * Set Ends + * + * @param string $ends + * @return $this + */ + public function setEnds($ends) + { + $this->values['Ends'] = $ends; + return $this; + } +} diff --git a/src/FedEx/LocatorService/ComplexType/TransactionDetail.php b/src/FedEx/LocationsService/ComplexType/TransactionDetail.php similarity index 64% rename from src/FedEx/LocatorService/ComplexType/TransactionDetail.php rename to src/FedEx/LocationsService/ComplexType/TransactionDetail.php index 22b3c282..a4fc648d 100644 --- a/src/FedEx/LocatorService/ComplexType/TransactionDetail.php +++ b/src/FedEx/LocationsService/ComplexType/TransactionDetail.php @@ -1,14 +1,14 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property string $CustomerTransactionId * @property Localization $Localization @@ -24,7 +24,7 @@ class TransactionDetail extends AbstractComplexType protected $name = 'TransactionDetail'; /** - * Identifies a customer-supplied unique identifier for this transaction. It is returned in the reply message to aid in matching requests to replies. + * Free form text to be echoed back in the reply. Used to match requests and replies. * * @param string $customerTransactionId * @return $this @@ -36,7 +36,7 @@ public function setCustomerTransactionId($customerTransactionId) } /** - * Governs any future language/translations applied to the data payload (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + * Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). * * @param Localization $localization * @return $this diff --git a/src/FedEx/LocationsService/ComplexType/UniqueTrackingNumber.php b/src/FedEx/LocationsService/ComplexType/UniqueTrackingNumber.php new file mode 100644 index 00000000..f455bc1d --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/UniqueTrackingNumber.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property string $TrackingNumber + * @property string $TrackingNumberUniqueIdentifier + * @property string $ShipDate + + */ +class UniqueTrackingNumber extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'UniqueTrackingNumber'; + + /** + * Set TrackingNumber + * + * @param string $trackingNumber + * @return $this + */ + public function setTrackingNumber($trackingNumber) + { + $this->values['TrackingNumber'] = $trackingNumber; + return $this; + } + + /** + * Set TrackingNumberUniqueIdentifier + * + * @param string $trackingNumberUniqueIdentifier + * @return $this + */ + public function setTrackingNumberUniqueIdentifier($trackingNumberUniqueIdentifier) + { + $this->values['TrackingNumberUniqueIdentifier'] = $trackingNumberUniqueIdentifier; + return $this; + } + + /** + * Set ShipDate + * + * @param string $shipDate + * @return $this + */ + public function setShipDate($shipDate) + { + $this->values['ShipDate'] = $shipDate; + return $this; + } +} diff --git a/src/FedEx/LocatorService/ComplexType/VersionId.php b/src/FedEx/LocationsService/ComplexType/VersionId.php similarity index 82% rename from src/FedEx/LocatorService/ComplexType/VersionId.php rename to src/FedEx/LocationsService/ComplexType/VersionId.php index c8420554..3160439f 100644 --- a/src/FedEx/LocatorService/ComplexType/VersionId.php +++ b/src/FedEx/LocationsService/ComplexType/VersionId.php @@ -1,5 +1,5 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property string $ServiceId * @property int $Major @@ -26,7 +26,7 @@ class VersionId extends AbstractComplexType protected $name = 'VersionId'; /** - * Fixed value. + * Identifies a system or sub-system which performs an operation. * * @param string $serviceId * @return $this @@ -38,7 +38,7 @@ public function setServiceId($serviceId) } /** - * Fixed value. + * Identifies the service business level. * * @param int $major * @return $this @@ -50,7 +50,7 @@ public function setMajor($major) } /** - * Fixed value. + * Identifies the service interface level. * * @param int $intermediate * @return $this @@ -62,7 +62,7 @@ public function setIntermediate($intermediate) } /** - * Fixed value. + * Identifies the service code level. * * @param int $minor * @return $this diff --git a/src/FedEx/LocatorService/ComplexType/WebAuthenticationCredential.php b/src/FedEx/LocationsService/ComplexType/WebAuthenticationCredential.php similarity index 72% rename from src/FedEx/LocatorService/ComplexType/WebAuthenticationCredential.php rename to src/FedEx/LocationsService/ComplexType/WebAuthenticationCredential.php index d020537f..7651c86e 100644 --- a/src/FedEx/LocatorService/ComplexType/WebAuthenticationCredential.php +++ b/src/FedEx/LocationsService/ComplexType/WebAuthenticationCredential.php @@ -1,14 +1,14 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * * @property string $Key * @property string $Password @@ -24,7 +24,7 @@ class WebAuthenticationCredential extends AbstractComplexType protected $name = 'WebAuthenticationCredential'; /** - * Publicly known part of authentication key used for authentication. This value is provided by FedEx after registration. + * Identifying part of authentication credential. This value is provided by FedEx after registration * * @param string $key * @return $this @@ -36,7 +36,7 @@ public function setKey($key) } /** - * Secret part of authentication key used for authentication. This value is provided by FedEx after registration. + * Secret part of authentication key. This value is provided by FedEx after registration. * * @param string $password * @return $this diff --git a/src/FedEx/LocatorService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/LocationsService/ComplexType/WebAuthenticationDetail.php similarity index 63% rename from src/FedEx/LocatorService/ComplexType/WebAuthenticationDetail.php rename to src/FedEx/LocationsService/ComplexType/WebAuthenticationDetail.php index f8cddb4b..6c4e7612 100644 --- a/src/FedEx/LocatorService/ComplexType/WebAuthenticationDetail.php +++ b/src/FedEx/LocationsService/ComplexType/WebAuthenticationDetail.php @@ -1,5 +1,5 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service * + * @property WebAuthenticationCredential $ParentCredential * @property WebAuthenticationCredential $UserCredential */ @@ -22,6 +23,18 @@ class WebAuthenticationDetail extends AbstractComplexType */ protected $name = 'WebAuthenticationDetail'; + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + /** * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. * diff --git a/src/FedEx/LocationsService/Request.php b/src/FedEx/LocationsService/Request.php new file mode 100644 index 00000000..b571b70b --- /dev/null +++ b/src/FedEx/LocationsService/Request.php @@ -0,0 +1,38 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class Request extends AbstractRequest +{ + const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/locs'; + const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/locs'; + + protected static $wsdlFileName = 'LocationsService_v7.wsdl'; + + /** + * Sends the SearchLocationsRequest and returns the response + * + * @param ComplexType\SearchLocationsRequest $searchLocationsRequest + * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient + * @return ComplexType\SearchLocationsReply|stdClass + */ + public function getSearchLocationsReply(ComplexType\SearchLocationsRequest $searchLocationsRequest, $returnStdClass = false) + { + $response = $this->getSoapClient()->searchLocations($searchLocationsRequest->toArray()); + if ($returnStdClass) { + return $response; + } + + $searchLocationsReply = new ComplexType\SearchLocationsReply; + $searchLocationsReply->populateFromStdClass($response); + return $searchLocationsReply; + } +} diff --git a/src/FedEx/LocationsService/SimpleType/CarrierCodeType.php b/src/FedEx/LocationsService/SimpleType/CarrierCodeType.php new file mode 100644 index 00000000..a9afee5e --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/CarrierCodeType.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class CarrierCodeType extends AbstractSimpleType +{ + const _FDXC = 'FDXC'; + const _FDXE = 'FDXE'; + const _FDXG = 'FDXG'; + const _FXCC = 'FXCC'; + const _FXFR = 'FXFR'; + const _FXSP = 'FXSP'; +} diff --git a/src/FedEx/LocationsService/SimpleType/ConsolidationType.php b/src/FedEx/LocationsService/SimpleType/ConsolidationType.php new file mode 100644 index 00000000..b9546740 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/ConsolidationType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class ConsolidationType extends AbstractSimpleType +{ + const _INTERNATIONAL_DISTRIBUTION_FREIGHT = 'INTERNATIONAL_DISTRIBUTION_FREIGHT'; + const _INTERNATIONAL_ECONOMY_DISTRIBUTION = 'INTERNATIONAL_ECONOMY_DISTRIBUTION'; + const _INTERNATIONAL_GROUND_DISTRIBUTION = 'INTERNATIONAL_GROUND_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _TRANSBORDER_DISTRIBUTION = 'TRANSBORDER_DISTRIBUTION'; +} diff --git a/src/FedEx/LocationsService/SimpleType/CountryRelationshipType.php b/src/FedEx/LocationsService/SimpleType/CountryRelationshipType.php new file mode 100644 index 00000000..bff2707c --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/CountryRelationshipType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class CountryRelationshipType extends AbstractSimpleType +{ + const _DOMESTIC = 'DOMESTIC'; + const _INTERNATIONAL = 'INTERNATIONAL'; +} diff --git a/src/FedEx/LocationsService/SimpleType/DayOfWeekType.php b/src/FedEx/LocationsService/SimpleType/DayOfWeekType.php new file mode 100644 index 00000000..cbd18a47 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/DayOfWeekType.php @@ -0,0 +1,22 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class DayOfWeekType extends AbstractSimpleType +{ + const _FRI = 'FRI'; + const _MON = 'MON'; + const _SAT = 'SAT'; + const _SUN = 'SUN'; + const _THU = 'THU'; + const _TUE = 'TUE'; + const _WED = 'WED'; +} diff --git a/src/FedEx/LocatorService/SimpleType/DistanceUnits.php b/src/FedEx/LocationsService/SimpleType/DistanceUnits.php similarity index 63% rename from src/FedEx/LocatorService/SimpleType/DistanceUnits.php rename to src/FedEx/LocationsService/SimpleType/DistanceUnits.php index 953c5b3c..8edc26b1 100644 --- a/src/FedEx/LocatorService/SimpleType/DistanceUnits.php +++ b/src/FedEx/LocationsService/SimpleType/DistanceUnits.php @@ -1,14 +1,14 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service */ class DistanceUnits extends AbstractSimpleType { diff --git a/src/FedEx/LocationsService/SimpleType/DistributionClearanceType.php b/src/FedEx/LocationsService/SimpleType/DistributionClearanceType.php new file mode 100644 index 00000000..6c48513e --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/DistributionClearanceType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class DistributionClearanceType extends AbstractSimpleType +{ + const _DESTINATION_COUNTRY_CLEARANCE = 'DESTINATION_COUNTRY_CLEARANCE'; + const _SINGLE_POINT_OF_CLEARANCE = 'SINGLE_POINT_OF_CLEARANCE'; +} diff --git a/src/FedEx/LocationsService/SimpleType/ExpressRegionCode.php b/src/FedEx/LocationsService/SimpleType/ExpressRegionCode.php new file mode 100644 index 00000000..ffb1b2df --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/ExpressRegionCode.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class ExpressRegionCode extends AbstractSimpleType +{ + const _APAC = 'APAC'; + const _CA = 'CA'; + const _EMEA = 'EMEA'; + const _LAC = 'LAC'; + const _US = 'US'; +} diff --git a/src/FedEx/LocationsService/SimpleType/FedExLocationType.php b/src/FedEx/LocationsService/SimpleType/FedExLocationType.php new file mode 100644 index 00000000..0376fc6e --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/FedExLocationType.php @@ -0,0 +1,25 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class FedExLocationType extends AbstractSimpleType +{ + const _FEDEX_AUTHORIZED_SHIP_CENTER = 'FEDEX_AUTHORIZED_SHIP_CENTER'; + const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; + const _FEDEX_FACILITY = 'FEDEX_FACILITY'; + const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; + const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; + const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; + const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; + const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LatestDropOffOverlayType.php b/src/FedEx/LocationsService/SimpleType/LatestDropOffOverlayType.php new file mode 100644 index 00000000..f6f76eba --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LatestDropOffOverlayType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LatestDropOffOverlayType extends AbstractSimpleType +{ + const _US_WEST_COAST = 'US_WEST_COAST'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationAccessibilityType.php b/src/FedEx/LocationsService/SimpleType/LocationAccessibilityType.php new file mode 100644 index 00000000..c5244a9f --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationAccessibilityType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationAccessibilityType extends AbstractSimpleType +{ + const _INSIDE = 'INSIDE'; + const _OUTSIDE = 'OUTSIDE'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php b/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php new file mode 100644 index 00000000..abd666cf --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php @@ -0,0 +1,47 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationAttributesType extends AbstractSimpleType +{ + const _ACCEPTS_CASH = 'ACCEPTS_CASH'; + const _ALREADY_OPEN = 'ALREADY_OPEN'; + const _CLEARANCE_SERVICES = 'CLEARANCE_SERVICES'; + const _COPY_AND_PRINT_SERVICES = 'COPY_AND_PRINT_SERVICES'; + const _DANGEROUS_GOODS_SERVICES = 'DANGEROUS_GOODS_SERVICES'; + const _DIRECT_MAIL_SERVICES = 'DIRECT_MAIL_SERVICES'; + const _DOMESTIC_SHIPPING_SERVICES = 'DOMESTIC_SHIPPING_SERVICES'; + const _DROP_BOX = 'DROP_BOX'; + const _EXPRESS_FREIGHT_DROPOFFS = 'EXPRESS_FREIGHT_DROPOFFS'; + const _EXPRESS_PARCEL_DROPOFFS = 'EXPRESS_PARCEL_DROPOFFS'; + const _FEDEX_FREIGHT_DROPOFFS = 'FEDEX_FREIGHT_DROPOFFS'; + const _GROUND_DROPOFFS = 'GROUND_DROPOFFS'; + const _GROUND_HOME_DELIVERY_DROPOFFS = 'GROUND_HOME_DELIVERY_DROPOFFS'; + const _INTERNATIONAL_SHIPPING_SERVICES = 'INTERNATIONAL_SHIPPING_SERVICES'; + const _LOCATION_IS_IN_AIRPORT = 'LOCATION_IS_IN_AIRPORT'; + const _NOTARY_SERVICES = 'NOTARY_SERVICES'; + const _OBSERVES_DAY_LIGHT_SAVING_TIMES = 'OBSERVES_DAY_LIGHT_SAVING_TIMES'; + const _OPEN_TWENTY_FOUR_HOURS = 'OPEN_TWENTY_FOUR_HOURS'; + const _PACKAGING_SUPPLIES = 'PACKAGING_SUPPLIES'; + const _PACK_AND_SHIP = 'PACK_AND_SHIP'; + const _PASSPORT_PHOTO_SERVICES = 'PASSPORT_PHOTO_SERVICES'; + const _RETURNS_SERVICES = 'RETURNS_SERVICES'; + const _SAME_DAY_CITY_DROPOFFS = 'SAME_DAY_CITY_DROPOFFS'; + const _SAME_DAY_DROPOFFS = 'SAME_DAY_DROPOFFS'; + const _SATURDAY_DROPOFFS = 'SATURDAY_DROPOFFS'; + const _SATURDAY_EXPRESS_HOLD_AT_LOCATION = 'SATURDAY_EXPRESS_HOLD_AT_LOCATION'; + const _SHIP_AND_GET = 'SHIP_AND_GET'; + const _SIGNS_AND_BANNERS_SERVICE = 'SIGNS_AND_BANNERS_SERVICE'; + const _SONY_PICTURE_STATION = 'SONY_PICTURE_STATION'; + const _VIDEO_CONFERENCING = 'VIDEO_CONFERENCING'; + const _WEEKDAY_EXPRESS_HOLD_AT_LOCATION = 'WEEKDAY_EXPRESS_HOLD_AT_LOCATION'; + const _WEEKDAY_GROUND_HOLD_AT_LOCATION = 'WEEKDAY_GROUND_HOLD_AT_LOCATION'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationContentOptionType.php b/src/FedEx/LocationsService/SimpleType/LocationContentOptionType.php new file mode 100644 index 00000000..efe966e1 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationContentOptionType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationContentOptionType extends AbstractSimpleType +{ + const _HOLIDAYS = 'HOLIDAYS'; + const _LOCATION_DROPOFF_TIMES = 'LOCATION_DROPOFF_TIMES'; + const _MAP_URL = 'MAP_URL'; + const _TIMEZONE_OFFSET = 'TIMEZONE_OFFSET'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php b/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php new file mode 100644 index 00000000..4a82aebe --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationSearchFilterType extends AbstractSimpleType +{ + const _EXCLUDE_LOCATIONS_OUTSIDE_COUNTRY = 'EXCLUDE_LOCATIONS_OUTSIDE_COUNTRY'; + const _EXCLUDE_LOCATIONS_OUTSIDE_STATE_OR_PROVINCE = 'EXCLUDE_LOCATIONS_OUTSIDE_STATE_OR_PROVINCE'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationSortCriteriaType.php b/src/FedEx/LocationsService/SimpleType/LocationSortCriteriaType.php new file mode 100644 index 00000000..235a8b00 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationSortCriteriaType.php @@ -0,0 +1,19 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationSortCriteriaType extends AbstractSimpleType +{ + const _DISTANCE = 'DISTANCE'; + const _LATEST_EXPRESS_DROPOFF_TIME = 'LATEST_EXPRESS_DROPOFF_TIME'; + const _LATEST_GROUND_DROPOFF_TIME = 'LATEST_GROUND_DROPOFF_TIME'; + const _LOCATION_TYPE = 'LOCATION_TYPE'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationSortOrderType.php b/src/FedEx/LocationsService/SimpleType/LocationSortOrderType.php new file mode 100644 index 00000000..aeb30f16 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationSortOrderType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationSortOrderType extends AbstractSimpleType +{ + const _HIGHEST_TO_LOWEST = 'HIGHEST_TO_LOWEST'; + const _LOWEST_TO_HIGHEST = 'LOWEST_TO_HIGHEST'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationsSearchCriteriaType.php b/src/FedEx/LocationsService/SimpleType/LocationsSearchCriteriaType.php new file mode 100644 index 00000000..0642b5c2 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationsSearchCriteriaType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationsSearchCriteriaType extends AbstractSimpleType +{ + const _ADDRESS = 'ADDRESS'; + const _GEOGRAPHIC_COORDINATES = 'GEOGRAPHIC_COORDINATES'; + const _PHONE_NUMBER = 'PHONE_NUMBER'; +} diff --git a/src/FedEx/LocationsService/SimpleType/MultipleMatchesActionType.php b/src/FedEx/LocationsService/SimpleType/MultipleMatchesActionType.php new file mode 100644 index 00000000..bd5f8f6e --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/MultipleMatchesActionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class MultipleMatchesActionType extends AbstractSimpleType +{ + const _RETURN_ALL = 'RETURN_ALL'; + const _RETURN_ERROR = 'RETURN_ERROR'; + const _RETURN_FIRST = 'RETURN_FIRST'; +} diff --git a/src/FedEx/LocatorService/SimpleType/NotificationSeverityType.php b/src/FedEx/LocationsService/SimpleType/NotificationSeverityType.php similarity index 71% rename from src/FedEx/LocatorService/SimpleType/NotificationSeverityType.php rename to src/FedEx/LocationsService/SimpleType/NotificationSeverityType.php index 15a786c0..accc569b 100644 --- a/src/FedEx/LocatorService/SimpleType/NotificationSeverityType.php +++ b/src/FedEx/LocationsService/SimpleType/NotificationSeverityType.php @@ -1,14 +1,14 @@ * @package PHP FedEx API wrapper - * @subpackage Locator Service + * @subpackage Locations Service */ class NotificationSeverityType extends AbstractSimpleType { diff --git a/src/FedEx/LocationsService/SimpleType/OperationalHoursType.php b/src/FedEx/LocationsService/SimpleType/OperationalHoursType.php new file mode 100644 index 00000000..3ac11708 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/OperationalHoursType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class OperationalHoursType extends AbstractSimpleType +{ + const _CLOSED_ALL_DAY = 'CLOSED_ALL_DAY'; + const _OPEN_ALL_DAY = 'OPEN_ALL_DAY'; + const _OPEN_BY_HOURS = 'OPEN_BY_HOURS'; +} diff --git a/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php new file mode 100644 index 00000000..d67dcbed --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php @@ -0,0 +1,24 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class PackageSpecialServiceType extends AbstractSimpleType +{ + const _ALCOHOL = 'ALCOHOL'; + const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _COD = 'COD'; + const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; + const _DRY_ICE = 'DRY_ICE'; + const _NON_STANDARD_CONTAINER = 'NON_STANDARD_CONTAINER'; + const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; + const _PRIORITY_ALERT = 'PRIORITY_ALERT'; + const _SIGNATURE_OPTION = 'SIGNATURE_OPTION'; +} diff --git a/src/FedEx/LocationsService/SimpleType/ReservationAttributesType.php b/src/FedEx/LocationsService/SimpleType/ReservationAttributesType.php new file mode 100644 index 00000000..3bd098dc --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/ReservationAttributesType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class ReservationAttributesType extends AbstractSimpleType +{ + const _RESERVATION_AVAILABLE = 'RESERVATION_AVAILABLE'; +} diff --git a/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php b/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php new file mode 100644 index 00000000..c567426c --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class ServiceCategoryType extends AbstractSimpleType +{ + const _EXPRESS_FREIGHT = 'EXPRESS_FREIGHT'; + const _EXPRESS_PARCEL = 'EXPRESS_PARCEL'; +} diff --git a/src/FedEx/LocationsService/SimpleType/ServiceType.php b/src/FedEx/LocationsService/SimpleType/ServiceType.php new file mode 100644 index 00000000..88dc6e9e --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/ServiceType.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class ServiceType extends AbstractSimpleType +{ + const _EUROPE_FIRST_INTERNATIONAL_PRIORITY = 'EUROPE_FIRST_INTERNATIONAL_PRIORITY'; + const _FEDEX_1_DAY_FREIGHT = 'FEDEX_1_DAY_FREIGHT'; + const _FEDEX_2_DAY = 'FEDEX_2_DAY'; + const _FEDEX_2_DAY_AM = 'FEDEX_2_DAY_AM'; + const _FEDEX_2_DAY_FREIGHT = 'FEDEX_2_DAY_FREIGHT'; + const _FEDEX_3_DAY_FREIGHT = 'FEDEX_3_DAY_FREIGHT'; + const _FEDEX_DISTANCE_DEFERRED = 'FEDEX_DISTANCE_DEFERRED'; + const _FEDEX_EXPRESS_SAVER = 'FEDEX_EXPRESS_SAVER'; + const _FEDEX_FIRST_FREIGHT = 'FEDEX_FIRST_FREIGHT'; + const _FEDEX_FREIGHT_ECONOMY = 'FEDEX_FREIGHT_ECONOMY'; + const _FEDEX_FREIGHT_PRIORITY = 'FEDEX_FREIGHT_PRIORITY'; + const _FEDEX_GROUND = 'FEDEX_GROUND'; + const _FEDEX_NEXT_DAY_AFTERNOON = 'FEDEX_NEXT_DAY_AFTERNOON'; + const _FEDEX_NEXT_DAY_EARLY_MORNING = 'FEDEX_NEXT_DAY_EARLY_MORNING'; + const _FEDEX_NEXT_DAY_END_OF_DAY = 'FEDEX_NEXT_DAY_END_OF_DAY'; + const _FEDEX_NEXT_DAY_FREIGHT = 'FEDEX_NEXT_DAY_FREIGHT'; + const _FEDEX_NEXT_DAY_MID_MORNING = 'FEDEX_NEXT_DAY_MID_MORNING'; + const _FIRST_OVERNIGHT = 'FIRST_OVERNIGHT'; + const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; + const _INTERNATIONAL_DISTRIBUTION_FREIGHT = 'INTERNATIONAL_DISTRIBUTION_FREIGHT'; + const _INTERNATIONAL_ECONOMY = 'INTERNATIONAL_ECONOMY'; + const _INTERNATIONAL_ECONOMY_DISTRIBUTION = 'INTERNATIONAL_ECONOMY_DISTRIBUTION'; + const _INTERNATIONAL_ECONOMY_FREIGHT = 'INTERNATIONAL_ECONOMY_FREIGHT'; + const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; + const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; + const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; + const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; + const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; + const _SAME_DAY = 'SAME_DAY'; + const _SAME_DAY_CITY = 'SAME_DAY_CITY'; + const _SMART_POST = 'SMART_POST'; + const _STANDARD_OVERNIGHT = 'STANDARD_OVERNIGHT'; + const _TRANSBORDER_DISTRIBUTION_CONSOLIDATION = 'TRANSBORDER_DISTRIBUTION_CONSOLIDATION'; +} diff --git a/src/FedEx/LocationsService/SimpleType/ShippingActionType.php b/src/FedEx/LocationsService/SimpleType/ShippingActionType.php new file mode 100644 index 00000000..f6572e40 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/ShippingActionType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class ShippingActionType extends AbstractSimpleType +{ + const _DELIVERIES = 'DELIVERIES'; + const _PICKUPS = 'PICKUPS'; +} diff --git a/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php b/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php new file mode 100644 index 00000000..23209784 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class SupportedRedirectToHoldServiceType extends AbstractSimpleType +{ + const _FEDEX_EXPRESS = 'FEDEX_EXPRESS'; + const _FEDEX_GROUND = 'FEDEX_GROUND'; + const _FEDEX_GROUND_HOME_DELIVERY = 'FEDEX_GROUND_HOME_DELIVERY'; +} diff --git a/src/FedEx/LocatorService/ComplexType/ClientDetail.php b/src/FedEx/LocatorService/ComplexType/ClientDetail.php deleted file mode 100644 index 06dd75f3..00000000 --- a/src/FedEx/LocatorService/ComplexType/ClientDetail.php +++ /dev/null @@ -1,62 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - * - * @property string $AccountNumber - * @property string $MeterNumber - * @property Localization $Localization - - */ -class ClientDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'ClientDetail'; - - /** - * Identifies the FedEx account number assigned to the customer. - * - * @param string $accountNumber - * @return $this - */ - public function setAccountNumber($accountNumber) - { - $this->values['AccountNumber'] = $accountNumber; - return $this; - } - - /** - * Identifies the unique client device submitting the request. - * - * @param string $meterNumber - * @return $this - */ - public function setMeterNumber($meterNumber) - { - $this->values['MeterNumber'] = $meterNumber; - return $this; - } - - /** - * Governs any future language/translations used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - * - * @param Localization $localization - * @return $this - */ - public function setLocalization(Localization $localization) - { - $this->values['Localization'] = $localization; - return $this; - } -} diff --git a/src/FedEx/LocatorService/ComplexType/DropoffLocation.php b/src/FedEx/LocatorService/ComplexType/DropoffLocation.php deleted file mode 100644 index 90a2a84e..00000000 --- a/src/FedEx/LocatorService/ComplexType/DropoffLocation.php +++ /dev/null @@ -1,114 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - * - * @property string $BusinessName - * @property string $BusinessId - * @property string $BusinessDescription - * @property Address $BusinessAddress - * @property Distance $Distance - * @property DropoffLocationProfile $ServiceProfile - * @property $RecordIndex - - */ -class DropoffLocation extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'DropoffLocation'; - - /** - * Name of the business at this location. - * - * @param string $businessName - * @return $this - */ - public function setBusinessName($businessName) - { - $this->values['BusinessName'] = $businessName; - return $this; - } - - /** - * Identifier that can be used by IVR Attendant to look up directions to this location. - * - * @param string $businessId - * @return $this - */ - public function setBusinessId($businessId) - { - $this->values['BusinessId'] = $businessId; - return $this; - } - - /** - * A textual description of the type of business, such as "FedEx Authorized Ship Center". - * - * @param string $businessDescription - * @return $this - */ - public function setBusinessDescription($businessDescription) - { - $this->values['BusinessDescription'] = $businessDescription; - return $this; - } - - /** - * The descriptive data of the physical location. - * - * @param Address $businessAddress - * @return $this - */ - public function setBusinessAddress(Address $businessAddress) - { - $this->values['BusinessAddress'] = $businessAddress; - return $this; - } - - /** - * The descriptive data of the distance. - * - * @param Distance $distance - * @return $this - */ - public function setDistance(Distance $distance) - { - $this->values['Distance'] = $distance; - return $this; - } - - /** - * The descriptive data of the services offered at this location. - * - * @param DropoffLocationProfile $serviceProfile - * @return $this - */ - public function setServiceProfile(DropoffLocationProfile $serviceProfile) - { - $this->values['ServiceProfile'] = $serviceProfile; - return $this; - } - - /** - * Of the Total locations available this is the individual location identifier. - * - * @param $recordIndex - * @return $this - */ - public function setRecordIndex($recordIndex) - { - $this->values['RecordIndex'] = $recordIndex; - return $this; - } -} diff --git a/src/FedEx/LocatorService/ComplexType/DropoffLocationProfile.php b/src/FedEx/LocatorService/ComplexType/DropoffLocationProfile.php deleted file mode 100644 index d7c16c47..00000000 --- a/src/FedEx/LocatorService/ComplexType/DropoffLocationProfile.php +++ /dev/null @@ -1,205 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - * - * @property boolean $ExpressService - * @property boolean $GroundService - * @property string $HoursWeekdays - * @property string $HoursSaturdays - * @property string $LastExpressDropoffTimeWeekdays - * @property string $LastExpressDropoffTimeSaturdays - * @property string $LastGroundDropoffTimeWeekdays - * @property string $LastGroundDropoffTimeSaturdays - * @property boolean $HoldAtLocation - * @property boolean $GroundHoldAtLocation - * @property boolean $DangerousGoods - * @property boolean $PackagingSupplies - * @property boolean $PackagingServices - * @property boolean $ReturnSystem - - */ -class DropoffLocationProfile extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'DropoffLocationProfile'; - - /** - * Identifies if this location offers FedEx Express services. - * - * @param boolean $expressService - * @return $this - */ - public function setExpressService($expressService) - { - $this->values['ExpressService'] = $expressService; - return $this; - } - - /** - * Identifies if this location offers FedEx Ground service. - * - * @param boolean $groundService - * @return $this - */ - public function setGroundService($groundService) - { - $this->values['GroundService'] = $groundService; - return $this; - } - - /** - * This location's weekday (Monday-Friday) hours of operation. - * - * @param string $hoursWeekdays - * @return $this - */ - public function setHoursWeekdays($hoursWeekdays) - { - $this->values['HoursWeekdays'] = $hoursWeekdays; - return $this; - } - - /** - * This location's Saturday hours of operation. - * - * @param string $hoursSaturdays - * @return $this - */ - public function setHoursSaturdays($hoursSaturdays) - { - $this->values['HoursSaturdays'] = $hoursSaturdays; - return $this; - } - - /** - * The time of day on weekdays by which FedEx Express packages must be dropped off for shipment that day. - * - * @param string $lastExpressDropoffTimeWeekdays - * @return $this - */ - public function setLastExpressDropoffTimeWeekdays($lastExpressDropoffTimeWeekdays) - { - $this->values['LastExpressDropoffTimeWeekdays'] = $lastExpressDropoffTimeWeekdays; - return $this; - } - - /** - * The time of day on Saturdays by which FedEx Express packages must be dropped off for shipment that day. - * - * @param string $lastExpressDropoffTimeSaturdays - * @return $this - */ - public function setLastExpressDropoffTimeSaturdays($lastExpressDropoffTimeSaturdays) - { - $this->values['LastExpressDropoffTimeSaturdays'] = $lastExpressDropoffTimeSaturdays; - return $this; - } - - /** - * The time of day on weekdays by which FedEx Ground packages must be dropped off for shipment that day. - * - * @param string $lastGroundDropoffTimeWeekdays - * @return $this - */ - public function setLastGroundDropoffTimeWeekdays($lastGroundDropoffTimeWeekdays) - { - $this->values['LastGroundDropoffTimeWeekdays'] = $lastGroundDropoffTimeWeekdays; - return $this; - } - - /** - * The time of day on Saturdays by which FedEx Ground packages must be dropped off for shipment that day. - * - * @param string $lastGroundDropoffTimeSaturdays - * @return $this - */ - public function setLastGroundDropoffTimeSaturdays($lastGroundDropoffTimeSaturdays) - { - $this->values['LastGroundDropoffTimeSaturdays'] = $lastGroundDropoffTimeSaturdays; - return $this; - } - - /** - * Identifies if this location offers Express HAL (Hold at Location) service. - * - * @param boolean $holdAtLocation - * @return $this - */ - public function setHoldAtLocation($holdAtLocation) - { - $this->values['HoldAtLocation'] = $holdAtLocation; - return $this; - } - - /** - * Identifies if this location offers Ground HAL (Hold at Location) service. - * - * @param boolean $groundHoldAtLocation - * @return $this - */ - public function setGroundHoldAtLocation($groundHoldAtLocation) - { - $this->values['GroundHoldAtLocation'] = $groundHoldAtLocation; - return $this; - } - - /** - * Identifies if this location accepts Hazardous materials. - * - * @param boolean $dangerousGoods - * @return $this - */ - public function setDangerousGoods($dangerousGoods) - { - $this->values['DangerousGoods'] = $dangerousGoods; - return $this; - } - - /** - * Identifies if this location makes packaging supplies available. - * - * @param boolean $packagingSupplies - * @return $this - */ - public function setPackagingSupplies($packagingSupplies) - { - $this->values['PackagingSupplies'] = $packagingSupplies; - return $this; - } - - /** - * Identifies if this location provides Pack and Ship services. - * - * @param boolean $packagingServices - * @return $this - */ - public function setPackagingServices($packagingServices) - { - $this->values['PackagingServices'] = $packagingServices; - return $this; - } - - /** - * Identifies if this location supports FedEx Return System. - * - * @param boolean $returnSystem - * @return $this - */ - public function setReturnSystem($returnSystem) - { - $this->values['ReturnSystem'] = $returnSystem; - return $this; - } -} diff --git a/src/FedEx/LocatorService/ComplexType/DropoffServicesDesired.php b/src/FedEx/LocatorService/ComplexType/DropoffServicesDesired.php deleted file mode 100644 index 23d78dea..00000000 --- a/src/FedEx/LocatorService/ComplexType/DropoffServicesDesired.php +++ /dev/null @@ -1,231 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - * - * @property boolean $Express - * @property boolean $Ground - * @property boolean $FedExStaffed - * @property boolean $FedExSelfService - * @property boolean $FedExAuthorizedShippingCenter - * @property boolean $LatestExpressDropoff - * @property string $ExpressDropoffAfterTime - * @property boolean $HoldAtLocation - * @property boolean $GroundHoldAtLocation - * @property boolean $DangerousGoods - * @property boolean $SaturdayService - * @property boolean $PackingSupplies - * @property boolean $PackingServices - * @property boolean $ReturnSystem - * @property \FedEx\LocatorService\SimpleType\RedirectToHoldLocationType|string $RedirectToHoldLocation - * @property boolean $SearchSameStateOnly - - */ -class DropoffServicesDesired extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'DropoffServicesDesired'; - - /** - * Locations that accept FedEx Express shipments. - * - * @param boolean $express - * @return $this - */ - public function setExpress($express) - { - $this->values['Express'] = $express; - return $this; - } - - /** - * Locations that accept FedEx Ground shipments. - * - * @param boolean $ground - * @return $this - */ - public function setGround($ground) - { - $this->values['Ground'] = $ground; - return $this; - } - - /** - * Locations that are FedEx staffed. - * - * @param boolean $fedExStaffed - * @return $this - */ - public function setFedExStaffed($fedExStaffed) - { - $this->values['FedExStaffed'] = $fedExStaffed; - return $this; - } - - /** - * Locations that are FedEx self-service. - * - * @param boolean $fedExSelfService - * @return $this - */ - public function setFedExSelfService($fedExSelfService) - { - $this->values['FedExSelfService'] = $fedExSelfService; - return $this; - } - - /** - * Locations that are FedEx Authorized Shipping Centers. - * - * @param boolean $fedExAuthorizedShippingCenter - * @return $this - */ - public function setFedExAuthorizedShippingCenter($fedExAuthorizedShippingCenter) - { - $this->values['FedExAuthorizedShippingCenter'] = $fedExAuthorizedShippingCenter; - return $this; - } - - /** - * Locations with the latest Express drop-off time. - * - * @param boolean $latestExpressDropoff - * @return $this - */ - public function setLatestExpressDropoff($latestExpressDropoff) - { - $this->values['LatestExpressDropoff'] = $latestExpressDropoff; - return $this; - } - - /** - * Locations that are open after this local time. - * - * @param string $expressDropoffAfterTime - * @return $this - */ - public function setExpressDropoffAfterTime($expressDropoffAfterTime) - { - $this->values['ExpressDropoffAfterTime'] = $expressDropoffAfterTime; - return $this; - } - - /** - * Locations that support Express Hold at Location. - * - * @param boolean $holdAtLocation - * @return $this - */ - public function setHoldAtLocation($holdAtLocation) - { - $this->values['HoldAtLocation'] = $holdAtLocation; - return $this; - } - - /** - * Locations that support Ground Hold at Location. - * - * @param boolean $groundHoldAtLocation - * @return $this - */ - public function setGroundHoldAtLocation($groundHoldAtLocation) - { - $this->values['GroundHoldAtLocation'] = $groundHoldAtLocation; - return $this; - } - - /** - * Locations that accept FedEx Express shipments containing hazardous materials. - * - * @param boolean $dangerousGoods - * @return $this - */ - public function setDangerousGoods($dangerousGoods) - { - $this->values['DangerousGoods'] = $dangerousGoods; - return $this; - } - - /** - * Locations open on Saturdays. - * - * @param boolean $saturdayService - * @return $this - */ - public function setSaturdayService($saturdayService) - { - $this->values['SaturdayService'] = $saturdayService; - return $this; - } - - /** - * Locations that make packaging supplies available. - * - * @param boolean $packingSupplies - * @return $this - */ - public function setPackingSupplies($packingSupplies) - { - $this->values['PackingSupplies'] = $packingSupplies; - return $this; - } - - /** - * Locations that provide Pack and Ship services. - * - * @param boolean $packingServices - * @return $this - */ - public function setPackingServices($packingServices) - { - $this->values['PackingServices'] = $packingServices; - return $this; - } - - /** - * Locations that support FedExReturn System. - * - * @param boolean $returnSystem - * @return $this - */ - public function setReturnSystem($returnSystem) - { - $this->values['ReturnSystem'] = $returnSystem; - return $this; - } - - /** - * Locations that support Redirect to Hold of shipments. - * - * @param \FedEx\LocatorService\SimpleType\RedirectToHoldLocationType|string $redirectToHoldLocation - * @return $this - */ - public function setRedirectToHoldLocation($redirectToHoldLocation) - { - $this->values['RedirectToHoldLocation'] = $redirectToHoldLocation; - return $this; - } - - /** - * Locations in the same state that support Redirect to Hold of shipments. - * - * @param boolean $searchSameStateOnly - * @return $this - */ - public function setSearchSameStateOnly($searchSameStateOnly) - { - $this->values['SearchSameStateOnly'] = $searchSameStateOnly; - return $this; - } -} diff --git a/src/FedEx/LocatorService/ComplexType/FedExLocatorReply.php b/src/FedEx/LocatorService/ComplexType/FedExLocatorReply.php deleted file mode 100644 index 95b363b5..00000000 --- a/src/FedEx/LocatorService/ComplexType/FedExLocatorReply.php +++ /dev/null @@ -1,101 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - * - * @property \FedEx\LocatorService\SimpleType\NotificationSeverityType|string $HighestSeverity - * @property Notification[] $Notifications - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property DropoffLocation[] $DropoffLocations - * @property int $AvailableRecordCount - - */ -class FedExLocatorReply extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'FedExLocatorReply'; - - /** - * Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - * - * @param \FedEx\LocatorService\SimpleType\NotificationSeverityType|string $highestSeverity - * @return $this - */ - public function setHighestSeverity($highestSeverity) - { - $this->values['HighestSeverity'] = $highestSeverity; - return $this; - } - - /** - * The descriptive data detailing the status of a sumbitted transaction. - * - * @param Notification[] $notifications - * @return $this - */ - public function setNotifications(array $notifications) - { - $this->values['Notifications'] = $notifications; - return $this; - } - - /** - * Descriptive data that governs data payload language/translations.The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * Descriptive data for each of the drop-off locations matches found. - * - * @param DropoffLocation[] $dropoffLocations - * @return $this - */ - public function setDropoffLocations(array $dropoffLocations) - { - $this->values['DropoffLocations'] = $dropoffLocations; - return $this; - } - - /** - * The total number of locations that matched the request criteria. - * - * @param int $availableRecordCount - * @return $this - */ - public function setAvailableRecordCount($availableRecordCount) - { - $this->values['AvailableRecordCount'] = $availableRecordCount; - return $this; - } -} diff --git a/src/FedEx/LocatorService/ComplexType/FedExLocatorRequest.php b/src/FedEx/LocatorService/ComplexType/FedExLocatorRequest.php deleted file mode 100644 index 4d4c7070..00000000 --- a/src/FedEx/LocatorService/ComplexType/FedExLocatorRequest.php +++ /dev/null @@ -1,153 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - * - * @property WebAuthenticationDetail $WebAuthenticationDetail - * @property ClientDetail $ClientDetail - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property int $BeginningRecordIndex - * @property $MaximumMatchCount - * @property \FedEx\LocatorService\SimpleType\DistanceUnits|string $DistanceUnits - * @property string $NearToPhoneNumber - * @property Address $NearToAddress - * @property DropoffServicesDesired $DropoffServicesDesired - - */ -class FedExLocatorRequest extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'FedExLocatorRequest'; - - /** - * The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - * - * @param WebAuthenticationDetail $webAuthenticationDetail - * @return $this - */ - public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) - { - $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; - return $this; - } - - /** - * The descriptive data identifying the client submitting the transaction. - * - * @param ClientDetail $clientDetail - * @return $this - */ - public function setClientDetail(ClientDetail $clientDetail) - { - $this->values['ClientDetail'] = $clientDetail; - return $this; - } - - /** - * The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * The index of first location to be returned from among all matching locations. Defauls to 1. - * - * @param int $beginningRecordIndex - * @return $this - */ - public function setBeginningRecordIndex($beginningRecordIndex) - { - $this->values['BeginningRecordIndex'] = $beginningRecordIndex; - return $this; - } - - /** - * The maximum number of locations to be returned. Maximum count allowed is 25. Defaults to 10. - * - * @param $maximumMatchCount - * @return $this - */ - public function setMaximumMatchCount($maximumMatchCount) - { - $this->values['MaximumMatchCount'] = $maximumMatchCount; - return $this; - } - - /** - * Units in which Distance to location is to be expressed. See DistanceUnits for list of returned values. - * - * @param \FedEx\LocatorService\SimpleType\DistanceUnits|string $distanceUnits - * @return $this - */ - public function setDistanceUnits($distanceUnits) - { - $this->values['DistanceUnits'] = $distanceUnits; - return $this; - } - - /** - * Phone number for which nearby FedEx locations are to be found. This element is required if NearToAddress is not present. - * - * @param string $nearToPhoneNumber - * @return $this - */ - public function setNearToPhoneNumber($nearToPhoneNumber) - { - $this->values['NearToPhoneNumber'] = $nearToPhoneNumber; - return $this; - } - - /** - * The descriptive data of a physical location for which nearby FedEx locations are to be found. This element is required if NearToPhoneNumber is not present. Both City and StateOrProvinceCode child elements are required ifPostalCode is not present. - * - * @param Address $nearToAddress - * @return $this - */ - public function setNearToAddress(Address $nearToAddress) - { - $this->values['NearToAddress'] = $nearToAddress; - return $this; - } - - /** - * The descriptive data about the various drop off services that must be available at the locations returned. - * - * @param DropoffServicesDesired $dropoffServicesDesired - * @return $this - */ - public function setDropoffServicesDesired(DropoffServicesDesired $dropoffServicesDesired) - { - $this->values['DropoffServicesDesired'] = $dropoffServicesDesired; - return $this; - } -} diff --git a/src/FedEx/LocatorService/Request.php b/src/FedEx/LocatorService/Request.php deleted file mode 100644 index 27106880..00000000 --- a/src/FedEx/LocatorService/Request.php +++ /dev/null @@ -1,38 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - */ -class Request extends AbstractRequest -{ - const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services'; - const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services'; - - protected static $wsdlFileName = 'LocatorService_v2.wsdl'; - - /** - * Sends the FedExLocatorRequest and returns the response - * - * @param ComplexType\FedExLocatorRequest $fedExLocatorRequest - * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient - * @return ComplexType\FedExLocatorReply|stdClass - */ - public function getFedExLocatorReply(ComplexType\FedExLocatorRequest $fedExLocatorRequest, $returnStdClass = false) - { - $response = $this->getSoapClient()->fedExLocator($fedExLocatorRequest->toArray()); - if ($returnStdClass) { - return $response; - } - - $fedExLocatorReply = new ComplexType\FedExLocatorReply; - $fedExLocatorReply->populateFromStdClass($response); - return $fedExLocatorReply; - } -} diff --git a/src/FedEx/LocatorService/SimpleType/RedirectToHoldLocationType.php b/src/FedEx/LocatorService/SimpleType/RedirectToHoldLocationType.php deleted file mode 100644 index d0b388ee..00000000 --- a/src/FedEx/LocatorService/SimpleType/RedirectToHoldLocationType.php +++ /dev/null @@ -1,18 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Locator Service - */ -class RedirectToHoldLocationType extends AbstractSimpleType -{ - const _EXPRESS = 'EXPRESS'; - const _GROUND = 'GROUND'; - const _HOMEDELIVERY = 'HOMEDELIVERY'; -} diff --git a/src/FedEx/_wsdl/LocationsService_v7.wsdl b/src/FedEx/_wsdl/LocationsService_v7.wsdl new file mode 100755 index 00000000..b4bfd1f0 --- /dev/null +++ b/src/FedEx/_wsdl/LocationsService_v7.wsdl @@ -0,0 +1,1024 @@ + + + + + + + + Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). + + + + + Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + + + + + Name of city, town, etc. + + + + + Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + + + + + Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + + + + + Relevant only to addresses in Puerto Rico. + + + + + The two-letter code used to identify a country. + + + + + The fully spelt out name of a country. + + + + + Indicates whether this address residential (as opposed to commercial). + + + + + The geographic coordinates cooresponding to this address. + + + + + + + Additional information about a physical location, such as suite number, cross street, floor number in a building. These details are not typically a part of a standard address definition; however, these details might help locate the address. + + + + + + + Indicates whether how this location can be accessed. + + + + + Specifies building number or name. + + + + + Specifies a department in the company or retail store. + + + + + Specifies the floor number. + + + + + + Specifies apartment number. + + + + + Specifies the room number, if one is specified. + + + + + + This is used to specify additional details about the address such as landmark. For e.g. This field is used to capture details such as an address being inside a facility such as, Chilli's Care Center, St. Jude - Inside. + + + + + + + Specifies the relationship between the address specificed and the address of the FedEx Location in terms of distance. + + + + + Address as provided in the request. + + + + + Specify the geographic co-ordinates for the matched address. + + + + + Specifies the distance between the matched address and the addresses of matched FedEx locations. Also specifies the details of the FedEx locations. + + + + + + + Identification of a FedEx operating company (transportation). + + + + + + + + + + + + + + + + + + This field describe a subset of the carrier's products or services which may have unique characteristics: i.e. latest drop-off times at a particular location vary depending on the destination type. + + + + + Specifies the details about the latest times a drop off can be made at a location most days. These are the normal drop off times. + + + + + Specifies the details about the exceptional latest times a drop off can be made at a location. These are drop off times that are a variation from the normal drop off times. + + + + + Specifies the details about the effective latest times drop off can be made at a location on the date requested. These are drop off times that are derived from the normal and exceptional drop off times, depending upon the date requested. + + + + + + + + Specifies the special services supported at the clearance location for an individual destination country. + + + + + Identifies the country whose special services are specified below. + + + + + Identifies the constrained special services supported for the country above. + + + + + + + Specifies the details about the countries supported by this location. + + + + + Services supported for clearance + + + + + Identifies the type of consolidation for which these clearance location attributes were extracted. + + + + + Identifies the type of clearance performed at this location. + + + + + Identifies the constrained special services supported at this location. + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + Indicates the region from which the transaction is submitted. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + + + + + + + + + + + The descriptive data for a point-of-contact person. + + + + + Client provided identifier corresponding to this contact information. + + + + + Identifies the contact person's name. + + + + + Identifies the contact person's title. + + + + + Identifies the company this contact is associated with. + + + + + Identifies the phone number associated with this contact. + + + + + Identifies the phone extension associated with this contact. + + + + + Identifies a toll free number, if any, associated with this contact. + + + + + Identifies the pager number associated with this contact. + + + + + Identifies the fax number associated with this contact. + + + + + Identifies the email address associated with this contact. + + + + + + + Describes relationship between origin and destination countries. + + + + + + + + + + + + + + + + + + + + Driving or other transportation distances, distinct from dimension measurements. + + + + + Identifies the distance quantity. + + + + + Identifies the unit of measure for the distance value. + + + + + + + Specifies the location details and other information relevant to the location that is derived from the inputs provided in the request. + + + + + Distance between an address of a geographic location and an address of a FedEx location. + + + + + + + Details about a FedEx location such as services offered, working hours and pick and drop off times. + + + + + + + + + + + + + + + + + + + Indicates a FedEx Express operating region. + + + + + + + + + + + + Identifies a kind of FedEx facility. + + + + + + + + + + + + + + + + + + + + + + + Specifies the latest time by which a package can be dropped off at a FedEx location. + + + + + + + Specifies the details about the overlay to the last drop off time for a carrier at a FedEx location. + + + + + + + Specifies the reason for the overlay of the daily last drop off time for a carrier. + + + + + + + + Specifies the time and reason to overlay the last drop off time for a carrier at a FedEx location. + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + Indicates how this can be accessed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Describes an individual location providing a set of customer service features. + + + + + + + + + + + + + Details about the clearance location. + + + + + Details about the FedEx administrative locations that may provide services to this location. + + + + + + + + + Normal operating hours for the location. + + + + + Operating hours for the location that are exception from the normal hours of operation. + + + + + + + + + Specifies the location hours for a location. + + + + + + + + + + + + + + + + + Specifies the crieteria used to filter the location search results. + + + + + + + + + Specifies the criterion to be used to sort the location details. + + + + + + + + + + + Specifies the criterion and order to be used to sort the location details. + + + + + Specifies the criterion to be used to sort the location details. + + + + + Specifies sort order of the location details. + + + + + + + Specifies sort order of the location details. + + + + + + + + + Specifies the criteria types that may be used to search for FedEx locations. + + + + + + + + + + + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Attributes about a reservation at a FedEx location. + + + + + + + + + + + + + Specifies additional constraints on the attributes of the locations being searched. + + + + + Specifies value and units of the radius around the address to search for FedEx locations. + + + + + The latest time at which the customer can drop off a package for being shipped using an express service. + + + + + Specifies the criteria used to filter the results of locations search. + + + + + Specifies the types of services supported by a FedEx location for redirect to hold. + + + + + + + + + + + + + + + + + + Specifies total number of location results that are available. + + + + + Specifies the number of location results returned in this reply. + + + + + Specifies the address formatted to have correct postal code per USPS standards. + + + + + The details about the relationship between the address requested and the locations returned. + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + Specifies the criterion that may be used to search for FedEx locations. + + + + + Tracking number to be used when searching for locations. This tracking number, along with other location search constraints, help to narrow the search for locations. + + + + + + + + Specifies the criterion to be used to return location results when there are mutiple matches. + + + + + Specifies the details on how the location search results be sorted in the reply. + + + + + Contraints to be applied to location attributes. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the types of services supported by a FedEx location for redirect to hold. + + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/FedEx/_wsdl/LocatorService_v2.wsdl b/src/FedEx/_wsdl/LocatorService_v2.wsdl deleted file mode 100644 index eca6e419..00000000 --- a/src/FedEx/_wsdl/LocatorService_v2.wsdl +++ /dev/null @@ -1,680 +0,0 @@ - - - - - - - The descriptive data sent to search for the nearest FedEx location. - - - - - The descriptive data returned for a drop off locator request. It is limited to a maximum of ten locations returned within a 50-mile radius. - - - - - - - The descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - - - - - The descriptive data identifying the client submitting the transaction. - - - - - The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - The index of first location to be returned from among all matching locations. Defauls to 1. - - - - - The maximum number of locations to be returned. Maximum count allowed is 25. Defaults to 10. - - - - - - - - Units in which Distance to location is to be expressed. See DistanceUnits for list of returned values. - - - - - Phone number for which nearby FedEx locations are to be found. This element is required if NearToAddress is not present. - - 10 - - - - - - The descriptive data of a physical location for which nearby FedEx locations are to be found. This element is required if NearToPhoneNumber is not present. Both City and StateOrProvinceCode child elements are required if PostalCode is not present. - - - - - The descriptive data about the various drop off services that must be available at the locations returned. - - - - - - - Used in authentication of the sender's identity. - - - - - Credential used to authenticate a specific software application. This value is provided by FedEx after registration. - - - - - - - Two part authentication string used for the sender's identity. - - - - - Publicly known part of authentication key used for authentication. This value is provided by FedEx after registration. - - 16 - - - - - - Secret part of authentication key used for authentication. This value is provided by FedEx after registration. - - 25 - - - - - - - - The descriptive data identifying the client submitting the transaction. - - - - - Identifies the FedEx account number assigned to the customer. - - 12 - - - - - - Identifies the unique client device submitting the request. - - 10 - - - - - - Governs any future language/translations used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) - - - - - - - The descriptive data about the various drop off services. - - - - - Locations that accept FedEx Express shipments. - - - - - Locations that accept FedEx Ground shipments. - - - - - Locations that are FedEx staffed. - - - - - Locations that are FedEx self-service. - - - - - Locations that are FedEx Authorized Shipping Centers. - - - - - Locations with the latest Express drop-off time. - - - - - Locations that are open after this local time. - - - - - Locations that support Express Hold at Location. - - - - - Locations that support Ground Hold at Location. - - - - - Locations that accept FedEx Express shipments containing hazardous materials. - - - - - Locations open on Saturdays. - - - - - Locations that make packaging supplies available. - - - - - Locations that provide Pack and Ship services. - - - - - Locations that support FedEx Return System. - - - - - Locations that support Redirect to Hold of shipments. - - - - - Locations in the same state that support Redirect to Hold of shipments. - - - - - - - - - Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - - - - - The descriptive data detailing the status of a sumbitted transaction. - - - - - Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Descriptive data for each of the drop-off locations matches found. - - - - - The total number of locations that matched the request criteria. - - - - - - - The descriptive data regarding the results of the submitted transaction. - - - - - Identifies the severity of the Notification item. See NotificationSeverityType for list of returned values. - - - - - Identifies the source - what FedEx system, sub-system, or component generated the Notification item. - - - - - Identifies the error code generated by the FedEx system, sub-system or component. - - 8 - - - - - - Identifies the error message text. - - 255 - - - - - - Identifies the error message text in the localization requested. Currently not supported. - - - - - Used internally by FedEx systems for message translation. - - - - - - - - - Name identifiying the type of the data in the element 'Value' - - - - - The value that was used as the replacement parameter. - - - - - - - The descriptive data that governs data payload language/translations. - - - - - Identifies a customer-supplied unique identifier for this transaction. It is returned in the reply message to aid in matching requests to replies. - - 40 - - - - - - Governs any future language/translations applied to the data payload (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). - - - - - - - The descriptive data for the local language and locale (i.e. country). - - - - - Identifies the language to use for human-readable messages. - - 2 - - - - - - Identifies the locale (i.e. country code). - - 2 - - - - - - - - Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - - - - - Fixed value. - - - - - Fixed value. - - - - - Fixed value. - - - - - Fixed value. - - - - - - - The descriptive data of locations matching the criteria provided in the drop of locator request. A maximum of ten different locations can be returned. - - - - - Name of the business at this location. - - 35 - - - - - - Identifier that can be used by IVR Attendant to look up directions to this location. - - - - - A textual description of the type of business, such as "FedEx Authorized Ship Center". - - 35 - - - - - - The descriptive data of the physical location. - - - - - The descriptive data of the distance. - - - - - The descriptive data of the services offered at this location. - - - - - Of the Total locations available this is the individual location identifier. - - - - - - - - - - The descriptive data for a physical location. - - - - - Combination of number, street name, etc. Empty lines should not be included. - - 35 - - - - - - Name of city, town, etc. - - 35 - - - - - - Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. - - 2 - - - - - - Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. - - 16 - - - - - - Relevant only to addresses in Puerto Rico. In Puerto Rico, multiple addresses within the same ZIP code can have the same house number and street name. When this is the case, the urbanization code is needed to distinguish them. - - 100 - - - - - - Identification of a country. Defaults to "US". Valid values: US - United States, CA - Canada. - - 2 - - - - - - Indicates whether this address is residential (as opposed to commercial). - - - - - - - The descriptive data for distance. - - - - - Identifies the value of distance from the point indicated by the search location (e.g. "12.5"). - - - - - Identifies the unit of distance from the point indicated by the search location (e.g. "MI"). See DistanceUnits for list of returned values. - - - - - - - The descriptive data about the various drop off services. - - - - - Identifies if this location offers FedEx Express services. - - - - - Identifies if this location offers FedEx Ground service. - - - - - This location's weekday (Monday-Friday) hours of operation. - - 35 - - - - - - This location's Saturday hours of operation. - - 35 - - - - - - The time of day on weekdays by which FedEx Express packages must be dropped off for shipment that day. - - 35 - - - - - - The time of day on Saturdays by which FedEx Express packages must be dropped off for shipment that day. - - 35 - - - - - - The time of day on weekdays by which FedEx Ground packages must be dropped off for shipment that day. - - 35 - - - - - - The time of day on Saturdays by which FedEx Ground packages must be dropped off for shipment that day. - - 35 - - - - - - Identifies if this location offers Express HAL (Hold at Location) service. - - - - - Identifies if this location offers Ground HAL (Hold at Location) service. - - - - - Identifies if this location accepts Hazardous materials. - - - - - Identifies if this location makes packaging supplies available. - - - - - Identifies if this location provides Pack and Ship services. - - - - - Identifies if this location supports FedEx Return System. - - - - - - - Identifies the set of severity values for a Notification. - - - - - - - - - - - - The type of Redirect to Hold FedEx location. - - - - - - - - - - Identifies the set of distance units for a Distance. - - - - - - - - - - - Defines the request data element of the operation. - - - - - Defines the response data element of the operation. - - - - This element describes the web service, the operations performed and the messages involved in the operation. - - - Defines the input message type for the fedExLocator operation. - - - Defines the output message type for the fedExLocator operation. - - - - - - - - - - - - - - - - - - - - - diff --git a/tests/FedEx/Tests/LocatorServiceTest.php b/tests/FedEx/Tests/LocatorServiceTest.php index a2e4dc5f..492921c9 100644 --- a/tests/FedEx/Tests/LocatorServiceTest.php +++ b/tests/FedEx/Tests/LocatorServiceTest.php @@ -2,24 +2,24 @@ namespace FedEx\Tests; -use FedEx\LocatorService\Request; -use FedEx\LocatorService\ComplexType; +use FedEx\LocationsService\Request; +use FedEx\LocationsService\ComplexType; use FedEx\Utility\ComplexTypePopulator; class LocatorServiceTest extends TestCase { public function testLocatorServiceRequest() { - $fedexLocatorRequest = new ComplexType\FedExLocatorRequest(); + $searchLocationsRequest = new ComplexType\SearchLocationsRequest(); $complextTypePopulator = new ComplexTypePopulator(); - $complextTypePopulator->populate($fedexLocatorRequest); + $complextTypePopulator->populate($searchLocationsRequest); $mockSoapClient = $this->getMockFromWsdl(Request::getWsdlPath()); - $mockSoapClient->method('fedExLocator')->will($this->returnValue(ComplexType\FedExLocatorRequest::class)); + $mockSoapClient->method('searchLocations')->will($this->returnValue(ComplexType\SearchLocationsReply::class)); $request = new Request($mockSoapClient); - $this->assertEquals(ComplexType\FedExLocatorRequest::class, $request->getFedExLocatorReply($fedexLocatorRequest, true)); + $this->assertEquals(ComplexType\SearchLocationsReply::class, $request->getSearchLocationsReply($searchLocationsRequest, true)); } } diff --git a/tests/FedEx/Tests/TestCase.php b/tests/FedEx/Tests/TestCase.php index 389a1e3d..790aff46 100644 --- a/tests/FedEx/Tests/TestCase.php +++ b/tests/FedEx/Tests/TestCase.php @@ -46,16 +46,22 @@ protected function getAllRequestObjects() { return [ new \FedEx\AddressValidationService\Request(), + new \FedEx\AsyncService\Request(), new \FedEx\CloseService\Request(), new \FedEx\CourierDispatchService\Request(), - new \FedEx\LocatorService\Request(), + new \FedEx\DGDSService\Request(), + new \FedEx\DGLDService\Request(), + new \FedEx\InFlightShipmentService\Request(), + new \FedEx\LocationsService\Request(), + new \FedEx\OpenShipService\Request(), new \FedEx\PackageMovementInformationService\Request(), new \FedEx\PickupService\Request(), new \FedEx\RateService\Request(), new \FedEx\ReturnTagService\Request(), new \FedEx\ShipService\Request(), new \FedEx\TrackService\Request(), - new \FedEx\UploadDocumentService\Request() + new \FedEx\UploadDocumentService\Request(), + new \FedEx\ValidationAvailabilityAndCommitmentService\Request() ]; } } diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 2041bbf2..ec5cfe4e 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -135,24 +135,24 @@ protected function execute(InputInterface $input, OutputInterface $output) $generateComplexTypes->run(); - //LocatorService - $wsdlPath = $fedexSrcDir . '/_wsdl/LocatorService_v2.wsdl'; + //LocationsService + $wsdlPath = $fedexSrcDir . '/_wsdl/LocationsService_v7.wsdl'; - $baseNamespace = 'FedEx\LocatorService'; - $subPackageName = 'Locator Service'; + $baseNamespace = 'FedEx\LocationsService'; + $subPackageName = 'Locations Service'; //generate Request class - $pathToRequestClassFile = $fedexSrcDir . '/LocatorService/Request.php'; + $pathToRequestClassFile = $fedexSrcDir . '/LocationsService/Request.php'; $generateRequestClassFile = new CodeGenerator\GenerateRequestClass($pathToRequestClassFile, $wsdlPath, $baseNamespace, $subPackageName); $generateRequestClassFile->run(); //generate SimpleType classes - $exportPath = $fedexSrcDir . '/LocatorService/SimpleType'; + $exportPath = $fedexSrcDir . '/LocationsService/SimpleType'; $generateSimpleTypes = new CodeGenerator\GenerateSimpleTypeClasses($exportPath, $wsdlPath, $baseNamespace, $subPackageName); $generateSimpleTypes->run(); //generate ComplexType classes - $exportPath = $fedexSrcDir . '/LocatorService/ComplexType'; + $exportPath = $fedexSrcDir . '/LocationsService/ComplexType'; $generateComplexTypes = new CodeGenerator\GenerateComplexTypeClasses($exportPath, $wsdlPath, $baseNamespace, $subPackageName); $generateComplexTypes->run(); From d20cbb7d8402763e6acb0054bb2da49f04a50679 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 5 Nov 2017 10:09:55 -0600 Subject: [PATCH 09/33] fixup! Updated Ship Service to version 21. --- .../CancelPendingShipmentReply.php | 75 ---------------- .../CancelPendingShipmentRequest.php | 88 ------------------- .../CreatePendingShipmentReply.php | 88 ------------------- .../CreatePendingShipmentRequest.php | 88 ------------------- .../ComplexType/EMailNotificationDetail.php | 62 ------------- .../EMailNotificationRecipient.php | 88 ------------------- .../EMailNotificationAggregationType.php | 17 ---- .../SimpleType/EMailNotificationEventType.php | 19 ---- .../EMailNotificationFormatType.php | 18 ---- .../SimpleType/TermsOfSaleType.php | 29 ------ tests/FedEx/Tests/ShipServiceTest.php | 4 - 11 files changed, 576 deletions(-) delete mode 100644 src/FedEx/ShipService/ComplexType/CancelPendingShipmentReply.php delete mode 100644 src/FedEx/ShipService/ComplexType/CancelPendingShipmentRequest.php delete mode 100644 src/FedEx/ShipService/ComplexType/CreatePendingShipmentReply.php delete mode 100644 src/FedEx/ShipService/ComplexType/CreatePendingShipmentRequest.php delete mode 100644 src/FedEx/ShipService/ComplexType/EMailNotificationDetail.php delete mode 100644 src/FedEx/ShipService/ComplexType/EMailNotificationRecipient.php delete mode 100644 src/FedEx/ShipService/SimpleType/EMailNotificationAggregationType.php delete mode 100644 src/FedEx/ShipService/SimpleType/EMailNotificationEventType.php delete mode 100644 src/FedEx/ShipService/SimpleType/EMailNotificationFormatType.php delete mode 100644 src/FedEx/ShipService/SimpleType/TermsOfSaleType.php diff --git a/src/FedEx/ShipService/ComplexType/CancelPendingShipmentReply.php b/src/FedEx/ShipService/ComplexType/CancelPendingShipmentReply.php deleted file mode 100644 index 5f98f02b..00000000 --- a/src/FedEx/ShipService/ComplexType/CancelPendingShipmentReply.php +++ /dev/null @@ -1,75 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - * - * @property \FedEx\ShipService\SimpleType\NotificationSeverityType|string $HighestSeverity - * @property Notification[] $Notifications - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - - */ -class CancelPendingShipmentReply extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CancelPendingShipmentReply'; - - /** - * Set HighestSeverity - * - * @param \FedEx\ShipService\SimpleType\NotificationSeverityType|string $highestSeverity - * @return $this - */ - public function setHighestSeverity($highestSeverity) - { - $this->values['HighestSeverity'] = $highestSeverity; - return $this; - } - - /** - * Set Notifications - * - * @param Notification[] $notifications - * @return $this - */ - public function setNotifications(array $notifications) - { - $this->values['Notifications'] = $notifications; - return $this; - } - - /** - * Set TransactionDetail - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Set Version - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } -} diff --git a/src/FedEx/ShipService/ComplexType/CancelPendingShipmentRequest.php b/src/FedEx/ShipService/ComplexType/CancelPendingShipmentRequest.php deleted file mode 100644 index 760ae7c6..00000000 --- a/src/FedEx/ShipService/ComplexType/CancelPendingShipmentRequest.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - * - * @property WebAuthenticationDetail $WebAuthenticationDetail - * @property ClientDetail $ClientDetail - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property TrackingId $TrackingId - - */ -class CancelPendingShipmentRequest extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CancelPendingShipmentRequest'; - - /** - * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - * - * @param WebAuthenticationDetail $webAuthenticationDetail - * @return $this - */ - public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) - { - $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; - return $this; - } - - /** - * Descriptive data identifying the client submitting the transaction. - * - * @param ClientDetail $clientDetail - * @return $this - */ - public function setClientDetail(ClientDetail $clientDetail) - { - $this->values['ClientDetail'] = $clientDetail; - return $this; - } - - /** - * Descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * Set TrackingId - * - * @param TrackingId $trackingId - * @return $this - */ - public function setTrackingId(TrackingId $trackingId) - { - $this->values['TrackingId'] = $trackingId; - return $this; - } -} diff --git a/src/FedEx/ShipService/ComplexType/CreatePendingShipmentReply.php b/src/FedEx/ShipService/ComplexType/CreatePendingShipmentReply.php deleted file mode 100644 index 4cf372ef..00000000 --- a/src/FedEx/ShipService/ComplexType/CreatePendingShipmentReply.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - * - * @property \FedEx\ShipService\SimpleType\NotificationSeverityType|string $HighestSeverity - * @property Notification[] $Notifications - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property CompletedShipmentDetail $CompletedShipmentDetail - - */ -class CreatePendingShipmentReply extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CreatePendingShipmentReply'; - - /** - * Identifies the highest severity encountered when executing the request; in order from high to low: FAILURE, ERROR, WARNING, NOTE, SUCCESS. - * - * @param \FedEx\ShipService\SimpleType\NotificationSeverityType|string $highestSeverity - * @return $this - */ - public function setHighestSeverity($highestSeverity) - { - $this->values['HighestSeverity'] = $highestSeverity; - return $this; - } - - /** - * The descriptive data detailing the status of a sumbitted transaction. - * - * @param Notification[] $notifications - * @return $this - */ - public function setNotifications(array $notifications) - { - $this->values['Notifications'] = $notifications; - return $this; - } - - /** - * Descriptive data that governs data payload language/translations. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * The reply payload. All of the returned information about this shipment/package. - * - * @param CompletedShipmentDetail $completedShipmentDetail - * @return $this - */ - public function setCompletedShipmentDetail(CompletedShipmentDetail $completedShipmentDetail) - { - $this->values['CompletedShipmentDetail'] = $completedShipmentDetail; - return $this; - } -} diff --git a/src/FedEx/ShipService/ComplexType/CreatePendingShipmentRequest.php b/src/FedEx/ShipService/ComplexType/CreatePendingShipmentRequest.php deleted file mode 100644 index 670ff5c2..00000000 --- a/src/FedEx/ShipService/ComplexType/CreatePendingShipmentRequest.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - * - * @property WebAuthenticationDetail $WebAuthenticationDetail - * @property ClientDetail $ClientDetail - * @property TransactionDetail $TransactionDetail - * @property VersionId $Version - * @property RequestedShipment $RequestedShipment - - */ -class CreatePendingShipmentRequest extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'CreatePendingShipmentRequest'; - - /** - * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). - * - * @param WebAuthenticationDetail $webAuthenticationDetail - * @return $this - */ - public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) - { - $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; - return $this; - } - - /** - * The descriptive data identifying the client submitting the transaction. - * - * @param ClientDetail $clientDetail - * @return $this - */ - public function setClientDetail(ClientDetail $clientDetail) - { - $this->values['ClientDetail'] = $clientDetail; - return $this; - } - - /** - * The descriptive data for this customer transaction. The TransactionDetail from the request is echoed back to the caller in the corresponding reply. - * - * @param TransactionDetail $transactionDetail - * @return $this - */ - public function setTransactionDetail(TransactionDetail $transactionDetail) - { - $this->values['TransactionDetail'] = $transactionDetail; - return $this; - } - - /** - * Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). - * - * @param VersionId $version - * @return $this - */ - public function setVersion(VersionId $version) - { - $this->values['Version'] = $version; - return $this; - } - - /** - * Descriptive data about the shipment being sent by the requestor. - * - * @param RequestedShipment $requestedShipment - * @return $this - */ - public function setRequestedShipment(RequestedShipment $requestedShipment) - { - $this->values['RequestedShipment'] = $requestedShipment; - return $this; - } -} diff --git a/src/FedEx/ShipService/ComplexType/EMailNotificationDetail.php b/src/FedEx/ShipService/ComplexType/EMailNotificationDetail.php deleted file mode 100644 index 9a5e3563..00000000 --- a/src/FedEx/ShipService/ComplexType/EMailNotificationDetail.php +++ /dev/null @@ -1,62 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - * - * @property \FedEx\ShipService\SimpleType\EMailNotificationAggregationType|string $AggregationType - * @property string $PersonalMessage - * @property EMailNotificationRecipient[] $Recipients - - */ -class EMailNotificationDetail extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationDetail'; - - /** - * Specifies whether/how email notifications are grouped. - * - * @param \FedEx\ShipService\SimpleType\EMailNotificationAggregationType|string $aggregationType - * @return $this - */ - public function setAggregationType($aggregationType) - { - $this->values['AggregationType'] = $aggregationType; - return $this; - } - - /** - * A message that will be included in the email notifications - * - * @param string $personalMessage - * @return $this - */ - public function setPersonalMessage($personalMessage) - { - $this->values['PersonalMessage'] = $personalMessage; - return $this; - } - - /** - * Information describing the destination of the email, format of the email and events to be notified on - * - * @param EMailNotificationRecipient[] $recipients - * @return $this - */ - public function setRecipients(array $recipients) - { - $this->values['Recipients'] = $recipients; - return $this; - } -} diff --git a/src/FedEx/ShipService/ComplexType/EMailNotificationRecipient.php b/src/FedEx/ShipService/ComplexType/EMailNotificationRecipient.php deleted file mode 100644 index 3624d717..00000000 --- a/src/FedEx/ShipService/ComplexType/EMailNotificationRecipient.php +++ /dev/null @@ -1,88 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - * - * @property \FedEx\ShipService\SimpleType\EMailNotificationRecipientType|string $EMailNotificationRecipientType - * @property string $EMailAddress - * @property \FedEx\ShipService\SimpleType\EMailNotificationEventType|string[] $NotificationEventsRequested - * @property \FedEx\ShipService\SimpleType\EMailNotificationFormatType|string $Format - * @property Localization $Localization - - */ -class EMailNotificationRecipient extends AbstractComplexType -{ - /** - * Name of this complex type - * - * @var string - */ - protected $name = 'EMailNotificationRecipient'; - - /** - * Identifies the relationship this email recipient has to the shipment. - * - * @param \FedEx\ShipService\SimpleType\EMailNotificationRecipientType|string $eMailNotificationRecipientType - * @return $this - */ - public function setEMailNotificationRecipientType($eMailNotificationRecipientType) - { - $this->values['EMailNotificationRecipientType'] = $eMailNotificationRecipientType; - return $this; - } - - /** - * The email address to send the notification to - * - * @param string $eMailAddress - * @return $this - */ - public function setEMailAddress($eMailAddress) - { - $this->values['EMailAddress'] = $eMailAddress; - return $this; - } - - /** - * The types of email notifications being requested for this recipient. - * - * @param \FedEx\ShipService\SimpleType\EMailNotificationEventType[]|string[] $notificationEventsRequested - * @return $this - */ - public function setNotificationEventsRequested(array $notificationEventsRequested) - { - $this->values['NotificationEventsRequested'] = $notificationEventsRequested; - return $this; - } - - /** - * The format of the email notification. - * - * @param \FedEx\ShipService\SimpleType\EMailNotificationFormatType|string $format - * @return $this - */ - public function setFormat($format) - { - $this->values['Format'] = $format; - return $this; - } - - /** - * The language/locale to be used in this email notification. - * - * @param Localization $localization - * @return $this - */ - public function setLocalization(Localization $localization) - { - $this->values['Localization'] = $localization; - return $this; - } -} diff --git a/src/FedEx/ShipService/SimpleType/EMailNotificationAggregationType.php b/src/FedEx/ShipService/SimpleType/EMailNotificationAggregationType.php deleted file mode 100644 index 4119d7aa..00000000 --- a/src/FedEx/ShipService/SimpleType/EMailNotificationAggregationType.php +++ /dev/null @@ -1,17 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - */ -class EMailNotificationAggregationType extends AbstractSimpleType -{ - const _PER_PACKAGE = 'PER_PACKAGE'; - const _PER_SHIPMENT = 'PER_SHIPMENT'; -} diff --git a/src/FedEx/ShipService/SimpleType/EMailNotificationEventType.php b/src/FedEx/ShipService/SimpleType/EMailNotificationEventType.php deleted file mode 100644 index 1e083328..00000000 --- a/src/FedEx/ShipService/SimpleType/EMailNotificationEventType.php +++ /dev/null @@ -1,19 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - */ -class EMailNotificationEventType extends AbstractSimpleType -{ - const _ON_DELIVERY = 'ON_DELIVERY'; - const _ON_EXCEPTION = 'ON_EXCEPTION'; - const _ON_SHIPMENT = 'ON_SHIPMENT'; - const _ON_TENDER = 'ON_TENDER'; -} diff --git a/src/FedEx/ShipService/SimpleType/EMailNotificationFormatType.php b/src/FedEx/ShipService/SimpleType/EMailNotificationFormatType.php deleted file mode 100644 index 679dd6a7..00000000 --- a/src/FedEx/ShipService/SimpleType/EMailNotificationFormatType.php +++ /dev/null @@ -1,18 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - */ -class EMailNotificationFormatType extends AbstractSimpleType -{ - const _HTML = 'HTML'; - const _TEXT = 'TEXT'; - const _WIRELESS = 'WIRELESS'; -} diff --git a/src/FedEx/ShipService/SimpleType/TermsOfSaleType.php b/src/FedEx/ShipService/SimpleType/TermsOfSaleType.php deleted file mode 100644 index 9eac57c9..00000000 --- a/src/FedEx/ShipService/SimpleType/TermsOfSaleType.php +++ /dev/null @@ -1,29 +0,0 @@ - - * @package PHP FedEx API wrapper - * @subpackage Ship Service - */ -class TermsOfSaleType extends AbstractSimpleType -{ - const _CFR_OR_CPT = 'CFR_OR_CPT'; - const _CIF_OR_CIP = 'CIF_OR_CIP'; - const _DAP = 'DAP'; - const _DAT = 'DAT'; - const _DDP = 'DDP'; - const _DDU = 'DDU'; - const _EXW = 'EXW'; - const _FOB_OR_FCA = 'FOB_OR_FCA'; -} diff --git a/tests/FedEx/Tests/ShipServiceTest.php b/tests/FedEx/Tests/ShipServiceTest.php index d63b3857..f7fd01c0 100644 --- a/tests/FedEx/Tests/ShipServiceTest.php +++ b/tests/FedEx/Tests/ShipServiceTest.php @@ -10,18 +10,14 @@ class ShipServiceTest extends TestCase { public function testShipServiceRequest() { - $createPendingShipmentRequest = new ComplexType\CreatePendingShipmentRequest(); $processTagRequest = new ComplexType\ProcessTagRequest(); $processShipmentRequest = new ComplexType\ProcessShipmentRequest(); - $cancelPendingShipmentRequest = new ComplexType\CancelPendingShipmentRequest(); $deleteTagRequest = new ComplexType\DeleteTagRequest(); $deleteShipmentRequest = new ComplexType\DeleteShipmentRequest(); $validationShipmentRequest = new ComplexType\ValidateShipmentRequest(); $populator = new ComplexTypePopulator(); - $populator->populate($createPendingShipmentRequest); $populator->populate($processTagRequest); - $populator->populate($cancelPendingShipmentRequest); $populator->populate($deleteTagRequest); $populator->populate($deleteShipmentRequest); $populator->populate($validationShipmentRequest); From be735f426aaeb4105052c8a79a7d57c24549de94 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 10:34:01 -0600 Subject: [PATCH 10/33] update ship.php example to show how to save label --- examples/ship.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/examples/ship.php b/examples/ship.php index 2cc87e2d..04f3dd16 100644 --- a/examples/ship.php +++ b/examples/ship.php @@ -126,3 +126,6 @@ $result = $shipService->getProcessShipmentReply($processShipmentRequest); var_dump($result); +// Save .pdf label +// file_put_contents('/path/to/label.pdf', $result->CompletedShipmentDetail->CompletedPackageDetails[0]->Label->Parts[0]->Image); +var_dump($result->CompletedShipmentDetail->CompletedPackageDetails[0]->Label->Parts[0]->Image); From 7cb1b4e8546277cc7fa51607dcab721482d28783 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 10:55:30 -0600 Subject: [PATCH 11/33] update address validation example --- examples/address-validation.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/examples/address-validation.php b/examples/address-validation.php index 9d349db8..1c9b10de 100644 --- a/examples/address-validation.php +++ b/examples/address-validation.php @@ -32,7 +32,6 @@ $addressValidationRequest->AddressesToValidate[0]->Address->CountryCode = 'US'; $request = new Request(); -$addressValidationReply = $request->getAddressValidationReply($addressValidationRequest, true); +$addressValidationReply = $request->getAddressValidationReply($addressValidationRequest); var_dump($addressValidationReply); - From 073465bebd836902b4dcf26070b9a20d287684bd Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:08:14 -0600 Subject: [PATCH 12/33] Added Country Service (v8) --- .../CountryService/ComplexType/Address.php | 140 ++++++ .../ComplexType/ClientDetail.php | 101 ++++ .../ComplexType/Localization.php | 49 ++ .../ComplexType/LocationDescription.php | 153 ++++++ .../ComplexType/Notification.php | 101 ++++ .../ComplexType/NotificationParameter.php | 49 ++ .../ComplexType/PostalDetail.php | 88 ++++ .../ComplexType/TransactionDetail.php | 49 ++ .../ComplexType/ValidatePostalReply.php | 88 ++++ .../ComplexType/ValidatePostalRequest.php | 140 ++++++ .../CountryService/ComplexType/VersionId.php | 75 +++ .../WebAuthenticationCredential.php | 49 ++ .../ComplexType/WebAuthenticationDetail.php | 49 ++ src/FedEx/CountryService/Request.php | 38 ++ .../SimpleType/CarrierCodeType.php | 21 + .../SimpleType/ExpressRegionCode.php | 20 + .../SimpleType/NotificationSeverityType.php | 20 + .../SimpleType/PackageSpecialServiceType.php | 24 + .../SimpleType/ShipmentSpecialServiceType.php | 95 ++++ src/FedEx/_wsdl/CountryService_v8.wsdl | 453 ++++++++++++++++++ .../Cli/GenerateCode/Command/GenerateCode.php | 23 + 21 files changed, 1825 insertions(+) create mode 100644 src/FedEx/CountryService/ComplexType/Address.php create mode 100644 src/FedEx/CountryService/ComplexType/ClientDetail.php create mode 100644 src/FedEx/CountryService/ComplexType/Localization.php create mode 100644 src/FedEx/CountryService/ComplexType/LocationDescription.php create mode 100644 src/FedEx/CountryService/ComplexType/Notification.php create mode 100644 src/FedEx/CountryService/ComplexType/NotificationParameter.php create mode 100644 src/FedEx/CountryService/ComplexType/PostalDetail.php create mode 100644 src/FedEx/CountryService/ComplexType/TransactionDetail.php create mode 100644 src/FedEx/CountryService/ComplexType/ValidatePostalReply.php create mode 100644 src/FedEx/CountryService/ComplexType/ValidatePostalRequest.php create mode 100644 src/FedEx/CountryService/ComplexType/VersionId.php create mode 100644 src/FedEx/CountryService/ComplexType/WebAuthenticationCredential.php create mode 100644 src/FedEx/CountryService/ComplexType/WebAuthenticationDetail.php create mode 100644 src/FedEx/CountryService/Request.php create mode 100644 src/FedEx/CountryService/SimpleType/CarrierCodeType.php create mode 100644 src/FedEx/CountryService/SimpleType/ExpressRegionCode.php create mode 100644 src/FedEx/CountryService/SimpleType/NotificationSeverityType.php create mode 100644 src/FedEx/CountryService/SimpleType/PackageSpecialServiceType.php create mode 100644 src/FedEx/CountryService/SimpleType/ShipmentSpecialServiceType.php create mode 100755 src/FedEx/_wsdl/CountryService_v8.wsdl diff --git a/src/FedEx/CountryService/ComplexType/Address.php b/src/FedEx/CountryService/ComplexType/Address.php new file mode 100644 index 00000000..5fce2878 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/Address.php @@ -0,0 +1,140 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string[] $StreetLines + * @property string $City + * @property string $StateOrProvinceCode + * @property string $PostalCode + * @property string $UrbanizationCode + * @property string $CountryCode + * @property string $CountryName + * @property boolean $Residential + * @property string $GeographicCoordinates + + */ +class Address extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Address'; + + /** + * Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + * + * @param string $streetLines + * @return $this + */ + public function setStreetLines($streetLines) + { + $this->values['StreetLines'] = $streetLines; + return $this; + } + + /** + * Name of city, town, etc. + * + * @param string $city + * @return $this + */ + public function setCity($city) + { + $this->values['City'] = $city; + return $this; + } + + /** + * Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + * + * @param string $stateOrProvinceCode + * @return $this + */ + public function setStateOrProvinceCode($stateOrProvinceCode) + { + $this->values['StateOrProvinceCode'] = $stateOrProvinceCode; + return $this; + } + + /** + * Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + * + * @param string $postalCode + * @return $this + */ + public function setPostalCode($postalCode) + { + $this->values['PostalCode'] = $postalCode; + return $this; + } + + /** + * Relevant only to addresses in Puerto Rico. + * + * @param string $urbanizationCode + * @return $this + */ + public function setUrbanizationCode($urbanizationCode) + { + $this->values['UrbanizationCode'] = $urbanizationCode; + return $this; + } + + /** + * The two-letter code used to identify a country. + * + * @param string $countryCode + * @return $this + */ + public function setCountryCode($countryCode) + { + $this->values['CountryCode'] = $countryCode; + return $this; + } + + /** + * The fully spelt out name of a country. + * + * @param string $countryName + * @return $this + */ + public function setCountryName($countryName) + { + $this->values['CountryName'] = $countryName; + return $this; + } + + /** + * Indicates whether this address residential (as opposed to commercial). + * + * @param boolean $residential + * @return $this + */ + public function setResidential($residential) + { + $this->values['Residential'] = $residential; + return $this; + } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/ClientDetail.php b/src/FedEx/CountryService/ComplexType/ClientDetail.php new file mode 100644 index 00000000..f44537e9 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/ClientDetail.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $AccountNumber + * @property string $MeterNumber + * @property string $MeterInstance + * @property string $IntegratorId + * @property \FedEx\CountryService\SimpleType\ExpressRegionCode|string $Region + * @property Localization $Localization + + */ +class ClientDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ClientDetail'; + + /** + * The FedEx account number associated with this transaction. + * + * @param string $accountNumber + * @return $this + */ + public function setAccountNumber($accountNumber) + { + $this->values['AccountNumber'] = $accountNumber; + return $this; + } + + /** + * This number is assigned by FedEx and identifies the unique device from which the request is originating + * + * @param string $meterNumber + * @return $this + */ + public function setMeterNumber($meterNumber) + { + $this->values['MeterNumber'] = $meterNumber; + return $this; + } + + /** + * Set MeterInstance + * + * @param string $meterInstance + * @return $this + */ + public function setMeterInstance($meterInstance) + { + $this->values['MeterInstance'] = $meterInstance; + return $this; + } + + /** + * Only used in transactions which require identification of the FedEx Office integrator. + * + * @param string $integratorId + * @return $this + */ + public function setIntegratorId($integratorId) + { + $this->values['IntegratorId'] = $integratorId; + return $this; + } + + /** + * Indicates the region from which the transaction is submitted. + * + * @param \FedEx\CountryService\SimpleType\ExpressRegionCode|string $region + * @return $this + */ + public function setRegion($region) + { + $this->values['Region'] = $region; + return $this; + } + + /** + * The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/Localization.php b/src/FedEx/CountryService/ComplexType/Localization.php new file mode 100644 index 00000000..ffef3204 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/Localization.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $LanguageCode + * @property string $LocaleCode + + */ +class Localization extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Localization'; + + /** + * Two-letter code for language (e.g. EN, FR, etc.) + * + * @param string $languageCode + * @return $this + */ + public function setLanguageCode($languageCode) + { + $this->values['LanguageCode'] = $languageCode; + return $this; + } + + /** + * Two-letter code for the region (e.g. us, ca, etc..). + * + * @param string $localeCode + * @return $this + */ + public function setLocaleCode($localeCode) + { + $this->values['LocaleCode'] = $localeCode; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/LocationDescription.php b/src/FedEx/CountryService/ComplexType/LocationDescription.php new file mode 100644 index 00000000..411eb86b --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/LocationDescription.php @@ -0,0 +1,153 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $LocationId + * @property int $LocationNumber + * @property string $CountryCode + * @property string $StateOrProvinceCode + * @property string $PostalCode + * @property string $ServiceArea + * @property string $AirportId + * @property \FedEx\CountryService\SimpleType\PackageSpecialServiceType|string[] $RestrictedPackageSpecialServices + * @property \FedEx\CountryService\SimpleType\ShipmentSpecialServiceType|string[] $RestrictedShipmentSpecialServices + * @property boolean $FedExEuropeFirstOrigin + + */ +class LocationDescription extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationDescription'; + + /** + * Set LocationId + * + * @param string $locationId + * @return $this + */ + public function setLocationId($locationId) + { + $this->values['LocationId'] = $locationId; + return $this; + } + + /** + * Set LocationNumber + * + * @param int $locationNumber + * @return $this + */ + public function setLocationNumber($locationNumber) + { + $this->values['LocationNumber'] = $locationNumber; + return $this; + } + + /** + * Set CountryCode + * + * @param string $countryCode + * @return $this + */ + public function setCountryCode($countryCode) + { + $this->values['CountryCode'] = $countryCode; + return $this; + } + + /** + * Set StateOrProvinceCode + * + * @param string $stateOrProvinceCode + * @return $this + */ + public function setStateOrProvinceCode($stateOrProvinceCode) + { + $this->values['StateOrProvinceCode'] = $stateOrProvinceCode; + return $this; + } + + /** + * Set PostalCode + * + * @param string $postalCode + * @return $this + */ + public function setPostalCode($postalCode) + { + $this->values['PostalCode'] = $postalCode; + return $this; + } + + /** + * Set ServiceArea + * + * @param string $serviceArea + * @return $this + */ + public function setServiceArea($serviceArea) + { + $this->values['ServiceArea'] = $serviceArea; + return $this; + } + + /** + * Set AirportId + * + * @param string $airportId + * @return $this + */ + public function setAirportId($airportId) + { + $this->values['AirportId'] = $airportId; + return $this; + } + + /** + * Package special services prohibited for this location for operational reasons. (Other package special services may or may not be available per shipment for other reasons.) + * + * @param \FedEx\CountryService\SimpleType\PackageSpecialServiceType[]|string[] $restrictedPackageSpecialServices + * @return $this + */ + public function setRestrictedPackageSpecialServices(array $restrictedPackageSpecialServices) + { + $this->values['RestrictedPackageSpecialServices'] = $restrictedPackageSpecialServices; + return $this; + } + + /** + * Shipment special services prohibited for this location for operational reasons. (Other shipment special services may or may not be available per shipment for other reasons.) + * + * @param \FedEx\CountryService\SimpleType\ShipmentSpecialServiceType[]|string[] $restrictedShipmentSpecialServices + * @return $this + */ + public function setRestrictedShipmentSpecialServices(array $restrictedShipmentSpecialServices) + { + $this->values['RestrictedShipmentSpecialServices'] = $restrictedShipmentSpecialServices; + return $this; + } + + /** + * Set FedExEuropeFirstOrigin + * + * @param boolean $fedExEuropeFirstOrigin + * @return $this + */ + public function setFedExEuropeFirstOrigin($fedExEuropeFirstOrigin) + { + $this->values['FedExEuropeFirstOrigin'] = $fedExEuropeFirstOrigin; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/Notification.php b/src/FedEx/CountryService/ComplexType/Notification.php new file mode 100644 index 00000000..5d95a8bf --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/Notification.php @@ -0,0 +1,101 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property \FedEx\CountryService\SimpleType\NotificationSeverityType|string $Severity + * @property string $Source + * @property string $Code + * @property string $Message + * @property string $LocalizedMessage + * @property NotificationParameter[] $MessageParameters + + */ +class Notification extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Notification'; + + /** + * The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + * + * @param \FedEx\CountryService\SimpleType\NotificationSeverityType|string $severity + * @return $this + */ + public function setSeverity($severity) + { + $this->values['Severity'] = $severity; + return $this; + } + + /** + * Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + * + * @param string $source + * @return $this + */ + public function setSource($source) + { + $this->values['Source'] = $source; + return $this; + } + + /** + * A code that represents this notification. Combined with the Source it uniquely identifies this notification. + * + * @param string $code + * @return $this + */ + public function setCode($code) + { + $this->values['Code'] = $code; + return $this; + } + + /** + * Human-readable text that explains this notification. + * + * @param string $message + * @return $this + */ + public function setMessage($message) + { + $this->values['Message'] = $message; + return $this; + } + + /** + * The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + * + * @param string $localizedMessage + * @return $this + */ + public function setLocalizedMessage($localizedMessage) + { + $this->values['LocalizedMessage'] = $localizedMessage; + return $this; + } + + /** + * A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + * + * @param NotificationParameter[] $messageParameters + * @return $this + */ + public function setMessageParameters(array $messageParameters) + { + $this->values['MessageParameters'] = $messageParameters; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/NotificationParameter.php b/src/FedEx/CountryService/ComplexType/NotificationParameter.php new file mode 100644 index 00000000..cad11eaf --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/NotificationParameter.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $Id + * @property string $Value + + */ +class NotificationParameter extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'NotificationParameter'; + + /** + * Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + + /** + * The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/PostalDetail.php b/src/FedEx/CountryService/ComplexType/PostalDetail.php new file mode 100644 index 00000000..f934dc01 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/PostalDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $CountryCode + * @property string $StateOrProvinceCode + * @property string $CityFirstInitials + * @property string $CleanedPostalCode + * @property LocationDescription[] $LocationDescriptions + + */ +class PostalDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'PostalDetail'; + + /** + * Set CountryCode + * + * @param string $countryCode + * @return $this + */ + public function setCountryCode($countryCode) + { + $this->values['CountryCode'] = $countryCode; + return $this; + } + + /** + * Set StateOrProvinceCode + * + * @param string $stateOrProvinceCode + * @return $this + */ + public function setStateOrProvinceCode($stateOrProvinceCode) + { + $this->values['StateOrProvinceCode'] = $stateOrProvinceCode; + return $this; + } + + /** + * Set CityFirstInitials + * + * @param string $cityFirstInitials + * @return $this + */ + public function setCityFirstInitials($cityFirstInitials) + { + $this->values['CityFirstInitials'] = $cityFirstInitials; + return $this; + } + + /** + * Set CleanedPostalCode + * + * @param string $cleanedPostalCode + * @return $this + */ + public function setCleanedPostalCode($cleanedPostalCode) + { + $this->values['CleanedPostalCode'] = $cleanedPostalCode; + return $this; + } + + /** + * Set LocationDescriptions + * + * @param LocationDescription[] $locationDescriptions + * @return $this + */ + public function setLocationDescriptions(array $locationDescriptions) + { + $this->values['LocationDescriptions'] = $locationDescriptions; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/TransactionDetail.php b/src/FedEx/CountryService/ComplexType/TransactionDetail.php new file mode 100644 index 00000000..602bf3f6 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/TransactionDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $CustomerTransactionId + * @property Localization $Localization + + */ +class TransactionDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'TransactionDetail'; + + /** + * Free form text to be echoed back in the reply. Used to match requests and replies. + * + * @param string $customerTransactionId + * @return $this + */ + public function setCustomerTransactionId($customerTransactionId) + { + $this->values['CustomerTransactionId'] = $customerTransactionId; + return $this; + } + + /** + * Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + * + * @param Localization $localization + * @return $this + */ + public function setLocalization(Localization $localization) + { + $this->values['Localization'] = $localization; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/ValidatePostalReply.php b/src/FedEx/CountryService/ComplexType/ValidatePostalReply.php new file mode 100644 index 00000000..7d1c2f68 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/ValidatePostalReply.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property \FedEx\CountryService\SimpleType\NotificationSeverityType|string $HighestSeverity + * @property Notification[] $Notifications + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property PostalDetail $PostalDetail + + */ +class ValidatePostalReply extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ValidatePostalReply'; + + /** + * Set HighestSeverity + * + * @param \FedEx\CountryService\SimpleType\NotificationSeverityType|string $highestSeverity + * @return $this + */ + public function setHighestSeverity($highestSeverity) + { + $this->values['HighestSeverity'] = $highestSeverity; + return $this; + } + + /** + * Set Notifications + * + * @param Notification[] $notifications + * @return $this + */ + public function setNotifications(array $notifications) + { + $this->values['Notifications'] = $notifications; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Set PostalDetail + * + * @param PostalDetail $postalDetail + * @return $this + */ + public function setPostalDetail(PostalDetail $postalDetail) + { + $this->values['PostalDetail'] = $postalDetail; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/ValidatePostalRequest.php b/src/FedEx/CountryService/ComplexType/ValidatePostalRequest.php new file mode 100644 index 00000000..78133506 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/ValidatePostalRequest.php @@ -0,0 +1,140 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property WebAuthenticationDetail $WebAuthenticationDetail + * @property ClientDetail $ClientDetail + * @property TransactionDetail $TransactionDetail + * @property VersionId $Version + * @property string $ShipDateTime + * @property Address $Address + * @property string $RoutingCode + * @property boolean $CheckForMismatch + * @property \FedEx\CountryService\SimpleType\CarrierCodeType|string $CarrierCode + + */ +class ValidatePostalRequest extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ValidatePostalRequest'; + + /** + * Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + * + * @param WebAuthenticationDetail $webAuthenticationDetail + * @return $this + */ + public function setWebAuthenticationDetail(WebAuthenticationDetail $webAuthenticationDetail) + { + $this->values['WebAuthenticationDetail'] = $webAuthenticationDetail; + return $this; + } + + /** + * Set ClientDetail + * + * @param ClientDetail $clientDetail + * @return $this + */ + public function setClientDetail(ClientDetail $clientDetail) + { + $this->values['ClientDetail'] = $clientDetail; + return $this; + } + + /** + * Set TransactionDetail + * + * @param TransactionDetail $transactionDetail + * @return $this + */ + public function setTransactionDetail(TransactionDetail $transactionDetail) + { + $this->values['TransactionDetail'] = $transactionDetail; + return $this; + } + + /** + * Set Version + * + * @param VersionId $version + * @return $this + */ + public function setVersion(VersionId $version) + { + $this->values['Version'] = $version; + return $this; + } + + /** + * Set ShipDateTime + * + * @param string $shipDateTime + * @return $this + */ + public function setShipDateTime($shipDateTime) + { + $this->values['ShipDateTime'] = $shipDateTime; + return $this; + } + + /** + * Set Address + * + * @param Address $address + * @return $this + */ + public function setAddress(Address $address) + { + $this->values['Address'] = $address; + return $this; + } + + /** + * Set RoutingCode + * + * @param string $routingCode + * @return $this + */ + public function setRoutingCode($routingCode) + { + $this->values['RoutingCode'] = $routingCode; + return $this; + } + + /** + * Set CheckForMismatch + * + * @param boolean $checkForMismatch + * @return $this + */ + public function setCheckForMismatch($checkForMismatch) + { + $this->values['CheckForMismatch'] = $checkForMismatch; + return $this; + } + + /** + * Set CarrierCode + * + * @param \FedEx\CountryService\SimpleType\CarrierCodeType|string $carrierCode + * @return $this + */ + public function setCarrierCode($carrierCode) + { + $this->values['CarrierCode'] = $carrierCode; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/VersionId.php b/src/FedEx/CountryService/ComplexType/VersionId.php new file mode 100644 index 00000000..6c283888 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/VersionId.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $ServiceId + * @property int $Major + * @property int $Intermediate + * @property int $Minor + + */ +class VersionId extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'VersionId'; + + /** + * Identifies a system or sub-system which performs an operation. + * + * @param string $serviceId + * @return $this + */ + public function setServiceId($serviceId) + { + $this->values['ServiceId'] = $serviceId; + return $this; + } + + /** + * Identifies the service business level. + * + * @param int $major + * @return $this + */ + public function setMajor($major) + { + $this->values['Major'] = $major; + return $this; + } + + /** + * Identifies the service interface level. + * + * @param int $intermediate + * @return $this + */ + public function setIntermediate($intermediate) + { + $this->values['Intermediate'] = $intermediate; + return $this; + } + + /** + * Identifies the service code level. + * + * @param int $minor + * @return $this + */ + public function setMinor($minor) + { + $this->values['Minor'] = $minor; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/WebAuthenticationCredential.php b/src/FedEx/CountryService/ComplexType/WebAuthenticationCredential.php new file mode 100644 index 00000000..cb5be078 --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/WebAuthenticationCredential.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property string $Key + * @property string $Password + + */ +class WebAuthenticationCredential extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'WebAuthenticationCredential'; + + /** + * Identifying part of authentication credential. This value is provided by FedEx after registration + * + * @param string $key + * @return $this + */ + public function setKey($key) + { + $this->values['Key'] = $key; + return $this; + } + + /** + * Secret part of authentication key. This value is provided by FedEx after registration. + * + * @param string $password + * @return $this + */ + public function setPassword($password) + { + $this->values['Password'] = $password; + return $this; + } +} diff --git a/src/FedEx/CountryService/ComplexType/WebAuthenticationDetail.php b/src/FedEx/CountryService/ComplexType/WebAuthenticationDetail.php new file mode 100644 index 00000000..93d6de7a --- /dev/null +++ b/src/FedEx/CountryService/ComplexType/WebAuthenticationDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + * + * @property WebAuthenticationCredential $ParentCredential + * @property WebAuthenticationCredential $UserCredential + + */ +class WebAuthenticationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'WebAuthenticationDetail'; + + /** + * This was renamed from cspCredential. + * + * @param WebAuthenticationCredential $parentCredential + * @return $this + */ + public function setParentCredential(WebAuthenticationCredential $parentCredential) + { + $this->values['ParentCredential'] = $parentCredential; + return $this; + } + + /** + * Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + * + * @param WebAuthenticationCredential $userCredential + * @return $this + */ + public function setUserCredential(WebAuthenticationCredential $userCredential) + { + $this->values['UserCredential'] = $userCredential; + return $this; + } +} diff --git a/src/FedEx/CountryService/Request.php b/src/FedEx/CountryService/Request.php new file mode 100644 index 00000000..e740ed48 --- /dev/null +++ b/src/FedEx/CountryService/Request.php @@ -0,0 +1,38 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + */ +class Request extends AbstractRequest +{ + const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/cnty'; + const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/cnty'; + + protected static $wsdlFileName = 'CountryService_v8.wsdl'; + + /** + * Sends the ValidatePostalRequest and returns the response + * + * @param ComplexType\ValidatePostalRequest $validatePostalRequest + * @param bool $returnStdClass Return the $stdClass response directly from \SoapClient + * @return ComplexType\ValidatePostalReply|stdClass + */ + public function getValidatePostalReply(ComplexType\ValidatePostalRequest $validatePostalRequest, $returnStdClass = false) + { + $response = $this->getSoapClient()->validatePostal($validatePostalRequest->toArray()); + if ($returnStdClass) { + return $response; + } + + $validatePostalReply = new ComplexType\ValidatePostalReply; + $validatePostalReply->populateFromStdClass($response); + return $validatePostalReply; + } +} diff --git a/src/FedEx/CountryService/SimpleType/CarrierCodeType.php b/src/FedEx/CountryService/SimpleType/CarrierCodeType.php new file mode 100644 index 00000000..c6302301 --- /dev/null +++ b/src/FedEx/CountryService/SimpleType/CarrierCodeType.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + */ +class CarrierCodeType extends AbstractSimpleType +{ + const _FDXC = 'FDXC'; + const _FDXE = 'FDXE'; + const _FDXG = 'FDXG'; + const _FXCC = 'FXCC'; + const _FXFR = 'FXFR'; + const _FXSP = 'FXSP'; +} diff --git a/src/FedEx/CountryService/SimpleType/ExpressRegionCode.php b/src/FedEx/CountryService/SimpleType/ExpressRegionCode.php new file mode 100644 index 00000000..1ea9a14d --- /dev/null +++ b/src/FedEx/CountryService/SimpleType/ExpressRegionCode.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + */ +class ExpressRegionCode extends AbstractSimpleType +{ + const _APAC = 'APAC'; + const _CA = 'CA'; + const _EMEA = 'EMEA'; + const _LAC = 'LAC'; + const _US = 'US'; +} diff --git a/src/FedEx/CountryService/SimpleType/NotificationSeverityType.php b/src/FedEx/CountryService/SimpleType/NotificationSeverityType.php new file mode 100644 index 00000000..236589a3 --- /dev/null +++ b/src/FedEx/CountryService/SimpleType/NotificationSeverityType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + */ +class NotificationSeverityType extends AbstractSimpleType +{ + const _ERROR = 'ERROR'; + const _FAILURE = 'FAILURE'; + const _NOTE = 'NOTE'; + const _SUCCESS = 'SUCCESS'; + const _WARNING = 'WARNING'; +} diff --git a/src/FedEx/CountryService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/CountryService/SimpleType/PackageSpecialServiceType.php new file mode 100644 index 00000000..bf558937 --- /dev/null +++ b/src/FedEx/CountryService/SimpleType/PackageSpecialServiceType.php @@ -0,0 +1,24 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + */ +class PackageSpecialServiceType extends AbstractSimpleType +{ + const _ALCOHOL = 'ALCOHOL'; + const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _COD = 'COD'; + const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; + const _DRY_ICE = 'DRY_ICE'; + const _NON_STANDARD_CONTAINER = 'NON_STANDARD_CONTAINER'; + const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; + const _PRIORITY_ALERT = 'PRIORITY_ALERT'; + const _SIGNATURE_OPTION = 'SIGNATURE_OPTION'; +} diff --git a/src/FedEx/CountryService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/CountryService/SimpleType/ShipmentSpecialServiceType.php new file mode 100644 index 00000000..0f038ed8 --- /dev/null +++ b/src/FedEx/CountryService/SimpleType/ShipmentSpecialServiceType.php @@ -0,0 +1,95 @@ + + * @package PHP FedEx API wrapper + * @subpackage Country Service + */ +class ShipmentSpecialServiceType extends AbstractSimpleType +{ + const _BLIND_SHIPMENT = 'BLIND_SHIPMENT'; + const _BROKER_SELECT_OPTION = 'BROKER_SELECT_OPTION'; + const _CALL_BEFORE_DELIVERY = 'CALL_BEFORE_DELIVERY'; + const _COD = 'COD'; + const _COD_REMITTANCE = 'COD_REMITTANCE'; + const _CUSTOM_DELIVERY_WINDOW = 'CUSTOM_DELIVERY_WINDOW'; + const _CUT_FLOWERS = 'CUT_FLOWERS'; + const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; + const _DELIVERY_ON_INVOICE_ACCEPTANCE = 'DELIVERY_ON_INVOICE_ACCEPTANCE'; + const _DETENTION = 'DETENTION'; + const _DO_NOT_BREAK_DOWN_PALLETS = 'DO_NOT_BREAK_DOWN_PALLETS'; + const _DO_NOT_STACK_PALLETS = 'DO_NOT_STACK_PALLETS'; + const _DRY_ICE = 'DRY_ICE'; + const _EAST_COAST_SPECIAL = 'EAST_COAST_SPECIAL'; + const _ELECTRONIC_TRADE_DOCUMENTS = 'ELECTRONIC_TRADE_DOCUMENTS'; + const _EVENT_NOTIFICATION = 'EVENT_NOTIFICATION'; + const _EXCLUDE_FROM_CONSOLIDATION = 'EXCLUDE_FROM_CONSOLIDATION'; + const _EXCLUSIVE_USE = 'EXCLUSIVE_USE'; + const _EXHIBITION_DELIVERY = 'EXHIBITION_DELIVERY'; + const _EXHIBITION_PICKUP = 'EXHIBITION_PICKUP'; + const _EXPEDITED_ALTERNATE_DELIVERY_ROUTE = 'EXPEDITED_ALTERNATE_DELIVERY_ROUTE'; + const _EXPEDITED_ONE_DAY_EARLIER = 'EXPEDITED_ONE_DAY_EARLIER'; + const _EXPEDITED_SERVICE_MONITORING_AND_DELIVERY = 'EXPEDITED_SERVICE_MONITORING_AND_DELIVERY'; + const _EXPEDITED_STANDARD_DAY_EARLY_DELIVERY = 'EXPEDITED_STANDARD_DAY_EARLY_DELIVERY'; + const _EXTRA_LABOR = 'EXTRA_LABOR'; + const _EXTREME_LENGTH = 'EXTREME_LENGTH'; + const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; + const _FLATBED_TRAILER = 'FLATBED_TRAILER'; + const _FOOD = 'FOOD'; + const _FREIGHT_GUARANTEE = 'FREIGHT_GUARANTEE'; + const _FREIGHT_TO_COLLECT = 'FREIGHT_TO_COLLECT'; + const _FUTURE_DAY_SHIPMENT = 'FUTURE_DAY_SHIPMENT'; + const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; + const _HOLIDAY_DELIVERY = 'HOLIDAY_DELIVERY'; + const _HOLIDAY_GUARANTEE = 'HOLIDAY_GUARANTEE'; + const _HOME_DELIVERY_PREMIUM = 'HOME_DELIVERY_PREMIUM'; + const _INSIDE_DELIVERY = 'INSIDE_DELIVERY'; + const _INSIDE_PICKUP = 'INSIDE_PICKUP'; + const _INTERNATIONAL_CONTROLLED_EXPORT_SERVICE = 'INTERNATIONAL_CONTROLLED_EXPORT_SERVICE'; + const _INTERNATIONAL_MAIL_SERVICE = 'INTERNATIONAL_MAIL_SERVICE'; + const _INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS = 'INTERNATIONAL_TRAFFIC_IN_ARMS_REGULATIONS'; + const _LIFTGATE_DELIVERY = 'LIFTGATE_DELIVERY'; + const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; + const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; + const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; + const _MARKING_OR_TAGGING = 'MARKING_OR_TAGGING'; + const _NON_BUSINESS_TIME = 'NON_BUSINESS_TIME'; + const _OVER_LENGTH = 'OVER_LENGTH'; + const _PALLETS_PROVIDED = 'PALLETS_PROVIDED'; + const _PALLET_SHRINKWRAP = 'PALLET_SHRINKWRAP'; + const _PALLET_WEIGHT_ALLOWANCE = 'PALLET_WEIGHT_ALLOWANCE'; + const _PENDING_COMPLETE = 'PENDING_COMPLETE'; + const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; + const _PERMIT = 'PERMIT'; + const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; + const _POISON = 'POISON'; + const _PORT_DELIVERY = 'PORT_DELIVERY'; + const _PORT_PICKUP = 'PORT_PICKUP'; + const _PRE_DELIVERY_NOTIFICATION = 'PRE_DELIVERY_NOTIFICATION'; + const _PRE_EIG_PROCESSING = 'PRE_EIG_PROCESSING'; + const _PRE_MULTIPLIER_PROCESSING = 'PRE_MULTIPLIER_PROCESSING'; + const _PROTECTION_FROM_FREEZING = 'PROTECTION_FROM_FREEZING'; + const _REGIONAL_MALL_DELIVERY = 'REGIONAL_MALL_DELIVERY'; + const _REGIONAL_MALL_PICKUP = 'REGIONAL_MALL_PICKUP'; + const _RETURNS_CLEARANCE = 'RETURNS_CLEARANCE'; + const _RETURNS_CLEARANCE_SPECIAL_ROUTING_REQUIRED = 'RETURNS_CLEARANCE_SPECIAL_ROUTING_REQUIRED'; + const _RETURN_SHIPMENT = 'RETURN_SHIPMENT'; + const _SATURDAY_DELIVERY = 'SATURDAY_DELIVERY'; + const _SATURDAY_PICKUP = 'SATURDAY_PICKUP'; + const _SHIPMENT_ASSEMBLY = 'SHIPMENT_ASSEMBLY'; + const _SORT_AND_SEGREGATE = 'SORT_AND_SEGREGATE'; + const _SPECIAL_DELIVERY = 'SPECIAL_DELIVERY'; + const _SPECIAL_EQUIPMENT = 'SPECIAL_EQUIPMENT'; + const _STORAGE = 'STORAGE'; + const _SUNDAY_DELIVERY = 'SUNDAY_DELIVERY'; + const _THIRD_PARTY_CONSIGNEE = 'THIRD_PARTY_CONSIGNEE'; + const _TOP_LOAD = 'TOP_LOAD'; + const _USPS_DELIVERY = 'USPS_DELIVERY'; + const _USPS_PICKUP = 'USPS_PICKUP'; + const _WEIGHING = 'WEIGHING'; +} diff --git a/src/FedEx/_wsdl/CountryService_v8.wsdl b/src/FedEx/_wsdl/CountryService_v8.wsdl new file mode 100755 index 00000000..738e1e18 --- /dev/null +++ b/src/FedEx/_wsdl/CountryService_v8.wsdl @@ -0,0 +1,453 @@ + + + + + + + + Descriptive data for a physical location. May be used as an actual physical address (place to which one could go), or as a container of "address parts" which should be handled as a unit (such as a city-state-ZIP combination within the US). + + + + + Combination of number, street name, etc. At least one line is required for a valid physical address; empty lines should not be included. + + + + + Name of city, town, etc. + + + + + Identifying abbreviation for US state, Canada province, etc. Format and presence of this field will vary, depending on country. + + + + + Identification of a region (usually small) for mail/package delivery. Format and presence of this field will vary, depending on country. + + + + + Relevant only to addresses in Puerto Rico. + + + + + The two-letter code used to identify a country. + + + + + The fully spelt out name of a country. + + + + + Indicates whether this address residential (as opposed to commercial). + + + + + The geographic coordinates cooresponding to this address. + + + + + + + Identification of a FedEx operating company (transportation). + + + + + + + + + + + + + Descriptive data for the client submitting a transaction. + + + + + The FedEx account number associated with this transaction. + + + + + This number is assigned by FedEx and identifies the unique device from which the request is originating + + + + + + Only used in transactions which require identification of the FedEx Office integrator. + + + + + Indicates the region from which the transaction is submitted. + + + + + The language to be used for human-readable Notification.localizedMessages in responses to the request containing this ClientDetail object. Different requests from the same client may contain different Localization data. (Contrast with TransactionDetail.localization, which governs data payload language/translation.) + + + + + + + Indicates a FedEx Express operating region. + + + + + + + + + + + + Identifies the representation of human-readable text. + + + + + Two-letter code for language (e.g. EN, FR, etc.) + + + + + Two-letter code for the region (e.g. us, ca, etc..). + + + + + + + + + + + + + + + + Package special services prohibited for this location for operational reasons. (Other package special services may or may not be available per shipment for other reasons.) + + + + + Shipment special services prohibited for this location for operational reasons. (Other shipment special services may or may not be available per shipment for other reasons.) + + + + + + + + The descriptive data regarding the result of the submitted transaction. + + + + + The severity of this notification. This can indicate success or failure or some other information about the request. The values that can be returned are SUCCESS - Your transaction succeeded with no other applicable information. NOTE - Additional information that may be of interest to you about your transaction. WARNING - Additional information that you need to know about your transaction that you may need to take action on. ERROR - Information about an error that occurred while processing your transaction. FAILURE - FedEx was unable to process your transaction at this time due to a system failure. Please try again later + + + + + Indicates the source of this notification. Combined with the Code it uniquely identifies this notification + + + + + A code that represents this notification. Combined with the Source it uniquely identifies this notification. + + + + + Human-readable text that explains this notification. + + + + + The translated message. The language and locale specified in the ClientDetail. Localization are used to determine the representation. Currently only supported in a TrackReply. + + + + + A collection of name/value pairs that provide specific data to help the client determine the nature of an error (or warning, etc.) without having to parse the message string. + + + + + + + + + Identifies the type of data contained in Value (e.g. SERVICE_TYPE, PACKAGE_SEQUENCE, etc..). + + + + + The value of the parameter (e.g. PRIORITY_OVERNIGHT, 2, etc..). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Free form text to be echoed back in the reply. Used to match requests and replies. + + + + + Governs data payload language/translations (contrasted with ClientDetail.localization, which governs Notification.localizedMessage language selection). + + + + + + + + + + + + + + + + + + Descriptive data to be used in authentication of the sender's identity (and right to use FedEx web services). + + + + + + + + + + + + + + + Used in authentication of the sender's identity. + + + + + This was renamed from cspCredential. + + + + + Credential used to authenticate a specific software application. This value is provided by FedEx after registration. + + + + + + + Two part authentication string used for the sender's identity + + + + + Identifying part of authentication credential. This value is provided by FedEx after registration + + + + + Secret part of authentication key. This value is provided by FedEx after registration. + + + + + + + Identifies the version/level of a service operation expected by a caller (in each request) and performed by the callee (in each reply). + + + + + Identifies a system or sub-system which performs an operation. + + + + + Identifies the service business level. + + + + + Identifies the service interface level. + + + + + Identifies the service code level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index ec5cfe4e..5e7ac673 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -426,5 +426,28 @@ protected function execute(InputInterface $input, OutputInterface $output) $exportPath = $fedexSrcDir . '/DGDSService/ComplexType'; $generateComplexTypes = new CodeGenerator\GenerateComplexTypeClasses($exportPath, $wsdlPath, $baseNamespace, $subPackageName); $generateComplexTypes->run(); + + /* + * Country Service (v8) + */ + $wsdlPath = $fedexSrcDir . '/_wsdl/CountryService_v8.wsdl'; + + $baseNamespace = 'FedEx\CountryService'; + $subPackageName = 'Country Service'; + + //generate Request class + $pathToRequestClassFile = $fedexSrcDir . '/CountryService/Request.php'; + $generateRequestClassFile = new CodeGenerator\GenerateRequestClass($pathToRequestClassFile, $wsdlPath, $baseNamespace, $subPackageName); + $generateRequestClassFile->run(); + + //generate SimpleType classes + $exportPath = $fedexSrcDir . '/CountryService/SimpleType'; + $generateSimpleTypes = new CodeGenerator\GenerateSimpleTypeClasses($exportPath, $wsdlPath, $baseNamespace, $subPackageName); + $generateSimpleTypes->run(); + + //generate ComplexType classes + $exportPath = $fedexSrcDir . '/CountryService/ComplexType'; + $generateComplexTypes = new CodeGenerator\GenerateComplexTypeClasses($exportPath, $wsdlPath, $baseNamespace, $subPackageName); + $generateComplexTypes->run(); } } From 23fa02e57f1d164d64526f8bd60dc6b4b743d23a Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:14:09 -0600 Subject: [PATCH 13/33] Updated Locations Service (v9) --- .../ComplexType/ClearanceCountryDetail.php | 13 ++ .../ComplexType/Dimensions.php | 75 +++++++++ .../ComplexType/DistanceAndLocationDetail.php | 2 +- .../ComplexType/LocationCapabilityDetail.php | 88 +++++++++++ .../ComplexType/LocationDetail.php | 39 +++++ .../LocationPackageLimitsDetail.php | 49 ++++++ .../LocationSupportedPackageDetail.php | 49 ++++++ .../LocationSupportedShipmentDetail.php | 36 +++++ .../ComplexType/SearchLocationConstraints.php | 38 ++++- .../ComplexType/SearchLocationsRequest.php | 13 ++ .../LocationsService/ComplexType/Weight.php | 49 ++++++ src/FedEx/LocationsService/Request.php | 2 +- .../SimpleType/FedExLocationType.php | 2 + .../SimpleType/LinearUnits.php | 17 ++ .../SimpleType/LocationAttributesType.php | 13 -- .../SimpleType/LocationSearchFilterType.php | 1 + .../LocationTransferOfPossessionType.php | 18 +++ .../SimpleType/PackageSpecialServiceType.php | 1 + .../SimpleType/ServiceCategoryType.php | 1 + .../SupportedRedirectToHoldServiceType.php | 2 +- .../SimpleType/WeightUnits.php | 17 ++ ...rvice_v7.wsdl => LocationsService_v9.wsdl} | 148 +++++++++++++++--- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 23 files changed, 626 insertions(+), 49 deletions(-) create mode 100644 src/FedEx/LocationsService/ComplexType/Dimensions.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationCapabilityDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationPackageLimitsDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationSupportedPackageDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/LocationSupportedShipmentDetail.php create mode 100644 src/FedEx/LocationsService/ComplexType/Weight.php create mode 100644 src/FedEx/LocationsService/SimpleType/LinearUnits.php create mode 100644 src/FedEx/LocationsService/SimpleType/LocationTransferOfPossessionType.php create mode 100644 src/FedEx/LocationsService/SimpleType/WeightUnits.php rename src/FedEx/_wsdl/{LocationsService_v7.wsdl => LocationsService_v9.wsdl} (89%) diff --git a/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php b/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php index bae95a10..17c00c78 100644 --- a/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php +++ b/src/FedEx/LocationsService/ComplexType/ClearanceCountryDetail.php @@ -11,6 +11,7 @@ * @subpackage Locations Service * * @property string $ClearanceCountry + * @property \FedEx\LocationsService\SimpleType\ServiceType|string[] $ServicesSupported * @property \FedEx\LocationsService\SimpleType\PackageSpecialServiceType|string[] $SpecialServicesSupported */ @@ -35,6 +36,18 @@ public function setClearanceCountry($clearanceCountry) return $this; } + /** + * Set ServicesSupported + * + * @param \FedEx\LocationsService\SimpleType\ServiceType[]|string[] $servicesSupported + * @return $this + */ + public function setServicesSupported(array $servicesSupported) + { + $this->values['ServicesSupported'] = $servicesSupported; + return $this; + } + /** * Identifies the constrained special services supported for the country above. * diff --git a/src/FedEx/LocationsService/ComplexType/Dimensions.php b/src/FedEx/LocationsService/ComplexType/Dimensions.php new file mode 100644 index 00000000..41aed8b7 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/Dimensions.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property int $Length + * @property int $Width + * @property int $Height + * @property \FedEx\LocationsService\SimpleType\LinearUnits|string $Units + + */ +class Dimensions extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Dimensions'; + + /** + * Set Length + * + * @param int $length + * @return $this + */ + public function setLength($length) + { + $this->values['Length'] = $length; + return $this; + } + + /** + * Set Width + * + * @param int $width + * @return $this + */ + public function setWidth($width) + { + $this->values['Width'] = $width; + return $this; + } + + /** + * Set Height + * + * @param int $height + * @return $this + */ + public function setHeight($height) + { + $this->values['Height'] = $height; + return $this; + } + + /** + * Set Units + * + * @param \FedEx\LocationsService\SimpleType\LinearUnits|string $units + * @return $this + */ + public function setUnits($units) + { + $this->values['Units'] = $units; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php b/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php index 83479a4d..ae76a879 100644 --- a/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php +++ b/src/FedEx/LocationsService/ComplexType/DistanceAndLocationDetail.php @@ -50,7 +50,7 @@ public function setReservationAvailabilityDetail(ReservationAvailabilityDetail $ } /** - * Set SupportedRedirectToHoldServices + * DEPRECATED as of July 2017; See locationCapabilities. * * @param \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType[]|string[] $supportedRedirectToHoldServices * @return $this diff --git a/src/FedEx/LocationsService/ComplexType/LocationCapabilityDetail.php b/src/FedEx/LocationsService/ComplexType/LocationCapabilityDetail.php new file mode 100644 index 00000000..37b9bd80 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationCapabilityDetail.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\CarrierCodeType|string $CarrierCode + * @property \FedEx\LocationsService\SimpleType\ServiceType|string $ServiceType + * @property \FedEx\LocationsService\SimpleType\ServiceCategoryType|string $ServiceCategory + * @property \FedEx\LocationsService\SimpleType\LocationTransferOfPossessionType|string $TransferOfPossessionType + * @property \FedEx\LocationsService\SimpleType\DayOfWeekType|string[] $DaysOfWeek + + */ +class LocationCapabilityDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationCapabilityDetail'; + + /** + * The carrier code for which this capability applies. + * + * @param \FedEx\LocationsService\SimpleType\CarrierCodeType|string $carrierCode + * @return $this + */ + public function setCarrierCode($carrierCode) + { + $this->values['CarrierCode'] = $carrierCode; + return $this; + } + + /** + * Set ServiceType + * + * @param \FedEx\LocationsService\SimpleType\ServiceType|string $serviceType + * @return $this + */ + public function setServiceType($serviceType) + { + $this->values['ServiceType'] = $serviceType; + return $this; + } + + /** + * The service category for which this capability applies. + * + * @param \FedEx\LocationsService\SimpleType\ServiceCategoryType|string $serviceCategory + * @return $this + */ + public function setServiceCategory($serviceCategory) + { + $this->values['ServiceCategory'] = $serviceCategory; + return $this; + } + + /** + * The method by which a package is transferred to the possession of a FedEx location. + * + * @param \FedEx\LocationsService\SimpleType\LocationTransferOfPossessionType|string $transferOfPossessionType + * @return $this + */ + public function setTransferOfPossessionType($transferOfPossessionType) + { + $this->values['TransferOfPossessionType'] = $transferOfPossessionType; + return $this; + } + + /** + * The days of the week for which this capability applies. + * + * @param \FedEx\LocationsService\SimpleType\DayOfWeekType[]|string[] $daysOfWeek + * @return $this + */ + public function setDaysOfWeek(array $daysOfWeek) + { + $this->values['DaysOfWeek'] = $daysOfWeek; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationDetail.php b/src/FedEx/LocationsService/ComplexType/LocationDetail.php index 5ceabcbb..1e64806b 100644 --- a/src/FedEx/LocationsService/ComplexType/LocationDetail.php +++ b/src/FedEx/LocationsService/ComplexType/LocationDetail.php @@ -17,7 +17,10 @@ * @property string $GeographicCoordinates * @property string $TimeZoneOffset * @property \FedEx\LocationsService\SimpleType\FedExLocationType|string $LocationType + * @property string $LocationTypeForDisplay * @property \FedEx\LocationsService\SimpleType\LocationAttributesType|string[] $Attributes + * @property LocationCapabilityDetail[] $LocationCapabilities + * @property LocationPackageLimitsDetail $PackageMaximumLimits * @property ClearanceLocationDetail $ClearanceLocationDetail * @property LocationIdentificationDetail[] $ServicingLocationDetails * @property string $AcceptedCurrency @@ -123,6 +126,18 @@ public function setLocationType($locationType) return $this; } + /** + * Branded text associated with this location type. + * + * @param string $locationTypeForDisplay + * @return $this + */ + public function setLocationTypeForDisplay($locationTypeForDisplay) + { + $this->values['LocationTypeForDisplay'] = $locationTypeForDisplay; + return $this; + } + /** * Set Attributes * @@ -135,6 +150,30 @@ public function setAttributes(array $attributes) return $this; } + /** + * Set LocationCapabilities + * + * @param LocationCapabilityDetail[] $locationCapabilities + * @return $this + */ + public function setLocationCapabilities(array $locationCapabilities) + { + $this->values['LocationCapabilities'] = $locationCapabilities; + return $this; + } + + /** + * The maximum values for various package attributes that are supported at the location. + * + * @param LocationPackageLimitsDetail $packageMaximumLimits + * @return $this + */ + public function setPackageMaximumLimits(LocationPackageLimitsDetail $packageMaximumLimits) + { + $this->values['PackageMaximumLimits'] = $packageMaximumLimits; + return $this; + } + /** * Details about the clearance location. * diff --git a/src/FedEx/LocationsService/ComplexType/LocationPackageLimitsDetail.php b/src/FedEx/LocationsService/ComplexType/LocationPackageLimitsDetail.php new file mode 100644 index 00000000..d91ef19c --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationPackageLimitsDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Weight $Weight + * @property Dimensions $Dimensions + + */ +class LocationPackageLimitsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationPackageLimitsDetail'; + + /** + * Set Weight + * + * @param Weight $weight + * @return $this + */ + public function setWeight(Weight $weight) + { + $this->values['Weight'] = $weight; + return $this; + } + + /** + * Set Dimensions + * + * @param Dimensions $dimensions + * @return $this + */ + public function setDimensions(Dimensions $dimensions) + { + $this->values['Dimensions'] = $dimensions; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationSupportedPackageDetail.php b/src/FedEx/LocationsService/ComplexType/LocationSupportedPackageDetail.php new file mode 100644 index 00000000..919c5263 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationSupportedPackageDetail.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property Weight $Weight + * @property Dimensions $Dimensions + + */ +class LocationSupportedPackageDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationSupportedPackageDetail'; + + /** + * Set Weight + * + * @param Weight $weight + * @return $this + */ + public function setWeight(Weight $weight) + { + $this->values['Weight'] = $weight; + return $this; + } + + /** + * Set Dimensions + * + * @param Dimensions $dimensions + * @return $this + */ + public function setDimensions(Dimensions $dimensions) + { + $this->values['Dimensions'] = $dimensions; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/LocationSupportedShipmentDetail.php b/src/FedEx/LocationsService/ComplexType/LocationSupportedShipmentDetail.php new file mode 100644 index 00000000..4940cf81 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/LocationSupportedShipmentDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property LocationSupportedPackageDetail[] $PackageDetails + + */ +class LocationSupportedShipmentDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'LocationSupportedShipmentDetail'; + + /** + * Set PackageDetails + * + * @param LocationSupportedPackageDetail[] $packageDetails + * @return $this + */ + public function setPackageDetails(array $packageDetails) + { + $this->values['PackageDetails'] = $packageDetails; + return $this; + } +} diff --git a/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php b/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php index c410a220..0aa19181 100644 --- a/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php +++ b/src/FedEx/LocationsService/ComplexType/SearchLocationConstraints.php @@ -11,10 +11,12 @@ * @subpackage Locations Service * * @property Distance $RadiusDistance - * @property string $ExpressDropOffTimeNeeded + * @property string $DropOffTimeNeeded * @property \FedEx\LocationsService\SimpleType\LocationSearchFilterType|string[] $ResultsFilters * @property \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType|string[] $SupportedRedirectToHoldServices * @property \FedEx\LocationsService\SimpleType\LocationAttributesType|string[] $RequiredLocationAttributes + * @property LocationCapabilityDetail[] $RequiredLocationCapabilities + * @property LocationSupportedShipmentDetail $ShipmentDetail * @property int $ResultsToSkip * @property int $ResultsRequested * @property \FedEx\LocationsService\SimpleType\LocationContentOptionType|string[] $LocationContentOptions @@ -43,14 +45,14 @@ public function setRadiusDistance(Distance $radiusDistance) } /** - * The latest time at which the customer can drop off a package for being shipped using an express service. + * Set DropOffTimeNeeded * - * @param string $expressDropOffTimeNeeded + * @param string $dropOffTimeNeeded * @return $this */ - public function setExpressDropOffTimeNeeded($expressDropOffTimeNeeded) + public function setDropOffTimeNeeded($dropOffTimeNeeded) { - $this->values['ExpressDropOffTimeNeeded'] = $expressDropOffTimeNeeded; + $this->values['DropOffTimeNeeded'] = $dropOffTimeNeeded; return $this; } @@ -67,7 +69,7 @@ public function setResultsFilters(array $resultsFilters) } /** - * Specifies the types of services supported by a FedEx location for redirect to hold. + * DEPRECATED as of July 2017; See requiredLocationCapabilities. * * @param \FedEx\LocationsService\SimpleType\SupportedRedirectToHoldServiceType[]|string[] $supportedRedirectToHoldServices * @return $this @@ -90,6 +92,30 @@ public function setRequiredLocationAttributes(array $requiredLocationAttributes) return $this; } + /** + * Set RequiredLocationCapabilities + * + * @param LocationCapabilityDetail[] $requiredLocationCapabilities + * @return $this + */ + public function setRequiredLocationCapabilities(array $requiredLocationCapabilities) + { + $this->values['RequiredLocationCapabilities'] = $requiredLocationCapabilities; + return $this; + } + + /** + * Set ShipmentDetail + * + * @param LocationSupportedShipmentDetail $shipmentDetail + * @return $this + */ + public function setShipmentDetail(LocationSupportedShipmentDetail $shipmentDetail) + { + $this->values['ShipmentDetail'] = $shipmentDetail; + return $this; + } + /** * Set ResultsToSkip * diff --git a/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php b/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php index 0eb90ee3..2ea8f951 100644 --- a/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php +++ b/src/FedEx/LocationsService/ComplexType/SearchLocationsRequest.php @@ -16,6 +16,7 @@ * @property VersionId $Version * @property string $EffectiveDate * @property \FedEx\LocationsService\SimpleType\LocationsSearchCriteriaType|string $LocationsSearchCriterion + * @property string $ShipperAccountNumber * @property UniqueTrackingNumber $UniqueTrackingNumber * @property Address $Address * @property string $PhoneNumber @@ -106,6 +107,18 @@ public function setLocationsSearchCriterion($locationsSearchCriterion) return $this; } + /** + * The account number of the shipper. This is the account number for which restrictions and privileges will be applied. + * + * @param string $shipperAccountNumber + * @return $this + */ + public function setShipperAccountNumber($shipperAccountNumber) + { + $this->values['ShipperAccountNumber'] = $shipperAccountNumber; + return $this; + } + /** * Tracking number to be used when searching for locations. This tracking number, along with other location search constraints, help to narrow the search for locations. * diff --git a/src/FedEx/LocationsService/ComplexType/Weight.php b/src/FedEx/LocationsService/ComplexType/Weight.php new file mode 100644 index 00000000..10d954a9 --- /dev/null +++ b/src/FedEx/LocationsService/ComplexType/Weight.php @@ -0,0 +1,49 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + * + * @property \FedEx\LocationsService\SimpleType\WeightUnits|string $Units + * @property float $Value + + */ +class Weight extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'Weight'; + + /** + * Identifies the unit of measure associated with a weight value. + * + * @param \FedEx\LocationsService\SimpleType\WeightUnits|string $units + * @return $this + */ + public function setUnits($units) + { + $this->values['Units'] = $units; + return $this; + } + + /** + * Identifies the weight value of a package/shipment. + * + * @param float $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/LocationsService/Request.php b/src/FedEx/LocationsService/Request.php index b571b70b..58d6bb24 100644 --- a/src/FedEx/LocationsService/Request.php +++ b/src/FedEx/LocationsService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/locs'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/locs'; - protected static $wsdlFileName = 'LocationsService_v7.wsdl'; + protected static $wsdlFileName = 'LocationsService_v9.wsdl'; /** * Sends the SearchLocationsRequest and returns the response diff --git a/src/FedEx/LocationsService/SimpleType/FedExLocationType.php b/src/FedEx/LocationsService/SimpleType/FedExLocationType.php index 0376fc6e..7021de5a 100644 --- a/src/FedEx/LocationsService/SimpleType/FedExLocationType.php +++ b/src/FedEx/LocationsService/SimpleType/FedExLocationType.php @@ -19,7 +19,9 @@ class FedExLocationType extends AbstractSimpleType const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_ONSITE = 'FEDEX_ONSITE'; const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SHIP_AND_GET = 'FEDEX_SHIP_AND_GET'; const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/LocationsService/SimpleType/LinearUnits.php b/src/FedEx/LocationsService/SimpleType/LinearUnits.php new file mode 100644 index 00000000..f621b3cd --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LinearUnits.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LinearUnits extends AbstractSimpleType +{ + const _CM = 'CM'; + const _IN = 'IN'; +} diff --git a/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php b/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php index abd666cf..ec5745ab 100644 --- a/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php +++ b/src/FedEx/LocationsService/SimpleType/LocationAttributesType.php @@ -20,11 +20,6 @@ class LocationAttributesType extends AbstractSimpleType const _DIRECT_MAIL_SERVICES = 'DIRECT_MAIL_SERVICES'; const _DOMESTIC_SHIPPING_SERVICES = 'DOMESTIC_SHIPPING_SERVICES'; const _DROP_BOX = 'DROP_BOX'; - const _EXPRESS_FREIGHT_DROPOFFS = 'EXPRESS_FREIGHT_DROPOFFS'; - const _EXPRESS_PARCEL_DROPOFFS = 'EXPRESS_PARCEL_DROPOFFS'; - const _FEDEX_FREIGHT_DROPOFFS = 'FEDEX_FREIGHT_DROPOFFS'; - const _GROUND_DROPOFFS = 'GROUND_DROPOFFS'; - const _GROUND_HOME_DELIVERY_DROPOFFS = 'GROUND_HOME_DELIVERY_DROPOFFS'; const _INTERNATIONAL_SHIPPING_SERVICES = 'INTERNATIONAL_SHIPPING_SERVICES'; const _LOCATION_IS_IN_AIRPORT = 'LOCATION_IS_IN_AIRPORT'; const _NOTARY_SERVICES = 'NOTARY_SERVICES'; @@ -34,14 +29,6 @@ class LocationAttributesType extends AbstractSimpleType const _PACK_AND_SHIP = 'PACK_AND_SHIP'; const _PASSPORT_PHOTO_SERVICES = 'PASSPORT_PHOTO_SERVICES'; const _RETURNS_SERVICES = 'RETURNS_SERVICES'; - const _SAME_DAY_CITY_DROPOFFS = 'SAME_DAY_CITY_DROPOFFS'; - const _SAME_DAY_DROPOFFS = 'SAME_DAY_DROPOFFS'; - const _SATURDAY_DROPOFFS = 'SATURDAY_DROPOFFS'; - const _SATURDAY_EXPRESS_HOLD_AT_LOCATION = 'SATURDAY_EXPRESS_HOLD_AT_LOCATION'; - const _SHIP_AND_GET = 'SHIP_AND_GET'; const _SIGNS_AND_BANNERS_SERVICE = 'SIGNS_AND_BANNERS_SERVICE'; const _SONY_PICTURE_STATION = 'SONY_PICTURE_STATION'; - const _VIDEO_CONFERENCING = 'VIDEO_CONFERENCING'; - const _WEEKDAY_EXPRESS_HOLD_AT_LOCATION = 'WEEKDAY_EXPRESS_HOLD_AT_LOCATION'; - const _WEEKDAY_GROUND_HOLD_AT_LOCATION = 'WEEKDAY_GROUND_HOLD_AT_LOCATION'; } diff --git a/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php b/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php index 4a82aebe..df94f6dc 100644 --- a/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php +++ b/src/FedEx/LocationsService/SimpleType/LocationSearchFilterType.php @@ -14,4 +14,5 @@ class LocationSearchFilterType extends AbstractSimpleType { const _EXCLUDE_LOCATIONS_OUTSIDE_COUNTRY = 'EXCLUDE_LOCATIONS_OUTSIDE_COUNTRY'; const _EXCLUDE_LOCATIONS_OUTSIDE_STATE_OR_PROVINCE = 'EXCLUDE_LOCATIONS_OUTSIDE_STATE_OR_PROVINCE'; + const _EXCLUDE_UNAVAILABLE_LOCATIONS = 'EXCLUDE_UNAVAILABLE_LOCATIONS'; } diff --git a/src/FedEx/LocationsService/SimpleType/LocationTransferOfPossessionType.php b/src/FedEx/LocationsService/SimpleType/LocationTransferOfPossessionType.php new file mode 100644 index 00000000..ef58ee64 --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/LocationTransferOfPossessionType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class LocationTransferOfPossessionType extends AbstractSimpleType +{ + const _DROPOFF = 'DROPOFF'; + const _HOLD_AT_LOCATION = 'HOLD_AT_LOCATION'; + const _REDIRECT_TO_HOLD_AT_LOCATION = 'REDIRECT_TO_HOLD_AT_LOCATION'; +} diff --git a/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php index d67dcbed..cd8dbdbc 100644 --- a/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php +++ b/src/FedEx/LocationsService/SimpleType/PackageSpecialServiceType.php @@ -14,6 +14,7 @@ class PackageSpecialServiceType extends AbstractSimpleType { const _ALCOHOL = 'ALCOHOL'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _BATTERY = 'BATTERY'; const _COD = 'COD'; const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; const _DRY_ICE = 'DRY_ICE'; diff --git a/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php b/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php index c567426c..ec315d7a 100644 --- a/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php +++ b/src/FedEx/LocationsService/SimpleType/ServiceCategoryType.php @@ -14,4 +14,5 @@ class ServiceCategoryType extends AbstractSimpleType { const _EXPRESS_FREIGHT = 'EXPRESS_FREIGHT'; const _EXPRESS_PARCEL = 'EXPRESS_PARCEL'; + const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; } diff --git a/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php b/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php index 23209784..39b67a7b 100644 --- a/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php +++ b/src/FedEx/LocationsService/SimpleType/SupportedRedirectToHoldServiceType.php @@ -4,7 +4,7 @@ use FedEx\AbstractSimpleType; /** - * Specifies the types of services supported by a FedEx location for redirect to hold. + * DEPRECATED as of July 2017. * * @author Jeremy Dunn * @package PHP FedEx API wrapper diff --git a/src/FedEx/LocationsService/SimpleType/WeightUnits.php b/src/FedEx/LocationsService/SimpleType/WeightUnits.php new file mode 100644 index 00000000..b6126c7f --- /dev/null +++ b/src/FedEx/LocationsService/SimpleType/WeightUnits.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage Locations Service + */ +class WeightUnits extends AbstractSimpleType +{ + const _KG = 'KG'; + const _LB = 'LB'; +} diff --git a/src/FedEx/_wsdl/LocationsService_v7.wsdl b/src/FedEx/_wsdl/LocationsService_v9.wsdl similarity index 89% rename from src/FedEx/_wsdl/LocationsService_v7.wsdl rename to src/FedEx/_wsdl/LocationsService_v9.wsdl index b4bfd1f0..ba0c56a5 100755 --- a/src/FedEx/_wsdl/LocationsService_v7.wsdl +++ b/src/FedEx/_wsdl/LocationsService_v9.wsdl @@ -1,6 +1,6 @@ - + - + @@ -174,6 +174,7 @@ Identifies the country whose special services are specified below. + Identifies the constrained special services supported for the country above. @@ -247,7 +248,6 @@ - @@ -330,6 +330,14 @@ + + + + + + + + Driving or other transportation distances, distinct from dimension measurements. @@ -358,7 +366,11 @@ - + + + DEPRECATED as of July 2017; See locationCapabilities. + + Details about a FedEx location such as services offered, working hours and pick and drop off times. @@ -402,8 +414,10 @@ + + @@ -444,6 +458,12 @@ + + + + + + Identifies the representation of human-readable text. @@ -480,11 +500,6 @@ - - - - - @@ -494,18 +509,35 @@ - - - - - - - - + + + + + The carrier code for which this capability applies. + + + + + + The service category for which this capability applies. + + + + + The method by which a package is transferred to the possession of a FedEx location. + + + + + The days of the week for which this capability applies. + + + + @@ -533,7 +565,18 @@ + + + Branded text associated with this location type. + + + + + + The maximum values for various package attributes that are supported at the location. + + Details about the clearance location. @@ -579,6 +622,12 @@ + + + + + + Specifies the crieteria used to filter the location search results. @@ -586,6 +635,7 @@ + @@ -625,6 +675,24 @@ + + + + + + + + + + + + + + + + + + Specifies the criteria types that may be used to search for FedEx locations. @@ -713,6 +781,7 @@ + @@ -745,11 +814,7 @@ Specifies value and units of the radius around the address to search for FedEx locations. - - - The latest time at which the customer can drop off a package for being shipped using an express service. - - + Specifies the criteria used to filter the results of locations search. @@ -757,10 +822,12 @@ - Specifies the types of services supported by a FedEx location for redirect to hold. + DEPRECATED as of July 2017; See requiredLocationCapabilities. + + @@ -811,6 +878,11 @@ Specifies the criterion that may be used to search for FedEx locations. + + + The account number of the shipper. This is the account number for which restrictions and privileges will be applied. + + Tracking number to be used when searching for locations. This tracking number, along with other location search constraints, help to narrow the search for locations. @@ -840,6 +912,7 @@ + @@ -894,7 +967,7 @@ - Specifies the types of services supported by a FedEx location for redirect to hold. + DEPRECATED as of July 2017. @@ -929,6 +1002,29 @@ + + + The descriptive data for the heaviness of an object. + + + + + Identifies the unit of measure associated with a weight value. + + + + + Identifies the weight value of a package/shipment. + + + + + + + + + + Used in authentication of the sender's identity. @@ -973,7 +1069,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -1007,7 +1103,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 5e7ac673..8aaca92b 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -136,7 +136,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //LocationsService - $wsdlPath = $fedexSrcDir . '/_wsdl/LocationsService_v7.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/LocationsService_v9.wsdl'; $baseNamespace = 'FedEx\LocationsService'; $subPackageName = 'Locations Service'; From 031600257a5126c1e9de87d0c93c2f855c082247 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:16:51 -0600 Subject: [PATCH 14/33] Updated Rate Service (v24) --- .../AssociatedFreightLineItemDetail.php | 36 +++++++ .../RateService/ComplexType/CommitDetail.php | 15 ++- .../RateService/ComplexType/Commodity.php | 4 +- .../ComplexType/FreightShipmentLineItem.php | 13 +++ .../RateService/ComplexType/ProductName.php | 62 ++++++++++++ .../ComplexType/RateReplyDetail.php | 15 ++- .../ComplexType/RequestedPackageLineItem.php | 13 +++ .../ComplexType/RequestedShipment.php | 2 +- .../ComplexType/ServiceDescription.php | 88 +++++++++++++++++ src/FedEx/RateService/Request.php | 2 +- .../RateService/SimpleType/LabelStockType.php | 3 + .../RequestedShippingDocumentType.php | 2 + .../SimpleType/ShipmentSpecialServiceType.php | 1 + .../RateService/SimpleType/SurchargeType.php | 1 + ...eService_v22.wsdl => RateService_v24.wsdl} | 99 ++++++++++++++++--- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 16 files changed, 339 insertions(+), 19 deletions(-) create mode 100644 src/FedEx/RateService/ComplexType/AssociatedFreightLineItemDetail.php create mode 100644 src/FedEx/RateService/ComplexType/ProductName.php create mode 100644 src/FedEx/RateService/ComplexType/ServiceDescription.php rename src/FedEx/_wsdl/{RateService_v22.wsdl => RateService_v24.wsdl} (98%) diff --git a/src/FedEx/RateService/ComplexType/AssociatedFreightLineItemDetail.php b/src/FedEx/RateService/ComplexType/AssociatedFreightLineItemDetail.php new file mode 100644 index 00000000..cff28aa3 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/AssociatedFreightLineItemDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $Id + + */ +class AssociatedFreightLineItemDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AssociatedFreightLineItemDetail'; + + /** + * A freight line item identifier referring to a freight shipment line item that describes goods contained within this handling unit. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/CommitDetail.php b/src/FedEx/RateService/ComplexType/CommitDetail.php index ade298ad..b904b213 100644 --- a/src/FedEx/RateService/ComplexType/CommitDetail.php +++ b/src/FedEx/RateService/ComplexType/CommitDetail.php @@ -12,6 +12,7 @@ * * @property string $CommodityName * @property \FedEx\RateService\SimpleType\ServiceType|string $ServiceType + * @property ServiceDescription $ServiceDescription * @property \FedEx\RateService\SimpleType\ServiceOptionType|string[] $AppliedOptions * @property ServiceSubOptionDetail $AppliedSubOptions * @property SignatureOptionDetail $DerivedShipmentSignatureOption @@ -60,7 +61,7 @@ public function setCommodityName($commodityName) } /** - * The FedEx service type applicable to this commitment. + * Deprecated: This field will be removed in a future DOM release. New code should use serviceDescription.serviceType instead. * * @param \FedEx\RateService\SimpleType\ServiceType|string $serviceType * @return $this @@ -71,6 +72,18 @@ public function setServiceType($serviceType) return $this; } + /** + * Descriptions and alternate identifiers for a service. + * + * @param ServiceDescription $serviceDescription + * @return $this + */ + public function setServiceDescription(ServiceDescription $serviceDescription) + { + $this->values['ServiceDescription'] = $serviceDescription; + return $this; + } + /** * Shows the specific combination of service options combined with the service type that produced this committment in the set returned to the caller. * diff --git a/src/FedEx/RateService/ComplexType/Commodity.php b/src/FedEx/RateService/ComplexType/Commodity.php index 839e370c..4342dae5 100644 --- a/src/FedEx/RateService/ComplexType/Commodity.php +++ b/src/FedEx/RateService/ComplexType/Commodity.php @@ -40,7 +40,7 @@ class Commodity extends AbstractComplexType protected $name = 'Commodity'; /** - * Set Name + * FedEx internal commodity identifier * * @param string $name * @return $this @@ -64,7 +64,7 @@ public function setNumberOfPieces($numberOfPieces) } /** - * Set Description + * A free-form description of the commodity, which could be used for customs clearance documentation. * * @param string $description * @return $this diff --git a/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php b/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php index cd1b2bdf..e5d50ecd 100644 --- a/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php +++ b/src/FedEx/RateService/ComplexType/FreightShipmentLineItem.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Rate Service * + * @property string $Id * @property \FedEx\RateService\SimpleType\FreightClassType|string $FreightClass * @property \FedEx\RateService\SimpleType\PhysicalPackagingType|string $Packaging * @property int $Pieces @@ -28,6 +29,18 @@ class FreightShipmentLineItem extends AbstractComplexType */ protected $name = 'FreightShipmentLineItem'; + /** + * A unique identifier assigned to this line item. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + /** * Freight class for this line item. * diff --git a/src/FedEx/RateService/ComplexType/ProductName.php b/src/FedEx/RateService/ComplexType/ProductName.php new file mode 100644 index 00000000..b766a9f1 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ProductName.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property string $Type + * @property string $Encoding + * @property string $Value + + */ +class ProductName extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ProductName'; + + /** + * The type of branded, translated, and/or localized name to which this value refers. + * + * @param string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * The character encoding used to represent this product name. For example, UTF-8. + * + * @param string $encoding + * @return $this + */ + public function setEncoding($encoding) + { + $this->values['Encoding'] = $encoding; + return $this; + } + + /** + * Set Value + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/RateService/ComplexType/RateReplyDetail.php b/src/FedEx/RateService/ComplexType/RateReplyDetail.php index 2cd7a37e..99f8b639 100644 --- a/src/FedEx/RateService/ComplexType/RateReplyDetail.php +++ b/src/FedEx/RateService/ComplexType/RateReplyDetail.php @@ -11,6 +11,7 @@ * @subpackage Rate Service * * @property \FedEx\RateService\SimpleType\ServiceType|string $ServiceType + * @property ServiceDescription $ServiceDescription * @property \FedEx\RateService\SimpleType\PackagingType|string $PackagingType * @property \FedEx\RateService\SimpleType\ServiceOptionType|string[] $AppliedOptions * @property ServiceSubOptionDetail $AppliedSubOptions @@ -39,7 +40,7 @@ class RateReplyDetail extends AbstractComplexType protected $name = 'RateReplyDetail'; /** - * Set ServiceType + * Deprecated: This field will be removed in a future DOM release. New code should use serviceDescription.serviceType instead. * * @param \FedEx\RateService\SimpleType\ServiceType|string $serviceType * @return $this @@ -50,6 +51,18 @@ public function setServiceType($serviceType) return $this; } + /** + * Descriptions and alternate identifiers for a service. + * + * @param ServiceDescription $serviceDescription + * @return $this + */ + public function setServiceDescription(ServiceDescription $serviceDescription) + { + $this->values['ServiceDescription'] = $serviceDescription; + return $this; + } + /** * Set PackagingType * diff --git a/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php b/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php index 8cfbe1c4..8dddbcc1 100644 --- a/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php +++ b/src/FedEx/RateService/ComplexType/RequestedPackageLineItem.php @@ -18,6 +18,7 @@ * @property Weight $Weight * @property Dimensions $Dimensions * @property \FedEx\RateService\SimpleType\PhysicalPackagingType|string $PhysicalPackaging + * @property AssociatedFreightLineItemDetail[] $AssociatedFreightLineItems * @property string $ItemDescription * @property string $ItemDescriptionForClearance * @property CustomerReference[] $CustomerReferences @@ -130,6 +131,18 @@ public function setPhysicalPackaging($physicalPackaging) return $this; } + /** + * Set AssociatedFreightLineItems + * + * @param AssociatedFreightLineItemDetail[] $associatedFreightLineItems + * @return $this + */ + public function setAssociatedFreightLineItems(array $associatedFreightLineItems) + { + $this->values['AssociatedFreightLineItems'] = $associatedFreightLineItems; + return $this; + } + /** * Human-readable text describing the package. * diff --git a/src/FedEx/RateService/ComplexType/RequestedShipment.php b/src/FedEx/RateService/ComplexType/RequestedShipment.php index f4197fa4..cc8387ce 100644 --- a/src/FedEx/RateService/ComplexType/RequestedShipment.php +++ b/src/FedEx/RateService/ComplexType/RequestedShipment.php @@ -210,7 +210,7 @@ public function setOrigin(ContactAndAddress $origin) } /** - * Set SoldTo + * The sold-to party is used for customs clearance; for example, in support of US import customs rules. The need for this field could vary based on whether a sold-to party was specified on a consolidation. * * @param Party $soldTo * @return $this diff --git a/src/FedEx/RateService/ComplexType/ServiceDescription.php b/src/FedEx/RateService/ComplexType/ServiceDescription.php new file mode 100644 index 00000000..8ee23fc9 --- /dev/null +++ b/src/FedEx/RateService/ComplexType/ServiceDescription.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Rate Service + * + * @property \FedEx\RateService\SimpleType\ServiceType|string $ServiceType + * @property string $Code + * @property ProductName[] $Names + * @property string $Description + * @property string $AstraDescription + + */ +class ServiceDescription extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ServiceDescription'; + + /** + * Set ServiceType + * + * @param \FedEx\RateService\SimpleType\ServiceType|string $serviceType + * @return $this + */ + public function setServiceType($serviceType) + { + $this->values['ServiceType'] = $serviceType; + return $this; + } + + /** + * Set Code + * + * @param string $code + * @return $this + */ + public function setCode($code) + { + $this->values['Code'] = $code; + return $this; + } + + /** + * Branded, translated, and/or localized names for this service. + * + * @param ProductName[] $names + * @return $this + */ + public function setNames(array $names) + { + $this->values['Names'] = $names; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set AstraDescription + * + * @param string $astraDescription + * @return $this + */ + public function setAstraDescription($astraDescription) + { + $this->values['AstraDescription'] = $astraDescription; + return $this; + } +} diff --git a/src/FedEx/RateService/Request.php b/src/FedEx/RateService/Request.php index 704ae461..86721c01 100644 --- a/src/FedEx/RateService/Request.php +++ b/src/FedEx/RateService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/rate'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/rate'; - protected static $wsdlFileName = 'RateService_v22.wsdl'; + protected static $wsdlFileName = 'RateService_v24.wsdl'; /** * Sends the RateRequest and returns the response diff --git a/src/FedEx/RateService/SimpleType/LabelStockType.php b/src/FedEx/RateService/SimpleType/LabelStockType.php index d0ce14e1..91716a4e 100644 --- a/src/FedEx/RateService/SimpleType/LabelStockType.php +++ b/src/FedEx/RateService/SimpleType/LabelStockType.php @@ -13,15 +13,18 @@ class LabelStockType extends AbstractSimpleType { const _PAPER_4X6 = 'PAPER_4X6'; + const _PAPER_4X6POINT75 = 'PAPER_4X6.75'; const _PAPER_4X8 = 'PAPER_4X8'; const _PAPER_4X9 = 'PAPER_4X9'; const _PAPER_7X4POINT75 = 'PAPER_7X4.75'; const _PAPER_8POINT5X11_BOTTOM_HALF_LABEL = 'PAPER_8.5X11_BOTTOM_HALF_LABEL'; const _PAPER_8POINT5X11_TOP_HALF_LABEL = 'PAPER_8.5X11_TOP_HALF_LABEL'; const _STOCK_4X6 = 'STOCK_4X6'; + const _STOCK_4X6POINT75 = 'STOCK_4X6.75'; const _STOCK_4X6POINT75_LEADING_DOC_TAB = 'STOCK_4X6.75_LEADING_DOC_TAB'; const _STOCK_4X6POINT75_TRAILING_DOC_TAB = 'STOCK_4X6.75_TRAILING_DOC_TAB'; const _STOCK_4X8 = 'STOCK_4X8'; + const _STOCK_4X9 = 'STOCK_4X9'; const _STOCK_4X9_LEADING_DOC_TAB = 'STOCK_4X9_LEADING_DOC_TAB'; const _STOCK_4X9_TRAILING_DOC_TAB = 'STOCK_4X9_TRAILING_DOC_TAB'; } diff --git a/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php b/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php index c1215a3b..a002a894 100644 --- a/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php +++ b/src/FedEx/RateService/SimpleType/RequestedShippingDocumentType.php @@ -17,9 +17,11 @@ class RequestedShippingDocumentType extends AbstractSimpleType const _CUSTOMER_SPECIFIED_LABELS = 'CUSTOMER_SPECIFIED_LABELS'; const _DANGEROUS_GOODS_SHIPPERS_DECLARATION = 'DANGEROUS_GOODS_SHIPPERS_DECLARATION'; const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; + const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _LABEL = 'LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; const _RETURN_INSTRUCTIONS = 'RETURN_INSTRUCTIONS'; + const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php index 939c81e9..b5db37d8 100644 --- a/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/RateService/SimpleType/ShipmentSpecialServiceType.php @@ -41,6 +41,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; const _POISON = 'POISON'; diff --git a/src/FedEx/RateService/SimpleType/SurchargeType.php b/src/FedEx/RateService/SimpleType/SurchargeType.php index cc8175de..8d5f09d3 100644 --- a/src/FedEx/RateService/SimpleType/SurchargeType.php +++ b/src/FedEx/RateService/SimpleType/SurchargeType.php @@ -65,6 +65,7 @@ class SurchargeType extends AbstractSimpleType const _OUT_OF_PICKUP_AREA = 'OUT_OF_PICKUP_AREA'; const _OVERSIZE = 'OVERSIZE'; const _OVER_DIMENSION = 'OVER_DIMENSION'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; const _PRE_DELIVERY_NOTIFICATION = 'PRE_DELIVERY_NOTIFICATION'; const _PRIORITY_ALERT = 'PRIORITY_ALERT'; diff --git a/src/FedEx/_wsdl/RateService_v22.wsdl b/src/FedEx/_wsdl/RateService_v24.wsdl similarity index 98% rename from src/FedEx/_wsdl/RateService_v22.wsdl rename to src/FedEx/_wsdl/RateService_v24.wsdl index 75cce6b4..e49d55d9 100755 --- a/src/FedEx/_wsdl/RateService_v22.wsdl +++ b/src/FedEx/_wsdl/RateService_v24.wsdl @@ -1,6 +1,6 @@ - + - + @@ -120,6 +120,15 @@ + + + + + A freight line item identifier referring to a freight shipment line item that describes goods contained within this handling unit. + + + + @@ -187,7 +196,6 @@ - @@ -493,7 +501,12 @@ - The FedEx service type applicable to this commitment. + Deprecated: This field will be removed in a future DOM release. New code should use serviceDescription.serviceType instead. + + + + + Descriptions and alternate identifiers for a service. @@ -618,9 +631,17 @@ - + + + FedEx internal commodity identifier + + - + + + A free-form description of the commodity, which could be used for customs clearance documentation. + + @@ -1215,7 +1236,7 @@ Specifies the radioactivity detail for the current package, if the package contains radioactive materials. - + @@ -2030,6 +2051,11 @@ Description of an individual commodity or class of content in a shipment. + + + A unique identifier assigned to this line item. + + Freight class for this line item. @@ -2484,15 +2510,18 @@ + + + @@ -3123,6 +3152,21 @@ + + + + + The type of branded, translated, and/or localized name to which this value refers. + + + + + The character encoding used to represent this product name. For example, UTF-8. + + + + + @@ -3259,7 +3303,16 @@ - + + + Deprecated: This field will be removed in a future DOM release. New code should use serviceDescription.serviceType instead. + + + + + Descriptions and alternate identifiers for a service. + + @@ -3519,7 +3572,7 @@ - + @@ -3590,6 +3643,7 @@ Provides additional detail on how the customer has physically packaged this item. As of June 2009, required for packages moving under international and SmartPost services. + Human-readable text describing the package. @@ -3644,7 +3698,11 @@ Physical starting address for the shipment, if different from shipper's address. - + + + The sold-to party is used for customs clearance; for example, in support of US import customs rules. The need for this field could vary based on whether a sold-to party was specified on a consolidation. + + @@ -3724,11 +3782,13 @@ + + @@ -3842,6 +3902,19 @@ + + + + + + + Branded, translated, and/or localized names for this service. + + + + + + These values control the optional features of service that may be combined in a commitment/rate comparision transaction. @@ -4320,6 +4393,7 @@ + @@ -4735,6 +4809,7 @@ + @@ -5028,7 +5103,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -5062,7 +5137,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 8aaca92b..7bbbcb28 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -49,7 +49,7 @@ protected function execute(InputInterface $input, OutputInterface $output) } //RateRequest - $wsdlPath = $fedexSrcDir . '/_wsdl/RateService_v22.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/RateService_v24.wsdl'; $baseNamespace = 'FedEx\RateService'; $subpackageName = 'Rate Service'; From 50f151391b6bb8728b3cc25e65576d38959bdc5e Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:18:53 -0600 Subject: [PATCH 15/33] Updated Track Service (v16) --- .../TrackService/ComplexType/Commodity.php | 4 +- .../TrackService/ComplexType/FaxDetail.php | 36 +++++++++++++++++ .../TrackingDocumentDispositionDetail.php | 13 ++++++ src/FedEx/TrackService/Request.php | 2 +- .../SimpleType/FedExLocationType.php | 2 + .../SimpleType/TrackSpecialHandlingType.php | 1 + .../TrackingDateOrTimestampType.php | 1 + ...Service_v14.wsdl => TrackService_v16.wsdl} | 40 ++++++++++++++----- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 9 files changed, 88 insertions(+), 13 deletions(-) create mode 100644 src/FedEx/TrackService/ComplexType/FaxDetail.php rename src/FedEx/_wsdl/{TrackService_v14.wsdl => TrackService_v16.wsdl} (98%) diff --git a/src/FedEx/TrackService/ComplexType/Commodity.php b/src/FedEx/TrackService/ComplexType/Commodity.php index a385f5e3..435dcad0 100644 --- a/src/FedEx/TrackService/ComplexType/Commodity.php +++ b/src/FedEx/TrackService/ComplexType/Commodity.php @@ -53,7 +53,7 @@ public function setCommodityId($commodityId) } /** - * Set Name + * FedEx internal commodity identifier * * @param string $name * @return $this @@ -77,7 +77,7 @@ public function setNumberOfPieces($numberOfPieces) } /** - * Set Description + * A free-form description of the commodity, which could be used for customs clearance documentation. * * @param string $description * @return $this diff --git a/src/FedEx/TrackService/ComplexType/FaxDetail.php b/src/FedEx/TrackService/ComplexType/FaxDetail.php new file mode 100644 index 00000000..a54c58a9 --- /dev/null +++ b/src/FedEx/TrackService/ComplexType/FaxDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Package Movement Information Service + * + * @property string $PhoneNumber + + */ +class FaxDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'FaxDetail'; + + /** + * Set PhoneNumber + * + * @param string $phoneNumber + * @return $this + */ + public function setPhoneNumber($phoneNumber) + { + $this->values['PhoneNumber'] = $phoneNumber; + return $this; + } +} diff --git a/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php b/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php index 1fbedf38..449e32f9 100644 --- a/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php +++ b/src/FedEx/TrackService/ComplexType/TrackingDocumentDispositionDetail.php @@ -12,6 +12,7 @@ * * @property \FedEx\TrackService\SimpleType\TrackingDocumentDispositionType|string $DispositionType * @property TrackingDocumentEmailDetail $EMailDetail + * @property FaxDetail[] $FaxDetails */ class TrackingDocumentDispositionDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setEMailDetail(TrackingDocumentEmailDetail $eMailDetail) $this->values['EMailDetail'] = $eMailDetail; return $this; } + + /** + * Specifies the information used to fax the document. + * + * @param FaxDetail[] $faxDetails + * @return $this + */ + public function setFaxDetails(array $faxDetails) + { + $this->values['FaxDetails'] = $faxDetails; + return $this; + } } diff --git a/src/FedEx/TrackService/Request.php b/src/FedEx/TrackService/Request.php index 445686a3..6ff1e882 100644 --- a/src/FedEx/TrackService/Request.php +++ b/src/FedEx/TrackService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/track'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/track'; - protected static $wsdlFileName = 'TrackService_v14.wsdl'; + protected static $wsdlFileName = 'TrackService_v16.wsdl'; /** * Sends the TrackRequest and returns the response diff --git a/src/FedEx/TrackService/SimpleType/FedExLocationType.php b/src/FedEx/TrackService/SimpleType/FedExLocationType.php index 2cf525dd..ccac6bdc 100644 --- a/src/FedEx/TrackService/SimpleType/FedExLocationType.php +++ b/src/FedEx/TrackService/SimpleType/FedExLocationType.php @@ -19,7 +19,9 @@ class FedExLocationType extends AbstractSimpleType const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_ONSITE = 'FEDEX_ONSITE'; const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SHIP_AND_GET = 'FEDEX_SHIP_AND_GET'; const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php b/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php index ba2d6d1b..b56b35fb 100644 --- a/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php +++ b/src/FedEx/TrackService/SimpleType/TrackSpecialHandlingType.php @@ -88,6 +88,7 @@ class TrackSpecialHandlingType extends AbstractSimpleType const _ORDER_NOTIFY = 'ORDER_NOTIFY'; const _OTHER = 'OTHER'; const _OTHER_REGULATED_MATERIAL_DOMESTIC = 'OTHER_REGULATED_MATERIAL_DOMESTIC'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PACKAGE_RETURN_PROGRAM = 'PACKAGE_RETURN_PROGRAM'; const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; const _POISON = 'POISON'; diff --git a/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php b/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php index 9ff09aa2..373b4e05 100644 --- a/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php +++ b/src/FedEx/TrackService/SimpleType/TrackingDateOrTimestampType.php @@ -19,5 +19,6 @@ class TrackingDateOrTimestampType extends AbstractSimpleType const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; const _ESTIMATED_DELIVERY = 'ESTIMATED_DELIVERY'; const _ESTIMATED_PICKUP = 'ESTIMATED_PICKUP'; + const _ESTIMATED_RETURN_TO_STATION = 'ESTIMATED_RETURN_TO_STATION'; const _SHIP = 'SHIP'; } diff --git a/src/FedEx/_wsdl/TrackService_v14.wsdl b/src/FedEx/_wsdl/TrackService_v16.wsdl similarity index 98% rename from src/FedEx/_wsdl/TrackService_v14.wsdl rename to src/FedEx/_wsdl/TrackService_v16.wsdl index 9c402406..3ad93662 100755 --- a/src/FedEx/_wsdl/TrackService_v14.wsdl +++ b/src/FedEx/_wsdl/TrackService_v16.wsdl @@ -1,6 +1,6 @@ - + - + @@ -188,9 +188,17 @@ Value used to identify a commodity description; must be unique within the containing shipment. - + + + FedEx internal commodity identifier + + - + + + A free-form description of the commodity, which could be used for customs clearance documentation. + + @@ -471,6 +479,11 @@ + + + + + Identifies a kind of FedEx facility. @@ -483,8 +496,10 @@ + + @@ -1274,7 +1289,7 @@ - + @@ -1879,6 +1894,7 @@ + @@ -2006,6 +2022,7 @@ + @@ -2022,6 +2039,11 @@ + + + Specifies the information used to fax the document. + + @@ -2185,7 +2207,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -2239,7 +2261,7 @@ - + @@ -2248,7 +2270,7 @@ - + @@ -2257,7 +2279,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 7bbbcb28..5e12728f 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -92,7 +92,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //TrackService - $wsdlPath = $fedexSrcDir . '/_wsdl/TrackService_v14.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/TrackService_v16.wsdl'; $baseNamespace = 'FedEx\TrackService'; $subPackageName = 'Track Service'; From d94914933edf9fa05a07925b3f94841628a47c62 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:26:58 -0600 Subject: [PATCH 16/33] Updated Open Ship Service (v15) --- .../OpenShipService/ComplexType/Address.php | 13 + .../AssociatedFreightLineItemDetail.php | 36 ++ .../BatteryClassificationDetail.php | 62 +++ .../OpenShipService/ComplexType/Commodity.php | 4 +- .../ComplexType/CompletedEtdDetail.php | 13 + .../CompletedHoldAtLocationDetail.php | 13 + .../ComplexType/CompletedShipmentDetail.php | 28 +- .../ComplexType/DocumentGenerationDetail.php | 75 ++++ .../DocumentRequirementsDetail.php | 62 +++ .../OpenShipService/ComplexType/EtdDetail.php | 13 + .../ComplexType/FreightBillOfLadingDetail.php | 36 ++ .../ComplexType/FreightShipmentLineItem.php | 13 + .../ComplexType/HoldAtLocationDetail.php | 13 + .../PackageSpecialServicesRequested.php | 13 + .../ComplexType/ProductName.php | 62 +++ .../ComplexType/RequestedPackageLineItem.php | 13 + .../ComplexType/RequestedShipment.php | 2 +- .../ComplexType/ServiceDescription.php | 88 +++++ .../ShipmentConsolidationDetail.php | 13 + .../ShippingDocumentDispositionDetail.php | 13 + .../ShippingDocumentSpecification.php | 13 + .../ShippingDocumentStorageDetail.php | 75 ++++ src/FedEx/OpenShipService/Request.php | 2 +- .../SimpleType/BatteryMaterialType.php | 17 + .../SimpleType/BatteryPackingType.php | 17 + .../SimpleType/BatteryRegulatorySubType.php | 16 + .../SimpleType/CompletedEtdType.php | 17 + .../SimpleType/ConsolidationType.php | 1 - .../SimpleType/CustomerReferenceType.php | 3 - .../SimpleType/EnterpriseDocumentType.php | 20 + .../SimpleType/EtdAttributeType.php | 16 + .../SimpleType/FedExLocationType.php | 4 + .../SimpleType/LabelFormatType.php | 2 - .../SimpleType/LabelStockType.php | 3 + .../SimpleType/PackageSpecialServiceType.php | 1 + .../SimpleType/RegulatoryControlType.php | 2 +- .../RequestedShippingDocumentType.php | 3 +- .../SimpleType/RequiredDocumentType.php | 21 + .../SimpleType/RequirementType.php | 18 + .../SimpleType/ReturnedRateType.php | 2 + .../ReturnedShippingDocumentType.php | 2 + .../SimpleType/ServiceCategoryType.php | 1 + .../SimpleType/ServiceType.php | 1 + .../ShipmentProcessingOptionType.php | 1 + .../SimpleType/ShipmentSpecialServiceType.php | 2 + .../ShippingDocumentDispositionType.php | 2 - .../SimpleType/ShippingDocumentImageType.php | 1 - .../SimpleType/ShippingDocumentNamingType.php | 17 + .../ShippingDocumentStorageDetailType.php | 17 + .../SimpleType/SurchargeType.php | 4 + .../SimpleType/UploadDocumentIdProducer.php | 6 - .../SimpleType/UploadDocumentProducerType.php | 4 - ...vice_v11.wsdl => OpenshipService_v15.wsdl} | 358 +++++++++++++++--- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 54 files changed, 1177 insertions(+), 79 deletions(-) create mode 100644 src/FedEx/OpenShipService/ComplexType/AssociatedFreightLineItemDetail.php create mode 100644 src/FedEx/OpenShipService/ComplexType/BatteryClassificationDetail.php create mode 100644 src/FedEx/OpenShipService/ComplexType/DocumentGenerationDetail.php create mode 100644 src/FedEx/OpenShipService/ComplexType/DocumentRequirementsDetail.php create mode 100644 src/FedEx/OpenShipService/ComplexType/FreightBillOfLadingDetail.php create mode 100644 src/FedEx/OpenShipService/ComplexType/ProductName.php create mode 100644 src/FedEx/OpenShipService/ComplexType/ServiceDescription.php create mode 100644 src/FedEx/OpenShipService/ComplexType/ShippingDocumentStorageDetail.php create mode 100644 src/FedEx/OpenShipService/SimpleType/BatteryMaterialType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/BatteryPackingType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/BatteryRegulatorySubType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/CompletedEtdType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/EnterpriseDocumentType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/EtdAttributeType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/RequiredDocumentType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/RequirementType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/ShippingDocumentNamingType.php create mode 100644 src/FedEx/OpenShipService/SimpleType/ShippingDocumentStorageDetailType.php rename src/FedEx/_wsdl/{OpenShipService_v11.wsdl => OpenshipService_v15.wsdl} (96%) diff --git a/src/FedEx/OpenShipService/ComplexType/Address.php b/src/FedEx/OpenShipService/ComplexType/Address.php index 7d4aab3d..51e8025a 100644 --- a/src/FedEx/OpenShipService/ComplexType/Address.php +++ b/src/FedEx/OpenShipService/ComplexType/Address.php @@ -18,6 +18,7 @@ * @property string $CountryCode * @property string $CountryName * @property boolean $Residential + * @property string $GeographicCoordinates */ class Address extends AbstractComplexType @@ -124,4 +125,16 @@ public function setResidential($residential) $this->values['Residential'] = $residential; return $this; } + + /** + * The geographic coordinates cooresponding to this address. + * + * @param string $geographicCoordinates + * @return $this + */ + public function setGeographicCoordinates($geographicCoordinates) + { + $this->values['GeographicCoordinates'] = $geographicCoordinates; + return $this; + } } diff --git a/src/FedEx/OpenShipService/ComplexType/AssociatedFreightLineItemDetail.php b/src/FedEx/OpenShipService/ComplexType/AssociatedFreightLineItemDetail.php new file mode 100644 index 00000000..fbeb9c75 --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/AssociatedFreightLineItemDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property string $Id + + */ +class AssociatedFreightLineItemDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AssociatedFreightLineItemDetail'; + + /** + * A freight line item identifier referring to a freight shipment line item that describes goods contained within this handling unit. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/BatteryClassificationDetail.php b/src/FedEx/OpenShipService/ComplexType/BatteryClassificationDetail.php new file mode 100644 index 00000000..f4dc691a --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/BatteryClassificationDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property \FedEx\OpenShipService\SimpleType\BatteryMaterialType|string $Material + * @property \FedEx\OpenShipService\SimpleType\BatteryPackingType|string $Packing + * @property \FedEx\OpenShipService\SimpleType\BatteryRegulatorySubType|string $RegulatorySubType + + */ +class BatteryClassificationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'BatteryClassificationDetail'; + + /** + * Describes the material composition of the battery or cell. + * + * @param \FedEx\OpenShipService\SimpleType\BatteryMaterialType|string $material + * @return $this + */ + public function setMaterial($material) + { + $this->values['Material'] = $material; + return $this; + } + + /** + * Describes the packing arrangement of the battery or cell with respect to other items within the same package. + * + * @param \FedEx\OpenShipService\SimpleType\BatteryPackingType|string $packing + * @return $this + */ + public function setPacking($packing) + { + $this->values['Packing'] = $packing; + return $this; + } + + /** + * A regulation specific classification for the battery or cell. + * + * @param \FedEx\OpenShipService\SimpleType\BatteryRegulatorySubType|string $regulatorySubType + * @return $this + */ + public function setRegulatorySubType($regulatorySubType) + { + $this->values['RegulatorySubType'] = $regulatorySubType; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/Commodity.php b/src/FedEx/OpenShipService/ComplexType/Commodity.php index fd996fb0..8e6e2dc1 100644 --- a/src/FedEx/OpenShipService/ComplexType/Commodity.php +++ b/src/FedEx/OpenShipService/ComplexType/Commodity.php @@ -40,7 +40,7 @@ class Commodity extends AbstractComplexType protected $name = 'Commodity'; /** - * Set Name + * FedEx internal commodity identifier * * @param string $name * @return $this @@ -64,7 +64,7 @@ public function setNumberOfPieces($numberOfPieces) } /** - * Set Description + * A free-form description of the commodity, which could be used for customs clearance documentation. * * @param string $description * @return $this diff --git a/src/FedEx/OpenShipService/ComplexType/CompletedEtdDetail.php b/src/FedEx/OpenShipService/ComplexType/CompletedEtdDetail.php index cf4738d8..f7cbc6db 100644 --- a/src/FedEx/OpenShipService/ComplexType/CompletedEtdDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/CompletedEtdDetail.php @@ -11,6 +11,7 @@ * @subpackage OpenShip Service * * @property string $FolderId + * @property \FedEx\OpenShipService\SimpleType\CompletedEtdType|string $Type * @property UploadDocumentReferenceDetail[] $UploadDocumentReferenceDetails */ @@ -35,6 +36,18 @@ public function setFolderId($folderId) return $this; } + /** + * Set Type + * + * @param \FedEx\OpenShipService\SimpleType\CompletedEtdType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + /** * Set UploadDocumentReferenceDetails * diff --git a/src/FedEx/OpenShipService/ComplexType/CompletedHoldAtLocationDetail.php b/src/FedEx/OpenShipService/ComplexType/CompletedHoldAtLocationDetail.php index f36fa6a4..d3f5d65d 100644 --- a/src/FedEx/OpenShipService/ComplexType/CompletedHoldAtLocationDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/CompletedHoldAtLocationDetail.php @@ -12,6 +12,7 @@ * * @property ContactAndAddress $HoldingLocation * @property \FedEx\OpenShipService\SimpleType\FedExLocationType|string $HoldingLocationType + * @property string $HoldingLocationTypeForDisplay */ class CompletedHoldAtLocationDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setHoldingLocationType($holdingLocationType) $this->values['HoldingLocationType'] = $holdingLocationType; return $this; } + + /** + * Set HoldingLocationTypeForDisplay + * + * @param string $holdingLocationTypeForDisplay + * @return $this + */ + public function setHoldingLocationTypeForDisplay($holdingLocationTypeForDisplay) + { + $this->values['HoldingLocationTypeForDisplay'] = $holdingLocationTypeForDisplay; + return $this; + } } diff --git a/src/FedEx/OpenShipService/ComplexType/CompletedShipmentDetail.php b/src/FedEx/OpenShipService/ComplexType/CompletedShipmentDetail.php index 42335d79..75f8c1e1 100644 --- a/src/FedEx/OpenShipService/ComplexType/CompletedShipmentDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/CompletedShipmentDetail.php @@ -14,6 +14,7 @@ * @property \FedEx\OpenShipService\SimpleType\CarrierCodeType|string $CarrierCode * @property TrackingId $MasterTrackingId * @property string $ServiceTypeDescription + * @property ServiceDescription $ServiceDescription * @property string $PackagingDescription * @property ShipmentOperationalDetail $OperationalDetail * @property PendingShipmentAccessDetail $AccessDetail @@ -24,6 +25,7 @@ * @property CompletedShipmentConsolidationDetail $ConsolidationDetail * @property CompletedHoldAtLocationDetail $CompletedHoldAtLocationDetail * @property string $ExportComplianceStatement + * @property DocumentRequirementsDetail $DocumentRequirements * @property CompletedEtdDetail $CompletedEtdDetail * @property ShippingDocument[] $ShipmentDocuments * @property AssociatedShipmentDetail[] $AssociatedShipments @@ -77,7 +79,7 @@ public function setMasterTrackingId(TrackingId $masterTrackingId) } /** - * Set ServiceTypeDescription + * DEPRECATED as of 201801: Use serviceDescription instead. * * @param string $serviceTypeDescription * @return $this @@ -88,6 +90,18 @@ public function setServiceTypeDescription($serviceTypeDescription) return $this; } + /** + * Set ServiceDescription + * + * @param ServiceDescription $serviceDescription + * @return $this + */ + public function setServiceDescription(ServiceDescription $serviceDescription) + { + $this->values['ServiceDescription'] = $serviceDescription; + return $this; + } + /** * Set PackagingDescription * @@ -208,6 +222,18 @@ public function setExportComplianceStatement($exportComplianceStatement) return $this; } + /** + * This specifies what rules or requirements for documents are applicable for this shipment. This may identify required or prohibited documents. + * + * @param DocumentRequirementsDetail $documentRequirements + * @return $this + */ + public function setDocumentRequirements(DocumentRequirementsDetail $documentRequirements) + { + $this->values['DocumentRequirements'] = $documentRequirements; + return $this; + } + /** * Set CompletedEtdDetail * diff --git a/src/FedEx/OpenShipService/ComplexType/DocumentGenerationDetail.php b/src/FedEx/OpenShipService/ComplexType/DocumentGenerationDetail.php new file mode 100644 index 00000000..3f8040ca --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/DocumentGenerationDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property \FedEx\OpenShipService\SimpleType\EnterpriseDocumentType|string $Type + * @property int $MinimumCopiesRequired + * @property \FedEx\OpenShipService\SimpleType\RequirementType|string $Letterhead + * @property \FedEx\OpenShipService\SimpleType\RequirementType|string $ElectronicSignature + + */ +class DocumentGenerationDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentGenerationDetail'; + + /** + * Set Type + * + * @param \FedEx\OpenShipService\SimpleType\EnterpriseDocumentType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Set MinimumCopiesRequired + * + * @param int $minimumCopiesRequired + * @return $this + */ + public function setMinimumCopiesRequired($minimumCopiesRequired) + { + $this->values['MinimumCopiesRequired'] = $minimumCopiesRequired; + return $this; + } + + /** + * Set Letterhead + * + * @param \FedEx\OpenShipService\SimpleType\RequirementType|string $letterhead + * @return $this + */ + public function setLetterhead($letterhead) + { + $this->values['Letterhead'] = $letterhead; + return $this; + } + + /** + * Set ElectronicSignature + * + * @param \FedEx\OpenShipService\SimpleType\RequirementType|string $electronicSignature + * @return $this + */ + public function setElectronicSignature($electronicSignature) + { + $this->values['ElectronicSignature'] = $electronicSignature; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/DocumentRequirementsDetail.php b/src/FedEx/OpenShipService/ComplexType/DocumentRequirementsDetail.php new file mode 100644 index 00000000..8a19082e --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/DocumentRequirementsDetail.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property \FedEx\OpenShipService\SimpleType\RequiredDocumentType|string[] $RequiredDocuments + * @property DocumentGenerationDetail[] $GenerationDetails + * @property \FedEx\OpenShipService\SimpleType\EnterpriseDocumentType|string[] $ProhibitedDocuments + + */ +class DocumentRequirementsDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'DocumentRequirementsDetail'; + + /** + * Set RequiredDocuments + * + * @param \FedEx\OpenShipService\SimpleType\RequiredDocumentType[]|string[] $requiredDocuments + * @return $this + */ + public function setRequiredDocuments(array $requiredDocuments) + { + $this->values['RequiredDocuments'] = $requiredDocuments; + return $this; + } + + /** + * Set GenerationDetails + * + * @param DocumentGenerationDetail[] $generationDetails + * @return $this + */ + public function setGenerationDetails(array $generationDetails) + { + $this->values['GenerationDetails'] = $generationDetails; + return $this; + } + + /** + * Lists the documents that are not accepted by FedEx for this shipment. + * + * @param \FedEx\OpenShipService\SimpleType\EnterpriseDocumentType[]|string[] $prohibitedDocuments + * @return $this + */ + public function setProhibitedDocuments(array $prohibitedDocuments) + { + $this->values['ProhibitedDocuments'] = $prohibitedDocuments; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/EtdDetail.php b/src/FedEx/OpenShipService/ComplexType/EtdDetail.php index 27700259..5628ffa4 100644 --- a/src/FedEx/OpenShipService/ComplexType/EtdDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/EtdDetail.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage OpenShip Service * + * @property \FedEx\OpenShipService\SimpleType\EtdAttributeType|string[] $Attributes * @property \FedEx\OpenShipService\SimpleType\RequestedShippingDocumentType|string[] $RequestedDocumentCopies * @property UploadDocumentReferenceDetail[] $DocumentReferences @@ -23,6 +24,18 @@ class EtdDetail extends AbstractComplexType */ protected $name = 'EtdDetail'; + /** + * Set Attributes + * + * @param \FedEx\OpenShipService\SimpleType\EtdAttributeType[]|string[] $attributes + * @return $this + */ + public function setAttributes(array $attributes) + { + $this->values['Attributes'] = $attributes; + return $this; + } + /** * Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. * diff --git a/src/FedEx/OpenShipService/ComplexType/FreightBillOfLadingDetail.php b/src/FedEx/OpenShipService/ComplexType/FreightBillOfLadingDetail.php new file mode 100644 index 00000000..d6630477 --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/FreightBillOfLadingDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property ShippingDocumentFormat $Format + + */ +class FreightBillOfLadingDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'FreightBillOfLadingDetail'; + + /** + * Set Format + * + * @param ShippingDocumentFormat $format + * @return $this + */ + public function setFormat(ShippingDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/FreightShipmentLineItem.php b/src/FedEx/OpenShipService/ComplexType/FreightShipmentLineItem.php index f4ef129d..1e235465 100644 --- a/src/FedEx/OpenShipService/ComplexType/FreightShipmentLineItem.php +++ b/src/FedEx/OpenShipService/ComplexType/FreightShipmentLineItem.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage OpenShip Service * + * @property string $Id * @property \FedEx\OpenShipService\SimpleType\FreightClassType|string $FreightClass * @property boolean $ClassProvidedByCustomer * @property int $HandlingUnits @@ -33,6 +34,18 @@ class FreightShipmentLineItem extends AbstractComplexType */ protected $name = 'FreightShipmentLineItem'; + /** + * A unique identifier assigned to this line item. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + /** * Freight class for this line item. * diff --git a/src/FedEx/OpenShipService/ComplexType/HoldAtLocationDetail.php b/src/FedEx/OpenShipService/ComplexType/HoldAtLocationDetail.php index 68aa3e1e..058ce899 100644 --- a/src/FedEx/OpenShipService/ComplexType/HoldAtLocationDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/HoldAtLocationDetail.php @@ -13,6 +13,7 @@ * @property string $PhoneNumber * @property ContactAndAddress $LocationContactAndAddress * @property \FedEx\OpenShipService\SimpleType\FedExLocationType|string $LocationType + * @property string $LocationId */ class HoldAtLocationDetail extends AbstractComplexType @@ -59,4 +60,16 @@ public function setLocationType($locationType) $this->values['LocationType'] = $locationType; return $this; } + + /** + * Location identification (for facilities identified by an alphanumeric location code). + * + * @param string $locationId + * @return $this + */ + public function setLocationId($locationId) + { + $this->values['LocationId'] = $locationId; + return $this; + } } diff --git a/src/FedEx/OpenShipService/ComplexType/PackageSpecialServicesRequested.php b/src/FedEx/OpenShipService/ComplexType/PackageSpecialServicesRequested.php index f519cc28..35654cb5 100644 --- a/src/FedEx/OpenShipService/ComplexType/PackageSpecialServicesRequested.php +++ b/src/FedEx/OpenShipService/ComplexType/PackageSpecialServicesRequested.php @@ -13,6 +13,7 @@ * @property \FedEx\OpenShipService\SimpleType\PackageSpecialServiceType|string[] $SpecialServiceTypes * @property CodDetail $CodDetail * @property DangerousGoodsDetail $DangerousGoodsDetail + * @property BatteryClassificationDetail[] $BatteryDetails * @property Weight $DryIceWeight * @property SignatureOptionDetail $SignatureOptionDetail * @property int $PieceCountVerificationBoxCount @@ -65,6 +66,18 @@ public function setDangerousGoodsDetail(DangerousGoodsDetail $dangerousGoodsDeta return $this; } + /** + * Provides details about the batteries or cells that are contained within this specific package. + * + * @param BatteryClassificationDetail[] $batteryDetails + * @return $this + */ + public function setBatteryDetails(array $batteryDetails) + { + $this->values['BatteryDetails'] = $batteryDetails; + return $this; + } + /** * Set DryIceWeight * diff --git a/src/FedEx/OpenShipService/ComplexType/ProductName.php b/src/FedEx/OpenShipService/ComplexType/ProductName.php new file mode 100644 index 00000000..e590be7f --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/ProductName.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property string $Type + * @property string $Encoding + * @property string $Value + + */ +class ProductName extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ProductName'; + + /** + * The type of branded, translated, and/or localized name to which this value refers. + * + * @param string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * The character encoding used to represent this product name. For example, UTF-8. + * + * @param string $encoding + * @return $this + */ + public function setEncoding($encoding) + { + $this->values['Encoding'] = $encoding; + return $this; + } + + /** + * Set Value + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/RequestedPackageLineItem.php b/src/FedEx/OpenShipService/ComplexType/RequestedPackageLineItem.php index 8d254752..14a8be3b 100644 --- a/src/FedEx/OpenShipService/ComplexType/RequestedPackageLineItem.php +++ b/src/FedEx/OpenShipService/ComplexType/RequestedPackageLineItem.php @@ -19,6 +19,7 @@ * @property Weight $Weight * @property Dimensions $Dimensions * @property \FedEx\OpenShipService\SimpleType\PhysicalPackagingType|string $PhysicalPackaging + * @property AssociatedFreightLineItemDetail[] $AssociatedFreightLineItems * @property string $ItemDescription * @property string $ItemDescriptionForClearance * @property CustomerReference[] $CustomerReferences @@ -144,6 +145,18 @@ public function setPhysicalPackaging($physicalPackaging) return $this; } + /** + * Set AssociatedFreightLineItems + * + * @param AssociatedFreightLineItemDetail[] $associatedFreightLineItems + * @return $this + */ + public function setAssociatedFreightLineItems(array $associatedFreightLineItems) + { + $this->values['AssociatedFreightLineItems'] = $associatedFreightLineItems; + return $this; + } + /** * Human-readable text describing the package. * diff --git a/src/FedEx/OpenShipService/ComplexType/RequestedShipment.php b/src/FedEx/OpenShipService/ComplexType/RequestedShipment.php index c67ac1b2..7703f576 100644 --- a/src/FedEx/OpenShipService/ComplexType/RequestedShipment.php +++ b/src/FedEx/OpenShipService/ComplexType/RequestedShipment.php @@ -225,7 +225,7 @@ public function setOrigin(ContactAndAddress $origin) } /** - * Set SoldTo + * The sold-to party is used for customs clearance; for example, in support of US import customs rules. The need for this field could vary based on whether a sold-to party was specified on a consolidation. * * @param Party $soldTo * @return $this diff --git a/src/FedEx/OpenShipService/ComplexType/ServiceDescription.php b/src/FedEx/OpenShipService/ComplexType/ServiceDescription.php new file mode 100644 index 00000000..7fc9895e --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/ServiceDescription.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property \FedEx\OpenShipService\SimpleType\ServiceType|string $ServiceType + * @property string $Code + * @property ProductName[] $Names + * @property string $Description + * @property string $AstraDescription + + */ +class ServiceDescription extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ServiceDescription'; + + /** + * Set ServiceType + * + * @param \FedEx\OpenShipService\SimpleType\ServiceType|string $serviceType + * @return $this + */ + public function setServiceType($serviceType) + { + $this->values['ServiceType'] = $serviceType; + return $this; + } + + /** + * Set Code + * + * @param string $code + * @return $this + */ + public function setCode($code) + { + $this->values['Code'] = $code; + return $this; + } + + /** + * Branded, translated, and/or localized names for this service. + * + * @param ProductName[] $names + * @return $this + */ + public function setNames(array $names) + { + $this->values['Names'] = $names; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set AstraDescription + * + * @param string $astraDescription + * @return $this + */ + public function setAstraDescription($astraDescription) + { + $this->values['AstraDescription'] = $astraDescription; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/ComplexType/ShipmentConsolidationDetail.php b/src/FedEx/OpenShipService/ComplexType/ShipmentConsolidationDetail.php index 1daf00d3..2e1ca4d4 100644 --- a/src/FedEx/OpenShipService/ComplexType/ShipmentConsolidationDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/ShipmentConsolidationDetail.php @@ -17,6 +17,7 @@ * @property ConsolidationSpecialServicesRequested $SpecialServicesRequested * @property ShipmentInternationalDistributionDetail $InternationalDistributionDetail * @property ShipmentTransborderDistributionDetail $TransborderDistributionDetail + * @property RequestedDistributionLocation[] $DistributionLocations */ class ShipmentConsolidationDetail extends AbstractComplexType @@ -111,4 +112,16 @@ public function setTransborderDistributionDetail(ShipmentTransborderDistribution $this->values['TransborderDistributionDetail'] = $transborderDistributionDetail; return $this; } + + /** + * FOR INTERNAL FEDEX USE ONLY: Identifies the distribution facility where this shipment will be de-consolidated and distributed. + * + * @param RequestedDistributionLocation[] $distributionLocations + * @return $this + */ + public function setDistributionLocations(array $distributionLocations) + { + $this->values['DistributionLocations'] = $distributionLocations; + return $this; + } } diff --git a/src/FedEx/OpenShipService/ComplexType/ShippingDocumentDispositionDetail.php b/src/FedEx/OpenShipService/ComplexType/ShippingDocumentDispositionDetail.php index 7dff668c..1a6e5756 100644 --- a/src/FedEx/OpenShipService/ComplexType/ShippingDocumentDispositionDetail.php +++ b/src/FedEx/OpenShipService/ComplexType/ShippingDocumentDispositionDetail.php @@ -12,6 +12,7 @@ * * @property \FedEx\OpenShipService\SimpleType\ShippingDocumentDispositionType|string $DispositionType * @property \FedEx\OpenShipService\SimpleType\ShippingDocumentGroupingType|string $Grouping + * @property ShippingDocumentStorageDetail $StorageDetail * @property ShippingDocumentEMailDetail $EMailDetail * @property ShippingDocumentPrintDetail $PrintDetail @@ -49,6 +50,18 @@ public function setGrouping($grouping) return $this; } + /** + * Specifies how to store document images. + * + * @param ShippingDocumentStorageDetail $storageDetail + * @return $this + */ + public function setStorageDetail(ShippingDocumentStorageDetail $storageDetail) + { + $this->values['StorageDetail'] = $storageDetail; + return $this; + } + /** * Specifies how to e-mail document images. * diff --git a/src/FedEx/OpenShipService/ComplexType/ShippingDocumentSpecification.php b/src/FedEx/OpenShipService/ComplexType/ShippingDocumentSpecification.php index 202dcd2d..7604804c 100644 --- a/src/FedEx/OpenShipService/ComplexType/ShippingDocumentSpecification.php +++ b/src/FedEx/OpenShipService/ComplexType/ShippingDocumentSpecification.php @@ -21,6 +21,7 @@ * @property Op900Detail $Op900Detail * @property DangerousGoodsShippersDeclarationDetail $DangerousGoodsShippersDeclarationDetail * @property FreightAddressLabelDetail $FreightAddressLabelDetail + * @property FreightBillOfLadingDetail $FreightBillOfLadingDetail * @property ReturnInstructionsDetail $ReturnInstructionsDetail */ @@ -165,6 +166,18 @@ public function setFreightAddressLabelDetail(FreightAddressLabelDetail $freightA return $this; } + /** + * Set FreightBillOfLadingDetail + * + * @param FreightBillOfLadingDetail $freightBillOfLadingDetail + * @return $this + */ + public function setFreightBillOfLadingDetail(FreightBillOfLadingDetail $freightBillOfLadingDetail) + { + $this->values['FreightBillOfLadingDetail'] = $freightBillOfLadingDetail; + return $this; + } + /** * Specifies the production of the return instructions document. * diff --git a/src/FedEx/OpenShipService/ComplexType/ShippingDocumentStorageDetail.php b/src/FedEx/OpenShipService/ComplexType/ShippingDocumentStorageDetail.php new file mode 100644 index 00000000..0ad702df --- /dev/null +++ b/src/FedEx/OpenShipService/ComplexType/ShippingDocumentStorageDetail.php @@ -0,0 +1,75 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + * + * @property \FedEx\OpenShipService\SimpleType\ShippingDocumentStorageDetailType|string $Type + * @property string $FilePath + * @property \FedEx\OpenShipService\SimpleType\ShippingDocumentNamingType|string $FileNaming + * @property string $FileSuffix + + */ +class ShippingDocumentStorageDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ShippingDocumentStorageDetail'; + + /** + * Indicates the mechanism by which a shipping document will be stored for later retrieval. + * + * @param \FedEx\OpenShipService\SimpleType\ShippingDocumentStorageDetailType|string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * Provides the path to be used for STORED or DEFERRED documents. + * + * @param string $filePath + * @return $this + */ + public function setFilePath($filePath) + { + $this->values['FilePath'] = $filePath; + return $this; + } + + /** + * Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + * + * @param \FedEx\OpenShipService\SimpleType\ShippingDocumentNamingType|string $fileNaming + * @return $this + */ + public function setFileNaming($fileNaming) + { + $this->values['FileNaming'] = $fileNaming; + return $this; + } + + /** + * Suffix to be placed at the end of the file name; required on some platforms to determine file type. + * + * @param string $fileSuffix + * @return $this + */ + public function setFileSuffix($fileSuffix) + { + $this->values['FileSuffix'] = $fileSuffix; + return $this; + } +} diff --git a/src/FedEx/OpenShipService/Request.php b/src/FedEx/OpenShipService/Request.php index 979515d1..43542cad 100644 --- a/src/FedEx/OpenShipService/Request.php +++ b/src/FedEx/OpenShipService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/openship'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/openship'; - protected static $wsdlFileName = 'OpenShipService_v11.wsdl'; + protected static $wsdlFileName = 'OpenshipService_v15.wsdl'; /** * Sends the ModifyConsolidationRequest and returns the response diff --git a/src/FedEx/OpenShipService/SimpleType/BatteryMaterialType.php b/src/FedEx/OpenShipService/SimpleType/BatteryMaterialType.php new file mode 100644 index 00000000..9d1a3822 --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/BatteryMaterialType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class BatteryMaterialType extends AbstractSimpleType +{ + const _LITHIUM_ION = 'LITHIUM_ION'; + const _LITHIUM_METAL = 'LITHIUM_METAL'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/BatteryPackingType.php b/src/FedEx/OpenShipService/SimpleType/BatteryPackingType.php new file mode 100644 index 00000000..80a8ab63 --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/BatteryPackingType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class BatteryPackingType extends AbstractSimpleType +{ + const _CONTAINED_IN_EQUIPMENT = 'CONTAINED_IN_EQUIPMENT'; + const _PACKED_WITH_EQUIPMENT = 'PACKED_WITH_EQUIPMENT'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/BatteryRegulatorySubType.php b/src/FedEx/OpenShipService/SimpleType/BatteryRegulatorySubType.php new file mode 100644 index 00000000..e501a5bd --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/BatteryRegulatorySubType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class BatteryRegulatorySubType extends AbstractSimpleType +{ + const _IATA_SECTION_II = 'IATA_SECTION_II'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/CompletedEtdType.php b/src/FedEx/OpenShipService/SimpleType/CompletedEtdType.php new file mode 100644 index 00000000..695a5d87 --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/CompletedEtdType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class CompletedEtdType extends AbstractSimpleType +{ + const _ELECTRONIC_DOCUMENTS_ONLY = 'ELECTRONIC_DOCUMENTS_ONLY'; + const _ELECTRONIC_DOCUMENTS_WITH_ORIGINALS = 'ELECTRONIC_DOCUMENTS_WITH_ORIGINALS'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/ConsolidationType.php b/src/FedEx/OpenShipService/SimpleType/ConsolidationType.php index bb827efb..4921d6a0 100644 --- a/src/FedEx/OpenShipService/SimpleType/ConsolidationType.php +++ b/src/FedEx/OpenShipService/SimpleType/ConsolidationType.php @@ -14,7 +14,6 @@ class ConsolidationType extends AbstractSimpleType { const _INTERNATIONAL_DISTRIBUTION_FREIGHT = 'INTERNATIONAL_DISTRIBUTION_FREIGHT'; const _INTERNATIONAL_ECONOMY_DISTRIBUTION = 'INTERNATIONAL_ECONOMY_DISTRIBUTION'; - const _INTERNATIONAL_GROUND_DIRECT_DISTRIBUTION = 'INTERNATIONAL_GROUND_DIRECT_DISTRIBUTION'; const _INTERNATIONAL_GROUND_DISTRIBUTION = 'INTERNATIONAL_GROUND_DISTRIBUTION'; const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; const _TRANSBORDER_DISTRIBUTION = 'TRANSBORDER_DISTRIBUTION'; diff --git a/src/FedEx/OpenShipService/SimpleType/CustomerReferenceType.php b/src/FedEx/OpenShipService/SimpleType/CustomerReferenceType.php index 019c4cb1..12125bb2 100644 --- a/src/FedEx/OpenShipService/SimpleType/CustomerReferenceType.php +++ b/src/FedEx/OpenShipService/SimpleType/CustomerReferenceType.php @@ -12,14 +12,11 @@ */ class CustomerReferenceType extends AbstractSimpleType { - const _BILL_OF_LADING = 'BILL_OF_LADING'; const _CUSTOMER_REFERENCE = 'CUSTOMER_REFERENCE'; const _DEPARTMENT_NUMBER = 'DEPARTMENT_NUMBER'; - const _ELECTRONIC_PRODUCT_CODE = 'ELECTRONIC_PRODUCT_CODE'; const _INTRACOUNTRY_REGULATORY_REFERENCE = 'INTRACOUNTRY_REGULATORY_REFERENCE'; const _INVOICE_NUMBER = 'INVOICE_NUMBER'; const _P_O_NUMBER = 'P_O_NUMBER'; const _RMA_ASSOCIATION = 'RMA_ASSOCIATION'; const _SHIPMENT_INTEGRITY = 'SHIPMENT_INTEGRITY'; - const _STORE_NUMBER = 'STORE_NUMBER'; } diff --git a/src/FedEx/OpenShipService/SimpleType/EnterpriseDocumentType.php b/src/FedEx/OpenShipService/SimpleType/EnterpriseDocumentType.php new file mode 100644 index 00000000..c2e4fb6b --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/EnterpriseDocumentType.php @@ -0,0 +1,20 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class EnterpriseDocumentType extends AbstractSimpleType +{ + const _AIR_WAYBILL = 'AIR_WAYBILL'; + const _CERTIFICATE_OF_ORIGIN = 'CERTIFICATE_OF_ORIGIN'; + const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/EtdAttributeType.php b/src/FedEx/OpenShipService/SimpleType/EtdAttributeType.php new file mode 100644 index 00000000..ffb4b31f --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/EtdAttributeType.php @@ -0,0 +1,16 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class EtdAttributeType extends AbstractSimpleType +{ + const _POST_SHIPMENT_UPLOAD_REQUESTED = 'POST_SHIPMENT_UPLOAD_REQUESTED'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/FedExLocationType.php b/src/FedEx/OpenShipService/SimpleType/FedExLocationType.php index 427f117d..12b7e258 100644 --- a/src/FedEx/OpenShipService/SimpleType/FedExLocationType.php +++ b/src/FedEx/OpenShipService/SimpleType/FedExLocationType.php @@ -12,12 +12,16 @@ */ class FedExLocationType extends AbstractSimpleType { + const _FEDEX_AUTHORIZED_SHIP_CENTER = 'FEDEX_AUTHORIZED_SHIP_CENTER'; const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; const _FEDEX_FACILITY = 'FEDEX_FACILITY'; const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_ONSITE = 'FEDEX_ONSITE'; + const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SHIP_AND_GET = 'FEDEX_SHIP_AND_GET'; const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/OpenShipService/SimpleType/LabelFormatType.php b/src/FedEx/OpenShipService/SimpleType/LabelFormatType.php index 72134c87..844dc138 100644 --- a/src/FedEx/OpenShipService/SimpleType/LabelFormatType.php +++ b/src/FedEx/OpenShipService/SimpleType/LabelFormatType.php @@ -13,7 +13,5 @@ class LabelFormatType extends AbstractSimpleType { const _COMMON2D = 'COMMON2D'; - const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _LABEL_DATA_ONLY = 'LABEL_DATA_ONLY'; - const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/OpenShipService/SimpleType/LabelStockType.php b/src/FedEx/OpenShipService/SimpleType/LabelStockType.php index f049ad4a..13b32980 100644 --- a/src/FedEx/OpenShipService/SimpleType/LabelStockType.php +++ b/src/FedEx/OpenShipService/SimpleType/LabelStockType.php @@ -13,6 +13,7 @@ class LabelStockType extends AbstractSimpleType { const _PAPER_4X6 = 'PAPER_4X6'; + const _PAPER_4X6POINT75 = 'PAPER_4X6.75'; const _PAPER_4X8 = 'PAPER_4X8'; const _PAPER_4X9 = 'PAPER_4X9'; const _PAPER_7X4POINT75 = 'PAPER_7X4.75'; @@ -20,9 +21,11 @@ class LabelStockType extends AbstractSimpleType const _PAPER_8POINT5X11_TOP_HALF_LABEL = 'PAPER_8.5X11_TOP_HALF_LABEL'; const _PAPER_LETTER = 'PAPER_LETTER'; const _STOCK_4X6 = 'STOCK_4X6'; + const _STOCK_4X6POINT75 = 'STOCK_4X6.75'; const _STOCK_4X6POINT75_LEADING_DOC_TAB = 'STOCK_4X6.75_LEADING_DOC_TAB'; const _STOCK_4X6POINT75_TRAILING_DOC_TAB = 'STOCK_4X6.75_TRAILING_DOC_TAB'; const _STOCK_4X8 = 'STOCK_4X8'; + const _STOCK_4X9 = 'STOCK_4X9'; const _STOCK_4X9_LEADING_DOC_TAB = 'STOCK_4X9_LEADING_DOC_TAB'; const _STOCK_4X9_TRAILING_DOC_TAB = 'STOCK_4X9_TRAILING_DOC_TAB'; } diff --git a/src/FedEx/OpenShipService/SimpleType/PackageSpecialServiceType.php b/src/FedEx/OpenShipService/SimpleType/PackageSpecialServiceType.php index d6a0e9e8..630b5759 100644 --- a/src/FedEx/OpenShipService/SimpleType/PackageSpecialServiceType.php +++ b/src/FedEx/OpenShipService/SimpleType/PackageSpecialServiceType.php @@ -14,6 +14,7 @@ class PackageSpecialServiceType extends AbstractSimpleType { const _ALCOHOL = 'ALCOHOL'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; + const _BATTERY = 'BATTERY'; const _COD = 'COD'; const _DANGEROUS_GOODS = 'DANGEROUS_GOODS'; const _DRY_ICE = 'DRY_ICE'; diff --git a/src/FedEx/OpenShipService/SimpleType/RegulatoryControlType.php b/src/FedEx/OpenShipService/SimpleType/RegulatoryControlType.php index aab4d9e1..df67e8d4 100644 --- a/src/FedEx/OpenShipService/SimpleType/RegulatoryControlType.php +++ b/src/FedEx/OpenShipService/SimpleType/RegulatoryControlType.php @@ -12,8 +12,8 @@ */ class RegulatoryControlType extends AbstractSimpleType { - const _EU_CIRCULATION = 'EU_CIRCULATION'; const _FOOD_OR_PERISHABLE = 'FOOD_OR_PERISHABLE'; const _NAFTA = 'NAFTA'; const _NOT_APPLICABLE_FOR_LOW_CUSTOMS_VALUE_EXCEPTION = 'NOT_APPLICABLE_FOR_LOW_CUSTOMS_VALUE_EXCEPTION'; + const _NOT_IN_FREE_CIRCULATION = 'NOT_IN_FREE_CIRCULATION'; } diff --git a/src/FedEx/OpenShipService/SimpleType/RequestedShippingDocumentType.php b/src/FedEx/OpenShipService/SimpleType/RequestedShippingDocumentType.php index ca9fd3b7..65a208fb 100644 --- a/src/FedEx/OpenShipService/SimpleType/RequestedShippingDocumentType.php +++ b/src/FedEx/OpenShipService/SimpleType/RequestedShippingDocumentType.php @@ -19,11 +19,12 @@ class RequestedShippingDocumentType extends AbstractSimpleType const _CUSTOM_SHIPMENT_DOCUMENT = 'CUSTOM_SHIPMENT_DOCUMENT'; const _DANGEROUS_GOODS_SHIPPERS_DECLARATION = 'DANGEROUS_GOODS_SHIPPERS_DECLARATION'; const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; - const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; + const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _LABEL = 'LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; const _OP_900 = 'OP_900'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; const _RETURN_INSTRUCTIONS = 'RETURN_INSTRUCTIONS'; + const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/OpenShipService/SimpleType/RequiredDocumentType.php b/src/FedEx/OpenShipService/SimpleType/RequiredDocumentType.php new file mode 100644 index 00000000..60c16fdb --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/RequiredDocumentType.php @@ -0,0 +1,21 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class RequiredDocumentType extends AbstractSimpleType +{ + const _AIR_WAYBILL = 'AIR_WAYBILL'; + const _CERTIFICATE_OF_ORIGIN = 'CERTIFICATE_OF_ORIGIN'; + const _COMMERCIAL_INVOICE = 'COMMERCIAL_INVOICE'; + const _COMMERCIAL_OR_PRO_FORMA_INVOICE = 'COMMERCIAL_OR_PRO_FORMA_INVOICE'; + const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; + const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/RequirementType.php b/src/FedEx/OpenShipService/SimpleType/RequirementType.php new file mode 100644 index 00000000..57689a0b --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/RequirementType.php @@ -0,0 +1,18 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class RequirementType extends AbstractSimpleType +{ + const _OPTIONAL = 'OPTIONAL'; + const _PROHIBITED = 'PROHIBITED'; + const _REQUIRED = 'REQUIRED'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/ReturnedRateType.php b/src/FedEx/OpenShipService/SimpleType/ReturnedRateType.php index 0d277fd7..d2a5ccf4 100644 --- a/src/FedEx/OpenShipService/SimpleType/ReturnedRateType.php +++ b/src/FedEx/OpenShipService/SimpleType/ReturnedRateType.php @@ -13,6 +13,7 @@ class ReturnedRateType extends AbstractSimpleType { const _INCENTIVE = 'INCENTIVE'; + const _NEGOTIATED = 'NEGOTIATED'; const _PAYOR_ACCOUNT_PACKAGE = 'PAYOR_ACCOUNT_PACKAGE'; const _PAYOR_ACCOUNT_SHIPMENT = 'PAYOR_ACCOUNT_SHIPMENT'; const _PAYOR_LIST_PACKAGE = 'PAYOR_LIST_PACKAGE'; @@ -21,4 +22,5 @@ class ReturnedRateType extends AbstractSimpleType const _PREFERRED_ACCOUNT_SHIPMENT = 'PREFERRED_ACCOUNT_SHIPMENT'; const _PREFERRED_LIST_PACKAGE = 'PREFERRED_LIST_PACKAGE'; const _PREFERRED_LIST_SHIPMENT = 'PREFERRED_LIST_SHIPMENT'; + const _PREFERRED_NEGOTIATED = 'PREFERRED_NEGOTIATED'; } diff --git a/src/FedEx/OpenShipService/SimpleType/ReturnedShippingDocumentType.php b/src/FedEx/OpenShipService/SimpleType/ReturnedShippingDocumentType.php index 625ee785..a3e2d202 100644 --- a/src/FedEx/OpenShipService/SimpleType/ReturnedShippingDocumentType.php +++ b/src/FedEx/OpenShipService/SimpleType/ReturnedShippingDocumentType.php @@ -26,6 +26,7 @@ class ReturnedShippingDocumentType extends AbstractSimpleType const _DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_LABEL = 'DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_LABEL'; const _ETD_LABEL = 'ETD_LABEL'; const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; + const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _GROUND_BARCODE = 'GROUND_BARCODE'; @@ -39,4 +40,5 @@ class ReturnedShippingDocumentType extends AbstractSimpleType const _RETURN_INSTRUCTIONS = 'RETURN_INSTRUCTIONS'; const _TERMS_AND_CONDITIONS = 'TERMS_AND_CONDITIONS'; const _USPS_BARCODE = 'USPS_BARCODE'; + const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/OpenShipService/SimpleType/ServiceCategoryType.php b/src/FedEx/OpenShipService/SimpleType/ServiceCategoryType.php index c2913ae1..d9530fd4 100644 --- a/src/FedEx/OpenShipService/SimpleType/ServiceCategoryType.php +++ b/src/FedEx/OpenShipService/SimpleType/ServiceCategoryType.php @@ -14,4 +14,5 @@ class ServiceCategoryType extends AbstractSimpleType { const _EXPRESS_FREIGHT = 'EXPRESS_FREIGHT'; const _EXPRESS_PARCEL = 'EXPRESS_PARCEL'; + const _GROUND_HOME_DELIVERY = 'GROUND_HOME_DELIVERY'; } diff --git a/src/FedEx/OpenShipService/SimpleType/ServiceType.php b/src/FedEx/OpenShipService/SimpleType/ServiceType.php index 428a6076..85672807 100644 --- a/src/FedEx/OpenShipService/SimpleType/ServiceType.php +++ b/src/FedEx/OpenShipService/SimpleType/ServiceType.php @@ -38,6 +38,7 @@ class ServiceType extends AbstractSimpleType const _INTERNATIONAL_FIRST = 'INTERNATIONAL_FIRST'; const _INTERNATIONAL_PRIORITY = 'INTERNATIONAL_PRIORITY'; const _INTERNATIONAL_PRIORITY_DISTRIBUTION = 'INTERNATIONAL_PRIORITY_DISTRIBUTION'; + const _INTERNATIONAL_PRIORITY_EXPRESS = 'INTERNATIONAL_PRIORITY_EXPRESS'; const _INTERNATIONAL_PRIORITY_FREIGHT = 'INTERNATIONAL_PRIORITY_FREIGHT'; const _PRIORITY_OVERNIGHT = 'PRIORITY_OVERNIGHT'; const _SAME_DAY = 'SAME_DAY'; diff --git a/src/FedEx/OpenShipService/SimpleType/ShipmentProcessingOptionType.php b/src/FedEx/OpenShipService/SimpleType/ShipmentProcessingOptionType.php index a53b5d9a..6fda29e9 100644 --- a/src/FedEx/OpenShipService/SimpleType/ShipmentProcessingOptionType.php +++ b/src/FedEx/OpenShipService/SimpleType/ShipmentProcessingOptionType.php @@ -13,4 +13,5 @@ class ShipmentProcessingOptionType extends AbstractSimpleType { const _PACKAGE_LEVEL_COMMODITIES = 'PACKAGE_LEVEL_COMMODITIES'; + const _PRE_ETD_ENHANCEMENTS = 'PRE_ETD_ENHANCEMENTS'; } diff --git a/src/FedEx/OpenShipService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/OpenShipService/SimpleType/ShipmentSpecialServiceType.php index 39c2d5f9..e818e24b 100644 --- a/src/FedEx/OpenShipService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/OpenShipService/SimpleType/ShipmentSpecialServiceType.php @@ -23,6 +23,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _EAST_COAST_SPECIAL = 'EAST_COAST_SPECIAL'; const _ELECTRONIC_TRADE_DOCUMENTS = 'ELECTRONIC_TRADE_DOCUMENTS'; const _EVENT_NOTIFICATION = 'EVENT_NOTIFICATION'; + const _EXCLUDE_FROM_CONSOLIDATION = 'EXCLUDE_FROM_CONSOLIDATION'; const _EXTREME_LENGTH = 'EXTREME_LENGTH'; const _FEDEX_ONE_RATE = 'FEDEX_ONE_RATE'; const _FOOD = 'FOOD'; @@ -39,6 +40,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; const _POISON = 'POISON'; diff --git a/src/FedEx/OpenShipService/SimpleType/ShippingDocumentDispositionType.php b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentDispositionType.php index a7b32a86..00a0cbd6 100644 --- a/src/FedEx/OpenShipService/SimpleType/ShippingDocumentDispositionType.php +++ b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentDispositionType.php @@ -12,8 +12,6 @@ */ class ShippingDocumentDispositionType extends AbstractSimpleType { - const _CONFIRMED = 'CONFIRMED'; - const _DEFERRED_RETURNED = 'DEFERRED_RETURNED'; const _DEFERRED_STORED = 'DEFERRED_STORED'; const _EMAILED = 'EMAILED'; const _QUEUED = 'QUEUED'; diff --git a/src/FedEx/OpenShipService/SimpleType/ShippingDocumentImageType.php b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentImageType.php index 9a537f33..e0fa65ea 100644 --- a/src/FedEx/OpenShipService/SimpleType/ShippingDocumentImageType.php +++ b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentImageType.php @@ -13,7 +13,6 @@ class ShippingDocumentImageType extends AbstractSimpleType { const _DOC = 'DOC'; - const _DPL = 'DPL'; const _EPL2 = 'EPL2'; const _PDF = 'PDF'; const _PNG = 'PNG'; diff --git a/src/FedEx/OpenShipService/SimpleType/ShippingDocumentNamingType.php b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentNamingType.php new file mode 100644 index 00000000..1a5a93e2 --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentNamingType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class ShippingDocumentNamingType extends AbstractSimpleType +{ + const _FAST = 'FAST'; + const _LEGACY_FXRS = 'LEGACY_FXRS'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/ShippingDocumentStorageDetailType.php b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentStorageDetailType.php new file mode 100644 index 00000000..19ceb100 --- /dev/null +++ b/src/FedEx/OpenShipService/SimpleType/ShippingDocumentStorageDetailType.php @@ -0,0 +1,17 @@ + + * @package PHP FedEx API wrapper + * @subpackage OpenShip Service + */ +class ShippingDocumentStorageDetailType extends AbstractSimpleType +{ + const _ASYNC_SERVICE = 'ASYNC_SERVICE'; + const _LOCAL_FILE_SYSTEM = 'LOCAL_FILE_SYSTEM'; +} diff --git a/src/FedEx/OpenShipService/SimpleType/SurchargeType.php b/src/FedEx/OpenShipService/SimpleType/SurchargeType.php index 3999974d..ec25caed 100644 --- a/src/FedEx/OpenShipService/SimpleType/SurchargeType.php +++ b/src/FedEx/OpenShipService/SimpleType/SurchargeType.php @@ -12,7 +12,9 @@ */ class SurchargeType extends AbstractSimpleType { + const _ACCOUNT_NUMBER_PROCESSING_FEE = 'ACCOUNT_NUMBER_PROCESSING_FEE'; const _ADDITIONAL_HANDLING = 'ADDITIONAL_HANDLING'; + const _ADDRESS_CORRECTION = 'ADDRESS_CORRECTION'; const _ANCILLARY_FEE = 'ANCILLARY_FEE'; const _APPOINTMENT_DELIVERY = 'APPOINTMENT_DELIVERY'; const _BROKER_SELECT_OPTION = 'BROKER_SELECT_OPTION'; @@ -57,11 +59,13 @@ class SurchargeType extends AbstractSimpleType const _NON_MACHINABLE = 'NON_MACHINABLE'; const _OFFSHORE = 'OFFSHORE'; const _ON_CALL_PICKUP = 'ON_CALL_PICKUP'; + const _ON_DEMAND_CARE = 'ON_DEMAND_CARE'; const _OTHER = 'OTHER'; const _OUT_OF_DELIVERY_AREA = 'OUT_OF_DELIVERY_AREA'; const _OUT_OF_PICKUP_AREA = 'OUT_OF_PICKUP_AREA'; const _OVERSIZE = 'OVERSIZE'; const _OVER_DIMENSION = 'OVER_DIMENSION'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; const _PRE_DELIVERY_NOTIFICATION = 'PRE_DELIVERY_NOTIFICATION'; const _PRIORITY_ALERT = 'PRIORITY_ALERT'; diff --git a/src/FedEx/OpenShipService/SimpleType/UploadDocumentIdProducer.php b/src/FedEx/OpenShipService/SimpleType/UploadDocumentIdProducer.php index da0af966..7d67f717 100644 --- a/src/FedEx/OpenShipService/SimpleType/UploadDocumentIdProducer.php +++ b/src/FedEx/OpenShipService/SimpleType/UploadDocumentIdProducer.php @@ -13,10 +13,4 @@ class UploadDocumentIdProducer extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; - const _FEDEX_CAFE = 'FEDEX_CAFE'; - const _FEDEX_CSHP = 'FEDEX_CSHP'; - const _FEDEX_FXRS = 'FEDEX_FXRS'; - const _FEDEX_GSMW = 'FEDEX_GSMW'; - const _FEDEX_GTM = 'FEDEX_GTM'; - const _FEDEX_INET = 'FEDEX_INET'; } diff --git a/src/FedEx/OpenShipService/SimpleType/UploadDocumentProducerType.php b/src/FedEx/OpenShipService/SimpleType/UploadDocumentProducerType.php index 0183bf92..13e08515 100644 --- a/src/FedEx/OpenShipService/SimpleType/UploadDocumentProducerType.php +++ b/src/FedEx/OpenShipService/SimpleType/UploadDocumentProducerType.php @@ -13,8 +13,4 @@ class UploadDocumentProducerType extends AbstractSimpleType { const _CUSTOMER = 'CUSTOMER'; - const _FEDEX_CLS = 'FEDEX_CLS'; - const _FEDEX_GSMW = 'FEDEX_GSMW'; - const _FEDEX_GTM = 'FEDEX_GTM'; - const _OTHER = 'OTHER'; } diff --git a/src/FedEx/_wsdl/OpenShipService_v11.wsdl b/src/FedEx/_wsdl/OpenshipService_v15.wsdl similarity index 96% rename from src/FedEx/_wsdl/OpenShipService_v11.wsdl rename to src/FedEx/_wsdl/OpenshipService_v15.wsdl index 7a1b3eeb..27695cd7 100755 --- a/src/FedEx/_wsdl/OpenShipService_v11.wsdl +++ b/src/FedEx/_wsdl/OpenshipService_v15.wsdl @@ -1,6 +1,6 @@ - + - + @@ -192,6 +192,11 @@ Indicates whether this address residential (as opposed to commercial). + + + The geographic coordinates cooresponding to this address. + + @@ -255,6 +260,15 @@ + + + + + A freight line item identifier referring to a freight shipment line item that describes goods contained within this handling unit. + + + + @@ -372,6 +386,54 @@ + + + Describes attributes of a battery or cell that are used for classification purposes. Typically this structure would be used to allow customers to declare batteries or cells for which full dangerous goods documentation and procedures are not required. + + + + + Describes the material composition of the battery or cell. + + + + + Describes the packing arrangement of the battery or cell with respect to other items within the same package. + + + + + A regulation specific classification for the battery or cell. + + + + + + + Describes the material composition of a battery or cell. + + + + + + + + + Describes the packing arrangement of a battery or cell with respect to other items within the same package. + + + + + + + + + A regulation specific classification for a battery or cell. + + + + + Each instance of this data type represents a barcode whose content must be represented as binary data (i.e. not ASCII text). @@ -678,9 +740,17 @@ - + + + FedEx internal commodity identifier + + - + + + A free-form description of the commodity, which could be used for customs clearance documentation. + + @@ -746,9 +816,16 @@ The identifier for all clearance documents associated with this shipment. + + + + + + + Completed package-level hazardous commodity information for a single package. @@ -818,6 +895,7 @@ Identifies the type of FedEx location. + @@ -888,7 +966,12 @@ - + + + DEPRECATED as of 201801: Use serviceDescription instead. + + + @@ -927,6 +1010,11 @@ Returns any defaults or updates applied to RequestedShipment.exportDetail.exportComplianceStatement. + + + This specifies what rules or requirements for documents are applicable for this shipment. This may identify required or prohibited documents. + + @@ -1412,7 +1500,6 @@ - @@ -1887,16 +1974,13 @@ - - - @@ -2468,6 +2552,25 @@ + + + + + + + + + + + + + + + Lists the documents that are not accepted by FedEx for this shipment. + + + + @@ -2602,11 +2705,29 @@ + + + This identifies some of the document types recognized by Enterprise Document Management Service. + + + + + + + + + + + + + + Electronic Trade document references used with the ETD special service. + Indicates the types of shipping documents produced for the shipper by FedEx (see ShippingDocumentSpecification) which should be copied back to the shipper in the shipment result data. @@ -2667,13 +2788,17 @@ Identifies a kind of FedEx facility. + + + + @@ -2763,6 +2888,11 @@ + + + + + @@ -2983,6 +3113,11 @@ Description of an individual commodity or class of content in a shipment. + + + A unique identifier assigned to this line item. + + Freight class for this line item. @@ -3423,6 +3558,11 @@ Type of facility at which package/shipment is to be held. + + + Location identification (for facilities identified by an alphanumeric location code). + + @@ -3516,9 +3656,7 @@ - - @@ -3583,6 +3721,7 @@ + @@ -3590,9 +3729,11 @@ + + @@ -4271,6 +4412,7 @@ + @@ -4295,6 +4437,11 @@ + + + Provides details about the batteries or cells that are contained within this specific package. + + @@ -4530,6 +4677,21 @@ + + + + + The type of branded, translated, and/or localized name to which this value refers. + + + + + The character encoding used to represent this product name. For example, UTF-8. + + + + + @@ -4755,10 +4917,10 @@ - + @@ -4995,6 +5157,7 @@ Provides additional detail on how the customer has physically packaged this item. As of June 2009, required for packages moving under international and SmartPost services. + Human-readable text describing the package. @@ -5051,7 +5214,11 @@ Physical starting address for the shipment, if different from shipper's address. - + + + The sold-to party is used for customs clearance; for example, in support of US import customs rules. The need for this field could vary based on whether a sold-to party was specified on a consolidation. + + @@ -5143,13 +5310,34 @@ - + + + + + + + This identifies the document types that can be required. This can also indicate when either a COMMERCIAL_INVOICE or a PRO_FORMA_INVOICE is required through the COMMERCIAL_OR_PRO_FORMA_INVOICE option. + + + + + + + + + + + + + + + @@ -5351,6 +5539,7 @@ + @@ -5359,6 +5548,7 @@ + @@ -5377,6 +5567,7 @@ + @@ -5390,6 +5581,7 @@ + @@ -5423,8 +5615,22 @@ + + + + + + + + Branded, translated, and/or localized names for this service. + + + + + + @@ -5453,6 +5659,7 @@ + @@ -5519,6 +5726,11 @@ Specifies attributes of a shipment within a transborder distribution. + + + FOR INTERNAL FEDEX USE ONLY: Identifies the distribution facility where this shipment will be de-consolidated and distributed. + + @@ -5863,6 +6075,7 @@ + @@ -6062,6 +6275,7 @@ + @@ -6078,6 +6292,7 @@ + @@ -6204,6 +6419,11 @@ Specifies how to organize all documents of this type. + + + Specifies how to store document images. + + Specifies how to e-mail document images. @@ -6221,8 +6441,6 @@ Specifies how to return a shipping document to the caller. - - @@ -6325,7 +6543,6 @@ - @@ -6334,6 +6551,15 @@ + + + Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + + + + + + A single part of a shipping document, such as one page of a multiple-page document whose format requires a separate image per page. @@ -6403,6 +6629,7 @@ Specifies the production of the OP-900 document for hazardous materials. + Specifies the production of the return instructions document. @@ -6429,6 +6656,39 @@ + + + Specifies how to store shipping documents. + + + + + Indicates the mechanism by which a shipping document will be stored for later retrieval. + + + + + Provides the path to be used for STORED or DEFERRED documents. + + + + + Identifies the convention by which file names are constructed for STORED or DEFERRED documents. + + + + + Suffix to be placed at the end of the file name; required on some platforms to determine file type. + + + + + + + + + + @@ -6575,7 +6835,9 @@ + + @@ -6620,11 +6882,13 @@ + + @@ -6842,21 +7106,11 @@ - - - - - - - - - - @@ -7112,7 +7366,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -7376,7 +7630,7 @@ - + @@ -7385,7 +7639,7 @@ - + @@ -7394,7 +7648,7 @@ - + @@ -7403,7 +7657,7 @@ - + @@ -7412,7 +7666,7 @@ - + @@ -7421,7 +7675,7 @@ - + @@ -7430,7 +7684,7 @@ - + @@ -7439,7 +7693,7 @@ - + @@ -7448,7 +7702,7 @@ - + @@ -7457,7 +7711,7 @@ - + @@ -7466,7 +7720,7 @@ - + @@ -7475,7 +7729,7 @@ - + @@ -7484,7 +7738,7 @@ - + @@ -7493,7 +7747,7 @@ - + @@ -7502,7 +7756,7 @@ - + @@ -7511,7 +7765,7 @@ - + @@ -7520,7 +7774,7 @@ - + @@ -7529,7 +7783,7 @@ - + @@ -7538,7 +7792,7 @@ - + @@ -7547,7 +7801,7 @@ - + @@ -7556,7 +7810,7 @@ - + @@ -7565,7 +7819,7 @@ - + @@ -7574,7 +7828,7 @@ - + @@ -7583,7 +7837,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 5e12728f..5565e8df 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -292,7 +292,7 @@ protected function execute(InputInterface $input, OutputInterface $output) /* * Open Ship Service (v11) */ - $wsdlPath = $fedexSrcDir . '/_wsdl/OpenShipService_v11.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/OpenshipService_v15.wsdl'; $baseNamespace = 'FedEx\OpenShipService'; $subPackageName = 'OpenShip Service'; From 390c2ace6d10f8a587d30ea31180141629ab56d8 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:30:01 -0600 Subject: [PATCH 17/33] Updated Pickup Service (v17) --- src/FedEx/PickupService/Request.php | 2 +- .../SimpleType/FedExLocationType.php | 2 ++ .../SimpleType/ShipmentSpecialServiceType.php | 1 + ...ervice_v15.wsdl => PickupService_v17.wsdl} | 19 ++++++++++++------- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 5 files changed, 17 insertions(+), 9 deletions(-) rename src/FedEx/_wsdl/{PickupService_v15.wsdl => PickupService_v17.wsdl} (99%) diff --git a/src/FedEx/PickupService/Request.php b/src/FedEx/PickupService/Request.php index f07a8f48..c3e39c3e 100644 --- a/src/FedEx/PickupService/Request.php +++ b/src/FedEx/PickupService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/pickup'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/pickup'; - protected static $wsdlFileName = 'PickupService_v15.wsdl'; + protected static $wsdlFileName = 'PickupService_v17.wsdl'; /** * Sends the PickupAvailabilityRequest and returns the response diff --git a/src/FedEx/PickupService/SimpleType/FedExLocationType.php b/src/FedEx/PickupService/SimpleType/FedExLocationType.php index 5a30403d..8403865f 100644 --- a/src/FedEx/PickupService/SimpleType/FedExLocationType.php +++ b/src/FedEx/PickupService/SimpleType/FedExLocationType.php @@ -19,7 +19,9 @@ class FedExLocationType extends AbstractSimpleType const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_ONSITE = 'FEDEX_ONSITE'; const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SHIP_AND_GET = 'FEDEX_SHIP_AND_GET'; const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php index 0cdd8a13..52bf603b 100644 --- a/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/PickupService/SimpleType/ShipmentSpecialServiceType.php @@ -59,6 +59,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; const _MARKING_OR_TAGGING = 'MARKING_OR_TAGGING'; const _NON_BUSINESS_TIME = 'NON_BUSINESS_TIME'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PALLETS_PROVIDED = 'PALLETS_PROVIDED'; const _PALLET_SHRINKWRAP = 'PALLET_SHRINKWRAP'; const _PALLET_WEIGHT_ALLOWANCE = 'PALLET_WEIGHT_ALLOWANCE'; diff --git a/src/FedEx/_wsdl/PickupService_v15.wsdl b/src/FedEx/_wsdl/PickupService_v17.wsdl similarity index 99% rename from src/FedEx/_wsdl/PickupService_v15.wsdl rename to src/FedEx/_wsdl/PickupService_v17.wsdl index a6040bda..bbcff171 100755 --- a/src/FedEx/_wsdl/PickupService_v15.wsdl +++ b/src/FedEx/_wsdl/PickupService_v17.wsdl @@ -1,6 +1,6 @@ - + - + @@ -754,8 +754,10 @@ + + @@ -1623,7 +1625,7 @@ - + @@ -1638,6 +1640,7 @@ + @@ -1646,6 +1649,7 @@ + @@ -1890,6 +1894,7 @@ + @@ -2319,7 +2324,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -2373,7 +2378,7 @@ - + @@ -2382,7 +2387,7 @@ - + @@ -2391,7 +2396,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 5565e8df..174fb612 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -268,7 +268,7 @@ protected function execute(InputInterface $input, OutputInterface $output) $generateComplexTypes->run(); //PickupService - $wsdlPath = $fedexSrcDir . '/_wsdl/PickupService_v15.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/PickupService_v17.wsdl'; $baseNamespace = 'FedEx\PickupService'; $subPackageName = 'Pickup Service'; From 1d8bf5fe886f8db7d9ff30f09dc3791b8bf48edf Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sat, 15 Dec 2018 11:31:47 -0600 Subject: [PATCH 18/33] Updated Ship Service (v23) --- .../AssociatedFreightLineItemDetail.php | 36 ++++++ .../ShipService/ComplexType/Commodity.php | 4 +- .../CompletedHoldAtLocationDetail.php | 13 ++ .../ComplexType/CompletedShipmentDetail.php | 15 ++- .../ComplexType/FreightBillOfLadingDetail.php | 36 ++++++ .../ComplexType/FreightShipmentLineItem.php | 13 ++ .../ComplexType/HoldAtLocationDetail.php | 13 ++ .../ShipService/ComplexType/ProductName.php | 62 +++++++++ .../ComplexType/RequestedPackageLineItem.php | 13 ++ .../ComplexType/RequestedShipment.php | 2 +- .../ComplexType/ServiceDescription.php | 88 +++++++++++++ .../ShippingDocumentSpecification.php | 13 ++ src/FedEx/ShipService/Request.php | 2 +- .../SimpleType/FedExLocationType.php | 4 + .../SimpleType/LabelFormatType.php | 2 - .../ShipService/SimpleType/LabelStockType.php | 3 + .../RequestedShippingDocumentType.php | 3 +- .../ReturnedShippingDocumentType.php | 2 + .../SimpleType/ShipmentSpecialServiceType.php | 1 + .../ShipService/SimpleType/SurchargeType.php | 1 + ...pService_v21.wsdl => ShipService_v23.wsdl} | 118 +++++++++++++++--- .../Cli/GenerateCode/Command/GenerateCode.php | 2 +- 22 files changed, 418 insertions(+), 28 deletions(-) create mode 100644 src/FedEx/ShipService/ComplexType/AssociatedFreightLineItemDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/FreightBillOfLadingDetail.php create mode 100644 src/FedEx/ShipService/ComplexType/ProductName.php create mode 100644 src/FedEx/ShipService/ComplexType/ServiceDescription.php rename src/FedEx/_wsdl/{ShipService_v21.wsdl => ShipService_v23.wsdl} (98%) diff --git a/src/FedEx/ShipService/ComplexType/AssociatedFreightLineItemDetail.php b/src/FedEx/ShipService/ComplexType/AssociatedFreightLineItemDetail.php new file mode 100644 index 00000000..0f74aac7 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/AssociatedFreightLineItemDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property string $Id + + */ +class AssociatedFreightLineItemDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'AssociatedFreightLineItemDetail'; + + /** + * A freight line item identifier referring to a freight shipment line item that describes goods contained within this handling unit. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/Commodity.php b/src/FedEx/ShipService/ComplexType/Commodity.php index 1f15dcc1..35b6580f 100644 --- a/src/FedEx/ShipService/ComplexType/Commodity.php +++ b/src/FedEx/ShipService/ComplexType/Commodity.php @@ -40,7 +40,7 @@ class Commodity extends AbstractComplexType protected $name = 'Commodity'; /** - * Set Name + * FedEx internal commodity identifier * * @param string $name * @return $this @@ -64,7 +64,7 @@ public function setNumberOfPieces($numberOfPieces) } /** - * Set Description + * A free-form description of the commodity, which could be used for customs clearance documentation. * * @param string $description * @return $this diff --git a/src/FedEx/ShipService/ComplexType/CompletedHoldAtLocationDetail.php b/src/FedEx/ShipService/ComplexType/CompletedHoldAtLocationDetail.php index 531ea3b8..bffcce3f 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedHoldAtLocationDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedHoldAtLocationDetail.php @@ -12,6 +12,7 @@ * * @property ContactAndAddress $HoldingLocation * @property \FedEx\ShipService\SimpleType\FedExLocationType|string $HoldingLocationType + * @property string $HoldingLocationTypeForDisplay */ class CompletedHoldAtLocationDetail extends AbstractComplexType @@ -46,4 +47,16 @@ public function setHoldingLocationType($holdingLocationType) $this->values['HoldingLocationType'] = $holdingLocationType; return $this; } + + /** + * Set HoldingLocationTypeForDisplay + * + * @param string $holdingLocationTypeForDisplay + * @return $this + */ + public function setHoldingLocationTypeForDisplay($holdingLocationTypeForDisplay) + { + $this->values['HoldingLocationTypeForDisplay'] = $holdingLocationTypeForDisplay; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php b/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php index 960713fb..e0959bfa 100644 --- a/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php +++ b/src/FedEx/ShipService/ComplexType/CompletedShipmentDetail.php @@ -14,6 +14,7 @@ * @property \FedEx\ShipService\SimpleType\CarrierCodeType|string $CarrierCode * @property TrackingId $MasterTrackingId * @property string $ServiceTypeDescription + * @property ServiceDescription $ServiceDescription * @property string $PackagingDescription * @property ShipmentOperationalDetail $OperationalDetail * @property PendingShipmentAccessDetail $AccessDetail @@ -77,7 +78,7 @@ public function setMasterTrackingId(TrackingId $masterTrackingId) } /** - * Set ServiceTypeDescription + * DEPRECATED as of 201801: Use serviceDescription instead. * * @param string $serviceTypeDescription * @return $this @@ -88,6 +89,18 @@ public function setServiceTypeDescription($serviceTypeDescription) return $this; } + /** + * Set ServiceDescription + * + * @param ServiceDescription $serviceDescription + * @return $this + */ + public function setServiceDescription(ServiceDescription $serviceDescription) + { + $this->values['ServiceDescription'] = $serviceDescription; + return $this; + } + /** * Set PackagingDescription * diff --git a/src/FedEx/ShipService/ComplexType/FreightBillOfLadingDetail.php b/src/FedEx/ShipService/ComplexType/FreightBillOfLadingDetail.php new file mode 100644 index 00000000..032428a2 --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/FreightBillOfLadingDetail.php @@ -0,0 +1,36 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property ShippingDocumentFormat $Format + + */ +class FreightBillOfLadingDetail extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'FreightBillOfLadingDetail'; + + /** + * Set Format + * + * @param ShippingDocumentFormat $format + * @return $this + */ + public function setFormat(ShippingDocumentFormat $format) + { + $this->values['Format'] = $format; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php b/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php index 29fa815a..a6f937ec 100644 --- a/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php +++ b/src/FedEx/ShipService/ComplexType/FreightShipmentLineItem.php @@ -10,6 +10,7 @@ * @package PHP FedEx API wrapper * @subpackage Ship Service * + * @property string $Id * @property \FedEx\ShipService\SimpleType\FreightClassType|string $FreightClass * @property boolean $ClassProvidedByCustomer * @property int $HandlingUnits @@ -33,6 +34,18 @@ class FreightShipmentLineItem extends AbstractComplexType */ protected $name = 'FreightShipmentLineItem'; + /** + * A unique identifier assigned to this line item. + * + * @param string $id + * @return $this + */ + public function setId($id) + { + $this->values['Id'] = $id; + return $this; + } + /** * Freight class for this line item. * diff --git a/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php b/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php index 6ed18b60..5f27e364 100644 --- a/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php +++ b/src/FedEx/ShipService/ComplexType/HoldAtLocationDetail.php @@ -13,6 +13,7 @@ * @property string $PhoneNumber * @property ContactAndAddress $LocationContactAndAddress * @property \FedEx\ShipService\SimpleType\FedExLocationType|string $LocationType + * @property string $LocationId */ class HoldAtLocationDetail extends AbstractComplexType @@ -59,4 +60,16 @@ public function setLocationType($locationType) $this->values['LocationType'] = $locationType; return $this; } + + /** + * Location identification (for facilities identified by an alphanumeric location code). + * + * @param string $locationId + * @return $this + */ + public function setLocationId($locationId) + { + $this->values['LocationId'] = $locationId; + return $this; + } } diff --git a/src/FedEx/ShipService/ComplexType/ProductName.php b/src/FedEx/ShipService/ComplexType/ProductName.php new file mode 100644 index 00000000..951d590f --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ProductName.php @@ -0,0 +1,62 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property string $Type + * @property string $Encoding + * @property string $Value + + */ +class ProductName extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ProductName'; + + /** + * The type of branded, translated, and/or localized name to which this value refers. + * + * @param string $type + * @return $this + */ + public function setType($type) + { + $this->values['Type'] = $type; + return $this; + } + + /** + * The character encoding used to represent this product name. For example, UTF-8. + * + * @param string $encoding + * @return $this + */ + public function setEncoding($encoding) + { + $this->values['Encoding'] = $encoding; + return $this; + } + + /** + * Set Value + * + * @param string $value + * @return $this + */ + public function setValue($value) + { + $this->values['Value'] = $value; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php b/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php index 06cba8af..d15ed74a 100644 --- a/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php +++ b/src/FedEx/ShipService/ComplexType/RequestedPackageLineItem.php @@ -18,6 +18,7 @@ * @property Weight $Weight * @property Dimensions $Dimensions * @property \FedEx\ShipService\SimpleType\PhysicalPackagingType|string $PhysicalPackaging + * @property AssociatedFreightLineItemDetail[] $AssociatedFreightLineItems * @property string $ItemDescription * @property string $ItemDescriptionForClearance * @property CustomerReference[] $CustomerReferences @@ -130,6 +131,18 @@ public function setPhysicalPackaging($physicalPackaging) return $this; } + /** + * Set AssociatedFreightLineItems + * + * @param AssociatedFreightLineItemDetail[] $associatedFreightLineItems + * @return $this + */ + public function setAssociatedFreightLineItems(array $associatedFreightLineItems) + { + $this->values['AssociatedFreightLineItems'] = $associatedFreightLineItems; + return $this; + } + /** * Human-readable text describing the package. * diff --git a/src/FedEx/ShipService/ComplexType/RequestedShipment.php b/src/FedEx/ShipService/ComplexType/RequestedShipment.php index c82a1189..d7c7777b 100644 --- a/src/FedEx/ShipService/ComplexType/RequestedShipment.php +++ b/src/FedEx/ShipService/ComplexType/RequestedShipment.php @@ -210,7 +210,7 @@ public function setOrigin(ContactAndAddress $origin) } /** - * Set SoldTo + * The sold-to party is used for customs clearance; for example, in support of US import customs rules. The need for this field could vary based on whether a sold-to party was specified on a consolidation. * * @param Party $soldTo * @return $this diff --git a/src/FedEx/ShipService/ComplexType/ServiceDescription.php b/src/FedEx/ShipService/ComplexType/ServiceDescription.php new file mode 100644 index 00000000..759b25ba --- /dev/null +++ b/src/FedEx/ShipService/ComplexType/ServiceDescription.php @@ -0,0 +1,88 @@ + + * @package PHP FedEx API wrapper + * @subpackage Ship Service + * + * @property \FedEx\ShipService\SimpleType\ServiceType|string $ServiceType + * @property string $Code + * @property ProductName[] $Names + * @property string $Description + * @property string $AstraDescription + + */ +class ServiceDescription extends AbstractComplexType +{ + /** + * Name of this complex type + * + * @var string + */ + protected $name = 'ServiceDescription'; + + /** + * Set ServiceType + * + * @param \FedEx\ShipService\SimpleType\ServiceType|string $serviceType + * @return $this + */ + public function setServiceType($serviceType) + { + $this->values['ServiceType'] = $serviceType; + return $this; + } + + /** + * Set Code + * + * @param string $code + * @return $this + */ + public function setCode($code) + { + $this->values['Code'] = $code; + return $this; + } + + /** + * Branded, translated, and/or localized names for this service. + * + * @param ProductName[] $names + * @return $this + */ + public function setNames(array $names) + { + $this->values['Names'] = $names; + return $this; + } + + /** + * Set Description + * + * @param string $description + * @return $this + */ + public function setDescription($description) + { + $this->values['Description'] = $description; + return $this; + } + + /** + * Set AstraDescription + * + * @param string $astraDescription + * @return $this + */ + public function setAstraDescription($astraDescription) + { + $this->values['AstraDescription'] = $astraDescription; + return $this; + } +} diff --git a/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php b/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php index 813fbcc9..af89ea06 100644 --- a/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php +++ b/src/FedEx/ShipService/ComplexType/ShippingDocumentSpecification.php @@ -21,6 +21,7 @@ * @property Op900Detail $Op900Detail * @property DangerousGoodsShippersDeclarationDetail $DangerousGoodsShippersDeclarationDetail * @property FreightAddressLabelDetail $FreightAddressLabelDetail + * @property FreightBillOfLadingDetail $FreightBillOfLadingDetail * @property ReturnInstructionsDetail $ReturnInstructionsDetail */ @@ -165,6 +166,18 @@ public function setFreightAddressLabelDetail(FreightAddressLabelDetail $freightA return $this; } + /** + * Set FreightBillOfLadingDetail + * + * @param FreightBillOfLadingDetail $freightBillOfLadingDetail + * @return $this + */ + public function setFreightBillOfLadingDetail(FreightBillOfLadingDetail $freightBillOfLadingDetail) + { + $this->values['FreightBillOfLadingDetail'] = $freightBillOfLadingDetail; + return $this; + } + /** * Specifies the production of the return instructions document. * diff --git a/src/FedEx/ShipService/Request.php b/src/FedEx/ShipService/Request.php index 0a12c27c..2c3de566 100644 --- a/src/FedEx/ShipService/Request.php +++ b/src/FedEx/ShipService/Request.php @@ -15,7 +15,7 @@ class Request extends AbstractRequest const PRODUCTION_URL = 'https://ws.fedex.com:443/web-services/ship'; const TESTING_URL = 'https://wsbeta.fedex.com:443/web-services/ship'; - protected static $wsdlFileName = 'ShipService_v21.wsdl'; + protected static $wsdlFileName = 'ShipService_v23.wsdl'; /** * Sends the ProcessTagRequest and returns the response diff --git a/src/FedEx/ShipService/SimpleType/FedExLocationType.php b/src/FedEx/ShipService/SimpleType/FedExLocationType.php index 194ebb6d..a1ad9cd2 100644 --- a/src/FedEx/ShipService/SimpleType/FedExLocationType.php +++ b/src/FedEx/ShipService/SimpleType/FedExLocationType.php @@ -12,12 +12,16 @@ */ class FedExLocationType extends AbstractSimpleType { + const _FEDEX_AUTHORIZED_SHIP_CENTER = 'FEDEX_AUTHORIZED_SHIP_CENTER'; const _FEDEX_EXPRESS_STATION = 'FEDEX_EXPRESS_STATION'; const _FEDEX_FACILITY = 'FEDEX_FACILITY'; const _FEDEX_FREIGHT_SERVICE_CENTER = 'FEDEX_FREIGHT_SERVICE_CENTER'; const _FEDEX_GROUND_TERMINAL = 'FEDEX_GROUND_TERMINAL'; const _FEDEX_HOME_DELIVERY_STATION = 'FEDEX_HOME_DELIVERY_STATION'; const _FEDEX_OFFICE = 'FEDEX_OFFICE'; + const _FEDEX_ONSITE = 'FEDEX_ONSITE'; + const _FEDEX_SELF_SERVICE_LOCATION = 'FEDEX_SELF_SERVICE_LOCATION'; const _FEDEX_SHIPSITE = 'FEDEX_SHIPSITE'; + const _FEDEX_SHIP_AND_GET = 'FEDEX_SHIP_AND_GET'; const _FEDEX_SMART_POST_HUB = 'FEDEX_SMART_POST_HUB'; } diff --git a/src/FedEx/ShipService/SimpleType/LabelFormatType.php b/src/FedEx/ShipService/SimpleType/LabelFormatType.php index fa26dc25..90e54618 100644 --- a/src/FedEx/ShipService/SimpleType/LabelFormatType.php +++ b/src/FedEx/ShipService/SimpleType/LabelFormatType.php @@ -13,7 +13,5 @@ class LabelFormatType extends AbstractSimpleType { const _COMMON2D = 'COMMON2D'; - const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _LABEL_DATA_ONLY = 'LABEL_DATA_ONLY'; - const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/ShipService/SimpleType/LabelStockType.php b/src/FedEx/ShipService/SimpleType/LabelStockType.php index 1fd8cce1..d03daf5f 100644 --- a/src/FedEx/ShipService/SimpleType/LabelStockType.php +++ b/src/FedEx/ShipService/SimpleType/LabelStockType.php @@ -13,6 +13,7 @@ class LabelStockType extends AbstractSimpleType { const _PAPER_4X6 = 'PAPER_4X6'; + const _PAPER_4X6POINT75 = 'PAPER_4X6.75'; const _PAPER_4X8 = 'PAPER_4X8'; const _PAPER_4X9 = 'PAPER_4X9'; const _PAPER_7X4POINT75 = 'PAPER_7X4.75'; @@ -20,9 +21,11 @@ class LabelStockType extends AbstractSimpleType const _PAPER_8POINT5X11_TOP_HALF_LABEL = 'PAPER_8.5X11_TOP_HALF_LABEL'; const _PAPER_LETTER = 'PAPER_LETTER'; const _STOCK_4X6 = 'STOCK_4X6'; + const _STOCK_4X6POINT75 = 'STOCK_4X6.75'; const _STOCK_4X6POINT75_LEADING_DOC_TAB = 'STOCK_4X6.75_LEADING_DOC_TAB'; const _STOCK_4X6POINT75_TRAILING_DOC_TAB = 'STOCK_4X6.75_TRAILING_DOC_TAB'; const _STOCK_4X8 = 'STOCK_4X8'; + const _STOCK_4X9 = 'STOCK_4X9'; const _STOCK_4X9_LEADING_DOC_TAB = 'STOCK_4X9_LEADING_DOC_TAB'; const _STOCK_4X9_TRAILING_DOC_TAB = 'STOCK_4X9_TRAILING_DOC_TAB'; } diff --git a/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php b/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php index 7df4dac7..8703de7d 100644 --- a/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php +++ b/src/FedEx/ShipService/SimpleType/RequestedShippingDocumentType.php @@ -19,11 +19,12 @@ class RequestedShippingDocumentType extends AbstractSimpleType const _CUSTOM_SHIPMENT_DOCUMENT = 'CUSTOM_SHIPMENT_DOCUMENT'; const _DANGEROUS_GOODS_SHIPPERS_DECLARATION = 'DANGEROUS_GOODS_SHIPPERS_DECLARATION'; const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; - const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; + const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _LABEL = 'LABEL'; const _NAFTA_CERTIFICATE_OF_ORIGIN = 'NAFTA_CERTIFICATE_OF_ORIGIN'; const _OP_900 = 'OP_900'; const _PRO_FORMA_INVOICE = 'PRO_FORMA_INVOICE'; const _RETURN_INSTRUCTIONS = 'RETURN_INSTRUCTIONS'; + const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php b/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php index f7da50f0..418f9fa3 100644 --- a/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php +++ b/src/FedEx/ShipService/SimpleType/ReturnedShippingDocumentType.php @@ -26,6 +26,7 @@ class ReturnedShippingDocumentType extends AbstractSimpleType const _DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_LABEL = 'DELIVERY_ON_INVOICE_ACCEPTANCE_RETURN_LABEL'; const _ETD_LABEL = 'ETD_LABEL'; const _EXPORT_DECLARATION = 'EXPORT_DECLARATION'; + const _FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING = 'FEDEX_FREIGHT_STRAIGHT_BILL_OF_LADING'; const _FREIGHT_ADDRESS_LABEL = 'FREIGHT_ADDRESS_LABEL'; const _GENERAL_AGENCY_AGREEMENT = 'GENERAL_AGENCY_AGREEMENT'; const _GROUND_BARCODE = 'GROUND_BARCODE'; @@ -39,4 +40,5 @@ class ReturnedShippingDocumentType extends AbstractSimpleType const _RETURN_INSTRUCTIONS = 'RETURN_INSTRUCTIONS'; const _TERMS_AND_CONDITIONS = 'TERMS_AND_CONDITIONS'; const _USPS_BARCODE = 'USPS_BARCODE'; + const _VICS_BILL_OF_LADING = 'VICS_BILL_OF_LADING'; } diff --git a/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php b/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php index 2d2a9cf5..2fa66c78 100644 --- a/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php +++ b/src/FedEx/ShipService/SimpleType/ShipmentSpecialServiceType.php @@ -42,6 +42,7 @@ class ShipmentSpecialServiceType extends AbstractSimpleType const _LIFTGATE_PICKUP = 'LIFTGATE_PICKUP'; const _LIMITED_ACCESS_DELIVERY = 'LIMITED_ACCESS_DELIVERY'; const _LIMITED_ACCESS_PICKUP = 'LIMITED_ACCESS_PICKUP'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PENDING_SHIPMENT = 'PENDING_SHIPMENT'; const _PHARMACY_DELIVERY = 'PHARMACY_DELIVERY'; const _POISON = 'POISON'; diff --git a/src/FedEx/ShipService/SimpleType/SurchargeType.php b/src/FedEx/ShipService/SimpleType/SurchargeType.php index 54695596..3edca7a2 100644 --- a/src/FedEx/ShipService/SimpleType/SurchargeType.php +++ b/src/FedEx/ShipService/SimpleType/SurchargeType.php @@ -66,6 +66,7 @@ class SurchargeType extends AbstractSimpleType const _OUT_OF_PICKUP_AREA = 'OUT_OF_PICKUP_AREA'; const _OVERSIZE = 'OVERSIZE'; const _OVER_DIMENSION = 'OVER_DIMENSION'; + const _OVER_LENGTH = 'OVER_LENGTH'; const _PIECE_COUNT_VERIFICATION = 'PIECE_COUNT_VERIFICATION'; const _PRE_DELIVERY_NOTIFICATION = 'PRE_DELIVERY_NOTIFICATION'; const _PRIORITY_ALERT = 'PRIORITY_ALERT'; diff --git a/src/FedEx/_wsdl/ShipService_v21.wsdl b/src/FedEx/_wsdl/ShipService_v23.wsdl similarity index 98% rename from src/FedEx/_wsdl/ShipService_v21.wsdl rename to src/FedEx/_wsdl/ShipService_v23.wsdl index 8da63ea9..50fa63d3 100755 --- a/src/FedEx/_wsdl/ShipService_v21.wsdl +++ b/src/FedEx/_wsdl/ShipService_v23.wsdl @@ -1,6 +1,6 @@ - + - + @@ -144,6 +144,15 @@ + + + + + A freight line item identifier referring to a freight shipment line item that describes goods contained within this handling unit. + + + + @@ -238,7 +247,6 @@ - @@ -248,7 +256,6 @@ - @@ -558,9 +565,17 @@ - + + + FedEx internal commodity identifier + + - + + + A free-form description of the commodity, which could be used for customs clearance documentation. + + @@ -691,6 +706,7 @@ Identifies the type of FedEx location. + @@ -738,7 +754,12 @@ - + + + DEPRECATED as of 201801: Use serviceDescription instead. + + + @@ -1839,13 +1860,17 @@ Identifies a kind of FedEx facility. + + + + @@ -1935,6 +1960,11 @@ + + + + + @@ -2155,6 +2185,11 @@ Description of an individual commodity or class of content in a shipment. + + + A unique identifier assigned to this line item. + + Freight class for this line item. @@ -2502,6 +2537,11 @@ Type of facility at which package/shipment is to be held. + + + Location identification (for facilities identified by an alphanumeric location code). + + @@ -2565,10 +2605,8 @@ - - - - + + @@ -2633,6 +2671,7 @@ + @@ -2640,9 +2679,11 @@ + + @@ -3489,6 +3530,21 @@ + + + + + + The type of branded, translated, and/or localized name to which this value refers. + + + + + The character encoding used to represent this product name. For example, UTF-8. + + + + @@ -3785,6 +3841,7 @@ Provides additional detail on how the customer has physically packaged this item. As of June 2009, required for packages moving under international and SmartPost services. + Human-readable text describing the package. @@ -3839,7 +3896,11 @@ Physical starting address for the shipment, if different from shipper's address. - + + + The sold-to party is used for customs clearance; for example, in support of US import customs rules. The need for this field could vary based on whether a sold-to party was specified on a consolidation. + + @@ -3921,13 +3982,14 @@ - + + @@ -4041,6 +4103,7 @@ + @@ -4054,6 +4117,7 @@ + @@ -4083,6 +4147,19 @@ + + + + + + + Branded, translated, and/or localized names for this service. + + + + + + @@ -4637,6 +4714,7 @@ + @@ -4956,6 +5034,7 @@ Specifies the production of the OP-900 document for hazardous materials. + Specifies the production of the return instructions document. @@ -5177,6 +5256,7 @@ + @@ -5564,7 +5644,7 @@ Identifies a system or sub-system which performs an operation. - + Identifies the service business level. @@ -5632,7 +5712,7 @@ - + @@ -5641,7 +5721,7 @@ - + @@ -5650,7 +5730,7 @@ - + @@ -5659,7 +5739,7 @@ - + @@ -5668,7 +5748,7 @@ - + diff --git a/util/Cli/GenerateCode/Command/GenerateCode.php b/util/Cli/GenerateCode/Command/GenerateCode.php index 174fb612..8c0f0d7d 100644 --- a/util/Cli/GenerateCode/Command/GenerateCode.php +++ b/util/Cli/GenerateCode/Command/GenerateCode.php @@ -158,7 +158,7 @@ protected function execute(InputInterface $input, OutputInterface $output) //ShipService - $wsdlPath = $fedexSrcDir . '/_wsdl/ShipService_v21.wsdl'; + $wsdlPath = $fedexSrcDir . '/_wsdl/ShipService_v23.wsdl'; $baseNamespace = 'FedEx\ShipService'; $subPackageName = 'Ship Service'; From cb133f72b2e29a9dd0defd9d981bddfe41d129ef Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 16 Dec 2018 11:13:46 -0600 Subject: [PATCH 19/33] update rate service example --- examples/{example1.php => rate-request.php} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename examples/{example1.php => rate-request.php} (94%) diff --git a/examples/example1.php b/examples/rate-request.php similarity index 94% rename from examples/example1.php rename to examples/rate-request.php index f2ed4580..f41cbf1a 100644 --- a/examples/example1.php +++ b/examples/rate-request.php @@ -24,13 +24,14 @@ //version $rateRequest->Version->ServiceId = 'crs'; -$rateRequest->Version->Major = 22; +$rateRequest->Version->Major = 24; $rateRequest->Version->Minor = 0; $rateRequest->Version->Intermediate = 0; $rateRequest->ReturnTransitAndCommit = true; //shipper +$rateRequest->RequestedShipment->PreferredCurrency = 'USD'; $rateRequest->RequestedShipment->Shipper->Address->StreetLines = ['10 Fed Ex Pkwy']; $rateRequest->RequestedShipment->Shipper->Address->City = 'Memphis'; $rateRequest->RequestedShipment->Shipper->Address->StateOrProvinceCode = 'TN'; @@ -76,7 +77,7 @@ $rateServiceRequest = new Request(); //$rateServiceRequest->getSoapClient()->__setLocation(Request::PRODUCTION_URL); //use production URL -$rateReply = $rateServiceRequest->getGetRatesReply($rateRequest, true); // send true as the 2nd argument to return the SoapClient's stdClass response. +$rateReply = $rateServiceRequest->getGetRatesReply($rateRequest); // send true as the 2nd argument to return the SoapClient's stdClass response. if (!empty($rateReply->RateReplyDetails)) { @@ -92,4 +93,3 @@ } var_dump($rateReply); - From 1ffe349d8618b93dd76f2c0ea1b0a1d0230a39d8 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 16 Dec 2018 11:53:55 -0600 Subject: [PATCH 20/33] Added example for locations service. --- examples/location-service.php | 90 +++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 examples/location-service.php diff --git a/examples/location-service.php b/examples/location-service.php new file mode 100644 index 00000000..9973cc48 --- /dev/null +++ b/examples/location-service.php @@ -0,0 +1,90 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$searchLocationsRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$searchLocationsRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$searchLocationsRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +$searchLocationsRequest->TransactionDetail->CustomerTransactionId = 'test locations service request'; + +// Version. +$searchLocationsRequest->Version->ServiceId = 'locs'; +$searchLocationsRequest->Version->Major = 9; +$searchLocationsRequest->Version->Intermediate = 0; +$searchLocationsRequest->Version->Minor = 0; + +// Locations search criterion. +$searchLocationsRequest->LocationsSearchCriterion = SimpleType\LocationsSearchCriteriaType::_ADDRESS; + +// Address +$searchLocationsRequest->Address->StreetLines = ['13450 Farmcrest Ct']; +$searchLocationsRequest->Address->City = 'Herndon'; +$searchLocationsRequest->Address->StateOrProvinceCode = 'VA'; +$searchLocationsRequest->Address->PostalCode = 20171; +$searchLocationsRequest->Address->CountryCode = 'US'; + +// Multiple matches action. +$searchLocationsRequest->MultipleMatchesAction = SimpleType\MultipleMatchesActionType::_RETURN_ALL; + +// Get Search Locations reply. +$locationServiceRequest = new Request(); +$searchLocationsReply = $locationServiceRequest->getSearchLocationsReply($searchLocationsRequest); + +echo "

Results Returned: {$searchLocationsReply->ResultsReturned}

"; +echo '
'; + +if (empty($searchLocationsReply->AddressToLocationRelationships[0]->DistanceAndLocationDetails)) { + return; +} + +foreach ($searchLocationsReply->AddressToLocationRelationships[0]->DistanceAndLocationDetails as $distanceAndLocationDetails) { + echo "

Address (distance: {$distanceAndLocationDetails->Distance->Value} {$distanceAndLocationDetails->Distance->Units})

"; + var_dump($distanceAndLocationDetails->LocationDetail->LocationContactAndAddress->Address->toArray()); + echo "

Address Ancillary Details

"; + var_dump($distanceAndLocationDetails->LocationDetail->LocationContactAndAddress->AddressAncillaryDetail->toArray()); + + echo '

Location Capabilities

'; + if (!empty($distanceAndLocationDetails->LocationDetail->LocationCapabilities)) { + foreach ($distanceAndLocationDetails->LocationDetail->LocationCapabilities as $locationCapability) { + var_dump($locationCapability->toArray()); + } + } + + echo '

Normal Hours

'; + if (!empty($distanceAndLocationDetails->LocationDetail->NormalHours)) { + foreach ($distanceAndLocationDetails->LocationDetail->NormalHours as $locationHours) { + var_dump($locationHours->toArray()); + } + } + + echo '

Hours For Effective Date

'; + if (!empty($distanceAndLocationDetails->LocationDetail->HoursForEffectiveDate)) { + foreach ($distanceAndLocationDetails->LocationDetail->HoursForEffectiveDate as $locationHours) { + var_dump($locationHours->toArray()); + } + } + + echo '

Carrier Details

'; + if (!empty($distanceAndLocationDetails->LocationDetail->CarrierDetails)) { + foreach ($distanceAndLocationDetails->LocationDetail->CarrierDetails as $carrierDetail) { + echo "

{$carrierDetail->Carrier}

"; + if (!empty($carrierDetail->NormalLatestDropOffDetails)) { + foreach ($carrierDetail->NormalLatestDropOffDetails as $normalLatestDropOffDetail) { + var_dump($normalLatestDropOffDetail->toArray()); + } + } + } + } + + echo '
'; +} From 5602ff25e47f82c4073ce43a078d54ba379d234a Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 16 Dec 2018 16:44:35 -0600 Subject: [PATCH 21/33] Added example for country service --- examples/country-service.php | 44 ++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 examples/country-service.php diff --git a/examples/country-service.php b/examples/country-service.php new file mode 100644 index 00000000..43220aa1 --- /dev/null +++ b/examples/country-service.php @@ -0,0 +1,44 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$validatePostalRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$validatePostalRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$validatePostalRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +// Version. +$validatePostalRequest->Version->ServiceId = 'cnty'; +$validatePostalRequest->Version->Major = 8; +$validatePostalRequest->Version->Intermediate = 0; +$validatePostalRequest->Version->Minor = 0; + +// Address. +$validatePostalRequest->Address->PostalCode = 96813; +$validatePostalRequest->Address->CountryCode = 'US'; + +$validatePostalRequest->CarrierCode = SimpleType\CarrierCodeType::_FDXE; + +// Get Validate Postal reply. +$countryServiceRequest = new Request(); +$validatePostalReply = $countryServiceRequest->getValidatePostalReply($validatePostalRequest); + +echo '

Postal Detail

'; +echo "

Country Code: {$validatePostalReply->PostalDetail->CountryCode}

"; +echo "

State or Province Code: {$validatePostalReply->PostalDetail->StateOrProvinceCode}

"; +echo "

City First Initials: {$validatePostalReply->PostalDetail->CityFirstInitials}

"; +echo "

Cleaned Postal Code: {$validatePostalReply->PostalDetail->CleanedPostalCode}

"; +echo '

Location Descriptions:

'; +if (!empty($validatePostalReply->PostalDetail->LocationDescriptions)) { + foreach ($validatePostalReply->PostalDetail->LocationDescriptions as $locationDescription) { + var_dump($locationDescription->toArray()); + } +} From 550957bcfb381c061512b763f927078963767bdc Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 16 Dec 2018 16:45:35 -0600 Subject: [PATCH 22/33] remove example2.php --- examples/example2.php | 80 ------------------------------------------- 1 file changed, 80 deletions(-) delete mode 100644 examples/example2.php diff --git a/examples/example2.php b/examples/example2.php deleted file mode 100644 index c3de6ed5..00000000 --- a/examples/example2.php +++ /dev/null @@ -1,80 +0,0 @@ -WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; -$rateRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; -$rateRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; -$rateRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; - -$rateRequest->TransactionDetail->CustomerTransactionId = 'testing rate service request'; - -//version -$rateRequest->Version->ServiceId = 'crs'; -$rateRequest->Version->Major = 22; -$rateRequest->Version->Minor = 0; -$rateRequest->Version->Intermediate = 0; - -$rateRequest->ReturnTransitAndCommit = true; - -//shipper -$rateRequest->RequestedShipment->Shipper->Address->StreetLines = ['10 Fed Ex Pkwy']; -$rateRequest->RequestedShipment->Shipper->Address->City = 'Memphis'; -$rateRequest->RequestedShipment->Shipper->Address->StateOrProvinceCode = 'TN'; -$rateRequest->RequestedShipment->Shipper->Address->PostalCode = 38115; -$rateRequest->RequestedShipment->Shipper->Address->CountryCode = 'US'; - -//recipient -$rateRequest->RequestedShipment->Recipient->Address->StreetLines = ['13450 Farmcrest Ct']; -$rateRequest->RequestedShipment->Recipient->Address->City = 'Herndon'; -$rateRequest->RequestedShipment->Recipient->Address->StateOrProvinceCode = 'VA'; -$rateRequest->RequestedShipment->Recipient->Address->PostalCode = 20171; -$rateRequest->RequestedShipment->Recipient->Address->CountryCode = 'US'; - -//shipping charges payment -$rateRequest->RequestedShipment->ShippingChargesPayment->PaymentType = SimpleType\PaymentType::_SENDER; - -//rate request types -$rateRequest->RequestedShipment->RateRequestTypes = [SimpleType\RateRequestType::_PREFERRED, SimpleType\RateRequestType::_LIST]; - -$rateRequest->RequestedShipment->PackageCount = 2; - -//create package line items -$rateRequest->RequestedShipment->RequestedPackageLineItems = [new ComplexType\RequestedPackageLineItem(), new ComplexType\RequestedPackageLineItem()]; - -//package 1 -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->Weight->Value = 2; -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->Weight->Units = SimpleType\WeightUnits::_LB; -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->Dimensions->Length = 10; -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->Dimensions->Width = 10; -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->Dimensions->Height = 3; -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->Dimensions->Units = SimpleType\LinearUnits::_IN; -$rateRequest->RequestedShipment->RequestedPackageLineItems[0]->GroupPackageCount = 1; - -//package 2 -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->Weight->Value = 5; -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->Weight->Units = SimpleType\WeightUnits::_LB; -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->Dimensions->Length = 20; -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->Dimensions->Width = 20; -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->Dimensions->Height = 10; -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->Dimensions->Units = SimpleType\LinearUnits::_IN; -$rateRequest->RequestedShipment->RequestedPackageLineItems[1]->GroupPackageCount = 1; - -$rateServiceRequest = new Request(); -//$rateServiceRequest->getSoapClient()->__setLocation(Request::PRODUCTION_URL); -$response = $rateServiceRequest->getGetRatesReply($rateRequest); - -var_dump($response); From 59732399291bd1326ec91201b22f41d5e446f2a2 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 23 Dec 2018 16:08:18 -0600 Subject: [PATCH 23/33] update tracking example --- examples/track-by-id.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/track-by-id.php b/examples/track-by-id.php index 95a50c7b..78ee90e2 100644 --- a/examples/track-by-id.php +++ b/examples/track-by-id.php @@ -22,7 +22,7 @@ // Version $trackRequest->Version->ServiceId = 'trck'; -$trackRequest->Version->Major = 14; +$trackRequest->Version->Major = 16; $trackRequest->Version->Intermediate = 0; $trackRequest->Version->Minor = 0; From c52d3c7992bfa8996005f789d6a6656e0ca53c57 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 23 Dec 2018 16:30:56 -0600 Subject: [PATCH 24/33] Add close service example --- examples/close-service.php | 50 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 examples/close-service.php diff --git a/examples/close-service.php b/examples/close-service.php new file mode 100644 index 00000000..07907c6d --- /dev/null +++ b/examples/close-service.php @@ -0,0 +1,50 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$closeWithDocumentsRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$closeWithDocumentsRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$closeWithDocumentsRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +$closeWithDocumentsRequest->TransactionDetail->CustomerTransactionId = 'ground close with documents test'; + +// Version. +$closeWithDocumentsRequest->Version->ServiceId = 'clos'; +$closeWithDocumentsRequest->Version->Major = 5; +$closeWithDocumentsRequest->Version->Intermediate = 0; +$closeWithDocumentsRequest->Version->Minor = 0; + +// Action type. +$closeWithDocumentsRequest->ActionType = SimpleType\CloseActionType::_CLOSE; + +// Processing options. +$closeWithDocumentsRequest->ProcessingOptions->Options = [SimpleType\CloseWithDocumentsProcessingOptionType::_ERROR_IF_OPEN_SHIPMENTS_FOUND]; + +// Carrier code. +$closeWithDocumentsRequest->CarrierCode = SimpleType\CarrierCodeType::_FDXE; + +// Reprint close date. +$closeWithDocumentsRequest->ReprintCloseDate = date('c'); + +// Manifest reference detail. +$closeWithDocumentsRequest->CloseDocumentSpecification->CloseDocumentTypes = [SimpleType\CloseDocumentType::_MANIFEST]; + + +$closeSerivceRequest = new Request(); +$closeWithDocumentsReply = $closeSerivceRequest->getCloseWithDocumentsReply($closeWithDocumentsRequest); + +var_dump($closeWithDocumentsReply); + + + + + From f2bb557a10d4229b4df7029b0f2bffbe90d9527f Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Sun, 23 Dec 2018 17:02:28 -0600 Subject: [PATCH 25/33] added example for dangerious goods data service --- examples/dangerous-goods-data-service.php | 108 ++++++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 examples/dangerous-goods-data-service.php diff --git a/examples/dangerous-goods-data-service.php b/examples/dangerous-goods-data-service.php new file mode 100644 index 00000000..2b81883d --- /dev/null +++ b/examples/dangerous-goods-data-service.php @@ -0,0 +1,108 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$validateDangerousGoodsRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$validateDangerousGoodsRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$validateDangerousGoodsRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +$validateDangerousGoodsRequest->TransactionDetail->CustomerTransactionId = 'validate dangerous goods example'; + +// Version. +$validateDangerousGoodsRequest->Version->ServiceId = 'dgds'; +$validateDangerousGoodsRequest->Version->Major = 3; +$validateDangerousGoodsRequest->Version->Intermediate = 0; +$validateDangerousGoodsRequest->Version->Minor = 0; + +// Shipment details (origin). +$validateDangerousGoodsRequest->ShipmentDetail->Origin->StreetLines = ['INPUT YOUR INFORMATION']; +$validateDangerousGoodsRequest->ShipmentDetail->Origin->City = 'Memphis'; +$validateDangerousGoodsRequest->ShipmentDetail->Origin->StateOrProvinceCode = 'TN'; +$validateDangerousGoodsRequest->ShipmentDetail->Origin->PostalCode = '381167510'; +$validateDangerousGoodsRequest->ShipmentDetail->Origin->CountryCode = 'US'; +$validateDangerousGoodsRequest->ShipmentDetail->Origin->Residential = true; + +// Shipment details (destination). +$validateDangerousGoodsRequest->ShipmentDetail->Destination->StreetLines = ['INPUT YOUR INFORMATION']; +$validateDangerousGoodsRequest->ShipmentDetail->Destination->City = 'Colorado Springs'; +$validateDangerousGoodsRequest->ShipmentDetail->Destination->StateOrProvinceCode = 'CO'; +$validateDangerousGoodsRequest->ShipmentDetail->Destination->PostalCode = '80903'; +$validateDangerousGoodsRequest->ShipmentDetail->Destination->CountryCode = 'US'; + +// Shipment details (continued). +$validateDangerousGoodsRequest->ShipmentDetail->CarrierCode = SimpleType\CarrierCodeType::_FDXE; +$validateDangerousGoodsRequest->ShipmentDetail->ServiceType = SimpleType\ServiceType::_PRIORITY_OVERNIGHT; +$validateDangerousGoodsRequest->ShipmentDetail->ShipDate = (new DateTime())->format('Y-m-d'); +$validateDangerousGoodsRequest->ShipmentDetail->Offeror = 'Gagan'; +$validateDangerousGoodsRequest->ShipmentDetail->Signatory->ContactName = 'Preet'; +$validateDangerousGoodsRequest->ShipmentDetail->Signatory->Title = 'Mr'; +$validateDangerousGoodsRequest->ShipmentDetail->Signatory->Place = 'Memphis'; + +// Shipment details (infectious substance reponsibile contact). +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->ContactId = 'GD1057'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->PersonName = 'INPUT YOUR INFORMATION'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->Title = 'Mr.'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->CompanyName = 'D Company'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->PhoneNumber = 'INPUT YOUR INFORMATION'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->PhoneExtension = '02033469'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->PagerNumber = 'INPUT YOUR INFORMATION'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->FaxNumber = 'INPUT YOUR INFORMATION'; +$validateDangerousGoodsRequest->ShipmentDetail->InfectiousSubstanceResponsibleContact->EMailAddress = 'Dhillon@dg.com'; +$validateDangerousGoodsRequest->ShipmentDetail->EmergencyContactNumber = 'INPUT YOUR INFORMATION'; +$validateDangerousGoodsRequest->ShipmentDetail->AircraftCategoryType = SimpleType\DangerousGoodsAircraftCategoryType::_CARGO_AIRCRAFT_ONLY; + +// Handling unit groups. +$validateDangerousGoodsRequest->HandlingUnitGroups = [new ComplexType\UploadedDangerousGoodsHandlingUnitGroup()]; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->Id = 'UDDG'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->NumberOfHandlingUnits = 1; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->TrackingNumberUnits = [new ComplexType\TrackingNumberUnit()]; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->TrackingNumberUnits[0]->TrackingIds = [new ComplexType\TrackingId()]; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->TrackingNumberUnits[0]->TrackingIds[0]->TrackingIdType = SimpleType\TrackingIdType::_FEDEX; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->TrackingNumberUnits[0]->TrackingIds[0]->TrackingNumber = 'INPUT YOUR INFORMATION'; + +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->Attributes = [SimpleType\DangerousGoodsHandlingUnitAttributeType::_OVERPACK]; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups = [new ComplexType\UploadedDangerousGoodsContainerGroup()]; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->ContainerType = 'Aluminum Boxes'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities = [new ComplexType\UploadedDangerousGoodsCommodityContent()]; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->IdType = 'UN'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->Id = '1845'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->SequenceNumber = '2'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->PackingGroup = 'UNDEFINED'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->PackingInstructions = '954'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->AircraftCategoryType = SimpleType\DangerousGoodsAircraftCategoryType::_PASSENGER_AND_CARGO_AIRCRAFT; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->ProperShippingName = 'Dry'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->PrimaryClass = '9'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Description->Percentage = '0.0'; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Quantity->Amount = 5; +$validateDangerousGoodsRequest->HandlingUnitGroups[0]->HandlingUnit->ContainerGroups[0]->Container->Commodities[0]->Quantity->Units = 'KG'; + + +$request = new Request(); + +try { + $validateDangerousGoodsReply = $request->getValidateDangerousGoodsReply($validateDangerousGoodsRequest); + + var_dump($validateDangerousGoodsReply); +} catch (\Exception $e) { + echo $request->getSoapClient()->__getLastResponse(); +} + + + + + + + + + + + From 0b488989490b146cfd95f9284a46ad3ea2210d4d Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Mon, 24 Dec 2018 09:00:21 -0600 Subject: [PATCH 26/33] added example for dangerous goods list detail --- examples/dangerous-goods-list-detail.php | 54 ++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 examples/dangerous-goods-list-detail.php diff --git a/examples/dangerous-goods-list-detail.php b/examples/dangerous-goods-list-detail.php new file mode 100644 index 00000000..098e469b --- /dev/null +++ b/examples/dangerous-goods-list-detail.php @@ -0,0 +1,54 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$listDangerousGoodsRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$listDangerousGoodsRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$listDangerousGoodsRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +$listDangerousGoodsRequest->TransactionDetail->CustomerTransactionId = 'list dangerous goods request example'; + +// Version. +$listDangerousGoodsRequest->Version->ServiceId = 'dgds'; +$listDangerousGoodsRequest->Version->Major = 1; +$listDangerousGoodsRequest->Version->Intermediate = 0; +$listDangerousGoodsRequest->Version->Minor = 0; + +// Origin. +$listDangerousGoodsRequest->Origin->StreetLines = ['INPUT YOUR INFORMATION']; +$listDangerousGoodsRequest->Origin->City = 'Memphis'; +$listDangerousGoodsRequest->Origin->StateOrProvinceCode = '381167510'; +$listDangerousGoodsRequest->Origin->PostalCode = 80903; +$listDangerousGoodsRequest->Origin->CountryCode = 'US'; + +// Destination. +$listDangerousGoodsRequest->Destination->StreetLines = ['INPUT YOUR INFORMATION']; +$listDangerousGoodsRequest->Destination->City = 'Colorado Springs'; +$listDangerousGoodsRequest->Destination->StateOrProvinceCode = 'CO'; +$listDangerousGoodsRequest->Destination->PostalCode = 80903; +$listDangerousGoodsRequest->Destination->CountryCode = 'US'; + +// Service details. +$listDangerousGoodsRequest->CarrierCode = SimpleType\CarrierCodeType::_FDXE; +$listDangerousGoodsRequest->ServiceType = SimpleType\ServiceType::_PRIORITY_OVERNIGHT; +$listDangerousGoodsRequest->ShipDate = (new DateTime())->format('Y-m-d'); +$listDangerousGoodsRequest->TrackingNumber = 'INPUT YOUR INFORMATION'; + + +$request = new Request(); + +try { + $listDangerousGoodsReply = $request->getListDangerousGoodsReply($listDangerousGoodsRequest); + var_dump($listDangerousGoodsReply); +} catch (\Exception $e) { + echo $request->getSoapClient()->__getLastResponse(); +} From 0be9c2240a9df4d242ab11b2b0b9f2ac80dd31c8 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Mon, 24 Dec 2018 09:19:38 -0600 Subject: [PATCH 27/33] Added example for in flight shipment service --- examples/in-flight-shipment-service.php | 82 +++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 examples/in-flight-shipment-service.php diff --git a/examples/in-flight-shipment-service.php b/examples/in-flight-shipment-service.php new file mode 100644 index 00000000..b51893a4 --- /dev/null +++ b/examples/in-flight-shipment-service.php @@ -0,0 +1,82 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$processDeliveryRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$processDeliveryRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$processDeliveryRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +// Version. +$processDeliveryRequest->Version->ServiceId = 'ifss'; +$processDeliveryRequest->Version->Major = 1; +$processDeliveryRequest->Version->Intermediate = 0; +$processDeliveryRequest->Version->Minor = 0; + +// Action requested. +$processDeliveryRequest->ActionRequested = SimpleType\DeliveryActionType::_ADD; + +// Unique tracking number. +$processDeliveryRequest->UniqueTrackingNumber->TrackingNumber = '794908703761'; +$processDeliveryRequest->UniqueTrackingNumber->TrackingNumberUniqueIdentifier = '2458095000~794908703761~FX'; +$processDeliveryRequest->UniqueTrackingNumber->ShipDate = '2017-12-07'; + +// Recipient contact. +$processDeliveryRequest->RecipientContact->PersonName = 'Recipient_Name'; +$processDeliveryRequest->RecipientContact->CompanyName = 'CSCSWAPI-WBUS1100'; +$processDeliveryRequest->RecipientContact->PhoneNumber = '9018549236'; +$processDeliveryRequest->RecipientContact->EMailAddress = 'recipient@yahoo.com'; + +// Destination address. +$processDeliveryRequest->DestinationAddress->StreetLines = ['Recipient_Address_Line1', 'Recipient_Address_Line2']; +$processDeliveryRequest->DestinationAddress->City = 'CARROLTON'; +$processDeliveryRequest->DestinationAddress->StateOrProvinceCode = 'TX'; +$processDeliveryRequest->DestinationAddress->PostalCode = '750007'; +$processDeliveryRequest->DestinationAddress->CountryCode = 'US'; +$processDeliveryRequest->DestinationAddress->Residential = false; + +// Delivery request detail. +$processDeliveryRequest->DeliveryRequestDetail->Type = SimpleType\DeliveryOptionType::_REDIRECT_TO_HOLD_AT_LOCATION; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationId = 'ADSA'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationNumber = 0; + +// Holding contact. +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->ContactId = 'DRB0705'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->PersonName = 'DEOYANEE BHADANE'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->Title = 'Ms.'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->CompanyName = 'DEOYAROHIT0705$'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->PhoneNumber = '9762308621'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->PhoneExtension = '02033469'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->PagerNumber = '9762308621'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->FaxNumber = '9762308621'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->EMailAddress = 'Deoyanee*Bhadane@DeoyaRohit.com'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Contact->EMailAddress = 'Deoyanee*Bhadane@DeoyaRohit.com'; + +// Holding address. +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Address->StreetLines = ['1919 E FRANKFORD RD - S G']; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Address->City = 'CARROLLTON'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Address->StateOrProvinceCode = 'TX'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Address->PostalCode = '75007'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Address->CountryCode = 'US'; +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->HoldingLocationContactAndAddress->Address->Residential = false; + +// Comments. +$processDeliveryRequest->DeliveryRequestDetail->RedirectToHoldAtLocationDetail->Comments = 'Please redirect to new address.'; + + +$request = new Request(); + +try { + $processDeliveryReply = $request->getProcessDeliveryReply($processDeliveryRequest); + var_dump($processDeliveryReply); +} catch (\Exception $e) { + echo $request->getSoapClient()->__getLastResponse(); +} From ab8079395e32030d5d4d9e4a59c7a8898a2da47a Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Mon, 24 Dec 2018 14:06:46 -0600 Subject: [PATCH 28/33] update open shipment example --- examples/create-open-shipment.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/create-open-shipment.php b/examples/create-open-shipment.php index 605bd73f..45a9eb0b 100644 --- a/examples/create-open-shipment.php +++ b/examples/create-open-shipment.php @@ -21,7 +21,7 @@ $createOpenShipmentRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; // version $createOpenShipmentRequest->Version->ServiceId = 'ship'; -$createOpenShipmentRequest->Version->Major = 11; +$createOpenShipmentRequest->Version->Major = 15; $createOpenShipmentRequest->Version->Intermediate = 0; $createOpenShipmentRequest->Version->Minor = 0; From 38d80811bc8b7ced09fdbfa5c7bef82e1fa56c56 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Mon, 24 Dec 2018 14:16:41 -0600 Subject: [PATCH 29/33] added example for async service --- examples/async-retrieve-job-results.php | 35 +++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 examples/async-retrieve-job-results.php diff --git a/examples/async-retrieve-job-results.php b/examples/async-retrieve-job-results.php new file mode 100644 index 00000000..2edd0b37 --- /dev/null +++ b/examples/async-retrieve-job-results.php @@ -0,0 +1,35 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$retrieveJobResultsRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$retrieveJobResultsRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$retrieveJobResultsRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +$retrieveJobResultsRequest->TransactionDetail->CustomerTransactionId = 'testing async service'; + +// Version. +$retrieveJobResultsRequest->Version->ServiceId = 'async'; +$retrieveJobResultsRequest->Version->Major = 4; +$retrieveJobResultsRequest->Version->Intermediate = 0; +$retrieveJobResultsRequest->Version->Minor = 0; + +$retrieveJobResultsRequest->JobId = 'your job id'; + + +$request = new Request(); +try { + $retrieveJobResultsReply = $request->getRetrieveJobResultsReply($retrieveJobResultsRequest); +} catch (\Exception $e) { + echo $request->getSoapClient()->__getLastResponse(); +} + From 42de960c8e14a28e9a0b284d50aa3dc4656e7f6c Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Mon, 24 Dec 2018 14:33:57 -0600 Subject: [PATCH 30/33] create pickup example --- examples/create-pickup.php | 75 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 examples/create-pickup.php diff --git a/examples/create-pickup.php b/examples/create-pickup.php new file mode 100644 index 00000000..0e949382 --- /dev/null +++ b/examples/create-pickup.php @@ -0,0 +1,75 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$createPickupRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$createPickupRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$createPickupRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +// Version. +$createPickupRequest->Version->ServiceId = 'disp'; +$createPickupRequest->Version->Major = 17; +$createPickupRequest->Version->Intermediate = 0; +$createPickupRequest->Version->Minor = 0; + +$createPickupRequest->TransactionDetail->CustomerTransactionId = 'create pickup request example'; +$createPickupRequest->TransactionDetail->Localization->LanguageCode = 'EN'; +$createPickupRequest->TransactionDetail->Localization->LocaleCode = 'ES'; + +// Associated account number. +$createPickupRequest->AssociatedAccountNumber->Type = SimpleType\AssociatedAccountNumberType::_FEDEX_EXPRESS; +$createPickupRequest->AssociatedAccountNumber->AccountNumber = FEDEX_ACCOUNT_NUMBER; + +// Origin detail contact. +$createPickupRequest->OriginDetail->PickupLocation->Contact->ContactId = 'KR1059'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->PersonName = 'INPUT YOUR INFORMATION'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->Title = 'Mr.'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->CompanyName = 'DEOYAROHIT0905$'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->PhoneNumber = 'INPUT YOUR INFORMATION'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->PhoneExtension = 'INPUT YOUR INFORMATION'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->PagerNumber = '9962308621'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->FaxNumber = '9962308621'; +$createPickupRequest->OriginDetail->PickupLocation->Contact->EMailAddress = 'kaustubha_ramdasi@syntelinc.com'; + +// Origin detail address. +$createPickupRequest->OriginDetail->PickupLocation->Address->StreetLines = ['INPUT YOUR INFORMATION']; +$createPickupRequest->OriginDetail->PickupLocation->Address->City = 'Memphis'; +$createPickupRequest->OriginDetail->PickupLocation->Address->StateOrProvinceCode = 'TN'; +$createPickupRequest->OriginDetail->PickupLocation->Address->PostalCode = '38125'; +$createPickupRequest->OriginDetail->PickupLocation->Address->CountryCode = 'US'; + +$createPickupRequest->OriginDetail->PackageLocation = SimpleType\PickupBuildingLocationType::_FRONT; +$createPickupRequest->OriginDetail->BuildingPart = SimpleType\BuildingPartCode::_DEPARTMENT; +$createPickupRequest->OriginDetail->BuildingPartDescription = 'Building part description'; +$createPickupRequest->OriginDetail->ReadyTimestamp = date('c'); +$createPickupRequest->OriginDetail->CompanyCloseTime = '19:00:00'; +$createPickupRequest->OriginDetail->Location = 'NQAA'; +$createPickupRequest->OriginDetail->SuppliesRequested = 'supplies requested'; + +$createPickupRequest->PackageCount = 1; +$createPickupRequest->TotalWeight->Units = SimpleType\WeightUnits::_LB; +$createPickupRequest->TotalWeight->Value = 50; + +$createPickupRequest->CarrierCode = SimpleType\CarrierCodeType::_FDXE; +$createPickupRequest->OversizePackageCount = 0; +$createPickupRequest->Remarks = 'remarks'; +$createPickupRequest->CommodityDescription = 'test environment - please do not process pickup'; +$createPickupRequest->CountryRelationship = SimpleType\CountryRelationshipType::_DOMESTIC; + + +$request = new Request(); +try { + $createPickupReply = $request->getCreatePickupReply($createPickupRequest); + var_dump($createPickupReply); +} catch (\Exception $e) { + echo $request->getSoapClient()->__getLastResponse(); +} From c5efff966e609a068e9f4ab17d8f0c3d99c9543b Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Wed, 26 Dec 2018 16:39:06 -0600 Subject: [PATCH 31/33] added example for upload documents service --- examples/CommercialInvoice.xls | Bin 0 -> 5632 bytes examples/upload-documents.php | 44 +++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 examples/CommercialInvoice.xls create mode 100644 examples/upload-documents.php diff --git a/examples/CommercialInvoice.xls b/examples/CommercialInvoice.xls new file mode 100644 index 0000000000000000000000000000000000000000..5e04be84fe643892e728f9a69415e98e983f84ba GIT binary patch literal 5632 zcmeHLU2IfU5T3g~85i6jype8Cu!z8H-^G0_K2Y~Os)_!CIbr{aqt8nYOTA=0kjH}|f+F1vKA4F=QM z&N*}E%sDe>&YU^t^y{zcX3u=E?t&D+ed3q-Tu3TBd;_$Z{|<}zK$AD0%jNQHkSlN# zd0@`9m1`KlA_jq6^Ho6dLT-H%O=-o{C3v7mM)6CFC3|E9^_V<|6)zvwB4WJi%IWFN z7v;z=CbOb{!2^r=itS$iGk-IW`+&SPxtSYydU_ z*8*<=-U_@8xDH62x4Sjzji4>}yVrxBz(KpAox+!}dLxu0seL!%EuF|oFz;*I385mVbw zXxXe~4N5~k);`}Wrvq{MIplLMz2*maDZXP%TqDUmvtb?6G)i zR`<=6{FbwzB@fdU`7})Vm&@bRTgBu{@i}TS`Ts9}3O=UcP{~81-)sbe zaDj&e!N-%u$w1-1WuR(UI)E8)&(^8cVGMWmtxMnT>+9}(O8FUZ@^B}8iD?}}%S>R4 z_Gr^`LS-A|4%s9U>54S>CWq~D>k<1It7mjLJ`(M*2al%WW6hC{yCXXrrBxz}%5}#F zZ7b3}sR~}!G6G|^DO~K_?4esgPqv?*Xg{CrZ1vD*q#08i0P;5>Q6p;P`{!#z9>v%p zc~N~R#w%4kbOAmdz|JB%rRn1`Db1AyQ7dzLY&!?F$j{PEcV-_#BV3uK>r@nes}+Ct zE_~NYAlst+P}Ug_A0F^YrS@YW@tJVHuUUJd) z3Fp{w`YgG`OdX|5?&)-xhZ~F{L(qe>$KU+*%KoA7+b2zF+x+2oT%;F(^f}vUIPYgM zARYNIkoUC5f!uZjK;GAm0BPjKIguup?m!&_X8y3rQkpd(20Z)3^WPkL<1F)locuBV z3u%zoKq>pF&v)+2bEmhi51)D+_D8S0yBoY<0q-Dq%uXDf$iQP?+FFW_<`q~b4=m^V zPuH(t4;C}i59YL+4<5tob4(6PpT0v67ZblOuO89DctK9m9B^G>PvfK}F2-CJG!J8s z?1v49JQC%R)X(`a{}9UQ#k{oF6*QnXC3ZR8ipo?%zoXeHiwYGmH{hFZH9}Ah$WhFH z7`I-&{rBR(00~_aa?-dBkAhPgT3r1+5XzlD6V5yCkU`lE4gG3^t^a{onmyb9!TdKt TciPpz9Mw|&?|py&*ZThiJR30- literal 0 HcmV?d00001 diff --git a/examples/upload-documents.php b/examples/upload-documents.php new file mode 100644 index 00000000..f6dba532 --- /dev/null +++ b/examples/upload-documents.php @@ -0,0 +1,44 @@ +WebAuthenticationDetail->UserCredential->Key = FEDEX_KEY; +$uploadDocumentsRequest->WebAuthenticationDetail->UserCredential->Password = FEDEX_PASSWORD; +$uploadDocumentsRequest->ClientDetail->AccountNumber = FEDEX_ACCOUNT_NUMBER; +$uploadDocumentsRequest->ClientDetail->MeterNumber = FEDEX_METER_NUMBER; + +// Version +$uploadDocumentsRequest->Version->ServiceId = 'cdus'; +$uploadDocumentsRequest->Version->Major = 11; +$uploadDocumentsRequest->Version->Intermediate = 0; +$uploadDocumentsRequest->Version->Minor = 0; + +$uploadDocumentsRequest->OriginCountryCode = 'US'; +$uploadDocumentsRequest->DestinationCountryCode = 'US'; +$uploadDocumentsRequest->Usage = SimpleType\DocumentUsageType::_ELECTRONIC_TRADE_DOCUMENTS; + +// Document details. +$uploadDocumentsRequest->Documents = [new ComplexType\UploadDocumentDetail()]; +$uploadDocumentsRequest->Documents[0]->LineNumber = 1; +$uploadDocumentsRequest->Documents[0]->CustomerReference = 'REFESBD2700L3C120120106104505'; +$uploadDocumentsRequest->Documents[0]->DocumentType = SimpleType\UploadDocumentType::_COMMERCIAL_INVOICE; +$uploadDocumentsRequest->Documents[0]->FileName = 'CommercialInvoice.xls'; + +// Document content. +$uploadDocumentsRequest->Documents[0]->DocumentContent = base64_encode(file_get_contents(__DIR__ . '/CommercialInvoice.xls')); + +$request = new Request(); +try { + $uploadDocumentsReply = $request->getUploadDocumentsReply($uploadDocumentsRequest); + var_dump($uploadDocumentsReply); +} catch (\Exception $e) { + echo $request->getSoapClient()->__getLastResponse(); +} From 01de822ef5d8ec256d82de921e134e76ac44a804 Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Thu, 27 Dec 2018 08:37:31 -0600 Subject: [PATCH 32/33] update tests --- tests/FedEx/Tests/TestCase.php | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/FedEx/Tests/TestCase.php b/tests/FedEx/Tests/TestCase.php index 790aff46..065c731f 100644 --- a/tests/FedEx/Tests/TestCase.php +++ b/tests/FedEx/Tests/TestCase.php @@ -48,6 +48,7 @@ protected function getAllRequestObjects() new \FedEx\AddressValidationService\Request(), new \FedEx\AsyncService\Request(), new \FedEx\CloseService\Request(), + new \FedEx\CountryService\Request(), new \FedEx\CourierDispatchService\Request(), new \FedEx\DGDSService\Request(), new \FedEx\DGLDService\Request(), From 6831160b4031b8f9d11e877c7552e1035b60326f Mon Sep 17 00:00:00 2001 From: Jeremy Dunn Date: Thu, 27 Dec 2018 09:24:54 -0600 Subject: [PATCH 33/33] updated changelog --- CHANGELOG.md | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cb6d97db..a9e0bd0e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # CHANGELOG -## 3.0 (released 2017-11-04) +## 3.0 (released 2018-12-27) - Updated Upload Document Service - Updated Pickup Service - Updated Ship Service @@ -8,26 +8,28 @@ - Updated Rate Service - Updated Track Service - Updated Locations Service +- Added Country Service +- Added/updated usage examples |Service|Version| |---|---| |Address Validation|4| |Close|5| |Courier Dispatch|3| -|Locations|7| +|Locations|9| |Package Movement Information|5| -|Pickup|15| -|Rate|22| +|Pickup|17| +|Rate|24| |Return Tag|1| -|Ship|21| -|Track|14| +|Ship|23| +|Track|16| |Upload Document|11| -|Open Ship|11| -|Validation Availability and Commitment Service|6| +|Open Ship|15| +|Validation Availability and Commitment Service|8| |ASYNC Transaction Service|4| |In Flight Shipment Service|1| |DGLD Service|1| -|DGDS Service|4| +|DGDS Service|3| ## 2.6 (released 2017-11-02) - Added Dangerous Goods Data Service