Funkcjonalność modułu
- Dodawanie zamówienia do koszyka
- Użytkownik może dodać całe zamówienie lub wybrane pozycje.
- Dostępne są przyciski:
- Ogólny dla całego zamówienia.
- Indywidualny dla każdej pozycji.
- Ochrona przed przypadkowym kliknięciem
- Przycisk „Dodaj ponownie do koszyka” jest wyszarzony, jeśli użytkownik nie zaznaczył żadnych towarów.
- Po najechaniu kursorem pojawia się komunikat „Wybierz produkty, które chcesz ponownie dodać do koszyka”.
- Sprawdzanie aktualnych warunków sprzedaży
- Przeliczenie pozycji zamówienia na bieżąco, uwzględniając:
- Możliwe zmiany cen i promocji.
- Zmiany w dostępności towarów.
- Jeśli produkt nie jest dostępny, wyświetlany jest komunikat: „Towar xxxx nie może zostać dodany do koszyka”.
- Przeliczenie pozycji zamówienia na bieżąco, uwzględniając:
- Dodawanie produktów
- Towary są dodawane w takiej samej ilości, jak w pierwotnym zamówieniu.
- Zachowywana jest ich pierwotna konfiguracja (np. warianty, opcje personalizacji).
- Informacja o statusie dodania produktów
Po ponownym dodaniu produktów do koszyka użytkownik otrzymuje komunikaty:- „Towary dodane: X z Y wybranych”
- „Towary nie dodane: X z Y wybranych”
- „Towary poprawnie dodane do koszyka”
Implementacja w interfejsie użytkownika
- Widok w panelu klienta
- Duże i wyraźne przyciski do zaznaczania i odznaczania pozycji zamówienia.
- Specjalnie oznaczony przycisk do zaznaczenia/odznaczenia wszystkich produktów.
- Proces dodawania produktów do koszyka
- Po kliknięciu „Dodaj ponownie do koszyka” użytkownik widzi modal z informacją, które produkty zostały dodane.
- Jeśli produkt nie może zostać dodany (np. został usunięty), użytkownik może go ponownie skonfigurować.
- Integracja z koszykiem
- Możliwość:
- Nadpisania istniejącego koszyka.
- Dodania produktów do istniejącego koszyka.
- W przypadku identycznych produktów ich liczba jest sumowana.
- Możliwość:
Ograniczenia
- Moduł działa wyłącznie w sklepach, które przechowują dane klienta.
- Nie można dodać do koszyka produktów, których nie ma na stanie.
- Elementy personalizowane (np. zdjęcia do pocztówek) są ponownie pobierane z JSON-a zamówienia.