Zasilkovna / magento2

module Packeta for Magento 2
MIT License
4 stars 6 forks source link

Return value of Packetery\Checkout\Model\Carrier\Facade::getMagentoCarrier() must be an instance of Packetery\Checkout\Model\Carrier\AbstractCarrier, bool returned #43

Closed peter-k77 closed 2 years ago

peter-k77 commented 2 years ago

Dobrý den,

Aktualizoval jsem Magento na verzi 2.4.3-p1 a zároveň i tento modul na poslední verzi. Když dám zobrazit objednávky (Packeta --> Orders), namísto gridu s objednávkami se mi zobrazí chybová hláška "Return value of Packetery\Checkout\Model\Carrier\Facade::getMagentoCarrier() must be an instance of Packetery\Checkout\Model\Carrier\AbstractCarrier, bool returned"

V logu (system.log) je pak toto: main.CRITICAL: TypeError: Return value of Packetery\Checkout\Model\Carrier\Facade::getMagentoCarrier() must be an instance of Packetery\Checkout\Model\Carrier\AbstractCarrier, bool returned in /var/www/mage_test/app/code/Packetery/Checkout/Model/Carrier/Facade.php:123

Z pohledu zákazníka proběhne vše OK, i objednávky se řádně zapisují do databáze (paketery_order). V Adminu můžu rovněž bez problémů nastavit Pricing Rules.

Můžete sa na to prosím podívat?

Děkuji

Peter Karak

FJiskra commented 2 years ago

Dobrý den,

problém by mělo částečně vyřešit odstranění sloupce Pickup Point Address. Viz odkaz dole. Odstraněním sloupce by se mělo docílit toho, že se Vám načte rozhraní seznamu objednávek. Myslím si, že v seznamu objednávek pro Packetu máte pravděpodobně i zásilky, které byly později přesměrované na jiného dopravce. Problému se budeme dále věnovat.

Neotestovaný hotfix posílám zde: https://github.com/FJiskra/magento2/releases/tag/v2.2.0-delivery_destination_removed

Odstraňuje hotfix váš problém?

FJiskra commented 2 years ago

Na jaké verzi byl zásilkovní modul a magento před aktualizací? Jaká byla nejstarší verze zásilkovního modulu, kterou jste používal? Byla ta verze menší než 2.0.1?

Jak se na vašich objednávkách dá provádět změna způsobu doručení?

V detailu objednávky v administraci existuje tlačítko s textem "Edit" pro angličtinu. Zobrazí vám Magento při kliknutí na tlačítko zprávu, že se objednávka zruší a následně se vytvoří kopie?

Nemáte nainstalovaný modul, který umí změnit způsob dopravy na objednávce bez vytváření kopie? Nemáte nezásilkovní modul, který by mohl manipulovat s tabulkou packetery_order?

Měníte ručně data v databázi přes nástroj, který není součástí Magenta? Máte v tabulce packetery_order velmi staré záznamy?

peter-k77 commented 2 years ago

Dobrý den,

Děkuji za expresní řešení. Hotfix problém odstranil.

Na editování objednávek využíváme Edit Order od Mageplaza, tam se přímo přepíše objednávka (nevytváří se nová). Koukal jsem ale do databáze do tabulky packetery_order, a je tam několik záznamů, kde poind_id je prázdné a point_name je NULL. Je to zřejmě důsledek Modulu OneStep Checkout rovněž od Mageplaza, kde neproběhla kontrola, zda je zvolené výdejní místo. Až později nám to z Mageplazy upravili, ale mezitím tam proběhlo několik objednávek, kde zákazníci nezvolili výdejní místo.

packeta-user commented 2 years ago

Dobrý den, máme připravený oficiální fix na vámi nahlášený problém. Budeme rádi, když jej otestujete a dáte nám vědět, zda je to takto v pořádku. Upravený modul si můžete stáhnout zde: https://www.uschovna.cz/zasilka/SI9IR7MVT3VWHDZM-867/ . Release uděláme, pokud to bude v pořádku.

Postupujte stejně jako při jakékoli jiné aktualizaci modulu dle našeho návodu: https://github.com/Zasilkovna/magento2#aktualizace-modulu

packeta-user commented 2 years ago

Dobrý den, problém byl vyřešen ve verzi 2.2.1 - https://github.com/Zasilkovna/magento2/releases/tag/v2.2.1