7 Commits

Author SHA1 Message Date
dhanabalan
bfed40f535 Add Laravel Pint workflow for code style checks
Some checks failed
Laravel Pint / pint (pull_request) Failing after 2m3s
2025-07-28 16:04:45 +05:30
dhanabalan
83f98d9e83 Added import / export permissions to mfm meter and create permission to production sticker reprint page 2025-07-25 12:34:01 +05:30
dhanabalan
3d84661640 removed unwanted notification for production quantity 2025-07-25 11:43:26 +05:30
dhanabalan
26ecaf49ef Added sticker master get controller production reprint 2025-07-24 18:03:00 +05:30
dhanabalan
5fe2b74174 Aded filter list api for invoice 2025-07-22 11:11:26 +05:30
dhanabalan
ce901e3b78 Added scan_quantity and pend_quantity fields with respective validations 2025-07-18 20:37:11 +05:30
dhanabalan
31ad036d0e Updated duration for failure messages to 5 seconds and label changed for total sno quantity field 2025-07-18 19:11:51 +05:30
9 changed files with 418 additions and 66 deletions

30
.github/workflows/pint.yaml vendored Normal file
View File

@@ -0,0 +1,30 @@
name: Laravel Pint
on:
pull_request:
workflow_dispatch:
jobs:
pint:
runs-on: ubuntu-latest
steps:
# Reinstall system libraries to ensure compatibility
- name: Ensure system libraries are up-to-date
run: |
sudo apt-get update
sudo apt-get install --reinstall --yes git libc6
- uses: actions/checkout@v4
- name: Set up PHP
uses: shivammathur/setup-php@v2
with:
php-version: "8.3"
- name: Install dependencies
run: composer install --no-interaction --prefer-dist --no-progress
# Run pint in test mode, check only files different from master branch
- name: Run Laravel Pint in test mode
run: vendor/bin/pint --test --diff=master

View File

@@ -61,7 +61,7 @@ class InvoiceFinder extends Page implements HasForms
->readOnly()
->reactive(),
TextInput::make('total_sno_quantity')
->label('Total SNo. Quantity')
->label('Invoice Quantity')
->readOnly()
->reactive(),
@@ -79,7 +79,7 @@ class InvoiceFinder extends Page implements HasForms
Notification::make()
->title("Invoice number '$invoiceNo' can't be empty!")
->danger()
->duration(1200)
->duration(5000)
->send();
$this->dispatch('loadData', '', [], [], [], [], $plantId);
$this->form->fill([
@@ -101,7 +101,7 @@ class InvoiceFinder extends Page implements HasForms
Notification::make()
->title("Invoice number '$invoiceNo' does not exist in locator invoice table!")
->danger()
->duration(2000)
->duration(5000)
->send();
$this->dispatch('loadData', '', [], [], [], [], $plantId);
$this->form->fill([
@@ -128,7 +128,7 @@ class InvoiceFinder extends Page implements HasForms
Notification::make()
->title("Invoice number '$invoiceNo' already completed the scanning process..!")
->success()
->duration(2000)
->duration(5000)
->send();
$this->dispatch('loadData', '', [], [], [], [], $plantId);

View File

@@ -433,12 +433,6 @@ class ProductionQuantityPage extends Page implements HasForms
$this->recQr = $itemCode && $serialNumber ? "{$itemCode} | {$serialNumber}" : null;
}
Notification::make()
->title("Scanned the valid QR code is $formQRData)")
->info()
->send();
if (empty($formQRData)) {
$this->form->fill([
'plant_id'=> $this->pId,

View File

@@ -65,7 +65,9 @@ class LocatorInvoiceValidationResource extends Resource
$set('invoice_number', null);
$set('pallet_number', null);
$set('serial_number', null);
$set('sno_quantity', null);
$set('sno_quantity', 0);
$set('scan_quantity', 0);
$set('pend_quantity', 0);
}
else
{
@@ -73,7 +75,9 @@ class LocatorInvoiceValidationResource extends Resource
$set('invoice_number', null);
$set('pallet_number', null);
$set('serial_number', null);
$set('sno_quantity', null);
$set('sno_quantity', 0);
$set('scan_quantity', 0);
$set('pend_quantity', 0);
}
}),
@@ -92,14 +96,28 @@ class LocatorInvoiceValidationResource extends Resource
->readOnly(fn (callable $get) => !$get('plant') || $get('pallet_number') || $get('serial_number'))
->afterStateUpdated(function ($state, callable $set, callable $get) {
$plantId = $get('plant');
$invNo = $get('invoice_number');
$snoCount = 0;
$pendingCount = 0;
$scannedCount = 0;
if (!$plantId) {
$set('invoice_number', null);
$set('pallet_number', null);
}
else if ($invNo)
{
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invNo)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invNo)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invNo)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
}
$set('update_invoice', null);
$set('pallet_number', null);
$set('serial_number', null);
$set('sno_quantity', $snoCount);
$set('scan_quantity', $scannedCount);
$set('pend_quantity', $pendingCount);
}),
Forms\Components\TextInput::make('pallet_number')
->label('Scan Pallet No')
@@ -180,7 +198,18 @@ class LocatorInvoiceValidationResource extends Resource
'x-on:keydown.enter.prevent' => '$wire.processSerialNo()',
]),
Forms\Components\TextInput::make('sno_quantity')
->label('SNo. Quantity')
->label('Invoice Quantity')
->default(0)
->readOnly(),
Forms\Components\TextInput::make('scan_quantity')
->label('Scanned Quantity')
->default(0)
->readOnly(),
Forms\Components\TextInput::make('pend_quantity')
->label('Pending Quantity')
->default(0)
->readOnly(),
//Forms\Components\View::make('forms.components.update-invoice-button'),

