add more controllers and fix tests

This commit is contained in:
root
2026-03-09 11:54:13 -04:00
parent 0c3e9b16f7
commit 1cb3573d4b
74 changed files with 2761 additions and 2728 deletions
@@ -0,0 +1,22 @@
<?php
namespace App\Services\PurchaseOrders;
use App\Models\PurchaseOrder;
use RuntimeException;
class PurchaseOrderStatusService
{
public function cancel(int $poId): PurchaseOrder
{
$po = PurchaseOrder::query()->find($poId);
if (!$po || $po->status === PurchaseOrder::STATUS_RECEIVED) {
throw new RuntimeException('Cannot cancel this PO.');
}
$po->status = PurchaseOrder::STATUS_CANCELED;
$po->save();
return $po;
}
}