Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [klasa] Poczta Polska API, śledzenie przesyłki, status przesyłki, Klasa do śledzenia przesyłek wysłanych Pocztą Polską, status przesyłki
jaslanin
post 1.04.2013, 14:01:20
Post #1





Grupa: Zarejestrowani
Postów: 511
Pomógł: 143
Dołączył: 13.03.2010
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Klasa do śledzenia przesyłki,pobierania info o jej stanie z API Poczty Polskiej. Dodatkową funkcją jest konwersja kodu zdarzenia np "P_D" na opis czyli np. "Doręczono" itd.

Link do pobrania: https://github.com/LPodolski/Polish_Post_Tr...hive/master.zip

Szczegółowe info o API Poczty Polskiej i dokumentacja API dostępna na stronie:
http://www.poczta-polska.pl/webservices/

Przykład użycia:

  1. require_once 'polish_post_tracking/autoloder.php';
  2.  
  3. $PolishPostApi = new \PolishPostTracking\Api;
  4. $packageTracking = $PolishPostApi->checkPackage( '00259007733174854852' );
  5.  
  6. // apply description to event codes, so instead of P_D you get "Doręczenie" in "opisZdarzenia" property
  7. \PolishPostTracking\EventMapper::applyMappingToCheckPackage( $packageTracking );
  8.  
  9. print_r( $packageTracking );


Przykład zwrotki:

http://pastebin.com/XkFQBxDG

Ten post edytował jaslanin 1.04.2013, 14:05:06


--------------------
Good luck and happy PHP'ing
Go to the top of the page
+Quote Post
Crozin
post 1.04.2013, 14:43:09
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

Ostrzeżenie: (0%)
-----


- Brak obsługi composera,
- Brak/błędne trzymanie się standardów PSR,
- Funkcja autoloadera działa niepoprawnie. Powinna zawsze zwracać TRUE/FALSE, nie sprawdza czy dana klasa rzeczywiście istnieje w dołączanym pliku,
- Bezpośrednie korzystanie z klasy Exception przy rzucaniu wyjątków,
- Korzystanie z nieistniejącej klasy PolishPostTracking\Exception,
- Mieszanie w zwracanych typach metod, np. PolishPostTracking\EventMapper::mapCode() powinna rzucić wyjątkiem, a nie zwracać FALSE,
- Klasa PolishPostTracking\Api udostępnia jedynie jedną metodę operującą na webserwisie PP, nie udostępniając jednocześnie bezpośredniego dostępu do klienta SOAP.

W skrócie: dużo do poprawy.

Ten post edytował Crozin 1.04.2013, 14:43:27
Go to the top of the page
+Quote Post
jaslanin
post 7.04.2013, 17:32:24
Post #3





Grupa: Zarejestrowani
Postów: 511
Pomógł: 143
Dołączył: 13.03.2010
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Wersja 1.3:

- obsługa composera
- usunięcie EventMapper'a, nie zauważyłem że jest przekazywany w odpowiedzi API kod zdarzenia i nazwa
- udostępnienie bezpośredniego dostępu do SOAP

Przykład wywołania:

  1. require_once 'PolishPostTracking/Autoloder.php';
  2.  
  3. try {
  4.  
  5. $PolishPostApi = new \PolishPostTracking\Api;
  6. $packageTracking = $PolishPostApi->checkPackage( '00259007733174854852' );
  7.  
  8. print_r( $packageTracking );
  9.  
  10. } catch( \PolishPostTracking\Exception $E ) {
  11. echo 'Error occurred';
  12.  
  13. // in production inform admin by email, save to log file
  14. echo '<br> ' . $E->getMessage();
  15. }


Link do pobrania: https://github.com/LPodolski/Polish_Post_Tr...hive/master.zip

Zwrotka: http://pastebin.com/gBdf6DKv

Zależność composer'a ( composer . json ):
  1. {
  2. "require": {
  3. "polish_post_tracking/polish_post_tracking": "dev-master"
  4. }
  5. }


Ten post edytował jaslanin 7.04.2013, 17:40:36


--------------------
Good luck and happy PHP'ing
Go to the top of the page
+Quote Post
userphp
post 29.08.2019, 11:56:49
Post #4





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 7.08.2019

Ostrzeżenie: (0%)
-----


Ależ stary odkop!

Czy mógłbym prosić o pomoc, w jaki sposób odczytać np tylko miejscowosc w której aktualnie znajduje się przesyłka ?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 12:46