Klasa stworzona na potrzeby integracji sklepu internetowego z serwisem kurierskim DPD. Klasa posiada następujące metody:
- generatePackagesNumbersV1 -> Generuje numer listu przewozowego
- generateSpedLabelsV1 -> Generuje etykietę na podstawie numeru listu przewozowego
- generateProtocolV1 -> Generuje protokół przekazania na podstawie numerów identyfikacyjnych zamówienia
- appendParcelsToPackageV1 -> Pozwala na dodanie paczki do zamówienia
- packagesPickupCallV1 -> Pozwala na wezwanei kuriera, aby odebrał paczki z określonego protokołu
- findPostalCodeV1 -> Pozwala na sprawdzenie poprawności kodu pocztowego
1.0.0
generatePackagesNumbersV1
Przyjmuje parametry:
- ParcelsArray -> Tablica paczek
- Payer -> osoba, która zostanie pokryta kosztami za usługę
- ReceiverArray -> Tablica z danymi Odbiorcy
- SenderArray -> Tablica z danymi Nadawcy
- ServicesArray -> Tablica z dodatkowymi usługami.
- Ref -> Dodatkowe informacje dla kuriera
Parametry wyjściowe:
- object z danymi (Dane Nadawcy, PackageID, Tablica z danymi paczki/ek (ParcelID, Status, Numer Identyfikacyjny)) Przykładowe wywołanie:
include 'dpd.class.php';
//Definiowanie danych autoryzacyjnych//
//konto testowe//
define('__user__', 'test');
define('__fid__', '1495');
define('__password__', 'KqvsoFLT2M');
define('__wsdl__', 'https://dpdservicesdemo.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL');
//Parametry metody//
$ParcelsArray = [
0=>[
'content'=>'Zawartość paczki 1',
'customerData1'=>'Proszę uważać',
'weight'=>'5',
],
1=>[
'content'=>'Zawartość paczki 2',
'customerData1'=>'Szkło!',
'weight'=>'18',
],
];
$ReceiverArray = [
'address' => 'RAddress',
'city' => 'RCity',
'company' => 'Rcompany',
'countryCode' => 'PL',
'email'=> '[email protected]',
'name' => 'RName',
'phone' => 'RPhone',
'postalCode' => '41100',
];
$SenderArray = [
'address' => 'SAddress',
'city' => 'SCity',
'company' => 'Scompany',
'countryCode' => 'PL',
'email'=> '[email protected]',
'name' => 'SName',
'fid' => '1495',
'phone' => 'SPhone',
'postalCode' => '41100',
];
$DPD = new DPD();
$Result = $DPD->generatePackagesNumbersV1($ParcelsArray, 'SENDER', $ReceiverArray, $SenderArray);RESPONSE
stdClass Object
(
[Method] => generatePackagesNumbersV1
[Sender] => Array
(
[address] => SAddress
[city] => SCity
[company] => Scompany
[countryCode] => PL
[email] => [email protected]
[name] => SName
[fid] => 1495
[phone] => SPhone
[postalCode] => 41100
)
[PackageID] => 00000
[Parcels] => Array
(
[0] => stdClass Object
(
[parcelId] => 000000
[status] => OK
[waybill] => 0000000000000S
)
[1] => stdClass Object
(
[parcelId] => 000000
[status] => OK
[waybill] => 0000000000000S
)
)
)generateSpedLabelsV1
Przyjmuje parametry:
- SenderArray -> Tablica z danymi odbiorcy
- PackageID -> Int z Numerem przewozowym
Parametry wyjściowe:
- objekt z Nazwą Metody Oraz BASE64 PDF
Przykładowe wywołanie:
include 'dpd.class.php';
//Definiowanie danych autoryzacyjnych//
//konto testowe//
define('__user__', 'test');
define('__fid__', '1495');
define('__password__', 'KqvsoFLT2M');
define('__wsdl__', 'https://dpdservicesdemo.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL');
//Parametry metody//
$SenderArray = [
'address' => 'SAddress',
'city' => 'SCity',
'company' => 'Scompany',
'countryCode' => 'PL',
'email'=> '[email protected]',
'name' => 'SName',
'fid' => '1495',
'phone' => 'SPhone',
'postalCode' => '41100',
];
$PackageID = '00000';
$DPD = new DPD();
$Result = $DPD->generateSpedLabelsV1($SenderArray, $PackageID);RESPONSE
stdClass Object
(
[Method] => generateSpedLabelsV1
[PDF] => (PDF ZAKODOWANY BASE64)
)generateProtocolV1
Przyjmuje parametry:
- PackageIDArray -> Tablica kodów PackageID
- FID -> FID oddziału, z którego zostaje generowany protokół
Parametry wyjściowe:
- objekt z Nazwą Metody, NIE ZAKODOWANY PDF, DocumentID potrzebny do wezwania kuriera
Przykładowe wywołanie:
include 'dpd.class.php';
//Definiowanie danych autoryzacyjnych//
//konto testowe//
define('__user__', 'test');
define('__fid__', '1495');
define('__password__', 'KqvsoFLT2M');
define('__wsdl__', 'https://dpdservicesdemo.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL');
//Parametry metody//
$PackageIDArray = [
0=>'00000',
1=>'00000',
];
$FID = '1495';
$DPD = new DPD();
$Result = $DPD->generateProtocolV1($PackageIDArray, '1495');RESPONSE
stdClass Object
(
[Method] => generateProtocolV1
[PDF] => PDF
[DocumentID] => 000000
)appendParcelsToPackageV1
Przyjmuje parametry:
- PackageID -> kodów PackageID paczki do której ma zostać dodana parcela
- Content -> zawartość paczki
- Weight -> Waga paczki.
- CustomerData -> String(27) z dodatkowymi informacjami o paczce.
Parametry wyjściowe:
- objekt z Nazwą Metody oraz Numerem przewozowym Paczki
Przykładowe wywołanie:
include 'dpd.class.php';
//Definiowanie danych autoryzacyjnych//
//konto testowe//
define('__user__', 'test');
define('__fid__', '1495');
define('__password__', 'KqvsoFLT2M');
define('__wsdl__', 'https://dpdservicesdemo.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL');
//Parametry metody//
$PackageID = '000000';
$Content = 'Zawartość';
$Weight = '7';
$CustomerData = 'Dodatkowe informacje';
$DPD = new DPD();
$Result = $DPD->appendParcelsToPackageV1($PackageID, $Content, $Weight, $CustomerData);
RESPONSE
stdClass Object
(
[Method] => appendParcelsToPackageV1
[wybill] => 0000000000000S
)packagesPickupCallV1
Przyjmuje parametry:
- FID -> FID oddziału, z którego zostaje generowany protokół
- PickupDate -> Data odbioru przez kuriera w formacje RRRR-MM-DD
- PickupTimeFrom -> Godzina, od której kurier może odbierać paczki w formacie 00:00
- PickupTimeTo -> Godzina, do której kurier może odbierać paczki w formacie 00:00
- DocumentID -> Numer dokumentu, na którym są umieszczone wszystkie paczki, które kurier ma zabrać (generowany podczas korzystania z metody generateProtocolV1)
- ContactArray -> Tablica z danymi kontaktowymi
Parametry wyjściowe:
- objekt z Nazwą Metody, DocumentID oraz statusem zatwierdzenia.
Przykładowe wywołanie:
include 'dpd.class.php';
//Definiowanie danych autoryzacyjnych//
//konto testowe//
define('__user__', 'test');
define('__fid__', '1495');
define('__password__', 'KqvsoFLT2M');
define('__wsdl__', 'https://dpdservicesdemo.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL');
//Parametry metody//
$FID = '1495';
$PickupDate = '2015-01-02';
$PickupTimeFrom = '12:00';
$PickupTimeTo = '18:00';
$DocumentID = '000000';
$DPD = new DPD();
$Result = $DPD->packagesPickupCallV1($FID, $PickupDate, $PickupTimeFrom, $PickupTimeTo, $DocumentID);RESPONSE
stdClass Object
(
[Method] => packagesPickupCallV1
[DocumentID] => 000000
[Status] => OK
)findPostalCodeV1
Przyjmuje parametry:
- PostalCode - kod pocztowy do sprawdzenia
Parametry wyjściowe:
- objekt z Nazwą Metody, Kodem pocztowym oraz Statusem, bądź błędem.
Przykładowe wywołanie:
include 'dpd.class.php';
//Definiowanie danych autoryzacyjnych//
//konto testowe//
define('__user__', 'test');
define('__fid__', '1495');
define('__password__', 'KqvsoFLT2M');
define('__wsdl__', 'https://dpdservicesdemo.dpd.com.pl/DPDPackageObjServicesService/DPDPackageObjServices?WSDL');
//Parametry metody//
$PostalCode = '41100';
$DPD = new DPD();
$Result= $DPD->findPostalCodeV1($PostalCode);RESPONSE
stdClass Object
(
[Method] => findPostalCodeV1
[PostalCode] => 41100
[Status] => OK
)code
metoda pozwala na podgląd uzyskanego obiektu z dowolnej metody
Przykładowe wywołanie:
$DPD->code($Result);Freeware