From 6c8fe94cbf695e1b2493444be0dd161ee8be27da Mon Sep 17 00:00:00 2001 From: salam Date: Fri, 3 Oct 2025 18:15:47 +0200 Subject: [PATCH] Allgemeinflaechen wip --- ARTISAN.md | 11 +++- .../Resources/Projektes/ProjekteResource.php | 2 + .../AllgemeinflaechensRelationManager.php | 61 +++++++++++++++++++ app/Models/Projekte.php | 4 +- bootstrap/cache/filament/panels/admin.php | 1 + bootstrap/cache/routes-v7.php | 42 ++++++------- 6 files changed, 96 insertions(+), 25 deletions(-) create mode 100644 app/Filament/Resources/Projektes/RelationManagers/AllgemeinflaechensRelationManager.php diff --git a/ARTISAN.md b/ARTISAN.md index da59c0d..6ff9b02 100644 --- a/ARTISAN.md +++ b/ARTISAN.md @@ -21,8 +21,15 @@ a make:mode ProjekteImport -ms a make:filament-resource ProjekteImport --nested a make:filament-relation-manager ProjekteResource ProjekteImports name -a make:filament-relation-manager AllgemeinflaechenResource projekte_imports name +a make:filament-relation-manager AllgemeinflaechenResource allgemeinflaechens geschoss a make:model Allgemeinflaechen -ms -a make:model Raeumealle -ms \ No newline at end of file +a make:model Raeumealle -ms + + +A make:filament-resource Allgemeinflaechen --nested + + +php artisan make:filament-relation-manager CourseResource lessons title + diff --git a/app/Filament/Resources/Projektes/ProjekteResource.php b/app/Filament/Resources/Projektes/ProjekteResource.php index 88931fd..0129340 100644 --- a/app/Filament/Resources/Projektes/ProjekteResource.php +++ b/app/Filament/Resources/Projektes/ProjekteResource.php @@ -6,6 +6,7 @@ use App\Filament\Clusters\Projekte\ProjekteCluster; use App\Filament\Resources\Projektes\Pages\CreateProjekte; use App\Filament\Resources\Projektes\Pages\EditProjekte; use App\Filament\Resources\Projektes\Pages\ListProjektes; +use App\Filament\Resources\Projektes\RelationManagers\AllgemeinflaechensRelationManager; use App\Filament\Resources\Projektes\Schemas\ProjekteForm; use App\Filament\Resources\Projektes\Tables\ProjektesTable; use App\Models\Projekte; @@ -45,6 +46,7 @@ class ProjekteResource extends Resource public static function getRelations(): array { return [ + AllgemeinflaechensRelationManager::class, ]; } diff --git a/app/Filament/Resources/Projektes/RelationManagers/AllgemeinflaechensRelationManager.php b/app/Filament/Resources/Projektes/RelationManagers/AllgemeinflaechensRelationManager.php new file mode 100644 index 0000000..587f18b --- /dev/null +++ b/app/Filament/Resources/Projektes/RelationManagers/AllgemeinflaechensRelationManager.php @@ -0,0 +1,61 @@ + +components([ + TextInput::make('geschoss') + ->required() + ->maxLength(255), + ]); + } + + public function table(Table $table): Table + { + return $table + ->recordTitleAttribute('geschoss') + ->columns([ + TextColumn::make('geschoss') + ->searchable(), + ]) + ->filters([ + // + ]) + ->headerActions([ + CreateAction::make(), + AssociateAction::make(), + ]) + ->recordActions([ + EditAction::make(), + DissociateAction::make(), + DeleteAction::make(), + ]) + ->toolbarActions([ + BulkActionGroup::make([ + DissociateBulkAction::make(), + DeleteBulkAction::make(), + ]), + ]); + } +} diff --git a/app/Models/Projekte.php b/app/Models/Projekte.php index 5ff0aed..fa912ec 100644 --- a/app/Models/Projekte.php +++ b/app/Models/Projekte.php @@ -27,8 +27,8 @@ class Projekte extends Model return $this->belongsTo(Gutachter::class); } - public function projekte_imports() + public function allgemeinflaechens() { - return $this->hasMany(ProjekteImport::class); + return $this->hasMany(Allgemeinflaechen::class); } } diff --git a/bootstrap/cache/filament/panels/admin.php b/bootstrap/cache/filament/panels/admin.php index 85ce04b..cd8fd78 100644 --- a/bootstrap/cache/filament/panels/admin.php +++ b/bootstrap/cache/filament/panels/admin.php @@ -28,6 +28,7 @@ 'app.filament.resources.projektes.pages.create-projekte' => 'App\\Filament\\Resources\\Projektes\\Pages\\CreateProjekte', 'app.filament.resources.projektes.pages.edit-projekte' => 'App\\Filament\\Resources\\Projektes\\Pages\\EditProjekte', 'app.filament.resources.projektes.pages.list-projektes' => 'App\\Filament\\Resources\\Projektes\\Pages\\ListProjektes', + 'app.filament.resources.projektes.relation-managers.allgemeinflaechens-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\AllgemeinflaechensRelationManager', 'app.filament.resources.textblocks.pages.create-textblock' => 'App\\Filament\\Resources\\Textblocks\\Pages\\CreateTextblock', 'app.filament.resources.textblocks.pages.edit-textblock' => 'App\\Filament\\Resources\\Textblocks\\Pages\\EditTextblock', 'app.filament.resources.textblocks.pages.list-textblocks' => 'App\\Filament\\Resources\\Textblocks\\Pages\\ListTextblocks', diff --git a/bootstrap/cache/routes-v7.php b/bootstrap/cache/routes-v7.php index 7d20ba9..8f8ff9a 100644 --- a/bootstrap/cache/routes-v7.php +++ b/bootstrap/cache/routes-v7.php @@ -511,7 +511,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::X482zXQEOVr3Myjb', + '_route' => 'generated::HOWCkOTiX3xEetvh', ), 1 => NULL, 2 => @@ -531,7 +531,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::uIJywcuAMbX2MINg', + '_route' => 'generated::78HgTUSPeu1dgt2O', ), 1 => NULL, 2 => @@ -589,7 +589,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::eSMnXX8jqZoglDWN', + '_route' => 'generated::yW0VncmgKb6iy7Da', ), 1 => NULL, 2 => @@ -609,7 +609,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::PvxYx4DJHy1oBzQj', + '_route' => 'generated::jPsFyYpvjP2gCTdD', ), 1 => NULL, 2 => @@ -629,7 +629,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::pqiNnwUGYHEq9jrd', + '_route' => 'generated::NnWxDqihf6rtT4sP', ), 1 => NULL, 2 => @@ -649,7 +649,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::opVQamp7XU92vBQa', + '_route' => 'generated::zRwWsHyW6pLwmIAb', ), 1 => NULL, 2 => @@ -669,7 +669,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::I1AnhcLcct9zeww5', + '_route' => 'generated::6xZk6tZY1pg2BE87', ), 1 => NULL, 2 => @@ -2595,7 +2595,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::X482zXQEOVr3Myjb' => + 'generated::HOWCkOTiX3xEetvh' => array ( 'methods' => array ( @@ -2607,7 +2607,7 @@ app('router')->setCompiledRoutes( array ( 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', - 'as' => 'generated::X482zXQEOVr3Myjb', + 'as' => 'generated::HOWCkOTiX3xEetvh', ), 'fallback' => false, 'defaults' => @@ -2623,7 +2623,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::uIJywcuAMbX2MINg' => + 'generated::78HgTUSPeu1dgt2O' => array ( 'methods' => array ( @@ -2635,7 +2635,7 @@ app('router')->setCompiledRoutes( array ( 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', - 'as' => 'generated::uIJywcuAMbX2MINg', + 'as' => 'generated::78HgTUSPeu1dgt2O', ), 'fallback' => false, 'defaults' => @@ -2737,7 +2737,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::eSMnXX8jqZoglDWN' => + 'generated::yW0VncmgKb6iy7Da' => array ( 'methods' => array ( @@ -2766,7 +2766,7 @@ app('router')->setCompiledRoutes( \'exception\' => $exception, ]), status: $exception ? 500 : 200); }";s:5:"scope";s:54:"Illuminate\\Foundation\\Configuration\\ApplicationBuilder";s:4:"this";N;s:4:"self";s:32:"0000000000000f2c0000000000000000";}}', - 'as' => 'generated::eSMnXX8jqZoglDWN', + 'as' => 'generated::yW0VncmgKb6iy7Da', ), 'fallback' => false, 'defaults' => @@ -2782,7 +2782,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::PvxYx4DJHy1oBzQj' => + 'generated::jPsFyYpvjP2gCTdD' => array ( 'methods' => array ( @@ -2804,7 +2804,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::PvxYx4DJHy1oBzQj', + 'as' => 'generated::jPsFyYpvjP2gCTdD', ), 'fallback' => false, 'defaults' => @@ -2820,7 +2820,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::pqiNnwUGYHEq9jrd' => + 'generated::NnWxDqihf6rtT4sP' => array ( 'methods' => array ( @@ -2842,7 +2842,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::pqiNnwUGYHEq9jrd', + 'as' => 'generated::NnWxDqihf6rtT4sP', ), 'fallback' => false, 'defaults' => @@ -2858,7 +2858,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::opVQamp7XU92vBQa' => + 'generated::zRwWsHyW6pLwmIAb' => array ( 'methods' => array ( @@ -2880,7 +2880,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::opVQamp7XU92vBQa', + 'as' => 'generated::zRwWsHyW6pLwmIAb', ), 'fallback' => false, 'defaults' => @@ -2896,7 +2896,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::I1AnhcLcct9zeww5' => + 'generated::6xZk6tZY1pg2BE87' => array ( 'methods' => array ( @@ -2918,7 +2918,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::I1AnhcLcct9zeww5', + 'as' => 'generated::6xZk6tZY1pg2BE87', ), 'fallback' => false, 'defaults' =>