3.6 KiB
3.6 KiB
phase, plan, type, wave, depends_on, files_modified, autonomous
| phase | plan | type | wave | depends_on | files_modified | autonomous | |
|---|---|---|---|---|---|---|---|
| 80-status-change-reload | 01 | execute | 1 |
|
true |
Purpose
Gdy uzytkownik filtruje zamowienia po statusie i zmienia status jednego z nich, zamowienie powinno zniknac z listy (bo juz nie pasuje do filtra). Obecnie badge aktualizuje sie w miejscu, ale zamowienie pozostaje na liscie co jest mylace.
Output
Zmodyfikowany public/assets/js/modules/inline-status-change.js z przeladowaniem strony po udanej zmianie statusu.
Source Files
@public/assets/js/modules/inline-status-change.js
<acceptance_criteria>
AC-1: Przeladowanie listy po zmianie statusu
Given uzytkownik jest na liscie zamowien z aktywnym filtrem statusu
When zmienia status zamowienia przez inline dropdown
Then strona przeladowuje sie po udanej odpowiedzi serwera
And zamowienie z nowym statusem nie pojawia sie na liscie (bo filtr go wyklucza)
AC-2: Brak przeladowania przy bledzie
Given uzytkownik zmienia status zamowienia inline
When serwer zwraca blad (np. 500 lub validation error)
Then strona NIE przeladowuje sie
And badge wraca do poprzedniego statusu
And wyswietla sie komunikat bledu
</acceptance_criteria>
Task 1: Dodanie location.reload() po udanej zmianie statusu public/assets/js/modules/inline-status-change.js W funkcji `changeStatus()`, w bloku `.then(function (result) {...})`: - Po linii 153-154 (po udanej aktualizacji badge'a), dodac `location.reload()`. - Reload powinien nastapic TYLKO gdy `result.ok && result.data.success`. - Blok error (linie 142-149) i `.catch()` (linie 156-162) pozostaja bez zmian — brak reloadu przy bledzie. - Mozna usunac aktualizacje badge'a (linie 152-154) bo reload i tak odswieza strone, ale lepiej zostawic dla plynnosci UX — uzytkownik widzi natychmiastowa zmiane badge'a, potem reload. 1. Otworz /orders/list z filtrem statusu (np. "Nowe") 2. Zmien status zamowienia na inny (np. "W realizacji") 3. Strona przeladowuje sie i zamowienie znika z listy 4. Zmien status bez filtra — strona tez sie przeladowuje (zamowienie pojawia sie z nowym statusem) AC-1 i AC-2 spelnione: reload po sukcesie, brak reloadu przy bledzieDO NOT CHANGE
- src/Modules/Orders/OrdersController.php (backend endpoint dziala poprawnie)
- resources/views/orders/list.php (konfiguracja JS jest OK)
- routes/web.php
SCOPE LIMITS
- Nie dodawac AJAX-owego odswiezania listy (pelny reload jest prostszy i wystarczajacy)
- Nie zmieniac logiki dropdowna ani budowania badge'y
- Nie zmieniac obslugi bledow
<success_criteria>
- Task 1 ukonczony
- Wszystkie verification checks przechodzą
- Brak regresji w inline status change </success_criteria>