From 06bce66b34e98cdc0dd0d9b1e10269bd0bd95e19 Mon Sep 17 00:00:00 2001 From: dhanabalan Date: Mon, 27 Oct 2025 18:40:42 +0530 Subject: [PATCH] modified logic in ocr --- .../Resources/OcrValidationResource.php | 17 ++++++++++++++--- resources/views/fields/camera-capture.blade.php | 16 ++++++++++++++++ routes/web.php | 11 +++++++++++ 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/app/Filament/Resources/OcrValidationResource.php b/app/Filament/Resources/OcrValidationResource.php index eaecb9a..a4a5f19 100644 --- a/app/Filament/Resources/OcrValidationResource.php +++ b/app/Filament/Resources/OcrValidationResource.php @@ -115,6 +115,7 @@ class OcrValidationResource extends Resource // ->default('[]') // empty array as default // ->dehydrated(), Forms\Components\Hidden::make('serial_numbers') + ->reactive() ->default('[]'), Forms\Components\Actions::make([ @@ -254,6 +255,7 @@ class OcrValidationResource extends Resource Action::make('uploadNow1') ->label('Upload OCR') + ->reactive() ->action(function ($get, callable $set) { // $serialNumbers = [ @@ -264,9 +266,18 @@ class OcrValidationResource extends Resource // ]; // $hasSerial = collect($serialNumbers)->some(fn($s) => !empty($s)); - $serialNumbersJson = $get('serial_numbers'); - $serialNumbers = json_decode($serialNumbersJson, true) ?? []; - dd($serialNumbers); + // $serialNumbersJson = $get('serial_numbers'); + // $serialNumbers = json_decode($serialNumbersJson, true) ?? []; + $serials = session('serial_numbers', []); + + if (empty($serials)) { + Filament::notify('danger', 'No serial numbers found!'); + return; + } + + // ✅ Store into local Filament state (optional) + $set('serial_numbers', $serials); + dd($serials); if (empty($serialNumbers)) { Notification::make() diff --git a/resources/views/fields/camera-capture.blade.php b/resources/views/fields/camera-capture.blade.php index 1cf5c6b..b7bfcca 100644 --- a/resources/views/fields/camera-capture.blade.php +++ b/resources/views/fields/camera-capture.blade.php @@ -882,6 +882,22 @@ function cameraCapture() { this.$refs.hiddenInputSerials.value = JSON.stringify(this.serialNumbers); //this.$refs.serialInput.value = JSON.stringify(this.serialNumbers); alert("Serial numbers stored in hidden input:\n" + this.$refs.serialInput.value); + // ✅ Save to Laravel Session using POST API + fetch('/save-serials-to-session', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + 'X-CSRF-TOKEN': document.querySelector('meta[name="csrf-token"]').content, + }, + body: JSON.stringify({ + serial_numbers: this.serialNumbers, + }), + }) + .then(response => response.json()) + .then(data => { + console.log("✅ Session Updated:", data); + alert("✅ Serial numbers saved to session!"); + }) } } catch (err) { console.error("OCR verify error:", err); diff --git a/routes/web.php b/routes/web.php index 52489c0..7ceb275 100644 --- a/routes/web.php +++ b/routes/web.php @@ -15,6 +15,17 @@ use thiagoalessio\TesseractOCR\TesseractOCR; return redirect('/admin'); }); + // routes/web.php + Route::post('/save-serials-to-session', function (Request $request) { + session(['serial_numbers' => $request->serial_numbers]); + + return response()->json([ + 'status' => 'success', + 'serial_numbers' => $request->serial_numbers, + ]); + }); + + // web.php Route::post('/temp-upload', function (Request $request) { if (!$request->hasFile('photo')) {