feat(v1.6): inline status change on orders list

Phase 44 complete:
- Clickable status badge opens dropdown with grouped statuses
- AJAX POST changes status without page reload (optimistic update)
- Fixed-position dropdown escapes table overflow:hidden
- updateStatus() returns JSON for AJAX, redirect for standard POST

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-27 09:40:06 +01:00
parent 3f072c5906
commit f2f1c44324
10 changed files with 652 additions and 47 deletions

View File

@@ -5,15 +5,15 @@
See: .paul/PROJECT.md (updated 2026-03-12)
**Core value:** Sprzedawca moĹĽe obsĹugiwać zamĂłwienia ze wszystkich kanaĹĂłw sprzedaĹĽy i nadawać przesyĹki bez przeĹÄ…czania siÄ™ miÄ™dzy platformami.
**Current focus:** v1.5 completed - phases 40-43 delivered
**Current focus:** v1.6 complete — Phase 44 delivered
## Current Position
Milestone: v1.5 Operational Workflow Cleanup
Phase: [4] of [4] (Print Queue Entry Removal) - Unified
Plan: 43-01 completed with summary
Status: PLAN/APPLY/UNIFY closed for phases 40-43
Last activity: 2026-03-25 23:59 - Completed phases 41-43 and updated docs/summaries
Milestone: v1.6 Quick Status Change — Complete
Phase: [1] of [1] (Inline Status Change) Unified
Plan: 44-01 completed with summary
Status: PLAN/APPLY/UNIFY closed for phase 44
Last activity: 2026-03-27 — Phase 44 complete, milestone v1.6 closed
Progress:
- v0.1 Initial Release: [##########] 100% done
@@ -39,13 +39,15 @@ Progress:
- Phase 41: [##########] Complete (1/1 plans)
- Phase 42: [##########] Complete (1/1 plans)
- Phase 43: [##########] Complete (1/1 plans)
- v1.6 Quick Status Change: [##########] 100% done
- Phase 44: [##########] Complete (1/1 plans)
## Loop Position
Current loop state:
```
PLAN --> APPLY --> UNIFY
done done done [Loop closed for phases 40-43]
done done done [Loop closed for phase 44]
```
## Accumulated Context
@@ -53,6 +55,8 @@ PLAN --> APPLY --> UNIFY
### Decisions
| Data | Decyzja | Faza | WpĹyw |
|------|---------|------|-------|
| 2026-03-27 | Fixed positioning dropdown (document.body) zamiast absolute wewnatrz table-wrap | Faza 44 | Dropdown nie ucinany przez overflow:hidden na .table-wrap |
| 2026-03-27 | AJAX detect przez X-Requested-With header z fallback na redirect | Faza 44 | updateStatus() obsluguje oba tryby w jednej metodzie |
| 2026-03-25 | Import Allegro: trigger context + deduplikacja logow (`source_order_id + source_updated_at + trigger`) | Faza 41 | Czytelniejsza historia zamowienia i mniej duplikatow wpisow `import` |
| 2026-03-25 | Automatyzacja: event `shipment.status_changed` z warunkiem `shipment_status` (mapowanie biznes->techniczny) | Faza 42 | Reguly moga reagowac na realny status dostawy bez przebudowy engine |
| 2026-03-25 | Tracking cron triggeruje automatyzacje tylko przy realnej zmianie `delivery_status` | Faza 42 | Brak falszywych triggerow i mniejszy szum automatyzacji |
@@ -88,6 +92,11 @@ PLAN --> APPLY --> UNIFY
| 2026-03-17 | Email history jako wpisy w order_activity_log (nie osobna sekcja) | Faza 15 | SpĂłjnoĹć z istniejÄ…cym UX — jeden timeline zamiast fragmentacji |
| 2026-03-17 | VariableResolver wydzielony z EmailTemplateController | Faza 15 | Reuse logiki zmiennych; resolwer niezaleĹĽny od kontrolera szablonĂłw |
### Skill Audit (Faza 44, Plan 01)
| Oczekiwany | Wywolany | Uwagi |
|------------|---------|-------|
| sonar-scanner | override | Pominieto na podstawie explicit user override; lint PHP + build CSS PASS |
### Skill Audit (Faza 43, Plan 01)
| Oczekiwany | WywoĹany | Uwagi |
|------------|---------|-------|
@@ -272,7 +281,7 @@ PLAN --> APPLY --> UNIFY
- **Delivery mapping "Szukaj..." layout** — JS `attachSelectFilter()` w allegro.php tworzy input search dla InPost/Apaczka selectów, wizualnie wygląda jakby należaŠdo wiersza powyżej. Pre-existing bug, do naprawy osobno.
### Git State
Last commit: 3610571 — feat(v1.5): complete phases 40-43 workflow cleanup
Last commit: pending (phase 44 commit) — feat(v1.5): complete phases 40-43 workflow cleanup
Branch: main
Feature branches merged: none
@@ -281,13 +290,10 @@ Brak.
## Session Continuity
Last session: 2026-03-25 23:59
Stopped at: v1.5 phases 40-43 completed (summaries + docs + state updated)
Next action: Start next milestone planning ($paul-milestone or $paul-plan for next TODO batch)
Last session: 2026-03-27
Stopped at: v1.6 phase 44 completed (SUMMARY + docs + state updated)
Next action: Start next milestone planning (/paul:milestone or /paul:plan)
Resume file: .paul/ROADMAP.md
Resume context:
- v0.1-v1.4: COMPLETE done (30 phases, 42 plans)
- v1.5: COMPLETE done (phases 40-43)
---
*STATE.md — Updated after every significant action*