This commit is contained in:
Dr Masroor Ehsan 2025-01-30 00:17:28 +06:00
parent 4e2c1837ee
commit 60f32a6468
5 changed files with 21 additions and 10 deletions

View File

@ -13,6 +13,7 @@
use Filament\Tables\Columns\IconColumn; use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\TextColumn; use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table; use Filament\Tables\Table;
use Illuminate\Support\Str;
use Ramsey\Uuid\Uuid; use Ramsey\Uuid\Uuid;
class DepartmentResource extends Resource class DepartmentResource extends Resource
@ -26,9 +27,13 @@ public static function form(Form $form): Form
return $form return $form
->schema([ ->schema([
TextInput::make('guid') TextInput::make('guid')
->label('Unique ID')
->default(sprintf('DEP-%s', Str::of(Uuid::uuid4())->lower()))
->disabled()
->dehydrated()
->required() ->required()
->maxLength(40) ->maxLength(40)
->default(sprintf('FAC-%s', Uuid::uuid4())), ->unique(ignoreRecord: true),
Toggle::make('is_active') Toggle::make('is_active')
->required(), ->required(),
Select::make('organization_id') Select::make('organization_id')

View File

@ -4,6 +4,7 @@
use App\Filament\Resources\OrganizationResource\Pages; use App\Filament\Resources\OrganizationResource\Pages;
use App\Models\Organization; use App\Models\Organization;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\TextInput; use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Toggle; use Filament\Forms\Components\Toggle;
use Filament\Forms\Form; use Filament\Forms\Form;
@ -14,6 +15,7 @@
use Filament\Tables\Columns\IconColumn; use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\TextColumn; use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table; use Filament\Tables\Table;
use Illuminate\Support\Str;
use Ramsey\Uuid\Uuid; use Ramsey\Uuid\Uuid;
class OrganizationResource extends Resource class OrganizationResource extends Resource
@ -27,15 +29,20 @@ public static function form(Form $form): Form
return $form return $form
->schema([ ->schema([
TextInput::make('guid') TextInput::make('guid')
->label('Unique ID')
->default(sprintf('ORG-%s', Str::of(Uuid::uuid4())->lower()))
->disabled()
->dehydrated()
->required() ->required()
->maxLength(40) ->maxLength(40)
->default(sprintf('INS-%s', Uuid::uuid4())), ->unique(ignoreRecord: true),
TextInput::make('name')
->required()
->maxLength(255),
Toggle::make('is_active') Toggle::make('is_active')
->required(), ->required(),
TextInput::make('address') TextInput::make('name')
->required()
->unique(ignoreRecord: true)
->maxLength(255),
TextArea::make('address')
->maxLength(255), ->maxLength(255),
TextInput::make('logo_path') TextInput::make('logo_path')
->maxLength(255), ->maxLength(255),

View File

@ -7,7 +7,6 @@
use App\Models\User; use App\Models\User;
use App\Services\ACL\RoleService; use App\Services\ACL\RoleService;
use App\Services\TimezoneList; use App\Services\TimezoneList;
use Filament\Forms;
use Filament\Forms\Components\DateTimePicker; use Filament\Forms\Components\DateTimePicker;
use Filament\Forms\Components\FileUpload; use Filament\Forms\Components\FileUpload;
use Filament\Forms\Components\Select; use Filament\Forms\Components\Select;
@ -41,7 +40,7 @@ public static function form(Form $form): Form
return $form return $form
->schema([ ->schema([
Forms\Components\TextInput::make('guid') TextInput::make('guid')
->label('Unique ID') ->label('Unique ID')
->default(sprintf('USR-%s', Str::of(Uuid::uuid4())->lower())) ->default(sprintf('USR-%s', Str::of(Uuid::uuid4())->lower()))
->disabled() ->disabled()

View File

@ -10,7 +10,7 @@ public function up(): void
{ {
Schema::create('organizations', static function (Blueprint $table) { Schema::create('organizations', static function (Blueprint $table) {
$table->id(); $table->id();
$table->string('guid', 40)->unique()->index()->default(DB::raw("concat('INS-', gen_random_uuid())")); $table->string('guid', 40)->unique()->index()->default(DB::raw("concat('ORG-', gen_random_uuid())"));
$table->string('name')->unique(); $table->string('name')->unique();
$table->boolean('is_active')->default(false); $table->boolean('is_active')->default(false);
$table->string('address')->nullable(); $table->string('address')->nullable();

View File

@ -11,7 +11,7 @@ public function up(): void
{ {
Schema::create('departments', static function (Blueprint $table) { Schema::create('departments', static function (Blueprint $table) {
$table->id(); $table->id();
$table->string('guid', 40)->unique()->index()->default(DB::raw("concat('FAC-', gen_random_uuid())")); $table->string('guid', 40)->unique()->index()->default(DB::raw("concat('DEP-', gen_random_uuid())"));
$table->boolean('is_active')->default(false)->index(); $table->boolean('is_active')->default(false)->index();
$table->foreignIdFor(Organization::class)->constrained()->cascadeOnDelete(); $table->foreignIdFor(Organization::class)->constrained()->cascadeOnDelete();
$table->string('name'); $table->string('name');