validated('invoice_number'), $request->validated('lookup_code')); if (!$invoice) { return response()->json(['error' => true, 'message' => self::NOT_FOUND], 404); } return response()->json(['error' => false, 'data' => InvoiceLookup::payload($invoice)]); } public function pdf(InvoiceLookupRequest $request, InvoicePdfService $pdfService): Response|JsonResponse { $invoice = InvoiceLookup::find($request->validated('invoice_number'), $request->validated('lookup_code')); if (!$invoice) { return response()->json(['error' => true, 'message' => self::NOT_FOUND], 404); } return response($pdfService->generate($invoice), 200, [ 'Content-Type' => 'application/pdf', 'Content-Disposition' => 'attachment; filename="' . $pdfService->generateFileName($invoice) . '"', ]); } }