From 0b18eea9d77578e33d4f35d9b57d290e9a505656 Mon Sep 17 00:00:00 2001 From: salam Date: Fri, 3 Oct 2025 17:57:43 +0200 Subject: [PATCH] allgemeinflaechen --- ARTISAN.md | 6 +- .../Projektes/Pages/EditProjekte.php | 8 ++ .../Resources/Projektes/ProjekteResource.php | 2 - .../ProjekteImportsRelationManager.php | 98 ------------------- app/Models/Allgemeinflaechen.php | 14 +++ app/Models/ProjekteImport.php | 16 --- app/Models/Raeumealle.php | 18 ++++ bootstrap/cache/filament/panels/admin.php | 1 - bootstrap/cache/routes-v7.php | 42 ++++---- ...9_05_131324_create_auftraggeber_table.php} | 0 ...5_09_24_131440_create_projektes_table.php} | 0 ...54046_create_allgemeinflaechens_table.php} | 11 +-- ..._10_03_154047_create_raeumealles_table.php | 35 +++++++ database/seeders/AllgemeinflaechenSeeder.php | 17 ++++ database/seeders/RaeumealleSeeder.php | 17 ++++ 15 files changed, 140 insertions(+), 145 deletions(-) delete mode 100644 app/Filament/Resources/Projektes/RelationManagers/ProjekteImportsRelationManager.php create mode 100644 app/Models/Allgemeinflaechen.php delete mode 100644 app/Models/ProjekteImport.php create mode 100644 app/Models/Raeumealle.php rename database/migrations/{2025_10_05_062328_create_auftraggeber_table.php => 2025_09_05_131324_create_auftraggeber_table.php} (100%) rename database/migrations/{2025_11_23_131440_create_projektes_table.php => 2025_09_24_131440_create_projektes_table.php} (100%) rename database/migrations/{2025_11_23_131442_create_projekte_imports_table.php => 2025_10_03_154046_create_allgemeinflaechens_table.php} (60%) create mode 100644 database/migrations/2025_10_03_154047_create_raeumealles_table.php create mode 100644 database/seeders/AllgemeinflaechenSeeder.php create mode 100644 database/seeders/RaeumealleSeeder.php diff --git a/ARTISAN.md b/ARTISAN.md index 2a7ad85..da59c0d 100644 --- a/ARTISAN.md +++ b/ARTISAN.md @@ -21,4 +21,8 @@ a make:mode ProjekteImport -ms a make:filament-resource ProjekteImport --nested a make:filament-relation-manager ProjekteResource ProjekteImports name -a make:filament-relation-manager ProjekteResource projekte_imports name +a make:filament-relation-manager AllgemeinflaechenResource projekte_imports name + + +a make:model Allgemeinflaechen -ms +a make:model Raeumealle -ms \ No newline at end of file diff --git a/app/Filament/Resources/Projektes/Pages/EditProjekte.php b/app/Filament/Resources/Projektes/Pages/EditProjekte.php index 6d1d382..44da3c9 100644 --- a/app/Filament/Resources/Projektes/Pages/EditProjekte.php +++ b/app/Filament/Resources/Projektes/Pages/EditProjekte.php @@ -16,4 +16,12 @@ class EditProjekte extends EditRecord DeleteAction::make(), ]; } + + // protected function getFormActions(): array + // { + // return [ + // $this->getSaveFormAction()->label('Sichern'), + // $this->getCancelFormAction()->label('Zurück zu Liste'), + // ]; + // } } diff --git a/app/Filament/Resources/Projektes/ProjekteResource.php b/app/Filament/Resources/Projektes/ProjekteResource.php index ad48526..88931fd 100644 --- a/app/Filament/Resources/Projektes/ProjekteResource.php +++ b/app/Filament/Resources/Projektes/ProjekteResource.php @@ -6,7 +6,6 @@ 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\ProjekteImportsRelationManager; use App\Filament\Resources\Projektes\Schemas\ProjekteForm; use App\Filament\Resources\Projektes\Tables\ProjektesTable; use App\Models\Projekte; @@ -46,7 +45,6 @@ class ProjekteResource extends Resource public static function getRelations(): array { return [ - ProjekteImportsRelationManager::class, ]; } diff --git a/app/Filament/Resources/Projektes/RelationManagers/ProjekteImportsRelationManager.php b/app/Filament/Resources/Projektes/RelationManagers/ProjekteImportsRelationManager.php deleted file mode 100644 index 970cefe..0000000 --- a/app/Filament/Resources/Projektes/RelationManagers/ProjekteImportsRelationManager.php +++ /dev/null @@ -1,98 +0,0 @@ -components([ - Select::make('filetype') - ->label('Dokument Type') - ->required() - ->options([ - 'allgemein' => 'Allgemeinflächen', - 'nutzwerte' => 'Nutzwerte', - ]), - FileUpload::make('file') - ->required() - ->disabledOn('edit') - ->label('Datei (csv/txt) auswählen') - ->directory('projekt-data-files') - ->storeFileNamesIn('original_name') - ->moveFiles() - ->acceptedFileTypes(['text/csv', 'text/plain']), - Textarea::make('beschreibung') - ->maxLength(255), - ])->columns(1); - } - - public function table(Table $table): Table - { - return $table - ->recordTitleAttribute('name') - ->columns([ - TextColumn::make('filetype') - ->badge() - ->color(fn (string $state): string => match ($state) { - 'allgemein' => 'success', - 'nutzwerte' => 'info', - }), - TextColumn::make('original_name') - ->label('name') - ->wrap() - ->description(function ($record) { - return new HtmlString($record->beschreibung); - }), - ]) - ->filters([ - // - ]) - ->headerActions([ - // CreateAction::make(), - // AssociateAction::make(), - CreateAction::make() - ->createAnother(false) - ->label('Hochladen') - ->color('primary') - ->icon('heroicon-o-document-arrow-up') - ->before(function (array $data) { - - $path = Storage::disk('private')->path($data['file']); - $contents = file_get_contents($path); - $arr = preg_split("/\r\n|\n|\r/", $contents); - dd($arr); - // Runs before the form fields are saved to the database. - }), - ]) - ->recordActions([ - EditAction::make()->iconButton()->color('gray'), - DeleteAction::make()->iconButton(), - ]); - } -} diff --git a/app/Models/Allgemeinflaechen.php b/app/Models/Allgemeinflaechen.php new file mode 100644 index 0000000..d9b0583 --- /dev/null +++ b/app/Models/Allgemeinflaechen.php @@ -0,0 +1,14 @@ + '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.projekte-imports-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\ProjekteImportsRelationManager', '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 8048dd6..7d20ba9 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::zqpbCvTHQoq5WxIY', + '_route' => 'generated::X482zXQEOVr3Myjb', ), 1 => NULL, 2 => @@ -531,7 +531,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::g4GN37DOWUCZHuyI', + '_route' => 'generated::uIJywcuAMbX2MINg', ), 1 => NULL, 2 => @@ -589,7 +589,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::dlPEM3gdRiuQN3hD', + '_route' => 'generated::eSMnXX8jqZoglDWN', ), 1 => NULL, 2 => @@ -609,7 +609,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::POapuQ1WmiUqo47Z', + '_route' => 'generated::PvxYx4DJHy1oBzQj', ), 1 => NULL, 2 => @@ -629,7 +629,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::jWWTYVcaYTDh7eGh', + '_route' => 'generated::pqiNnwUGYHEq9jrd', ), 1 => NULL, 2 => @@ -649,7 +649,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::pSOEU1x3jfHSGZlL', + '_route' => 'generated::opVQamp7XU92vBQa', ), 1 => NULL, 2 => @@ -669,7 +669,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::1myIUinqVKT2Vqiy', + '_route' => 'generated::I1AnhcLcct9zeww5', ), 1 => NULL, 2 => @@ -2595,7 +2595,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::zqpbCvTHQoq5WxIY' => + 'generated::X482zXQEOVr3Myjb' => 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::zqpbCvTHQoq5WxIY', + 'as' => 'generated::X482zXQEOVr3Myjb', ), 'fallback' => false, 'defaults' => @@ -2623,7 +2623,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::g4GN37DOWUCZHuyI' => + 'generated::uIJywcuAMbX2MINg' => 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::g4GN37DOWUCZHuyI', + 'as' => 'generated::uIJywcuAMbX2MINg', ), 'fallback' => false, 'defaults' => @@ -2737,7 +2737,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::dlPEM3gdRiuQN3hD' => + 'generated::eSMnXX8jqZoglDWN' => 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::dlPEM3gdRiuQN3hD', + 'as' => 'generated::eSMnXX8jqZoglDWN', ), 'fallback' => false, 'defaults' => @@ -2782,7 +2782,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::POapuQ1WmiUqo47Z' => + 'generated::PvxYx4DJHy1oBzQj' => array ( 'methods' => array ( @@ -2804,7 +2804,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::POapuQ1WmiUqo47Z', + 'as' => 'generated::PvxYx4DJHy1oBzQj', ), 'fallback' => false, 'defaults' => @@ -2820,7 +2820,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::jWWTYVcaYTDh7eGh' => + 'generated::pqiNnwUGYHEq9jrd' => array ( 'methods' => array ( @@ -2842,7 +2842,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::jWWTYVcaYTDh7eGh', + 'as' => 'generated::pqiNnwUGYHEq9jrd', ), 'fallback' => false, 'defaults' => @@ -2858,7 +2858,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::pSOEU1x3jfHSGZlL' => + 'generated::opVQamp7XU92vBQa' => array ( 'methods' => array ( @@ -2880,7 +2880,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::pSOEU1x3jfHSGZlL', + 'as' => 'generated::opVQamp7XU92vBQa', ), 'fallback' => false, 'defaults' => @@ -2896,7 +2896,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::1myIUinqVKT2Vqiy' => + 'generated::I1AnhcLcct9zeww5' => array ( 'methods' => array ( @@ -2918,7 +2918,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::1myIUinqVKT2Vqiy', + 'as' => 'generated::I1AnhcLcct9zeww5', ), 'fallback' => false, 'defaults' => diff --git a/database/migrations/2025_10_05_062328_create_auftraggeber_table.php b/database/migrations/2025_09_05_131324_create_auftraggeber_table.php similarity index 100% rename from database/migrations/2025_10_05_062328_create_auftraggeber_table.php rename to database/migrations/2025_09_05_131324_create_auftraggeber_table.php diff --git a/database/migrations/2025_11_23_131440_create_projektes_table.php b/database/migrations/2025_09_24_131440_create_projektes_table.php similarity index 100% rename from database/migrations/2025_11_23_131440_create_projektes_table.php rename to database/migrations/2025_09_24_131440_create_projektes_table.php diff --git a/database/migrations/2025_11_23_131442_create_projekte_imports_table.php b/database/migrations/2025_10_03_154046_create_allgemeinflaechens_table.php similarity index 60% rename from database/migrations/2025_11_23_131442_create_projekte_imports_table.php rename to database/migrations/2025_10_03_154046_create_allgemeinflaechens_table.php index 7dba3aa..7f660e3 100644 --- a/database/migrations/2025_11_23_131442_create_projekte_imports_table.php +++ b/database/migrations/2025_10_03_154046_create_allgemeinflaechens_table.php @@ -11,13 +11,12 @@ return new class extends Migration */ public function up(): void { - Schema::create('projekte_imports', function (Blueprint $table) { + Schema::create('allgemeinflaechens', function (Blueprint $table) { $table->id(); $table->foreignId('projekte_id')->constrained()->cascadeOnDelete()->default(0); - $table->string('file')->nullable(); - $table->text('beschreibung')->nullable(); - $table->string('filetype')->nullable(); - $table->string('original_name')->nullable(); + $table->string('geschoss')->nullable(); + $table->string('raumart')->nullable(); + $table->string('flaeche')->nullable(); $table->timestamps(); }); } @@ -27,6 +26,6 @@ return new class extends Migration */ public function down(): void { - Schema::dropIfExists('projekte_imports'); + Schema::dropIfExists('allgemeinflaechens'); } }; diff --git a/database/migrations/2025_10_03_154047_create_raeumealles_table.php b/database/migrations/2025_10_03_154047_create_raeumealles_table.php new file mode 100644 index 0000000..2bb4df8 --- /dev/null +++ b/database/migrations/2025_10_03_154047_create_raeumealles_table.php @@ -0,0 +1,35 @@ +id(); + $table->foreignId('projekte_id')->constrained()->cascadeOnDelete()->default(0); + $table->integer('methode_id')->default(0); + $table->integer('orientierung_id')->default(0); + $table->string('top_nummer')->nullable(); + $table->string('geschoss')->nullable(); + $table->string('raumart')->nullable(); + $table->double('faktor')->nullable(); + $table->double('flaeche')->nullable(); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + Schema::dropIfExists('raeumealles'); + } +}; diff --git a/database/seeders/AllgemeinflaechenSeeder.php b/database/seeders/AllgemeinflaechenSeeder.php new file mode 100644 index 0000000..116f89a --- /dev/null +++ b/database/seeders/AllgemeinflaechenSeeder.php @@ -0,0 +1,17 @@ +