This commit is contained in:
salam committed 2025-10-06 13:08:15 +02:00
1 parent 064fceaca0
commit fdd91f5032
10 files changed
+140 -26

No files matched your search

+2 -2
View File
@@ -1,4 +1,4 @@
a make:model ProjektMethode -ms a make:model OrientierungZuAbschlaege -m
a make:filament-resource Customer a make:filament-resource Customer
@@ -29,7 +29,7 @@ php artisan make:filament-importer Raeumealle
A make:filament-resource Allgemeinflaechen --nested A make:filament-resource Allgemeinflaechen --nested
a make:filament-relation-manager Projekte;ethodeResource projekt_methodes raumart a make:filament-relation-manager OrientierungZuAbschlaegeResource orientierung_zu_abschlaeges top_nummer
for import in prod run for import in prod run
@@ -5,6 +5,7 @@ namespace App\Filament\Resources\Projektes;
use App\Filament\Resources\Projektes\Pages\EditProjekte; use App\Filament\Resources\Projektes\Pages\EditProjekte;
use App\Filament\Resources\Projektes\Pages\ListProjektes; use App\Filament\Resources\Projektes\Pages\ListProjektes;
use App\Filament\Resources\Projektes\RelationManagers\AllgemeinflaechensRelationManager; use App\Filament\Resources\Projektes\RelationManagers\AllgemeinflaechensRelationManager;
use App\Filament\Resources\Projektes\RelationManagers\OrientierungZuAbschlaegesRelationManager;
use App\Filament\Resources\Projektes\RelationManagers\ProjektMethodesRelationManager; use App\Filament\Resources\Projektes\RelationManagers\ProjektMethodesRelationManager;
use App\Filament\Resources\Projektes\RelationManagers\RaeumeallesRelationManager; use App\Filament\Resources\Projektes\RelationManagers\RaeumeallesRelationManager;
use App\Filament\Resources\Projektes\Schemas\ProjekteForm; use App\Filament\Resources\Projektes\Schemas\ProjekteForm;
@@ -47,6 +48,7 @@ class ProjekteResource extends Resource
AllgemeinflaechensRelationManager::class, AllgemeinflaechensRelationManager::class,
RaeumeallesRelationManager::class, RaeumeallesRelationManager::class,
ProjektMethodesRelationManager::class, ProjektMethodesRelationManager::class,
OrientierungZuAbschlaegesRelationManager::class,
]; ];
} }
@@ -0,0 +1,46 @@
<?php
namespace App\Filament\Resources\Projektes\RelationManagers;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\CreateAction;
use Filament\Actions\DeleteBulkAction;
use Filament\Resources\RelationManagers\RelationManager;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
class OrientierungZuAbschlaegesRelationManager extends RelationManager
{
protected static string $relationship = 'orientierung_zu_abschlaeges';
protected static ?string $title = 'Orientierung Zu/Abschläge';
protected static ?string $navigationLabel = 'Orientierung Zu/Abschläge';
protected static ?string $modelLabel = 'Orientierung Zu/Abschläge';
protected static ?string $pluralModelLabel = 'Orientierung Zu/Abschläge';
public function table(Table $table): Table
{
return $table
->recordTitleAttribute('top_nummer')
->columns([
TextColumn::make('top_nummer')
->searchable(),
])
->filters([
//
])
->headerActions([
CreateAction::make(),
])
->recordActions([
])
->toolbarActions([
BulkActionGroup::make([
DeleteBulkAction::make(),
]),
]);
}
}
+18
View File
@@ -0,0 +1,18 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class OrientierungZuAbschlaege extends Model
{
protected $fillable = [
'methode_id',
'orientierung_id',
'top_nummer',
'geschoss',
'raumart',
'faktor',
'flaeche',
];
}
+5
View File
@@ -17,6 +17,11 @@ class Projekte extends Model
'status', 'status',
]; ];
public function orientierung_zu_abschlaeges()
{
return $this->hasMany(OrientierungZuAbschlaege::class);
}
public function auftraggeber() public function auftraggeber()
{ {
return $this->belongsTo(Auftraggeber::class); return $this->belongsTo(Auftraggeber::class);
-1
View File
@@ -8,7 +8,6 @@ class Raeumealle extends Model
{ {
protected $fillable = [ protected $fillable = [
'methode_id', 'methode_id',
'orientierung_id',
'top_nummer', 'top_nummer',
'geschoss', 'geschoss',
'raumart', 'raumart',
+1
View File
@@ -29,6 +29,7 @@
'app.filament.resources.projektes.pages.edit-projekte' => 'App\\Filament\\Resources\\Projektes\\Pages\\EditProjekte', '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.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.projektes.relation-managers.allgemeinflaechens-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\AllgemeinflaechensRelationManager',
'app.filament.resources.projektes.relation-managers.orientierung-zu-abschlaeges-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\OrientierungZuAbschlaegesRelationManager',
'app.filament.resources.projektes.relation-managers.projekt-methodes-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\ProjektMethodesRelationManager', 'app.filament.resources.projektes.relation-managers.projekt-methodes-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\ProjektMethodesRelationManager',
'app.filament.resources.projektes.relation-managers.raeumealles-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\RaeumeallesRelationManager', 'app.filament.resources.projektes.relation-managers.raeumealles-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\RaeumeallesRelationManager',
'app.filament.resources.textblocks.pages.create-textblock' => 'App\\Filament\\Resources\\Textblocks\\Pages\\CreateTextblock', 'app.filament.resources.textblocks.pages.create-textblock' => 'App\\Filament\\Resources\\Textblocks\\Pages\\CreateTextblock',
+21 -21
View File
@@ -511,7 +511,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::3ZvPcx4wzGcazHjY', '_route' => 'generated::0Llyq8WWvdpW4ndu',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -531,7 +531,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::lOdfu1T7yU5apto8', '_route' => 'generated::7ZzI2taMyTsjZqwX',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -589,7 +589,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::LPhTcSOFWcUu5PaT', '_route' => 'generated::aBSpoLPnVaPa64ak',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -609,7 +609,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::cvHOt1jrrRN3xfiY', '_route' => 'generated::DbwtbbbxpmNqWeKS',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -629,7 +629,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::bonAslfzukOeepe8', '_route' => 'generated::48cUrf6gzCgGEnhx',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -649,7 +649,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::6FKILztAKPwOYAG8', '_route' => 'generated::zbYNqi6JhY1pgxLa',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -669,7 +669,7 @@ app('router')->setCompiledRoutes(
array ( array (
0 => 0 =>
array ( array (
'_route' => 'generated::ztTjaopi6XfNllCu', '_route' => 'generated::GHwFXdybrYv6k8wf',
), ),
1 => NULL, 1 => NULL,
2 => 2 =>
@@ -2595,7 +2595,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::3ZvPcx4wzGcazHjY' => 'generated::0Llyq8WWvdpW4ndu' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2607,7 +2607,7 @@ app('router')->setCompiledRoutes(
array ( array (
'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile',
'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile',
'as' => 'generated::3ZvPcx4wzGcazHjY', 'as' => 'generated::0Llyq8WWvdpW4ndu',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -2623,7 +2623,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::lOdfu1T7yU5apto8' => 'generated::7ZzI2taMyTsjZqwX' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2635,7 +2635,7 @@ app('router')->setCompiledRoutes(
array ( array (
'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps',
'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps',
'as' => 'generated::lOdfu1T7yU5apto8', 'as' => 'generated::7ZzI2taMyTsjZqwX',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -2737,7 +2737,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::LPhTcSOFWcUu5PaT' => 'generated::aBSpoLPnVaPa64ak' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2766,7 +2766,7 @@ app('router')->setCompiledRoutes(
\'exception\' => $exception, \'exception\' => $exception,
]), status: $exception ? 500 : 200); ]), status: $exception ? 500 : 200);
}";s:5:"scope";s:54:"Illuminate\\Foundation\\Configuration\\ApplicationBuilder";s:4:"this";N;s:4:"self";s:32:"0000000000000f2c0000000000000000";}}', }";s:5:"scope";s:54:"Illuminate\\Foundation\\Configuration\\ApplicationBuilder";s:4:"this";N;s:4:"self";s:32:"0000000000000f2c0000000000000000";}}',
'as' => 'generated::LPhTcSOFWcUu5PaT', 'as' => 'generated::aBSpoLPnVaPa64ak',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -2782,7 +2782,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::cvHOt1jrrRN3xfiY' => 'generated::DbwtbbbxpmNqWeKS' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2804,7 +2804,7 @@ app('router')->setCompiledRoutes(
'where' => 'where' =>
array ( array (
), ),
'as' => 'generated::cvHOt1jrrRN3xfiY', 'as' => 'generated::DbwtbbbxpmNqWeKS',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -2820,7 +2820,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::bonAslfzukOeepe8' => 'generated::48cUrf6gzCgGEnhx' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2842,7 +2842,7 @@ app('router')->setCompiledRoutes(
'where' => 'where' =>
array ( array (
), ),
'as' => 'generated::bonAslfzukOeepe8', 'as' => 'generated::48cUrf6gzCgGEnhx',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -2858,7 +2858,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::6FKILztAKPwOYAG8' => 'generated::zbYNqi6JhY1pgxLa' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2880,7 +2880,7 @@ app('router')->setCompiledRoutes(
'where' => 'where' =>
array ( array (
), ),
'as' => 'generated::6FKILztAKPwOYAG8', 'as' => 'generated::zbYNqi6JhY1pgxLa',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -2896,7 +2896,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL, 'waitSeconds' => NULL,
'withTrashed' => false, 'withTrashed' => false,
), ),
'generated::ztTjaopi6XfNllCu' => 'generated::GHwFXdybrYv6k8wf' =>
array ( array (
'methods' => 'methods' =>
array ( array (
@@ -2918,7 +2918,7 @@ app('router')->setCompiledRoutes(
'where' => 'where' =>
array ( array (
), ),
'as' => 'generated::ztTjaopi6XfNllCu', 'as' => 'generated::GHwFXdybrYv6k8wf',
), ),
'fallback' => false, 'fallback' => false,
'defaults' => 'defaults' =>
@@ -14,8 +14,6 @@ return new class extends Migration
Schema::create('raeumealles', function (Blueprint $table) { Schema::create('raeumealles', function (Blueprint $table) {
$table->id(); $table->id();
$table->foreignId('projekte_id')->constrained()->cascadeOnDelete(); $table->foreignId('projekte_id')->constrained()->cascadeOnDelete();
$table->integer('methode_id')->default(0);
$table->integer('orientierung_id')->default(0);
$table->string('top_nummer')->nullable(); $table->string('top_nummer')->nullable();
$table->string('geschoss')->nullable(); $table->string('geschoss')->nullable();
$table->string('raumart')->nullable(); $table->string('raumart')->nullable();
@@ -0,0 +1,45 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('orientierung_zu_abschlaeges', function (Blueprint $table) {
$table->id();
$table->foreignId('projekte_id')->constrained()->cascadeOnDelete();
$table->integer('orientierung_id')->nullable()->default(0);
$table->boolean('nicht_in_orientierung')->default(0);
$table->string('top_nummer')->nullable();
$table->string('raumart')->nullable();
// 10 Zusatzfelder
$table->decimal('a', 5, 2)->default(0);
$table->decimal('b', 5, 2)->default(0);
$table->decimal('c', 5, 2)->default(0);
$table->decimal('d', 5, 2)->default(0);
$table->decimal('e', 5, 2)->default(0);
$table->decimal('f', 5, 2)->default(0);
$table->decimal('g', 5, 2)->default(0);
$table->decimal('h', 5, 2)->default(0);
$table->decimal('i', 5, 2)->default(0);
$table->decimal('j', 5, 2)->default(0);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::dropIfExists('orientierung_zu_abschlaeges');
}
};