Files
orderPRO/.paul/phases/87-shipment-delete/87-01-SUMMARY.md
2026-04-08 19:08:40 +02:00

3.0 KiB

phase, plan, subsystem, tags, requires, provides, affects, tech-stack, key-files, key-decisions, patterns-established, duration, started, completed
phase plan subsystem tags requires provides affects tech-stack key-files key-decisions patterns-established duration started completed
87-shipment-delete 01 shipments
php
shipment-packages
crud
ui
Usuwanie przesylek z poziomu szczegolow zamowienia
added patterns
OrderProAlerts.confirm for destructive actions
created modified
src/Modules/Shipments/ShipmentPackageRepository.php
src/Modules/Shipments/ShipmentController.php
routes/web.php
resources/views/orders/show.php
Hard delete z bazy (bez soft-delete) — spójne z resztą systemu
Usuwanie tylko lokalnego rekordu, bez kasowania z API przewoźnika
~5min 2026-04-08T00:00:00Z 2026-04-08T00:00:00Z

Phase 87 Plan 01: Shipment Delete Summary

Usuwanie przesyłek z zakładki Przesyłki w szczegółach zamówienia z potwierdzeniem OrderProAlerts.confirm

Performance

Metric Value
Duration ~5min
Tasks 2 completed
Files modified 4

Acceptance Criteria Results

Criterion Status Notes
AC-1: Przycisk usuwania widoczny przy przesyłce Pass Kolumna Akcje z przyciskiem "Usun" btn--danger
AC-2: Potwierdzenie przed usunięciem Pass OrderProAlerts.confirm z fallback na native confirm
AC-3: Usunięcie przesyłki po potwierdzeniu Pass DELETE z DB, cleanup etykiety, activity log, flash + redirect

Accomplishments

  • Endpoint POST /orders/{id}/shipment/{packageId}/delete z walidacją CSRF i owner check
  • Cleanup pliku etykiety z dysku przy usunięciu
  • Activity log shipment_deleted z tracking number i provider info
  • Przycisk "Usun" z dialogiem potwierdzenia w tabeli przesyłek

Files Created/Modified

File Change Purpose
src/Modules/Shipments/ShipmentPackageRepository.php Modified Metoda delete(int $id): void
src/Modules/Shipments/ShipmentController.php Modified Metoda delete() — CSRF, owner check, label cleanup, activity log
routes/web.php Modified Route POST /orders/{id}/shipment/{packageId}/delete
resources/views/orders/show.php Modified Kolumna Akcje, przycisk Usun, JS confirm handler

Decisions Made

Decision Rationale Impact
Hard delete (nie soft-delete) Spójne z resztą systemu, brak potrzeby historii usuniętych Prostsze, activity log zachowuje ślad
Brak kasowania z API przewoźnika Usuwamy tylko lokalny rekord; przesyłka u przewoźnika istnieje niezależnie Bezpieczne — nie wpływa na realną przesyłkę
Fallback na native confirm Na wypadek gdyby OrderProAlerts nie był załadowany Robustność

Deviations from Plan

None — plan executed exactly as written.

Issues Encountered

None.

Next Phase Readiness

Ready:

  • Funkcjonalność usuwania przesyłek kompletna i gotowa do użycia

Concerns:

  • None

Blockers:

  • None

Phase: 87-shipment-delete, Plan: 01 Completed: 2026-04-08