Files
orderPRO/.paul/phases/40-remove-order-list-bulk-print/40-01-PLAN.md

6.1 KiB

phase, plan, type, wave, depends_on, files_modified, autonomous
phase plan type wave depends_on files_modified autonomous
40-remove-order-list-bulk-print 01 execute 1
src/Modules/Orders/OrdersController.php
resources/views/orders/list.php
src/Modules/Printing/PrintApiController.php
src/Modules/Printing/PrintJobRepository.php
routes/web.php
DOCS/ARCHITECTURE.md
DOCS/TECH_CHANGELOG.md
DOCS/todo.md
true
## Goal Zrealizowac punkt 40 z `DOCS/todo.md`: usunac przycisk `Drukuj etykiety` z widoku `/orders/list` wraz z calym mechanizmem bulk print, ktory byl uruchamiany z listy zamowien.

Purpose

Interfejs listy zamowien ma byc prostszy i zgodny z aktualnym procesem pracy (druk z poziomu szczegolow zamowienia / kolejek), bez dodatkowej akcji masowej, ktora ma zostac wycofana.

Output

Usuniety przycisk i JS bulk print w orders/list, wycofany endpoint bulk drukowania, oczyszczony backend z nieuzywanego kodu oraz zaktualizowana dokumentacja i status TODO.

## Project Context @.paul/PROJECT.md @.paul/ROADMAP.md @.paul/STATE.md @DOCS/todo.md @DOCS/ARCHITECTURE.md @DOCS/DB_SCHEMA.md

Prior Work (only if genuinely needed)

@.paul/phases/19-ui-integration/19-01-SUMMARY.md

Source Files

@src/Modules/Orders/OrdersController.php @resources/views/orders/list.php @src/Modules/Printing/PrintApiController.php @src/Modules/Printing/PrintJobRepository.php @routes/web.php

## 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-scanner uruchomiony po APPLY
  • /code-review (opcjonalnie)

<acceptance_criteria>

AC-1: Brak akcji bulk print na liscie zamowien

Given uzytkownik otwiera /orders/list
When renderuje sie pasek akcji tabeli
Then przycisk "Drukuj etykiety" nie jest dostepny
And nie ma aktywnego JS, ktory wysyla bulk request do /api/print/jobs/bulk

AC-2: Mechanizm bulk print zostal wycofany z backendu

Given aplikacja po wdrozeniu
When kod backendu jest przegladany pod endpoint bulk print
Then trasa /api/print/jobs/bulk oraz jej obsluga nie wystepuja
And nie zostaja referencje do logiki mapowania order_ids -> package_ids dla tego use case

AC-3: Dokumentacja i TODO sa aktualne

Given zmiana punktu 40 jest zakonczona
When sprawdzane sa pliki dokumentacyjne
Then ARCHITECTURE i TECH_CHANGELOG opisuja usuniecie bulk print z listy zamowien
And punkt 40 w DOCS/todo.md jest oznaczony jako wykonany

</acceptance_criteria>

Task 1: Usun akcje UI "Drukuj etykiety" z listy zamowien src/Modules/Orders/OrdersController.php, resources/views/orders/list.php Usun definicje `header_actions` z przyciskiem `js-bulk-print-labels` w `OrdersController::index()`. W `resources/views/orders/list.php` usun blok JavaScript odpowiedzialny za obsluge bulk print (`fetch('/api/print/jobs/bulk'...)`). Zachowaj pozostale skrypty listy (np. hover podgladu obrazkow). rg -n "js-bulk-print-labels|/api/print/jobs/bulk|Drukuj etykiety" src/Modules/Orders/OrdersController.php resources/views/orders/list.php AC-1 satisfied: UI i JS bulk print na /orders/list nie istnieja. Task 2: Wycofaj endpoint bulk print i martwy kod backendowy src/Modules/Printing/PrintApiController.php, src/Modules/Printing/PrintJobRepository.php, routes/web.php Usun trase `POST /api/print/jobs/bulk` z `routes/web.php`. Usun metode `bulkCreateJobs()` z `PrintApiController`. Usun z repozytorium nieuzywana metode `findPackagesWithLabelsByOrderIds()` oraz powiazane referencje. Nie zmieniaj endpointu `POST /api/print/jobs` (druk pojedynczy musi zostac). rg -n "/api/print/jobs/bulk|bulkCreateJobs|findPackagesWithLabelsByOrderIds" src routes AC-2 satisfied: bulk mechanizm jest usuniety end-to-end. Task 3: Aktualizuj dokumentacje techniczna i status TODO DOCS/ARCHITECTURE.md, DOCS/TECH_CHANGELOG.md, DOCS/todo.md Dodaj wpisy o dekomisji bulk print z listy zamowien. Oznacz punkt 40 jako wykonany. Opis ma wskazac, ze druk etykiet pozostaje dostepny przez mechanizmy jednostkowe (szczegoly zamowienia / przygotowanie przesylki). rg -n "40\.|bulk print|Drukuj etykiety|/orders/list" DOCS/ARCHITECTURE.md DOCS/TECH_CHANGELOG.md DOCS/todo.md AC-3 satisfied: dokumentacja i TODO sa zgodne ze stanem kodu.

DO NOT CHANGE

  • database/migrations/*
  • Endpointy API key dla klienta Windows (/api/print/jobs/pending, /api/print/jobs/{id}/download, /api/print/jobs/{id}/complete)
  • Mechanizm drukowania pojedynczej etykiety (POST /api/print/jobs)

SCOPE LIMITS

  • Zakres obejmuje tylko usuniecie bulk print uruchamianego z /orders/list.
  • Bez redesignu tabeli zamowien i bez zmian w innych akcjach bulk.
  • Bez dodawania nowych funkcji drukowania.
Before declaring plan complete: - [ ] `C:\xampp\php\php.exe -l src/Modules/Orders/OrdersController.php` - [ ] `C:\xampp\php\php.exe -l src/Modules/Printing/PrintApiController.php` - [ ] `C:\xampp\php\php.exe -l src/Modules/Printing/PrintJobRepository.php` - [ ] `C:\xampp\php\php.exe -l routes/web.php` - [ ] `rg -n "js-bulk-print-labels|/api/print/jobs/bulk|bulkCreateJobs" src resources/views routes` - [ ] Dokumentacja (`DOCS/ARCHITECTURE.md`, `DOCS/TECH_CHANGELOG.md`, `DOCS/todo.md`) zaktualizowana - [ ] All acceptance criteria met

<success_criteria>

  • Bulk print z listy zamowien zostal calkowicie usuniety (UI + backend)
  • Brak regresji w pojedynczym drukowaniu etykiet
  • Dokumentacja odzwierciedla nowy stan </success_criteria>
After completion, create `.paul/phases/40-remove-order-list-bulk-print/40-01-SUMMARY.md`