Files
nutzwerte_fi4/app/Filament/Resources/Projektes/Tables/ProjektesTable.php
T
2025-10-24 11:43:24 +02:00

49 lines
1.6 KiB
PHP

<?php
namespace App\Filament\Resources\Projektes\Tables;
use App\Enums\ProjektStatus;
use Filament\Actions\EditAction;
use Filament\Tables\Columns\SelectColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Filters\SelectFilter;
use Filament\Tables\Table;
use Illuminate\Support\HtmlString;
class ProjektesTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
TextColumn::make('interner_name')
->tooltip(fn ($record): HtmlString => new HtmlString($record->beschreibung))
->label('Interner Name')
->color('primary')
->wrap()
->searchable(),
TextColumn::make('offizieller_name')
->wrap()
->searchable()
->label('Offizieller Name'),
TextColumn::make('gutachter.company'),
TextColumn::make('auftraggeber.company'),
TextColumn::make('ort'),
TextColumn::make('erstellung'),
SelectColumn::make('status')->options(ProjektStatus::class),
])
->filters([
SelectFilter::make('status')
->options(ProjektStatus::class),
SelectFilter::make('gutachter')
->relationship('gutachter', 'company'),
SelectFilter::make('auftraggeber')
->relationship('auftraggeber', 'company'),
])
->recordActions([
EditAction::make()->iconButton(),
]);
}
}