user()?->canDo(Permissions::ADMIN_SETTINGS_EDIT) ?? false; } public static function form(Schema $schema): Schema { return $schema->components([ Schemas\Components\Section::make(__('Pod / Spațiu lucru')) ->columns(2) ->schema([ Forms\Components\TextInput::make('name') ->label(__('Nume')) ->required() ->maxLength(80) ->placeholder(__('Ex: Pod 1, Curte 1, Atelier electric')), Forms\Components\ColorPicker::make('color') ->default('#3b82f6'), Forms\Components\TextInput::make('hours_per_day') ->label(__('Ore disponibile / zi')) ->numeric() ->step(0.5) ->default(10) ->helperText(__('Capacitatea zilnică în ore')), Forms\Components\Select::make('default_master_id') ->label(__('Mecanic implicit')) ->options(fn () => User::where('status', 'active')->pluck('name', 'id')) ->searchable() ->placeholder(__('Niciun mecanic implicit')) ->helperText(__('Va fi pre-completat când creezi o programare pentru acest pod')), Forms\Components\TextInput::make('description') ->label(__('Descriere')) ->maxLength(255) ->placeholder(__('Ex: cu lift, fără lift, doar diagnoză...')) ->columnSpanFull(), Forms\Components\TextInput::make('sort_order') ->numeric() ->default(100), Forms\Components\Toggle::make('is_active')->label(__('Activ'))->default(true), ]), ]); } public static function table(Table $table): Table { return $table ->columns([ Tables\Columns\TextColumn::make('name')->searchable()->sortable(), Tables\Columns\ColorColumn::make('color'), Tables\Columns\TextColumn::make('hours_per_day')->label(__('Ore/zi'))->sortable(), Tables\Columns\TextColumn::make('defaultMaster.name')->label(__('Mecanic implicit'))->placeholder('—'), Tables\Columns\TextColumn::make('description')->placeholder('—')->limit(40)->toggleable(), Tables\Columns\TextColumn::make('appointments_count')->counts('appointments')->label(__('Programări'))->badge(), Tables\Columns\ToggleColumn::make('is_active')->label(__('Activ')), ]) ->actions([ Actions\EditAction::make(), Actions\DeleteAction::make(), ]) ->defaultSort('sort_order'); } public static function getPages(): array { return [ 'index' => Pages\ListPosts::route('/'), 'create' => Pages\CreatePost::route('/create'), 'edit' => Pages\EditPost::route('/{record}/edit'), ]; } }