Skocz do zawartości
powershop24.pl

Problem z listą przewoźników

Rekomendowane odpowiedzi

Witam!

Pojawił się u mnie niedawno w sklepie problem polegający na tym, że prawie za każdym razem podczas składania zamówienia, na liście przewoźników, na ostatniej pozycji dodaje mi się dodatkowa pozycja z darmową wysyłką (link do ekranu poniżej). Nie odpowiada ona żadnemu ze zdefiniowanych w sklepie przewoźników. Nie wiem skąd się tam bierze. Korzystam w sklepie z modułu łączącego sposób płatności ze sposobem wysyłki (PrestaCenter Payments 2 Carriers Free v0.9.1), ale używam go dużo dłużej niż pojawił się problem. Oczywiście po wyborze tej opcji i przejściu dalej, nic się nie dzieje.

 

Mam też zdefinowanych innych przewoźników dla krajów innych niż Polska. Ale problem występuje i dla klientów z Polski i dla klientów z zagranicy.

Dla Polski mam zdefiniowaną inną przesyłkę darmową. Dla krajów zagranicznych nie mam zdefiniowanej przesyłki darmowej. W ustawieniach dostawy jako domyślny przewoźnik mam ustawione "Najlepsza cena".

 

Jeśli wybiorę innego (istniejącego w konfiguracji) przewoźnika, przejdę dalej i cofnę się z powrotem do listy przewoźników, to tej darmowej pozycji już nie ma na liście.

 

Link do ekranu:

http://screencast.com/t/ZR9mWg5ierWN

 

Co może być tego przyczyną?

Sklep: www.powershop24.pl

Prestashop 1.6.0.8

 

Pozdrawiam!

Krzysiek

 

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Usunąłem moduł Payments 2 Carriers, problem zniknął. Zainstalowałem Ship2Pay 2.0, problem wrócił. Dla tego pseudo przewoźnika nie ma w dalszym kroku zdefiniowanej żadnej metody płatności, więc nawet ekran kolejnego kroku się nie ładuje.

ID przewoźnika który się pojawia pod tą pozycją to 0:

 

http://screencast.com/t/iyNw1zVlWk3

 

Oczywiście nie ma takowego w bazie danych.

 

K.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

W każdym nowo utworzonym koszyku pojawia mi się w polu id_carrier wartość 0. Podejrzewam że właśnie stąd brany jest ten pseudo przewoźnik o id=0. Czy nie ma to związku z zapytaniem sql z pliku Hook.php? W linii 48 jest zapis "AND stp.`id_carrier` = ' . (int)$context->cart->id_carrier".

Dopiero po wybraniu w dalszych krokach docelowego przewoźnika, ten pseudo przewoźnik znika z listy.

if ($hook_name != 'displayPayment')
                $sql->where('h.name != "displayPayment"');
            // For payment modules, we check that they are available in the contextual country
            elseif ($frontend)
            {
                // ShipToPay remove fix (override still exists but module not)
                if(Module::getInstanceByName('shiptopay')->active)
                    $sql->innerJoin('shiptopay', 'stp', 'stp.`id_payment` = m.`id_module` AND stp.`id_carrier` = ' . (int)$context->cart->id_carrier . ' AND stp.`id_shop` = ' . (int)$context->shop->id);

                if (Validate::isLoadedObject($context->country))
                    $sql->where('(h.name = "displayPayment" AND (SELECT id_country FROM '._DB_PREFIX_.'module_country mc WHERE mc.id_module = m.id_module AND id_country = '.(int)$context->country->id.' AND id_shop = '.(int)$context->shop->id.' LIMIT 1) = '.(int)$context->country->id.')');
                if (Validate::isLoadedObject($context->currency))
                    $sql->where('(h.name = "displayPayment" AND (SELECT id_currency FROM '._DB_PREFIX_.'module_currency mcr WHERE mcr.id_module = m.id_module AND id_currency IN ('.(int)$context->currency->id.', -1, -2) LIMIT 1) IN ('.(int)$context->currency->id.', -1, -2))');
            }

