feat: refactor cart and bundle handling to support Buyable interface for improved flexibility

This commit is contained in:
2026-07-14 16:41:34 -03:00
parent ceb1e2b04a
commit 480ee70393
12 changed files with 230 additions and 203 deletions

View File

@@ -0,0 +1,20 @@
<?php
namespace App\Domains\Shared\Contracts;
interface Buyable
{
public function getPrice(): float;
public function getName(): string;
public function availableQuantity(): ?int;
public function reserveStock(int $amount): void;
public function decrementReservedStock(int $amount): void;
public function buy(int $amount): void;
public function validateStock(): void;
}