feat: implement product and variant CRUD management service with attachment handling

This commit is contained in:
2026-07-01 11:44:56 -03:00
parent 6d0d600b4b
commit a150a9f694
4 changed files with 79 additions and 2 deletions

View File

@@ -3,6 +3,7 @@
namespace App\Domains\Catalog\Controllers;
use App\Domains\Catalog\Models\Product;
use App\Domains\Catalog\Requests\ProductDetailRequest;
use App\Domains\Catalog\Requests\StoreProductRequest;
use App\Domains\Catalog\Requests\UpdateProductRequest;
use App\Domains\Catalog\Resources\ProductResource;
@@ -30,11 +31,11 @@ class ProductController extends Controller
return ProductResource::make($product)->response()->setStatusCode(201);
}
public function show(Request $request, Tenant $tenant, Product $producto, ProductService $productService): ProductResource
public function show(ProductDetailRequest $request, Tenant $tenant, Product $producto, ProductService $productService): ProductResource
{
$producto = $this->resolveScopedProduct($tenant, $producto);
$variantId = $request->query('variant_id');
$variantId = is_numeric($variantId) ? (int) $variantId : null;
$variantId = $variantId !== null ? (int) $variantId : null;
$producto = $productService->getProductDetail($tenant, $producto, $variantId);
return ProductResource::make($producto);