shusaura85 / fancourier-api

PHP library to work with the new Fan Courier API v2.0 (selfawb.ro / api.fancourier.ro)
MIT License
21 stars 9 forks source link

Nu mai detecteaza erorile cu noua versiune a API-ului #4

Closed besciualex closed 7 months ago

besciualex commented 7 months ago

Salut,

Vezi ca in AwbIntern.php, la functia setResult() au schimat raspunsul dat si trebuie sa inlocuiesti functia cu asta

public function setResult(array $data){
        //error_log(print_r($data, true));
        $this->hasErrors = false;
        $this->errors    = [];
        $this->details   = [];

        if (isset($data['errors']) && count($data['errors'])) {
            $this->hasErrors = true;
            $this->errors    = $data['errors'] ?? [];
        } else {
            $this->awb     = $data['awbNumber'];
            $this->details = [
                "tariff"      => $data['tariff'] ?? '',
                "packages"    => $data['packages'] ?? '',
                "letter"      => $data['letter'] ?? '',
                "routingCode" => $data['routingCode'] ?? '',
                "office"      => $data['office'] ?? '',
                "visualCode"  => $data['visualCode'] ?? '',
            ];
        }
}
shusaura85 commented 7 months ago

Salut,

Mersi de notificare. Se pare ca cei de la Fan au schimbat raspunsul sa returneze camp "success" in loc de "status" cum era cand am facut implementarea.

Am actualizat codul sa foloseasca noul camp "success" dar am adaugat sa verifice daca campul de "errors" are vreo eroare (in caz ca se trezesc cei de la Fan sa schimbe iar numele campului)

O sa public in cateva minute versiunea 2.0.1 cu fixul

besciualex commented 7 months ago

Cu placere! Nu stiu daca ai ultima versiune de documentatie pentru ca nu este publica. Cea de pe site-ul lor e din Mai 2023. In August au facut o noua versiune insa nu stiu de ce nu au publicat-o. In urma unei discutii cu ei am primit PDF-ul cu versiunea din August 2023 pe care ti-l atasez aici.... Eu m-am plictisit de cate erori mi-au dat pentru chestii care inainte mergeau OK si le-am dat direct JSON-urile lor printr-un cURL.

Seara faina!

RO_FANCourier_API 2.0 210823.pdf

shusaura85 commented 7 months ago

Mersi de documentatia actualizata, nu ca ar avea cine stie imbunatatiri.
Oricum, documentatia lor e praf, mi-a scos peri albi cand am facut implementarea ca tot dadea erori. Am rezolvat totul prin trial & error.
Din pacate or sa omoare API-ul vechi (sunt curios cati or sa inceapa sa injure FAN-ul pt documentatia asta de 2 bani) si nu am gasit nici o alta librarie in afara de asta a mea care sa implementeze noul API deci o sa fie haos pt cei care nu si-au facut update.

Bafta si iti urez sa nu mai ai parte de asemenea API-uri ca asta de la fan courier