View File

@@ -72,7 +72,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -112,10 +114,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -157,10 +161,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -191,10 +197,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -256,7 +264,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -282,7 +292,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -304,10 +316,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -342,6 +356,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -414,17 +430,22 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$disk->delete($filePath);
}
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)
->where('invoice_number', $invoiceNumber)
->count();
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'update_invoice' => 0,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -461,20 +482,16 @@ class CreateLocatorInvoiceValidation extends CreateRecord
->duration(5000)
->send();
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'serial_number' => null,
]);
$this->dispatch('loadData', '', $plantId);
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -504,10 +521,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -569,7 +588,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -597,7 +618,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -619,10 +642,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -655,7 +680,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -707,17 +734,22 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$disk->delete($filePath);
}
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)
->where('invoice_number', $invoiceNumber)
->count();
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'update_invoice' => 0,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -735,9 +767,11 @@ class CreateLocatorInvoiceValidation extends CreateRecord
->duration(1000)
->send();
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)
->where('invoice_number', $invoiceNumber)
->count();
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->form->fill([
'plant_id' => $plantId,
@@ -746,6 +780,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -763,11 +799,13 @@ class CreateLocatorInvoiceValidation extends CreateRecord
->duration(5000)
->send();
$this->dispatch('loadData', $invoiceNumber, $plantId);
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)
->where('invoice_number', $invoiceNumber)
->count();
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->dispatch('loadData', $invoiceNumber, $plantId);
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
@@ -775,6 +813,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -825,10 +865,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -862,10 +904,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -873,6 +917,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
}
}
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
if ($palletNumber == '' || $palletNumber == null)
{
Notification::make()
@@ -881,8 +931,6 @@ class CreateLocatorInvoiceValidation extends CreateRecord
->duration(5000)
->send();
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)
->count();
$this->dispatch('loadData', $invoiceNumber, $plantId);
$this->form->fill([
'plant_id' => $plantId,
@@ -892,13 +940,14 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
return;
}
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
if (strlen($palletNumber) < 10)
{
Notification::make()
@@ -916,6 +965,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -943,6 +994,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -978,6 +1031,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1020,6 +1075,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1061,6 +1118,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1144,11 +1203,13 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1156,6 +1217,10 @@ class CreateLocatorInvoiceValidation extends CreateRecord
}
else
{
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->dispatch('loadData', $invoiceNumber, $plantId);
$this->form->fill([
'plant_id' => $plantId,
@@ -1165,6 +1230,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1234,11 +1301,13 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1246,6 +1315,10 @@ class CreateLocatorInvoiceValidation extends CreateRecord
}
else
{
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->dispatch('loadData', $invoiceNumber, $plantId);
$this->form->fill([
'plant_id' => $plantId,
@@ -1255,6 +1328,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1310,7 +1385,9 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1344,10 +1421,12 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1356,6 +1435,11 @@ class CreateLocatorInvoiceValidation extends CreateRecord
}
$snoCount = LocatorInvoiceValidation::where('plant_id', $plantId)->where('invoice_number', $invoiceNumber)->count();
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
if ($serialNumber == '' || $serialNumber == null)
{
Notification::make()
@@ -1374,6 +1458,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1396,6 +1482,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1418,6 +1506,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1443,6 +1533,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1465,6 +1557,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1497,6 +1591,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1530,6 +1626,8 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'pallet_number' => null,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1615,11 +1713,13 @@ class CreateLocatorInvoiceValidation extends CreateRecord
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'invoice_number' => null,
'pallet_number' => null,
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => null,
'sno_quantity' => 0,
'scan_quantity' => 0,
'pend_quantity' => 0,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1627,14 +1727,21 @@ class CreateLocatorInvoiceValidation extends CreateRecord
}
else
{
$pendingCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->whereNull('scanned_status')->orWhere('scanned_status', '=', '')->count();
$scannedCount = LocatorInvoiceValidation::where('invoice_number', $invoiceNumber)->where('plant_id', $plantId)->where('scanned_status', '=', 'Scanned')->count();
$this->dispatch('loadData', $invoiceNumber, $plantId);
$this->form->fill([
'plant_id' => $plantId,
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);
@@ -1655,8 +1762,11 @@ class CreateLocatorInvoiceValidation extends CreateRecord
'plant' => $plantId,
'invoice_number' => $invoiceNumber,
'pallet_number' => null,
'update_invoice' => 0,
'serial_number' => null,
'sno_quantity' => $snoCount,
'scan_quantity' => $scannedCount,
'pend_quantity' => $pendingCount,
'created_by' => $operatorName,
'scanned_by' => $operatorName,
]);

View File

@@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use App\Models\InvoiceValidation;
use App\Models\ModuleList;
use App\Models\Plant;
use Illuminate\Http\Request;
@@ -16,6 +17,62 @@ class ModuleInvoiceTypeController extends Controller
//
}
public function get_invoiceFilter(Request $request)
{
$expectedUser = env('API_AUTH_USER');
$expectedPw = env('API_AUTH_PW');
$header_auth = $request->header('Authorization');
$expectedToken = $expectedUser . ':' . $expectedPw;
if ("Bearer " . $expectedToken != $header_auth)
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => 'Invalid authorization token!'
], 403);
}
$filterName = $request->header('filter-name');
if (empty($filterName))
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Filter Name can't be empty!"
], 404);
}
$headerValue = $request->header('filter-name');
if ($headerValue != 'Filter List') {
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Invalid value for 'module-name' header!"
], 404);
}
$uniqueModules = ModuleList::select('filter_name', 'created_at')
->orderBy('created_at', 'asc')
->get()
->unique('filter_name')
->pluck('filter_name')
->values();
if ($uniqueModules->isEmpty()) {
return response()->json([
'status_code' => 'ERROR',
'status_description' => 'Filter names not found'
], 404);
}
return response()->json([
'status_code' => 'SUCCESS',
'status_description' => $uniqueModules
], 200);
}
// public function get_invoiceCountData(Request $request)
// {
// $expectedUser = env('API_AUTH_USER');

