ver. 0.296: REST API for ordersPRO — orders management, dictionaries, API key auth
- New API layer: ApiRouter, OrdersApiController, DictionariesApiController - Orders API: list (with filters/pagination/updated_since), details, change status, set paid/unpaid - Dictionaries API: order statuses, transport methods, payment methods - X-Api-Key authentication via pp_settings.api_key - OrderRepository: listForApi(), findForApi(), touchUpdatedAt() - updated_at column on pp_shop_orders for polling support - api.php: skip session for API requests, route to ApiRouter - SettingsController: api_key field in system tab - 30 new tests (666 total, 1930 assertions) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4,6 +4,26 @@ Logi zmian z migracji na Domain-Driven Architecture. Najnowsze na gorze.
|
||||
|
||||
---
|
||||
|
||||
## ver. 0.296 (2026-02-19) - REST API zamówień dla ordersPRO
|
||||
|
||||
- **NEW**: REST API do zarządzania zamówieniami — lista, szczegóły, zmiana statusu, oznaczanie płatności
|
||||
- **NEW**: Endpointy słownikowe — statusy zamówień, metody transportu, metody płatności
|
||||
- **NEW**: Autentykacja API przez header `X-Api-Key` (klucz w `pp_settings`)
|
||||
- **NEW**: `\api\ApiRouter` — router API z autentykacją, routingiem i helperami odpowiedzi
|
||||
- **NEW**: `\api\Controllers\OrdersApiController` — 5 akcji (list, get, change_status, set_paid, set_unpaid)
|
||||
- **NEW**: `\api\Controllers\DictionariesApiController` — 3 akcje (statuses, transports, payment_methods)
|
||||
- **NEW**: `OrderRepository::listForApi()` — lista zamówień z filtrowaniem i paginacją (z `updated_since` do pollingu)
|
||||
- **NEW**: `OrderRepository::findForApi()` — szczegóły zamówienia z produktami i historią statusów
|
||||
- **NEW**: `OrderRepository::touchUpdatedAt()` — aktualizacja `updated_at` przy modyfikacji zamówienia
|
||||
- **NEW**: Kolumna `pp_shop_orders.updated_at` — data ostatniej modyfikacji (polling API)
|
||||
- **NEW**: Setting `api_key` w `pp_settings` — klucz autentykacji API
|
||||
- **UPDATE**: `api.php` — skip sesji dla requestów API, routing do `ApiRouter`
|
||||
- **UPDATE**: Metody `updateOrderStatus`, `setAsPaid`, `setAsUnpaid`, `saveOrderByAdmin`, `saveNotes`, `createFromBasket` wywołują `touchUpdatedAt()`
|
||||
- **NEW**: `docs/API.md` — dokumentacja REST API
|
||||
- **Tests**: 30 nowych testów API (ApiRouter, OrdersApiController, DictionariesApiController)
|
||||
|
||||
---
|
||||
|
||||
## ver. 0.295 (2026-02-19) - Admin: edycja produktów w zamówieniu + wyszukiwanie AJAX + korekta stanów magazynowych
|
||||
|
||||
- **NEW**: Edycja produktów w zamówieniu z panelu admina (dodawanie, usuwanie, zmiana ilości/cen)
|
||||
|
||||
Reference in New Issue
Block a user