K.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Czy po usunięciu modułu ship2pay jest ok i problem znika? Nikt nie zgłaszał podobnego problemu ale jest taka możliwość że to wina modułu.

Tak, problemu nie ma gdy nie działa Ship2Pay.

 

Problemem jest na pewno to, że w koszyku domyślnie wpada przewoźnik o ID=0 (pomimo tego że w ustawieniach jest wybrany konkretny przewoźnik jako domyślny o id<>0), a Ship2Pay sprawdza domyślnego przewoźnika w koszyku i dla niego wstawia wpis do listy przewoźników.

Nie wiem czy domyślnie Presta powinna wstawiać id domyślnego przewoźnika do nowego koszyka, tym bardziej że koszty wysyłki pobiera prawidłowo, czy też nie. Mam wrażenie że problem zaczął się wtedy, gdy w konfiguracji przewoźników dodałem ceny dla innych stref (krajów). Może dlatego wbijane jest id=0? Nie mam niestety jak sprawdzić zachowania Presty (czy wstawia id=0 do koszyka) gdy jest tylko jedna strefa w konfiguracji cennika przewoźników.

 

K.

Udostępnij tego posta


Odnośnik do posta
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się

Komentowanie zawartości tej strony możliwe jest po zalogowaniu



Zaloguj się



  • Podobna zawartość

    • Przez lukruk
      Adres sklepu: http://shedance.pl/shop/
       
      Mam problem z ustawieniem kwoty za przewoźnika. Pomimo prawidłowej konfiguracji (od wagi 0 do 14,99kg - kwota 15zł netto, Europa oraz od 15,00 do 30,00kg - kwota 30zł, Europa), to za każdym jak próbuje zmienić kwotę wysyłki wyświetla mi się przy zamówieniu kwota 12,30zł.
       
      Proszę o podpowiedź, czy oprócz panelu PRZEWOŹNICY można jeszcze gdzieś zdefiniować kwotę, tak aby była przypisana na stałe do zamówień ?
      Nie mam pomysłu jak ją zmienić - PROSZĘ o pomoc !!
    • Przez Inexo
      Zakładam nowego przewoźnika.
      Ustawiam go analogicznie jak poprzednie dwa, które założone były dużo wcześniej.
      Zmiana w ustawieniach dotyczy jedynie ceny wysyłki.
      Zapisuję...
       
      Zaglądam do koszyka i widzę... o jest!
      Do przewoźnika dopasowuję odpowiedni moduł płatności.
      Zapisuję.... 
       
      Zaglądam do koszyka i widzę... o jest! sprawdzam czy płatności przechodzą. Wszystko idzie idealnie.
       
      Na drugi dzień mam telefon od klientki, że ona wczoraj widziała, że jest dostępny ten przewoźnik a dziś już go nie ma.
      Zaglądam do koszyka i patrze, że rzeczywiście nie ma.
      Sprawdzam, kombinuję na nowo i ponownie wszystko działa.
      Upewniam się czy wszystko gra zaglądając do koszyka przez inną przeglądarkę (fire fox) i widzę, że nie ma. Powracam do swojej zazwyczaj używanej przeglądarki (Chrome) od nowa sprawdzając koszyk i patrzę, że ponownie nie ma.
       
      Poprzedni przewoźnicy założeni dużo wcześniej wyświetlają się w koszyku jak mur beton.
       
      O co chodzi bo nerwy tracę
      Pomocy....
      Zaglądam do koszyka i widzę... o jest!
    • Przez Madrei
      Witam wszystkich,
      ma może ktoś taki moduł który by umożliwiał kopiowanie przewoźników, tak jak robi się to z produktami ?
       
      Uciążliwe jest wpisywanie 100 przedziałów wagowych lepiej by było zrobić to przez kopiowanie
       
      Jeśli niema takiego modułu, to gdzie są zapisywani przewoźnicy ? aby móc ich skopiować ręcznie
    • Przez mocnykubek
      Widzę, że temat był wałkowany, jednak nie do końca jestem usatysfakcjonowany z rozwiązań (albo nie zajarzyłem) 
       
      Jest u mnie prosto (PS 1.6.0.14):
      Przewoźnicy: - paczka zwykła - paczka za pobraniem Płatności: - przelew - pobranie Ustawiłem sobie z pomocą "ship2pay", żeby mi to hulało i hula.
      Zakresy mam wszędzie poustawiane na kwoty - nic z wagą.
       
       
      Chcę udostępnić klientowi darmową wysyłkę paczką zwykłą przy zamówieniu powyżej 40zł. Czyli musi zapłacić przelewem. I o to chodzi..
      Ustawiam: Wysyłka>Preferencje> Darmowa wysyłka obowiązuje od: 40zł Klient ma teraz powyżej 40zł możliwość wybrania za darmo każdej opcji dostawy - również "paczka za pobraniem". Tego chcę uniknąć.
       
      Dodaję kolejnego przewoźnika ("darmowa paczka"). Ustawiam zakres 40-20000zł do tego cenę przesyłki 0zł.
        Ustawiam: Wysyłka>Preferencje> Darmowa wysyłka obowiązuje od: 0 (wyłączone) Domyślny przewoźnik: najlepsza cena Teraz klient dodając do koszyka towar poniżej 40zł w ogóle nie ma w podglądzie koszyka ceny dostawy - nie ma też napisu "darmowa wysyłka", ale wygląda to trochę tak, jakby nic nie kosztowało. (musi przeklikać całe zamówienie, żeby zobaczyć ile kosztuje dostawa).
      Ustawiam: Wysyłka>Preferencje> Domyślny przewoźnik: paczka pocztowa Teraz klient widzi w koszyku cenę wysyłki, ale jeśli zamówi powyżej 40zł to nadal doliczana jest ta kwota - znów musi przeklikać całe zamówienie, żeby zmienić dostawę na darmowego przewoźnika.
      Ustawiam: Wysyłka>Przewoźnicy>Paczka zwykła  Darmowa wysyłka: tak Nie ma możliwości wybrania zakresu ceny/wagi w efekcie przesyłka jest zawsze darmowa (poniżej 40zł też), ale klient dostaje w podglądzie koszyka ładne info, że przesyłka jest darmowa.
       
      Opadłem lekko z sił.
       
      Pierwszy cel:
      Chciałbym, żeby klient zamawiając do 40zł miał w podglądzie koszyka doliczoną cenę za paczkę pocztową, a w momencie w którym przekroczy kwotę 40zł niech widzi ładny napis "darmowa dostawa".
         
      Drugi cel:
      przy kwocie powyżej 40zł w checkoucie powinien mieć wybór:
      - Paczka pocztowa - za darmo - Paczka za pobraniem" 19zł Pozwoliłem sobie moje bezecne żądania ująć w pomocniczym grafie 

       
       
      Proszę Was mocno o pomoc i z góry dziękuję. 
    • Przez Czarekplpl
      Witam.
      Banalna sprawa - dodanie nowego przewoźnika.
       
      Tworzę nowego przewoźnika w Carries.
      Ustawiam darmową wysyłkę, kraj, grupy.
      W karcie towaru w shipping jest dodany ten przewoźnik.
      Ale przewoźnik nie pojawia się we Front Office.
       
      Czy ktoś ma jakiś pomysł gdzie  może leżeć problem??
       
  • Przeglądający

    Brak zarejestrowanych użytkowników, przeglądających tę stronę.

  • Aktywni użytkownicy

    Nikt jeszcze nie otrzymał reputacji w tym tygodniu.

  • Statystyki forum

    • Tematów
      7 784
    • Postów
      37 078
×