ver. 0.294: Remove all 12 legacy autoload/shop/ classes (~2363 lines)

Complete Domain-Driven Architecture migration:
- Phase 1-4: Transport, ProductSet, Coupon, Shop, Search, Basket,
  ProductCustomField, Category, ProductAttribute, Promotion
- Phase 5: Order (~562 lines) + Product (~952 lines)
- ~20 Product methods migrated to ProductRepository
- Apilo sync migrated to OrderAdminService
- Production hotfixes: stale Redis cache (prices 0.00), unqualified
  Product:: refs in LayoutEngine, object->array template conversion
- AttributeRepository::getAttributeValueById() Redis cache added

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-18 02:05:39 +01:00
parent c72ba388a0
commit e1cb421aaf
74 changed files with 2176 additions and 2669 deletions

View File

@@ -221,7 +221,7 @@ class ShopProductController
$categories = ( new CategoryRepository( $db ) )->subcategories( null );
$layouts = $this->layoutsForProductEdit( $db );
$products = $this->repository->allProductsList();
$sets = \shop\ProductSet::sets_list();
$sets = ( new \Domain\ProductSet\ProductSetRepository( $db ) )->allSets();
$producers = ( new \Domain\Producer\ProducerRepository( $db ) )->allProducers();
$units = ( new \Domain\Dictionaries\DictionariesRepository( $db ) )->allUnits();
$dlang = $this->languagesRepository->defaultLanguage();
@@ -920,7 +920,7 @@ class ShopProductController
*/
public function ajax_product_url(): void
{
echo json_encode( [ 'url' => \shop\Product::getProductUrl( (int) \Shared\Helpers\Helpers::get( 'product_id' ) ) ] );
echo json_encode( [ 'url' => ( new \Domain\Product\ProductRepository( $GLOBALS['mdb'] ) )->getProductUrl( (int) \Shared\Helpers\Helpers::get( 'product_id' ) ) ] );
exit;
}
@@ -931,7 +931,7 @@ class ShopProductController
{
$response = [ 'status' => 'error', 'msg' => 'Podczas generowania kodu sku wystąpił błąd. Proszę spróbować ponownie.' ];
$sku = \shop\Product::generate_sku_code( (int) \Shared\Helpers\Helpers::get( 'product_id' ) );
$sku = ( new \Domain\Product\ProductRepository( $GLOBALS['mdb'] ) )->generateSkuCode();
if ( $sku ) {
$response = [ 'status' => 'ok', 'sku' => $sku ];
}