View File

@@ -27,6 +27,126 @@ class StickerMasterController extends Controller
//
}
public function get_master_type(Request $request)
{
$expectedUser = env('API_AUTH_USER');
$expectedPw = env('API_AUTH_PW');
$header_auth = $request->header('Authorization');
$expectedToken = $expectedUser . ':' . $expectedPw;
if ("Bearer " . $expectedToken != $header_auth)
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => 'Invalid authorization token!'
], 403);
}
$plantCode = $request->header('plant-code');
$itemCode = $request->header('item-code');
if ($plantCode == null || $plantCode == '')
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Plant code can't be empty!"
], 400);
}
else if (Str::length($plantCode) < 4 || !is_numeric($plantCode) || !preg_match('/^[1-9]\d{3,}$/', $plantCode))
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Invalid plant code found!"
], 400);
}
else if ($itemCode == null || $itemCode == '')
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Item Code can't be empty!"
], 400);
}
else if (Str::length($itemCode) < 6 || !ctype_alnum($itemCode))
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Invalid item code found!"
], 400);
}
$plant = Plant::where('code', $plantCode)->first();
if (!$plant) {
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Plant not found!"
], 400);
}
$plantId = $plant->id;
$item = Item::where('code', $itemCode)->first();
if (!$item)
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Item Code not found in item table!"
], 404);
}
$item = Item::where('plant_id', $plantId)->where('code', $itemCode)->first();
if (!$item)
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Item Code not found in item table for the plant : '$plant->name'!"
], 404);
}
$stickerMaster = StickerMaster::where('plant_id', $plantId)->where('item_id', $item->id)->first();
if (!$stickerMaster)
{
return response()->json([
'status_code' => 'ERROR',
'status_description' => "Item Code not found in sticker master table for the plant : '$plant->name'!"
], 404);
}
$serial_number_motor = $stickerMaster->serial_number_motor ?? null;
$serial_number_pump = $stickerMaster->serial_number_pump ?? null;
if ($serial_number_motor != 1 && $serial_number_pump != 1) {
return response()->json([
'status_code' => 'ERROR',
'status_description' => "The Item Code '$itemCode' does not have serial pump or serial motor selected!"
], 400);
}
$serialInfo = [];
if ($serial_number_motor == 1 && $serial_number_pump == 1)
{
$serialInfo[] = 'Serial Pump';
}
else
{
if ($serial_number_motor == 1) {
$serialInfo[] = 'Serial Motor';
}
if ($serial_number_pump == 1) {
$serialInfo[] = 'Serial Pump';
}
}
$output = [
'status_code' => 'SUCCESS',
'status_description' => implode(', ', $serialInfo),
];
return response()->json($output, 200);
}
/**
* Display the specified resource.
*/

