1
0
forked from poc/pds

Restrict duplicate warning on update

This commit is contained in:
dhanabalan
2025-05-06 12:26:42 +05:30
parent a189c58352
commit 75f97e7a2b

View File

@@ -19,6 +19,7 @@ use Illuminate\Database\Eloquent\SoftDeletingScope;
use Filament\Forms\Get; use Filament\Forms\Get;
use Filament\Tables\Actions\ExportAction; use Filament\Tables\Actions\ExportAction;
use Filament\Tables\Actions\ImportAction; use Filament\Tables\Actions\ImportAction;
// use Illuminate\Validation\Rule;
class StickerMasterResource extends Resource class StickerMasterResource extends Resource
{ {
@@ -78,6 +79,11 @@ class StickerMasterResource extends Resource
->pluck('code', 'id') ->pluck('code', 'id')
->toArray(); ->toArray();
}) })
// ->rule(function (callable $get) {
// return Rule::unique('items', 'code')
// ->where('plant_id', $get('plant_id'))
// ->ignore($get('id')); // Ignore current record during updates
// })
->required() ->required()
->nullable() ->nullable()
->searchable() ->searchable()
@@ -129,7 +135,10 @@ class StickerMasterResource extends Resource
$duplicateSticker = StickerMaster::where('plant_id', $plantId) $duplicateSticker = StickerMaster::where('plant_id', $plantId)
->where('item_id', $itemId) ->where('item_id', $itemId)
->exists(); ->exists();
if(!$get('id'))
{
$set('item_error', $duplicateSticker ? 'Item Code already exists for the selected plant.' : null); $set('item_error', $duplicateSticker ? 'Item Code already exists for the selected plant.' : null);
}
}) })
->extraAttributes(fn ($get) => [ ->extraAttributes(fn ($get) => [
'class' => $get('item_error') ? 'border-red-500' : '', 'class' => $get('item_error') ? 'border-red-500' : '',