Files
SGF/app/Modules/Purchasing/SupplierPayableReportController.php
T
2026-11-04 09:37:20 +02:00

27 lines
963 B
PHP

<?php
namespace App\Modules\Purchasing;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
final class SupplierPayableReportController extends Controller
{
private function criteria(Request $request): array
{
$data = $request->validate(['q' => 'sometimes|nullable|string|max:100', 'source' => 'sometimes|required|integer|min:1']);
abort_if(array_diff(array_keys($request->query()), array_keys($data)) !== [], 422);
return $data;
}
public function index(Request $request, SupplierPayables $service)
{
return response()->json($service->report($request->user(), $this->criteria($request)))->header('Cache-Control', 'no-store');
}
public function page(Request $request, SupplierPayables $service)
{
return response()->view('purchasing.payable-report', ['report' => $service->report($request->user(), $this->criteria($request))])->header('Cache-Control', 'no-store');
}
}