49 lines
1.6 KiB
PHP
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('info')
|
|
->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()->color('gray'),
|
|
]);
|
|
}
|
|
}
|