Compare commits
2 Commits
b96a54aae5
...
b07a9596e5
| Author | SHA1 | Date | |
|---|---|---|---|
| b07a9596e5 | |||
|
|
59b94b2b26 |
@@ -10,6 +10,7 @@ use Filament\Actions\Imports\Exceptions\RowImportFailedException;
|
|||||||
use Filament\Actions\Imports\ImportColumn;
|
use Filament\Actions\Imports\ImportColumn;
|
||||||
use Filament\Actions\Imports\Importer;
|
use Filament\Actions\Imports\Importer;
|
||||||
use Filament\Actions\Imports\Models\Import;
|
use Filament\Actions\Imports\Models\Import;
|
||||||
|
use Filament\Facades\Filament;
|
||||||
use Str;
|
use Str;
|
||||||
|
|
||||||
class ProcessOrderImporter extends Importer
|
class ProcessOrderImporter extends Importer
|
||||||
@@ -38,41 +39,57 @@ class ProcessOrderImporter extends Importer
|
|||||||
->example('202500123456')
|
->example('202500123456')
|
||||||
->label('PROCESS ORDER')
|
->label('PROCESS ORDER')
|
||||||
->rules(['required']),
|
->rules(['required']),
|
||||||
ImportColumn::make('created_by')
|
ImportColumn::make('order_quantity')
|
||||||
->exampleHeader('CREATED BY')
|
->exampleHeader('ORDER QUANTITY')
|
||||||
->example('RAW01234')
|
->example('100')
|
||||||
->label('CREATED BY')
|
->label('ORDER QUANTITY')
|
||||||
->rules(['required']),
|
->rules(['required']),
|
||||||
|
// ImportColumn::make('created_by')
|
||||||
|
// ->exampleHeader('CREATED BY')
|
||||||
|
// ->example('RAW01234')
|
||||||
|
// ->label('CREATED BY')
|
||||||
|
// ->rules(['required']),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function resolveRecord(): ?ProcessOrder
|
public function resolveRecord(): ?ProcessOrder
|
||||||
{
|
{
|
||||||
$warnMsg = [];
|
$warnMsg = [];
|
||||||
$plant = Plant::where('code', $this->data['plant'])->first();
|
$plantCod = $this->data['plant'];
|
||||||
$itemCode = Item::where('code', $this->data['item'])->first();
|
$plant = null;
|
||||||
$iCode = trim($this->data['item']);
|
$iCode = trim($this->data['item']);
|
||||||
|
$processOrder = trim($this->data['process_order'] ?? '');
|
||||||
|
$user = Filament::auth()->user();
|
||||||
|
$operatorName = $user->name;
|
||||||
|
|
||||||
if (! $plant) {
|
if (Str::length($plantCod) < 4 || ! is_numeric($plantCod) || ! preg_match('/^[1-9]\d{3,}$/', $plantCod)) {
|
||||||
$warnMsg[] = 'Plant not found';
|
$warnMsg[] = 'Invalid plant code found';
|
||||||
} elseif (Str::length($iCode) < 6 || ! ctype_alnum($iCode)) {
|
} else {
|
||||||
$warnMsg[] = 'Invalid item code found';
|
$plant = Plant::where('code', $plantCod)->first();
|
||||||
} elseif (! $itemCode) {
|
if (! $plant) {
|
||||||
$warnMsg[] = 'Item Code not found';
|
$warnMsg[] = 'Plant not found';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$processOrder = trim($this->data['process_order'] ?? '');
|
if (Str::length($iCode) < 6 || ! ctype_alnum($iCode)) {
|
||||||
|
$warnMsg[] = 'Invalid item code found';
|
||||||
|
} else {
|
||||||
|
$itemCode = Item::where('code', $iCode)->first();
|
||||||
|
if (! $itemCode) {
|
||||||
|
$warnMsg[] = 'Item Code not found';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ($processOrder == '') {
|
if ($processOrder == '') {
|
||||||
$warnMsg[] = 'Process Order cannot be empty';
|
$warnMsg[] = 'Process Order cannot be empty';
|
||||||
}
|
}
|
||||||
|
|
||||||
$user = User::where('name', $this->data['created_by'])->first();
|
// $user = User::where('name', $this->data['created_by'])->first();
|
||||||
if (! $user) {
|
// if (! $user) {
|
||||||
$warnMsg[] = 'User not found';
|
// $warnMsg[] = 'User not found';
|
||||||
}
|
// }
|
||||||
|
|
||||||
if ($plant && $processOrder != '') {
|
if ($plant && $itemCode && $processOrder != '') {
|
||||||
|
|
||||||
$existingOrder = ProcessOrder::where('plant_id', $plant->id)
|
$existingOrder = ProcessOrder::where('plant_id', $plant->id)
|
||||||
->where('process_order', $processOrder)
|
->where('process_order', $processOrder)
|
||||||
@@ -94,7 +111,7 @@ class ProcessOrderImporter extends Importer
|
|||||||
'coil_number' => '0',
|
'coil_number' => '0',
|
||||||
'order_quantity' => 0,
|
'order_quantity' => 0,
|
||||||
'received_quantity' => 0,
|
'received_quantity' => 0,
|
||||||
'created_by' => $user->name,
|
'created_by' => $operatorName,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
// return new ProcessOrder();
|
// return new ProcessOrder();
|
||||||
|
|||||||
Reference in New Issue
Block a user