Phase 112 / Plan 112-01 complete (v3.6): - OrderImportRepository::upsertOrderAggregate split into create vs re-import paths - replaceAddresses/Items/Notes/Shipments/StatusHistory invoked only on first import - new updateOrderDelta() narrows UPDATE to status_code (cond.), payment_status, total_paid, is_canceled_by_buyer, source_updated_at, payload_json, fetched_at - source-side cancellation override (is_canceled_by_buyer=1 OR pull status_code='anulowane') - identical-payload no-op guard via normalizePayloadJson() - fixes case #882: order_items.id stable, project_generated (Phase 97) preserved - Phase 111 payment.status_changed emit retained without regression Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
21 lines
1.4 KiB
Markdown
21 lines
1.4 KiB
Markdown
# 2026-05-07
|
|
|
|
## Co zrobiono
|
|
|
|
- [Phase 112, Plan 01] Re-import Data Protection — re-import istniejacego zamowienia jest delta-only
|
|
- Task 1: `replaceAddresses/replaceItems/replaceNotes/replaceShipments/replaceStatusHistory` przeniesione pod galaz `if ($created)` w `OrderImportRepository::upsertOrderAggregate` — `order_items.id` i flagi lokalne (project_generated z Phase 97) sa stabilne miedzy re-importami
|
|
- Task 2: nowa metoda `updateOrderDelta()` aktualizuje wylacznie `status_code` (warunkowo), `payment_status`, `total_paid`, `is_canceled_by_buyer`, `source_updated_at`, `payload_json`, `fetched_at`, `updated_at`. Dodana propagacja anulowania ze zrodla (`is_canceled_by_buyer=1` LUB pull `status_code='anulowane'`) i identical-payload no-op guard via `normalizePayloadJson()`
|
|
- Task 3: `.paul/codebase/architecture.md` (sekcja Re-import) i `.paul/codebase/tech_changelog.md` (wpis 2026-05-07) zaktualizowane
|
|
- Bug case #882 (znikajaca flaga "Projekt" po re-imporcie wymuszanym przez `payment.status_changed`) przyczynowo naprawiony
|
|
- `php -l src/Modules/Orders/OrderImportRepository.php` -> No syntax errors
|
|
- Manualne AC-1..AC-7 odlozone — XAMPP/MySQL nieosiagalne w sesji
|
|
|
|
## Zmienione pliki
|
|
|
|
- `src/Modules/Orders/OrderImportRepository.php`
|
|
- `.paul/codebase/architecture.md`
|
|
- `.paul/codebase/tech_changelog.md`
|
|
- `.paul/phases/112-reimport-data-protection/112-01-PLAN.md`
|
|
- `.paul/phases/112-reimport-data-protection/112-01-SUMMARY.md`
|
|
- `.paul/STATE.md`
|