Added logic to tube sticker panel and warranty panel in panel box validation
Some checks failed
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (push) Successful in 13s
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (pull_request) Successful in 14s
Gemini PR Review / Gemini PR Review (pull_request) Failing after 20s
Laravel Pint / pint (pull_request) Successful in 4m4s
Laravel Larastan / larastan (pull_request) Failing after 4m25s

This commit is contained in:
dhanabalan
2026-09-08 15:20:37 +05:30
parent 0a2f6607cb
commit 3f6852c5de

View File

@@ -1254,7 +1254,7 @@ class PanelBoxValidationResource extends Resource
return;
}
$parts = explode('/', $state);
$parts = explode('/', $state);
if (count($parts) < 3) {
@@ -1331,18 +1331,20 @@ class PanelBoxValidationResource extends Resource
return;
}
if (!preg_match('/^\d+\/\d+\/\d+\/\d+$/', $state)) {
$parts = explode('/', $state);
if (count($parts) < 3) {
Notification::make()
->title('Invalid QR Format')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber (Or) plantcode/panelboxcode/serialnumber')
->danger()
->send();
$set('serial_number_panel_qr', null);
$set('item_id', null);
return;
}
$parts = explode('/', $state);
$extracted = trim(end($parts));
$extracted = trim(implode('/', array_slice($parts, 2)));
if ($extracted == '') {
$set('tubeStickerPanelError', "SerialNumber can't be empty!");
@@ -1361,13 +1363,13 @@ class PanelBoxValidationResource extends Resource
$set('tubeStickerPanelError', null);
$set('tube_sticker_panel_qr', $extracted);
$set('tube_sticker_panel', '1');
$panelParts = array_map('trim', explode('/', $state));
$panelParts = explode('/', $state);
if (count($panelParts) != 4) {
if (count($panelParts) < 3) {
Notification::make()
->title('Invalid QR Format')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber (Or) plantcode/panelboxcode/serialnumber')
->danger()
->send();
$set('item_id', null);
@@ -1376,9 +1378,7 @@ class PanelBoxValidationResource extends Resource
$supplier = $panelParts[0];
$panelBoxCode = $panelParts[1];
$yearMonth = $panelParts[2];
$serialNumber = $panelParts[3];
$panelBoxSerialNo = $yearMonth . $serialNumber;
$panelBoxSerialNo = implode('/', array_slice($panelParts, 2));
$set('panel_box_supplier', $supplier);
$set('panel_box_serial_number', $panelBoxSerialNo);
@@ -1407,18 +1407,20 @@ class PanelBoxValidationResource extends Resource
return;
}
if (!preg_match('/^\d+\/\d+\/\d+\/\d+$/', $state)) {
$parts = explode('/', $state);
if (count($parts) < 3) {
Notification::make()
->title('Invalid QR Format')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber (Or) plantcode/panelboxcode/serialnumber')
->danger()
->send();
$set('serial_number_panel_qr', null);
$set('item_id', null);
return;
}
$parts = explode('/', $state);
$extracted = trim(end($parts));
$extracted = trim(implode('/', array_slice($parts, 2)));
if ($extracted == '') {
$set('warrantyCardPanelError', "SerialNumber can't be empty!");
@@ -1437,13 +1439,13 @@ class PanelBoxValidationResource extends Resource
$set('warrantyCardPanelError', null);
$set('warranty_card_qr', $extracted);
$set('warranty_card_panel', '1');
$panelParts = array_map('trim', explode('/', $state));
$panelParts = explode('/', $state);
if (count($panelParts) != 4) {
if (count($panelParts) < 3) {
Notification::make()
->title('Invalid QR Format')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber')
->body('Expected format: plantcode/itemcode/yearmm/serialnumber (Or) plantcode/panelboxcode/serialnumber')
->danger()
->send();
$set('item_id', null);
@@ -1452,9 +1454,7 @@ class PanelBoxValidationResource extends Resource
$supplier = $panelParts[0];
$panelBoxCode = $panelParts[1];
$yearMonth = $panelParts[2];
$serialNumber = $panelParts[3];
$panelBoxSerialNo = $yearMonth . $serialNumber;
$panelBoxSerialNo = implode('/', array_slice($panelParts, 2));
$set('panel_box_supplier', $supplier);
$set('panel_box_serial_number', $panelBoxSerialNo);