41 lines
878 B
PHP
41 lines
878 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Http\Requests\Fo\Orders;
|
|
|
|
use App\Actions\Orders\FinalizeOrderInput;
|
|
use Illuminate\Foundation\Http\FormRequest;
|
|
use Infrastructure\Adapters\Services\AppCustomerAuthService;
|
|
|
|
class ConfirmOrderRequest extends FormRequest
|
|
{
|
|
public function __construct(
|
|
private readonly AppCustomerAuthService $authService,
|
|
) {
|
|
}
|
|
|
|
public function authorize(): bool
|
|
{
|
|
return $this->authService->check();
|
|
}
|
|
|
|
public function toFinalizeOrderInput(): FinalizeOrderInput
|
|
{
|
|
$customer = $this->authService->getCustomerAsMandatory();
|
|
|
|
return new FinalizeOrderInput(
|
|
shopperId: $customer->getId(),
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @return array<string, mixed>
|
|
*/
|
|
public function rules(): array
|
|
{
|
|
return [
|
|
'ok_cgv' => ['accepted'],
|
|
];
|
|
}
|
|
}
|