E-Invoice - Do not allow customer to edit PO when customer already has made partial payment

This commit is contained in:
Dillon Ngo
2025-05-15 23:54:16 +08:00
parent df193fd737
commit f524bc37de
@@ -21,12 +21,14 @@ use App\Classes\Modules\Rules\Services\RuleEvaluator;
use App\Classes\Modules\Rules\Standards\Rules\CanPassEditingPORule;
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\PaymentMethodType;
use App\Classes\ValueObjects\Constants\RoleTypes;
use App\Classes\ValueObjects\Constants\TransactionType;
use App\Http\Resources\TransactionResource;
use App\Models\Booking;
use App\Models\Transaction;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
class CreatePurchaseOrderTransactionLogic extends AbstractControllerLogic
{
@@ -82,14 +84,15 @@ class CreatePurchaseOrderTransactionLogic extends AbstractControllerLogic
*/
public function logic(Request $request, $id = '') : JsonResponse
{
if(!in_array(Auth::user()->type, RoleTypes::ADMIN_ROLES)){
$dto = new CreatePurchaseOrderDTO($request->all());
$result = $this->ruleEvaluator->evaluate([
$this->canPassEditingPORule
], $dto);
$dto = new CreatePurchaseOrderDTO($request->all());
$result = $this->ruleEvaluator->evaluate([
$this->canPassEditingPORule
], $dto);
if ($result->failed()) {
throw new CriteriaNotFulfilledException("- " . implode("<br>- ", $result->messages()));
if ($result->failed()) {
throw new CriteriaNotFulfilledException("- " . implode("<br>- ", $result->messages()));
}
}
/** @var Booking $booking */