Updated focus invoice and serial number logic in throughout invoice validation related pages (resource, create, livewire, blade)

This commit is contained in:
dhanabalan
2025-11-20 19:45:04 +05:30
parent c7391b113f
commit 21ff5fa21f
4 changed files with 55 additions and 21 deletions

View File

@@ -106,9 +106,11 @@ class InvoiceValidationResource extends Resource
->readOnly(fn (callable $get) => !empty($get('serial_number')))
//->disabled(fn (Get $get) => !empty($get('serial_number')))
->extraAttributes([
'id' => 'invoice_number_input',
'x-data' => '{ value: "" }',
'x-model' => 'value',
'x-on:keydown.enter.prevent' => '$wire.processInvoice(value)',
'wire:keydown.enter.prevent' => 'processInvoice(value)',
//'x-on:keydown.enter.prevent' => '$wire.processInvoice(value)',
])
// ->afterStateHydrated(function (TextInput $component, string $state) {
// $component->state(ucwords($state));

View File

@@ -73,14 +73,32 @@ class CreateInvoiceValidation extends CreateRecord
{
$totQuan = InvoiceValidation::where('invoice_number', $this->invoiceNumber)->where('plant_id', $this->plantId)->count();
$scanSQuan = InvoiceValidation::where('invoice_number', $this->invoiceNumber)->where('scanned_status', 'Scanned')->where('plant_id', $this->plantId)->count();
$this->form->fill([
'plant_id' => $this->plantId,
'invoice_number' => $this->invoiceNumber,
'serial_number' => null,
'total_quantity' => $totQuan,
'update_invoice' => false,
'scanned_quantity'=> $scanSQuan,
]);
$this->dispatch('playNotificationSound');
if ($totQuan == $scanSQuan)
{
$this->form->fill([
'plant_id' => $this->plantId,
'invoice_number' => null,
'serial_number' => null,
'total_quantity' => 0,
'update_invoice' => false,
'scanned_quantity'=> 0
]);
$this->dispatch('refreshCompletedInvoice', invoiceNumber: $this->invoiceNumber, plantId: $this->plantId, isSerial: true);
}
else
{
$this->form->fill([
'plant_id' => $this->plantId,
'invoice_number' => $this->invoiceNumber,
'serial_number' => null,
'total_quantity' => $totQuan,
'update_invoice' => false,
'scanned_quantity'=> $scanSQuan
]);
$this->dispatch('refreshInvoiceData', invoiceNumber: $this->invoiceNumber, plantId: $this->plantId);
}
}
protected function getRedirectUrl(): string
@@ -133,6 +151,7 @@ class CreateInvoiceValidation extends CreateRecord
'total_quantity' => 0,
'scanned_quantity'=> 0,
]);
$this->dispatch('refreshEmptyInvoice', invoiceNumber: $invoiceNumber, plantId: $plantId);
}
else
@@ -854,7 +873,6 @@ class CreateInvoiceValidation extends CreateRecord
//$fullPath = $disk->path($filePath);
$disk->delete($filePath);
}
$this->dispatch('playNotificationSound');
$this->form->fill([
'plant_id' => $plantId,