4.3 KiB
4.3 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 | |||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 84-order-imported-automation-event | 01 | automation, settings |
|
|
|
|
|
|
|
|
~15min | 2026-04-07T19:00:00Z | 2026-04-07T19:15:00Z |
Phase 84 Plan 01: Order Imported Automation Event — Summary
Nowe zdarzenie automatyzacji order.imported wyzwalane przy imporcie zamowien z Allegro i shopPRO
Performance
| Metric | Value |
|---|---|
| Duration | ~15min |
| Tasks | 3 planned, 3 completed |
| Files modified | 6 |
Acceptance Criteria Results
| Criterion | Status | Notes |
|---|---|---|
| AC-1: Event zarejestrowany w systemie | Pass | Dodany do ALLOWED_EVENTS + UI labels |
| AC-2: Event wyzwalany przy imporcie Allegro | Pass | Trigger po recordActivity w importSingleOrder() |
| AC-3: Event wyzwalany przy imporcie shopPRO | Pass | Trigger po recordActivity w processOrder() |
| AC-4: Warunek integration dziala | Pass | Istniejacy warunek 'integration' filtruje po integration_id |
Accomplishments
- Nowy event type
order.importedw systemie automatyzacji z etykieta "Pobranie zamowienia" - Trigger w AllegroOrderImportService po kazdym imporcie (nowe i re-import)
- Trigger w ShopproOrdersSyncService po kazdym imporcie (bez payment_transition)
- Context eventu zawiera: source, created (bool), integration_id
- Istniejacy warunek
integrationpozwala filtrowac po zrodle zamowienia
Files Created/Modified
| File | Change | Purpose |
|---|---|---|
src/Modules/Automation/AutomationController.php |
Modified | Dodanie 'order.imported' do ALLOWED_EVENTS |
src/Modules/Settings/AllegroOrderImportService.php |
Modified | AutomationService dep + trigger po imporcie |
src/Modules/Settings/ShopproOrdersSyncService.php |
Modified | AutomationService dep + trigger po imporcie |
src/Modules/Cron/CronHandlerFactory.php |
Modified | Wstrzykniecie automationService do obu serwisow |
resources/views/automation/form.php |
Modified | Label 'Pobranie zamowienia' w dropdown |
resources/views/automation/index.php |
Modified | Label 'Pobranie zamowienia' w liscie/historii |
Decisions Made
| Decision | Rationale | Impact |
|---|---|---|
| Nullable AutomationService | Backward compat + kontroler web nie ma dostepnego AutomationService w momencie tworzenia | Trigger dziala w cron (99% importow), nie w recznym imporcie z UI |
| Brak triggera na payment_transition | Payment transition to re-import ze zmiana statusu platnosci, nie nowy import | Nie generuje falszywych triggerow |
| Reuse istniejacego warunku integration | Warunek juz obsluguje filtrowanie po integration_id | Zero zmian w logice ewaluacji warunkow |
Deviations from Plan
None — plan executed as written.
Next Phase Readiness
Ready:
- Event order.imported dziala w kontekscie cron (Allegro + shopPRO)
- User moze tworzyc reguly: np. "Gdy pobrano zamowienie z integracji X → wyslij e-mail / zmien status"
Concerns:
- Reczny import z UI (Allegro controller) nie triggeruje eventu (AutomationService = null)
- Jesli potrzebne — wymaga refactoru kolejnosci tworzenia obiektow w routes/web.php
Blockers:
- None — kod wymaga deploy na serwer (FTP)
Phase: 84-order-imported-automation-event, Plan: 01 Completed: 2026-04-07