wip
This commit is contained in:
1 parent
2296b708eb
commit
f2b6487ec0
20 files changed
+395
-91
No files matched your search
@@ -3,6 +3,7 @@
|
||||
namespace App\Filament\Resources\Methodes\Tables;
|
||||
|
||||
use Filament\Actions\EditAction;
|
||||
use Filament\Support\Enums\FontWeight;
|
||||
use Filament\Tables\Columns\TextColumn;
|
||||
use Filament\Tables\Table;
|
||||
use Illuminate\Support\HtmlString;
|
||||
@@ -12,15 +13,14 @@ class MethodesTable
|
||||
public static function configure(Table $table): Table
|
||||
{
|
||||
return $table
|
||||
->paginated(false)
|
||||
->columns([
|
||||
TextColumn::make('id'),
|
||||
TextColumn::make('name')
|
||||
->color('info')
|
||||
->weight(FontWeight::Bold)
|
||||
->wrap()
|
||||
->description(function ($record) {
|
||||
return new HtmlString($record->description);
|
||||
})
|
||||
->html(),
|
||||
}),
|
||||
])
|
||||
->recordActions([
|
||||
EditAction::make()->iconButton(),
|
||||
|
||||
+22
-3
@@ -14,8 +14,10 @@ use Filament\Resources\RelationManagers\RelationManager;
|
||||
use Filament\Tables\Columns\SelectColumn;
|
||||
use Filament\Tables\Columns\TextColumn;
|
||||
use Filament\Tables\Columns\TextInputColumn;
|
||||
use Filament\Tables\Filters\SelectFilter;
|
||||
use Filament\Tables\Filters\TernaryFilter;
|
||||
use Filament\Tables\Table;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Collection;
|
||||
use Livewire\Component;
|
||||
|
||||
@@ -38,14 +40,14 @@ class ProjektMethodesRelationManager extends RelationManager
|
||||
->recordTitleAttribute('raumart')
|
||||
->columns([
|
||||
SelectColumn::make('methode_id')
|
||||
->selectablePlaceholder(true)
|
||||
->label('Methoden')
|
||||
->optionsRelationship('methode', 'name')
|
||||
->preloadOptions()
|
||||
->rules(['required'])
|
||||
->afterStateUpdated(function (Component $livewire) {
|
||||
$livewire->dispatch('refreshMethods');
|
||||
})->validationMessages([
|
||||
'required' => 'Die Eingabe eines Faktors ist erforderlich.',
|
||||
'required' => 'Die Eingabe einer Methode ist erforderlich.',
|
||||
]),
|
||||
TextColumn::make('raumart')
|
||||
->searchable(),
|
||||
@@ -62,10 +64,27 @@ class ProjektMethodesRelationManager extends RelationManager
|
||||
]),
|
||||
])
|
||||
->filters([
|
||||
SelectFilter::make('methodes')
|
||||
->label('Methoden')
|
||||
->relationship('methode', 'name'),
|
||||
TernaryFilter::make('methode_id')
|
||||
->label('Methode zugeordnet'),
|
||||
->label('Methode ist zugeordnet'),
|
||||
TernaryFilter::make('faktor')
|
||||
->label('Faktor fehlt')
|
||||
->queries(
|
||||
true: fn (Builder $query) => $query->where('faktor', '=', 0),
|
||||
false: fn (Builder $query) => $query->where('faktor', '>', 0),
|
||||
),
|
||||
|
||||
])
|
||||
->headerActions([
|
||||
Action::make('methoden')
|
||||
->icon('phosphor-question')
|
||||
->modalCancelAction(fn (Action $action) => $action->label('Schließen'))
|
||||
->modalSubmitAction(false)
|
||||
->modalHeading('Hilfe zu Methoden')
|
||||
->slideOver()
|
||||
->modalContent(view('filament.pages.actions.methoden')),
|
||||
Action::make('erstellen')
|
||||
->action(fn (CreateProjektMethoden $createProjektMethoden) => $createProjektMethoden->create($this->ownerRecord))
|
||||
->requiresConfirmation()
|
||||
|
||||
@@ -19,7 +19,7 @@ class ProjektesTable
|
||||
TextColumn::make('interner_name')
|
||||
->tooltip(fn ($record): HtmlString => new HtmlString($record->beschreibung))
|
||||
->label('Interner Name')
|
||||
->color('info')
|
||||
->color('primary')
|
||||
->wrap()
|
||||
->searchable(),
|
||||
TextColumn::make('offizieller_name')
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Resources\Projektes\Widgets;
|
||||
|
||||
use App\Models\Methode;
|
||||
use Filament\Support\Enums\FontWeight;
|
||||
use Filament\Tables\Columns\TextColumn;
|
||||
use Filament\Tables\Table;
|
||||
use Filament\Widgets\TableWidget;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Support\HtmlString;
|
||||
|
||||
class WidgetMethoden extends TableWidget
|
||||
{
|
||||
public function table(Table $table): Table
|
||||
{
|
||||
return $table
|
||||
->query(fn (): Builder => Methode::query())
|
||||
->paginated(false)
|
||||
->columns([
|
||||
TextColumn::make('name')
|
||||
->label('')
|
||||
->weight(FontWeight::Bold)
|
||||
->wrap()
|
||||
->description(function ($record) {
|
||||
return new HtmlString($record->description);
|
||||
}),
|
||||
]);
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user