diff --git a/routes/web.php b/routes/web.php index 8b0c3aa..6c9243a 100644 --- a/routes/web.php +++ b/routes/web.php @@ -9,28 +9,45 @@ use Filament\Facades\Filament; use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Route; use Illuminate\Http\Request; +use thiagoalessio\TesseractOCR\TesseractOCR; Route::get('/', function () { return redirect('/admin'); }); // web.php -Route::post('/temp-upload', function (Request $request) { - if (!$request->hasFile('photo')) { - return response()->json(['success' => false], 400); + Route::post('/temp-upload', function (Request $request) { + if (!$request->hasFile('photo')) { + return response()->json(['success' => false], 400); + } + + $file = $request->file('photo'); + $filename = 'capture_' . time() . '.jpeg'; + $path = $file->storeAs('temp', $filename, 'local'); // storage/app/temp + + return response()->json([ + 'success' => true, + 'path' => $path, + ]); + }); + + Route::post('/verify-ocr', function (Request $request) { + $filePath = storage_path('app/private/temp/' . basename($request->path)); + + if (!file_exists($filePath)) { + return response()->json(['success' => false, 'error' => 'File not found']); } - $file = $request->file('photo'); - $filename = 'capture_' . time() . '.jpeg'; - $path = $file->storeAs('temp', $filename, 'local'); // storage/app/temp - - return response()->json([ - 'success' => true, - 'path' => $path, - ]); + try { + $text = (new TesseractOCR($filePath))->lang('eng')->run(); + return response()->json(['success' => true, 'text' => $text]); + } catch (\Exception $e) { + return response()->json(['success' => false, 'error' => $e->getMessage()]); + } }); + Route::get('/download/{equipmentNumber}', function ($equipmentNumber) { $model = EquipmentMaster::where('equipment_number', $equipmentNumber)->firstOrFail();