6.5 KiB
6.5 KiB
phase, plan, type, wave, depends_on, files_modified, autonomous
| phase | plan | type | wave | depends_on | files_modified | autonomous | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 43-print-queue-entry-removal | 01 | execute | 1 |
|
false |
Purpose
Operator ma miec kontrole nad kolejka (np. usuniecie blednego lub nieaktualnego zlecenia), bez ingerencji bezposrednio w baze danych.
Output
Nowa akcja usuwania wpisu kolejki z poziomu Ustawienia > Drukowanie, backendowy endpoint z walidacja CSRF, aktualizacja widoku i dokumentacji technicznej.
Prior Work (only if genuinely needed)
@.paul/phases/18-print-queue-backend/18-01-SUMMARY.md @.paul/phases/19-ui-integration/19-01-SUMMARY.md
Source Files
@src/Modules/Printing/PrintJobRepository.php @src/Modules/Settings/PrintSettingsController.php @routes/web.php @resources/views/settings/printing.php @resources/scss/modules/_printing.scss
## Required Skills (from SPECIAL-FLOWS.md)| Skill | Priority | When to Invoke | Loaded? |
|---|---|---|---|
sonar-scanner |
required | Po APPLY, przed UNIFY | o |
| /code-review | optional | Po implementacji, przed UNIFY | o |
BLOCKING: Required skills MUST be loaded before APPLY proceeds.
Skill Invocation Checklist
sonar-scanneruruchomiony po APPLY- /code-review (opcjonalnie)
<acceptance_criteria>
AC-1: Backend obsluguje usuwanie wpisu kolejki druku
Given wpis istnieje w tabeli `print_jobs`
When uzytkownik wysle poprawny request usuniecia z tokenem CSRF
Then rekord jest usuwany z kolejki
And uzytkownik dostaje komunikat sukcesu lub poprawny blad
AC-2: UI pozwala usunac wpis z kolejki w bezpieczny sposob
Given uzytkownik jest na `Ustawienia > Drukowanie`
When kliknie akcje usuniecia przy wpisie kolejki
Then widzi potwierdzenie przez `window.OrderProAlerts.confirm(...)`
And po zatwierdzeniu wpis znika z listy po odswiezeniu
AC-3: Zmiana jest odnotowana w dokumentacji i TODO
Given wdrozenie punktu 43
When sprawdzane sa dokumenty techniczne
Then ARCHITECTURE i TECH_CHANGELOG opisuja nowa akcje usuwania z kolejki
And punkt 43 w DOCS/todo.md jest oznaczony jako wykonany
</acceptance_criteria>
Task 1: Dodaj backendowe usuwanie wpisu kolejki druku src/Modules/Printing/PrintJobRepository.php, src/Modules/Settings/PrintSettingsController.php, routes/web.php Dodaj w repozytorium metode usuwania wpisu po `id` (prepared statement). Rozszerz `PrintSettingsController` o akcje `deleteJob` z walidacja CSRF i flash messages. Dodaj route POST dla usuwania wpisu kolejki (obszar ustawien drukowania, auth required). Zachowaj istniejace endpointy API dla klienta Windows bez zmian. rg -n "deleteJob|DELETE FROM print_jobs|/settings/printing/jobs" src/Modules/Printing/PrintJobRepository.php src/Modules/Settings/PrintSettingsController.php routes/web.php AC-1 satisfied: rekord moze byc usuniety przez kontrolowany endpoint. Task 2: Dodaj akcje usuwania do widoku kolejki druku resources/views/settings/printing.php, resources/scss/modules/_printing.scss, public/assets/css/app.css W tabeli `Kolejka wydruku` dodaj przycisk/formularz usuwania wpisu. Potwierdzenie realizuj przez `window.OrderProAlerts.confirm(...)` (bez natywnego `confirm`). Styl akcji dodaj w SCSS i przebuduj CSS do `public/assets/css/app.css`. Nie dodawaj inline CSS; zachowaj kompaktowosc layoutu. rg -n "OrderProAlerts\.confirm|Usun|print-queue" resources/views/settings/printing.php resources/scss/modules/_printing.scss AC-2 satisfied: usuwanie wpisu jest dostepne i zabezpieczone potwierdzeniem. Task 3: Zaktualizuj dokumentacje techniczna i TODO DOCS/ARCHITECTURE.md, DOCS/TECH_CHANGELOG.md, DOCS/todo.md Opisz nowa akcje usuwania wpisu kolejki i jej endpoint/kontroler. Oznacz punkt 43 jako wykonany. Upewnij sie, ze dokumentacja nie sugeruje juz braku tej funkcji. rg -n "43\.|kolejk|usun|printing" DOCS/ARCHITECTURE.md DOCS/TECH_CHANGELOG.md DOCS/todo.md AC-3 satisfied: dokumentacja i TODO sa aktualne. Usuwanie wpisu kolejki druku z poziomu panelu ustawien. 1. Otworz `Ustawienia > Drukowanie`. 2. W sekcji `Kolejka wydruku` kliknij `Usun` przy wybranym wpisie. 3. Potwierdz akcje w modalu OrderProAlerts. 4. Sprawdz, ze po odswiezeniu wpis nie jest widoczny. 5. Sprawdz, ze anulowanie potwierdzenia nie usuwa wpisu. Type "approved" to continue, or describe issues to fixDO NOT CHANGE
database/migrations/*- API key endpointy klienta drukujacego
- Logika tworzenia i pobierania etykiet
SCOPE LIMITS
- Zakres dotyczy wyłšcznie usuwania wpisow kolejki druku.
- Bez dodawania masowych operacji na kolejce.
- Bez zmian poza obszarem ustawien drukowania i repozytorium kolejki.
<success_criteria>
- Uzytkownik moze usunac wpis kolejki druku z UI
- Potwierdzenie dziala przez OrderProAlerts
- Punkt 43 zamkniety wraz z dokumentacja </success_criteria>