View File

@@ -127,6 +127,9 @@ class PermissionSeeder extends Seeder
Permission::updateOrCreate(['name' => 'view import mfm parameter']);
Permission::updateOrCreate(['name' => 'view export mfm parameter']);
Permission::updateOrCreate(['name' => 'view import mfm meter']);
Permission::updateOrCreate(['name' => 'view export mfm meter']);
//Dashboard Permissions
Permission::updateOrCreate(['name' => 'view invoice dashboard']); //invoice dashboard
Permission::updateOrCreate(['name' => 'view production hourly count dashboard']); //hourly production
@@ -137,6 +140,8 @@ class PermissionSeeder extends Seeder
Permission::updateOrCreate(['name' => 'view guard patrol day count dashboard']);
Permission::updateOrCreate(['name' => 'view guard patrol hourly count dashboard']);
Permission::updateOrCreate(['name' => 'view invoice serial quantity dashboard']);
Permission::updateOrCreate(['name' => 'create production sticker reprint page']);
//Send To Sap Permissions
Permission::updateOrCreate(['name' => 'view quality data send to sap']);

View File

@@ -21,6 +21,7 @@ use App\Http\Controllers\ModuleProductionOrderDataController;
use App\Http\Controllers\ObdController;
use App\Http\Controllers\PalletController;
use App\Http\Controllers\PlantController;
use App\Http\Controllers\ProductionStickerReprintController;
use App\Http\Controllers\StickerMasterController;
use App\Http\Controllers\TestingPanelController;
use App\Http\Controllers\UserController;
@@ -77,8 +78,12 @@ Route::get('machine/get-all-data', [MachineController::class, 'get_all_data']);
Route::get('laser/item/get-master-data', [StickerMasterController::class, 'get_master']);
Route::get('sticker/get-master-type-data', [StickerMasterController::class, 'get_master_type']);
Route::get('/download-qr-pdf/{palletNo}', [PalletController::class, 'downloadQrPdf'])->name('download-qr-pdf');
Route::get('/download-qr1-pdf/{palletNo}', [ProductionStickerReprintController::class, 'downloadQrPdf'])->name('download-qr1-pdf');
//Production Dashboard Controller
Route::get('get/module-name/data', [ModuleController::class, 'get_module']);
@@ -105,6 +110,8 @@ Route::get('get/module-production-linestop/data', [ModuleProductionLineStopContr
Route::get('get/module-invoice-type/data', [ModuleInvoiceDataController::class, 'get_invoiceData']);
Route::get('get/module-invoice-filter/data', [ModuleInvoiceTypeController::class, 'get_invoiceFilter']);
Route::get('get/module-invoice-count/data', [ModuleInvoiceTypeController::class, 'get_invoiceCountData']);
Route::get('get/module-invoice-quantity/data', [ModuleInvoiceQuantityController::class, 'get_invoiceQuantityData']);