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
@@ -29,7 +29,7 @@ php artisan make:filament-importer Raeumealle
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
@@ -5,6 +5,7 @@ namespace App\Filament\Resources\Projektes;
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\RelationManagers\OrientierungZuAbschlaegesRelationManager;
use App\Filament\Resources\Projektes\RelationManagers\ProjektMethodesRelationManager;
use App\Filament\Resources\Projektes\RelationManagers\RaeumeallesRelationManager;
use App\Filament\Resources\Projektes\Schemas\ProjekteForm;
@@ -47,6 +48,7 @@ class ProjekteResource extends Resource
AllgemeinflaechensRelationManager::class,
RaeumeallesRelationManager::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',
];
public function orientierung_zu_abschlaeges()
{
return $this->hasMany(OrientierungZuAbschlaege::class);
}
public function auftraggeber()
{
return $this->belongsTo(Auftraggeber::class);
-1
View File
@@ -8,7 +8,6 @@ class Raeumealle extends Model
{
protected $fillable = [
'methode_id',
'orientierung_id',
'top_nummer',
'geschoss',
'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.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.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.raeumealles-relation-manager' => 'App\\Filament\\Resources\\Projektes\\RelationManagers\\RaeumeallesRelationManager',
'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 (
0 =>
array (
'_route' => 'generated::3ZvPcx4wzGcazHjY',
'_route' => 'generated::0Llyq8WWvdpW4ndu',
),
1 => NULL,
2 =>
@@ -531,7 +531,7 @@ app('router')->setCompiledRoutes(
array (
0 =>
array (
'_route' => 'generated::lOdfu1T7yU5apto8',
'_route' => 'generated::7ZzI2taMyTsjZqwX',
),
1 => NULL,
2 =>
@@ -589,7 +589,7 @@ app('router')->setCompiledRoutes(
array (
0 =>
array (
'_route' => 'generated::LPhTcSOFWcUu5PaT',
'_route' => 'generated::aBSpoLPnVaPa64ak',
),
1 => NULL,
2 =>
@@ -609,7 +609,7 @@ app('router')->setCompiledRoutes(
array (
0 =>
array (
'_route' => 'generated::cvHOt1jrrRN3xfiY',
'_route' => 'generated::DbwtbbbxpmNqWeKS',
),
1 => NULL,
2 =>
@@ -629,7 +629,7 @@ app('router')->setCompiledRoutes(
array (
0 =>
array (
'_route' => 'generated::bonAslfzukOeepe8',
'_route' => 'generated::48cUrf6gzCgGEnhx',
),
1 => NULL,
2 =>
@@ -649,7 +649,7 @@ app('router')->setCompiledRoutes(
array (
0 =>
array (
'_route' => 'generated::6FKILztAKPwOYAG8',
'_route' => 'generated::zbYNqi6JhY1pgxLa',
),
1 => NULL,
2 =>
@@ -669,7 +669,7 @@ app('router')->setCompiledRoutes(
array (
0 =>
array (
'_route' => 'generated::ztTjaopi6XfNllCu',
'_route' => 'generated::GHwFXdybrYv6k8wf',
),
1 => NULL,
2 =>
@@ -2595,7 +2595,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::3ZvPcx4wzGcazHjY' =>
'generated::0Llyq8WWvdpW4ndu' =>
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::3ZvPcx4wzGcazHjY',
'as' => 'generated::0Llyq8WWvdpW4ndu',
),
'fallback' => false,
'defaults' =>
@@ -2623,7 +2623,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::lOdfu1T7yU5apto8' =>
'generated::7ZzI2taMyTsjZqwX' =>
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::lOdfu1T7yU5apto8',
'as' => 'generated::7ZzI2taMyTsjZqwX',
),
'fallback' => false,
'defaults' =>
@@ -2737,7 +2737,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::LPhTcSOFWcUu5PaT' =>
'generated::aBSpoLPnVaPa64ak' =>
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::LPhTcSOFWcUu5PaT',
'as' => 'generated::aBSpoLPnVaPa64ak',
),
'fallback' => false,
'defaults' =>
@@ -2782,7 +2782,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::cvHOt1jrrRN3xfiY' =>
'generated::DbwtbbbxpmNqWeKS' =>
array (
'methods' =>
array (
@@ -2804,7 +2804,7 @@ app('router')->setCompiledRoutes(
'where' =>
array (
),
'as' => 'generated::cvHOt1jrrRN3xfiY',
'as' => 'generated::DbwtbbbxpmNqWeKS',
),
'fallback' => false,
'defaults' =>
@@ -2820,7 +2820,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::bonAslfzukOeepe8' =>
'generated::48cUrf6gzCgGEnhx' =>
array (
'methods' =>
array (
@@ -2842,7 +2842,7 @@ app('router')->setCompiledRoutes(
'where' =>
array (
),
'as' => 'generated::bonAslfzukOeepe8',
'as' => 'generated::48cUrf6gzCgGEnhx',
),
'fallback' => false,
'defaults' =>
@@ -2858,7 +2858,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::6FKILztAKPwOYAG8' =>
'generated::zbYNqi6JhY1pgxLa' =>
array (
'methods' =>
array (
@@ -2880,7 +2880,7 @@ app('router')->setCompiledRoutes(
'where' =>
array (
),
'as' => 'generated::6FKILztAKPwOYAG8',
'as' => 'generated::zbYNqi6JhY1pgxLa',
),
'fallback' => false,
'defaults' =>
@@ -2896,7 +2896,7 @@ app('router')->setCompiledRoutes(
'waitSeconds' => NULL,
'withTrashed' => false,
),
'generated::ztTjaopi6XfNllCu' =>
'generated::GHwFXdybrYv6k8wf' =>
array (
'methods' =>
array (
@@ -2918,7 +2918,7 @@ app('router')->setCompiledRoutes(
'where' =>
array (
),
'as' => 'generated::ztTjaopi6XfNllCu',
'as' => 'generated::GHwFXdybrYv6k8wf',
),
'fallback' => false,
'defaults' =>
@@ -14,8 +14,6 @@ return new class extends Migration
Schema::create('raeumealles', function (Blueprint $table) {
$table->id();
$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('geschoss')->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');
}
};