ver. 0.295: Admin order product editing — add/remove/modify products, AJAX search, stock adjustment
- Order product CRUD in admin panel (add, delete, edit quantity/prices) - AJAX product search endpoint for order edit form - Automatic stock adjustment when editing order products - Transport cost recalculation based on free delivery threshold - Fix: promo price = 0 when equal to base price (no real promotion) - Clean up stale temp/ build artifacts Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4,6 +4,23 @@ Logi zmian z migracji na Domain-Driven Architecture. Najnowsze na gorze.
|
||||
|
||||
---
|
||||
|
||||
## 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)
|
||||
- **NEW**: Wyszukiwarka produktów AJAX w formularzu edycji zamówienia (`search_products_ajax`)
|
||||
- **NEW**: Automatyczna korekta stanów magazynowych przy edycji produktów zamówienia
|
||||
- **NEW**: Automatyczne przeliczanie kosztu dostawy (próg darmowej dostawy) po zmianie produktów
|
||||
- **NEW**: `OrderRepository` — CRUD: `addOrderProduct()`, `updateOrderProduct()`, `deleteOrderProduct()`, `getOrderProduct()`, `updateTransportCost()`
|
||||
- **NEW**: `OrderAdminService` — `searchProducts()`, `saveOrderProducts()`, `getFreeDeliveryThreshold()`, `adjustStock()`, `recalculateTransportCost()`
|
||||
- **NEW**: `ShopOrderController` — endpoint `search_products_ajax`, rozszerzony `order_save` o zapis produktów
|
||||
- **UPDATE**: `admin\App` — rozszerzone DI wiring (ProductRepository, SettingsRepository, TransportRepository)
|
||||
- **FIX**: `OrderRepository::createOrder()` — promo price = 0 gdy taka sama jak cena bazowa (brak realnej promocji)
|
||||
- **NEW**: Template `order-edit-custom-script.php` — interaktywny JS do zarządzania produktami zamówienia
|
||||
- **UPDATE**: Template `order-edit.php` — sekcja edycji produktów z dynamicznym formularzem
|
||||
- **Tests**: `OrderAdminServiceTest` (nowy), rozszerzony `OrderRepositoryTest` (+132 linii), zaktualizowany `ShopOrderControllerTest`
|
||||
|
||||
---
|
||||
|
||||
## ver. 0.294 (2026-02-19) - Code review: full codebase review complete (96/96 classes), 27 fixes across all layers
|
||||
|
||||
**Code review zakończony — 96 klas, ~1144 metody przejrzane.**
|
||||
|
||||
@@ -23,10 +23,10 @@ composer test # standard
|
||||
## Aktualny stan
|
||||
|
||||
```text
|
||||
OK (614 tests, 1821 assertions)
|
||||
OK (636 tests, 1868 assertions)
|
||||
```
|
||||
|
||||
Zweryfikowano: 2026-02-19 (ver. 0.293)
|
||||
Zweryfikowano: 2026-02-19 (ver. 0.295)
|
||||
|
||||
## Konfiguracja
|
||||
|
||||
|
||||
@@ -18,16 +18,16 @@ Aktualizacje znajdują się w folderze `updates/0.XX/` gdzie XX oznacza dziesią
|
||||
|
||||
## Procedura tworzenia nowej aktualizacji
|
||||
|
||||
## Status biezacej aktualizacji (ver. 0.294)
|
||||
## Status biezacej aktualizacji (ver. 0.295)
|
||||
|
||||
- Wersja udostepniona: `0.294` (data: 2026-02-19).
|
||||
- Wersja udostepniona: `0.295` (data: 2026-02-19).
|
||||
- Pliki publikacyjne:
|
||||
- `updates/0.20/ver_0.294.zip`
|
||||
- `updates/0.20/ver_0.295.zip`
|
||||
- Pliki metadanych aktualizacji:
|
||||
- `updates/changelog.php`
|
||||
- `updates/versions.php` (`$current_ver = 294`)
|
||||
- `updates/versions.php` (`$current_ver = 295`)
|
||||
- Weryfikacja testow przed publikacja:
|
||||
- `OK (614 tests, 1821 assertions)`
|
||||
- `OK (636 tests, 1868 assertions)`
|
||||
|
||||
### 1. Określ numer wersji
|
||||
Sprawdź ostatnią wersję w `updates/` i zwiększ o 1.
|
||||
|
||||
Reference in New Issue
Block a user