diff --git a/app/Actions/Create/CreateOrientierungZuAbschlaege.php b/app/Actions/Create/CreateOrientierungZuAbschlaege.php index 591b76f..6bf677f 100644 --- a/app/Actions/Create/CreateOrientierungZuAbschlaege.php +++ b/app/Actions/Create/CreateOrientierungZuAbschlaege.php @@ -15,6 +15,7 @@ class CreateOrientierungZuAbschlaege OrientierungZuAbschlaege::firstOrCreate([ 'projekte_id' => $record->id, 'top_nummer' => $raeumealle->top_nummer, + 'raumart' => $raeumealle->raumart, ]); } } diff --git a/app/Actions/Generate/Gutachten/Deckblatt.php b/app/Actions/Generate/Gutachten/Deckblatt.php index 048d455..9fbdefa 100644 --- a/app/Actions/Generate/Gutachten/Deckblatt.php +++ b/app/Actions/Generate/Gutachten/Deckblatt.php @@ -16,7 +16,7 @@ class Deckblatt $html = '
'; $html .= '
'; if (MakeGutachten::$gutachter->logo && MakeGutachten::$gutachter->logo_anzeigen) { - $html = '
'; + $html .= '
'; } if (MakeGutachten::$gutachter->referenz_formatting && MakeGutachten::$gutachter->text_anzeigen) { $from = ['--', 'text-align: end;']; @@ -38,9 +38,18 @@ class Deckblatt $html .= ''; $html .= '
'; - // $html .= '

'; - // $html .= MakeGutachten::$auftraggeber->adressenblock; - // $html .= '

'; + // AUFTRAGGEBER + $html .= '
'; + if (MakeGutachten::$auftraggeber->logo && MakeGutachten::$auftraggeber->logo_anzeigen) { + $html .= '
'; + } + if (MakeGutachten::$auftraggeber->referenz_formatting && MakeGutachten::$auftraggeber->text_anzeigen) { + $from = ['--']; + $to = ['']; + $str = RichContentRenderer::make(MakeGutachten::$auftraggeber->referenz_formatting)->toHtml(); + $html .= str_replace($from, $to, $str); + } + $html .= '
'; return $html; } diff --git a/app/Actions/Generate/MakeExcel.php b/app/Actions/Generate/MakeExcel.php index b582476..1b6fd71 100644 --- a/app/Actions/Generate/MakeExcel.php +++ b/app/Actions/Generate/MakeExcel.php @@ -17,7 +17,7 @@ class MakeExcel $projekt = Projekt::where('id', $projekts_id)->get()->first(); $gutachter = Gutachter::where('id', $projekt->gutachters_id)->get()->first(); - // $auftraggeber = Auftraggeber::where('id', $projekt->auftraggebers_id)->get()->first(); + $auftraggeber = Auftraggeber::where('id', $projekt->auftraggebers_id)->get()->first(); $projektname = str_replace(',', '', $projekt->name); $projektname = preg_replace("'\W, '", '', $projektname); diff --git a/app/Actions/Generate/MakeGutachten.php b/app/Actions/Generate/MakeGutachten.php index 5327193..3e4a0a4 100644 --- a/app/Actions/Generate/MakeGutachten.php +++ b/app/Actions/Generate/MakeGutachten.php @@ -11,8 +11,8 @@ use App\Actions\Generate\Gutachten\Tabelle; use App\Models\Auftraggeber; use App\Models\Gutachter; use App\Models\Inhaltsverzeichnis; -use App\Models\Platzhalter; use App\Models\Projekte; +use App\Models\ProjektPlatzhalter; use Mpdf\HTMLParserMode; use Mpdf\Mpdf; @@ -26,16 +26,18 @@ class MakeGutachten public static $platzhalter = []; - public static function generate($filepath, $projekts_id) + public static function generate($filepath, $projekte_id) { - self::$projekt = Projekte::where('id', $projekts_id)->first(); + exit; + + self::$projekt = Projekte::where('id', $projekte_id)->first(); self::$gutachter = Gutachter::where('id', self::$projekt->gutachter_id)->first(); - self::$auftraggeber = Auftraggeber::where('id', self::$projekt->auftraggeber_id)->get()->first(); + self::$auftraggeber = Auftraggeber::where('id', self::$projekt->auftraggeber_id)->first(); - // self::$platzhalter = Platzhalter::where('projekts_id', $projekts_id)->pluck('platzhaltertext', 'platzhalter')->toArray(); + self::$platzhalter = ProjektPlatzhalter::where('projekte_id', $projekte_id)->pluck('platzhaltertext', 'platzhalter')->toArray(); $mpdf = new Mpdf( [ @@ -65,7 +67,7 @@ class MakeGutachten $html = Deckblatt::create(); $mpdf->WriteHTML($html, HTMLParserMode::HTML_BODY); - // $inhalte = Inhaltsverzeichnis::where('projekts_id', $projekts_id)->where('is_active', 1)->orderBy('pos')->get(); + // $inhalte = Inhaltsverzeichnis::where('projekte_id', $projekte_id)->where('is_active', 1)->orderBy('pos')->get(); // if (count($inhalte) == 0) { // exit; // } @@ -183,7 +185,7 @@ class MakeGutachten // } // $mpdf->SetHTMLFooter('
Seite {PAGENO}

'); // $html = '
'.$inhalt['index'].' - '.$inhalt['titel'].'
'; - // $html = Paragraph6Tabelle::load($projekts_id); + // $html = Paragraph6Tabelle::load($projekte_id); // $mpdf->WriteHTML($html, HTMLParserMode::HTML_BODY); // break; @@ -203,7 +205,7 @@ class MakeGutachten // $mpdf->SetHTMLFooter('
Seite {PAGENO}

'); // } // $html = '
ALLGEMEINFLÄCHEN
'; - // $html .= AllgemeinTabelle::load($projekts_id); + // $html .= AllgemeinTabelle::load($projekte_id); // $html .= '






'; // $html .= ''; // $html .= ''; diff --git a/app/Actions/Validation/GutachtenValidation.php b/app/Actions/Validation/GutachtenValidation.php new file mode 100644 index 0000000..cebfadc --- /dev/null +++ b/app/Actions/Validation/GutachtenValidation.php @@ -0,0 +1,234 @@ +id)->get(); + if (! $res->count()) { + Notification::make() + ->title('Allgemeinflächen') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Die Tabelle der Allgemeinflächen ist leer.') + ->send(); + + return false; + } + foreach ($res as $value) { + if (! $value->geschoss) { + Notification::make() + ->title('Allgemeinflächen') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für die Allgemeinfläche '.$value->raumart.' fehlt die Angabe des Geschoßes.') + ->send(); + + return false; + } + if (! $value->raumart) { + Notification::make() + ->title('Allgemeinflächen') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für eine Allgemeinfläche im Geschoss '.$value->geschoss.' fehlt die Angabe der Raumart.') + ->send(); + + return false; + } + if ($value->flaeche == 0) { + Notification::make() + ->title('Allgemeinflächen') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für die Allgemeinfläche '.$value->raumart.' fehlt die Angabe der Fläche.') + ->send(); + + return false; + } + } + + /** + * Raeumealle + */ + $res = Raeumealle::where('projekte_id', $record->id)->get(); + if (! $res->count()) { + Notification::make() + ->title('Räume Alle') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Die Tabelle Räume Alle ist leer.') + ->send(); + + return false; + } + + foreach ($res as $value) { + if (! $value->top_nummer) { + Notification::make() + ->title('Räume Alle') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für den Raum '.$value->raumart.' im Geschoss '.$value->geschoss.' fehlt die Angabe der Top Nummer.') + ->send(); + + return false; + } + if (! $value->geschoss) { + Notification::make() + ->title('Räume Alle') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für den Raum '.$value->raumart.' mit der Top Nummer '.$value->top_nummer.' fehlt die Angabe der Geschoßes.') + ->send(); + + return false; + } + if (! $value->raumart) { + Notification::make() + ->title('Räume Alle') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für den Raum mit der Top Nummer '.$value->top_nummer.' im Geschoßes '.$value->geschoss.' fehlt die Angabe der Raumart.') + ->send(); + + return false; + } + if ($value->flaeche == 0) { + Notification::make() + ->title('Räume Alle') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für die Raumart '.$value->raumart.' mit der Top Nummer '.$value->top_nummer.' im Geschoss '.$value->geschoss.' fehlt die Angabe der Fläche.') + ->send(); + + return false; + } + if ($value->faktor == 0) { + Notification::make() + ->title('Räume Alle') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für die Raumart '.$value->raumart.' mit der Top Nummer '.$value->top_nummer.' im Geschoss '.$value->geschoss.' fehlt die Angabe des Faktors.') + ->send(); + + return false; + } + } + + /** + * Raeumealle + */ + $res = ProjektMethode::where('projekte_id', $record->id)->get(); + if (! $res->count()) { + Notification::make() + ->title('Räume Methoden') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Die Tabelle Raum Methode ist leer.') + ->send(); + + return false; + } + foreach ($res as $value) { + if (! $value->methode_id) { + Notification::make() + ->title('Räume Methoden') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für den Raum '.$value->raumart.' fehlt die Methode.') + ->send(); + + return false; + } + if ($value->faktor == 0) { + Notification::make() + ->title('Räume Methoden') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für den Raum '.$value->raumart.' fehlt die Angabe des Faktors.') + ->send(); + + return false; + } + } + + /** + * Orientierung Zu und Abschläge + */ + $res = OrientierungZuAbschlaege::where('projekte_id', $record->id)->get(); + if (! $res->count()) { + Notification::make() + ->title('Orientierung Zu und Abschläge') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Die Tabelle Orientierung Zu und Abschläge ist leer.') + ->send(); + + return false; + } + $res = OrientierungZuAbschlaege::where('projekte_id', $record->id)->where('nicht_in_orientierung', false)->get(); + foreach ($res as $value) { + if (! $value->orientierung_id) { + Notification::make() + ->title('Orientierung Zu und Abschläge') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Für den Raum '.$value->raumart.' mit der Top Nummer '.$value->top_nummer.' fehlt die Orientierung.') + ->send(); + + return false; + } + } + + /** + * ProjektPlatzhalter + */ + $res = ProjektPlatzhalter::where('projekte_id', $record->id)->whereNull('platzhaltertext')->orWhere('platzhaltertext', '=', '')->get(); + if ($res->count()) { + Notification::make() + ->title('Platzhalter') + ->info() + ->icon('heroicon-o-exclamation-triangle') + ->duration(10000) + ->body('Bitte füllen Sie die fehlenden Platzhalter aus. Sollten die fehlenden Platzhalter nicht mehr gebraucht werden löschen Sie diese aus dem Text und generieren sie die Platzhalter Tabelle neu.') + ->send(); + + return false; + } + + Notification::make() + ->title('Evaluation') + ->success() + ->duration(10000) + ->body('Die Evaluierung des Projektes war erfolgreich.') + ->send(); + } +} diff --git a/app/Filament/Resources/Auftraggebers/Schemas/AuftraggeberForm.php b/app/Filament/Resources/Auftraggebers/Schemas/AuftraggeberForm.php index 6ae89d3..14ac959 100644 --- a/app/Filament/Resources/Auftraggebers/Schemas/AuftraggeberForm.php +++ b/app/Filament/Resources/Auftraggebers/Schemas/AuftraggeberForm.php @@ -99,6 +99,8 @@ class AuftraggeberForm FileUpload::make('logo') ->image() ->disk('public') + ->maxSize(3072) // 3MB limit + ->acceptedFileTypes(['image/jpeg', 'image/png', 'image/webp']) ->directory('auftraggeber-logo') ->visibility('public') ->label('Logo') diff --git a/app/Filament/Resources/Gutachters/Schemas/GutachterForm.php b/app/Filament/Resources/Gutachters/Schemas/GutachterForm.php index f9aa533..cd7a667 100644 --- a/app/Filament/Resources/Gutachters/Schemas/GutachterForm.php +++ b/app/Filament/Resources/Gutachters/Schemas/GutachterForm.php @@ -108,6 +108,8 @@ class GutachterForm ->image() ->disk('public') ->directory('gutachter-logo') + ->maxSize(3072) // 3MB limit + ->acceptedFileTypes(['image/jpeg', 'image/png', 'image/webp']) ->visibility('public') ->label('Logo'), Radio::make('logo_align') diff --git a/app/Filament/Resources/Projektes/Pages/EditProjekte.php b/app/Filament/Resources/Projektes/Pages/EditProjekte.php index 5949c69..44cb136 100644 --- a/app/Filament/Resources/Projektes/Pages/EditProjekte.php +++ b/app/Filament/Resources/Projektes/Pages/EditProjekte.php @@ -2,6 +2,7 @@ namespace App\Filament\Resources\Projektes\Pages; +use App\Actions\Validation\GutachtenValidation; use App\Filament\Resources\Projektes\ProjekteResource; use App\Models\Konto; use App\Models\Projekte; @@ -72,10 +73,26 @@ class EditProjekte extends EditRecord ->openUrlInNewTab(), Action::make('make_gutachten') ->hidden(fn ($record): bool => $record->bezahlt_am ? false : true) + ->color(fn ($record): string => match ($record->evaluation) { + 1 => 'info', + default => 'gray', + }) + ->disabled(fn ($record): bool => $record->evaluation ? false : true) ->label('Neu Berechnen') ->icon('phosphor-calculator') ->url(fn ($record) => route('standard.download', ['record' => $record, 'mode' => 'new'])) ->openUrlInNewTab(), + Action::make('evaluate_gutachten') + ->hidden(fn ($record): bool => $record->bezahlt_am ? false : true) + ->color(fn ($record): string => match ($record->evaluation) { + 1 => 'gray', + default => 'info', + }) + ->label('Daten Evaluieren') + ->icon('phosphor-seal-check') + ->action(function ($record): void { + GutachtenValidation::controll($record); + }), ])->label('Gutachten') ->icon('heroicon-m-ellipsis-vertical') ->button() diff --git a/app/Filament/Resources/Projektes/RelationManagers/OrientierungZuAbschlaegesRelationManager.php b/app/Filament/Resources/Projektes/RelationManagers/OrientierungZuAbschlaegesRelationManager.php index 096d913..c132204 100644 --- a/app/Filament/Resources/Projektes/RelationManagers/OrientierungZuAbschlaegesRelationManager.php +++ b/app/Filament/Resources/Projektes/RelationManagers/OrientierungZuAbschlaegesRelationManager.php @@ -9,6 +9,7 @@ use App\Models\OrientierungZuAbschlaege; use Filament\Actions\Action; use Filament\Actions\BulkAction; use Filament\Actions\BulkActionGroup; +use Filament\Forms\Components\Radio; use Filament\Forms\Components\Select; use Filament\Forms\Components\TextInput; use Filament\Resources\RelationManagers\RelationManager; @@ -58,10 +59,10 @@ class OrientierungZuAbschlaegesRelationManager extends RelationManager CheckboxColumn::make('nicht_in_orientierung') ->label('Nicht in Orientierung') ->toggleable(), - TextInputColumn::make('raumart') + TextColumn::make('raumart') ->toggleable() ->width('2rem') - ->rules(['required']) + // ->rules(['required']) ->searchable(), SelectColumn::make('orientierung_id') ->toggleable() @@ -156,8 +157,29 @@ class OrientierungZuAbschlaegesRelationManager extends RelationManager ); } }), + BulkAction::make('nicht_in_orientierung') + ->color('primary') + ->label('Nicht In Orientierung') + ->schema([ + Radio::make('nicht_in_orientierung') + ->hiddenLabel() + ->default(1) + ->options([ + '1' => 'Ja', + '0' => 'Nein', + ]), + ]) + ->icon('phosphor-arrow-square-out') + ->action(function (Collection $records, array $data): void { + foreach ($records as $record) { + OrientierungZuAbschlaege::where('id', '=', $record->id) + ->update( + ['nicht_in_orientierung' => 1] + ); + } + }), BulkAction::make('a') - ->label($spalten['a'] ?? '') + ->label($spalten['a'].' Faktor' ?? '') ->color('info') ->hidden(isset($spalten['a']) ? false : true) ->schema([ diff --git a/app/Models/Auftraggeber.php b/app/Models/Auftraggeber.php index 79f5000..e1b66dc 100644 --- a/app/Models/Auftraggeber.php +++ b/app/Models/Auftraggeber.php @@ -21,6 +21,7 @@ class Auftraggeber extends Model 'email', 'phone', 'logo', + 'referenz_formatting', 'logo_anzeigen', 'text_anzeigen', ]; diff --git a/bootstrap/cache/routes-v7.php b/bootstrap/cache/routes-v7.php index cb439f0..73fa5ce 100644 --- a/bootstrap/cache/routes-v7.php +++ b/bootstrap/cache/routes-v7.php @@ -531,7 +531,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::vLKYZJTiPLSPErr3', + '_route' => 'generated::e49aps4aQONLVTWt', ), 1 => NULL, 2 => @@ -551,7 +551,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::qrW6BqQkTyM6yrw6', + '_route' => 'generated::q6W1ELsYeTKdrkd1', ), 1 => NULL, 2 => @@ -609,7 +609,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::T2kHvKoG8wGLUSEH', + '_route' => 'generated::3pkhx5Z3rpV06SKQ', ), 1 => NULL, 2 => @@ -629,7 +629,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::NWB8nLMAGdfLsAq1', + '_route' => 'generated::HIxTYKYuGieAD5C1', ), 1 => NULL, 2 => @@ -649,7 +649,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::YyCFpow287BJsXlf', + '_route' => 'generated::r6YUk0D6jqybwqGA', ), 1 => NULL, 2 => @@ -669,7 +669,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::vsXiTl9FSsSI2CBW', + '_route' => 'generated::d07u8ErdJPIt0Bb1', ), 1 => NULL, 2 => @@ -689,7 +689,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::zPzxBD9DXHvKd7G9', + '_route' => 'generated::lEsY9aMqtMS0xfDF', ), 1 => NULL, 2 => @@ -2740,7 +2740,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::vLKYZJTiPLSPErr3' => + 'generated::e49aps4aQONLVTWt' => array ( 'methods' => array ( @@ -2752,7 +2752,7 @@ app('router')->setCompiledRoutes( array ( 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', - 'as' => 'generated::vLKYZJTiPLSPErr3', + 'as' => 'generated::e49aps4aQONLVTWt', ), 'fallback' => false, 'defaults' => @@ -2768,7 +2768,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::qrW6BqQkTyM6yrw6' => + 'generated::q6W1ELsYeTKdrkd1' => array ( 'methods' => array ( @@ -2780,7 +2780,7 @@ app('router')->setCompiledRoutes( array ( 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', - 'as' => 'generated::qrW6BqQkTyM6yrw6', + 'as' => 'generated::q6W1ELsYeTKdrkd1', ), 'fallback' => false, 'defaults' => @@ -2882,7 +2882,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::T2kHvKoG8wGLUSEH' => + 'generated::3pkhx5Z3rpV06SKQ' => array ( 'methods' => array ( @@ -2911,7 +2911,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:"0000000000000f3b0000000000000000";}}', - 'as' => 'generated::T2kHvKoG8wGLUSEH', + 'as' => 'generated::3pkhx5Z3rpV06SKQ', ), 'fallback' => false, 'defaults' => @@ -2927,7 +2927,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::NWB8nLMAGdfLsAq1' => + 'generated::HIxTYKYuGieAD5C1' => array ( 'methods' => array ( @@ -2949,7 +2949,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::NWB8nLMAGdfLsAq1', + 'as' => 'generated::HIxTYKYuGieAD5C1', ), 'fallback' => false, 'defaults' => @@ -2965,7 +2965,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::YyCFpow287BJsXlf' => + 'generated::r6YUk0D6jqybwqGA' => array ( 'methods' => array ( @@ -2987,7 +2987,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::YyCFpow287BJsXlf', + 'as' => 'generated::r6YUk0D6jqybwqGA', ), 'fallback' => false, 'defaults' => @@ -3003,7 +3003,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::vsXiTl9FSsSI2CBW' => + 'generated::d07u8ErdJPIt0Bb1' => array ( 'methods' => array ( @@ -3025,7 +3025,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::vsXiTl9FSsSI2CBW', + 'as' => 'generated::d07u8ErdJPIt0Bb1', ), 'fallback' => false, 'defaults' => @@ -3041,7 +3041,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::zPzxBD9DXHvKd7G9' => + 'generated::lEsY9aMqtMS0xfDF' => array ( 'methods' => array ( @@ -3063,7 +3063,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::zPzxBD9DXHvKd7G9', + 'as' => 'generated::lEsY9aMqtMS0xfDF', ), 'fallback' => false, 'defaults' => diff --git a/database/migrations/2025_09_24_131440_create_projektes_table.php b/database/migrations/2025_09_24_131440_create_projektes_table.php index 3548b1b..248a3b4 100644 --- a/database/migrations/2025_09_24_131440_create_projektes_table.php +++ b/database/migrations/2025_09_24_131440_create_projektes_table.php @@ -28,6 +28,7 @@ return new class extends Migration $table->boolean('pdf_nutzwerte_status')->default(0); $table->boolean('pdf_gutachten_status')->default(0); $table->boolean('excel_nutzwerte_status')->default(0); + $table->boolean('evaluation')->default(0); $table->timestamp('bezahlt_am')->nullable(); $table->timestamps(); $table->softDeletes(); diff --git a/database/seeders/AuftraggeberSeeder.php b/database/seeders/AuftraggeberSeeder.php index 77a83d2..5e83cb1 100644 --- a/database/seeders/AuftraggeberSeeder.php +++ b/database/seeders/AuftraggeberSeeder.php @@ -12,47 +12,47 @@ class AuftraggeberSeeder extends Seeder */ public function run(): void { - $sql = "INSERT INTO `auftraggebers` (`id`, `konto_id`, `title`, `gender`, `name`, `company`, `logo`, `email`, `phone`, `logo_align`, `referenz_formatting`, `created_at`, `updated_at`, `logo_anzeigen`, `text_anzeigen`) + $sql = "INSERT INTO `auftraggebers` (`id`, `konto_id`, `title`, `gender`, `name`, `company`, `logo`, `email`, `phone`, `referenz_formatting`, `logo_anzeigen`, `text_anzeigen`, `created_at`, `updated_at`) VALUES - ('1', '1', NULL, 'Herr', 'Moser Hans', 'NEUE HEIMAT TIROL', 'gutachter-logo/01K7RSEBE0WHGX8NJHYSZA9A0A.svg', 'h.moser@gnh.at', '+43512547895', 'right', '

-NEUE HEIMAT TIROL
Gemeinnützige WohnungsGmbH
Gumppstraße 47 - 6020 Innsbruck

', NULL, '2025-10-17 10:07:14', '0', '0'), - ('2', '1', NULL, 'Herr', 'Rudi Sommer', 'BauArt Immobilien GmbH', NULL, 'r.sommer@BauArtImmobilien.at', '+43512226688', 'right', 'BauArt Immobilien GmbH
Maximilianstraße 2
6020 Innsbruck', NULL, '2025-10-17 10:07:53', '0', '0'), - ('3', '1', NULL, 'Herr', 'Notar Schwarz', 'Ch. Stabel, H. Pechlaner, B. Augustin, S. Baumgartner', NULL, 'schwarz@notar.cc', '0512/59969-0', 'right', 'Christine Stabel, Omes 14, 6094 Axams
Hansjörg Pechlaner, Andreas Hofer-Strasse 18, 6020 Innsbruck
Barbara Augustin, St. Georgs-Weg 8, 6020 Innsbruck
Sabine Baumgartner, Hervicusgasse 4/4/10, 1120 Wien', NULL, NULL, '0', '0'), - ('4', '1', NULL, 'Herr', 'Hr Atz', 'BUWOG', NULL, 'office@buwog.at', '++43 (0)1/878 28-0', 'right', 'BUWOG - Bauen und Wohnen Gesellschaft mbH
Hietzinger Kai 131
A-1130 Wien', NULL, NULL, '0', '0'), - ('5', '1', NULL, NULL, '', 'Innsbrucker StadtBAU GesmbH', NULL, 'office@innsbrucker-stadtbau.at', '+43 512 3330', 'right', 'Innsbrucker StadtBAU GesmbH
Gumppstraße 47
A-6023 Innsbruck', NULL, NULL, '0', '0'), - ('6', '1', NULL, 'Herr', 'Egger', 'WE', NULL, 'egger@we-tirol.at', '05125393-0', 'right', 'WOHNUNGSEIGENTUM
Tiroler gemeinnützige WohnbauGesmbH.
Südtiroler Platz 8
6020 Innsbruck', NULL, NULL, '0', '0'), - ('7', '1', NULL, 'Herr', 'Dr. Arno Walde', 'Dr. Arno Walde', NULL, 'adwalde@gmx.at', '0680/2163458', 'right', 'Dr. Arno WALDE
Schneeburggasse 78
6020 INNSBRUCK', NULL, NULL, '0', '0'), - ('8', '1', NULL, 'Herr', 'Helmut Klotz', 'Helmut Klotz', NULL, 'nicht vorhanden', '0650/2915291', 'right', 'Helmut Klotz
Innsbruckerstraße 291
6108 Scharnitz', NULL, NULL, '0', '0'), - ('9', '1', NULL, 'Herr', 'Michael Steinbacher', 'Konstantin und Rupert Kerscher_Dold', NULL, 'steinbacher.immobilien@aon.at', '0676/3176521', 'right', 'Oliver Dold, Müllerstraße 14, A-6020 Innsbruck
Konstantin Kerscher, Robert Koch-Weg 10, D-87439 Kempten
Rupert Kerscher, Ziegeleiweg 1, D-87448 Waltenhofen', NULL, NULL, '0', '0'), - ('10', '1', NULL, 'Frau', '0664/8195712', 'Mag. Christina Peer', NULL, 'christina_peer@wuerth-hochenburger.at', '0512/2221/5187 (Würth)', 'right', 'Mag. Christina Peer
Wildermieming 99c
6414 Wildermieming', NULL, NULL, '0', '0'), - ('11', '1', NULL, 'Herr', 'Nocker', 'Josef Nocker', NULL, 'Nocker', 'Nocker', 'right', 'Josef Nocker
Josef-Schraffl-Straße 19
6020 Innsbruck', NULL, NULL, '0', '0'), - ('12', '1', NULL, 'Herr', 'Wolfgang Rauth', 'IIG', NULL, 'w.rauth@iig.at', '0512/4004', 'right', 'Innsbrucker Immobilien GmbH & Co KG

Roßaugasse 4
6020 Innsbruck', NULL, NULL, '0', '0'), - ('13', '1', NULL, 'Herr', 'Prem', 'Premium Living GmbH', NULL, 'office@premium-living.at', '06412/21004', 'right', 'Premium Living GmbH
Premweg 1
A-5600 St. Johann im Pongau', NULL, NULL, '0', '0'), - ('14', '1', NULL, 'Herr', 'Lorenz Prem', 'Lorenz Prem', NULL, 'lorenzprem@hotmail.com', '06412/7848', 'right', 'Mag. Lorenz Prem
Premweg 7
5600 St. Johann im Pongau', NULL, NULL, '0', '0'), - ('15', '1', NULL, 'Herr', 'Daniel Fügenschuh', 'Fügenschuh', NULL, 'office@ffuegenschuh.at', '0512/238601', 'right', 'Hausbesitzergemeinschaft Haspingerstraße 4
vertreten durch
Architekt Daniel Fügenschuh ZT GmbH

Höttinger Auffahrt 11
6020 Innsbruck', NULL, NULL, '0', '0'), - ('16', '1', NULL, 'Herr', 'Czermak Benedikt', 'Dr. Benedikt Czermak', NULL, 'benedikt.czermak@yahoo.com', '0676/9672675', 'right', 'Dr. Benedikt Czermak
Bilgeristraße 2
6080 Igls', NULL, NULL, '0', '0'), - ('17', '1', NULL, 'Herr', 'Hörtnagl', 'Ludwig Hörtnagl', NULL, 'Hörtnagl', '0000', 'right', 'Ludwig Hörtnagl
Messerschmittweg 6
6175 Kematen in Tirol', NULL, NULL, '0', '0'), - ('18', '1', NULL, 'Herr', 'Kluckner Sigfried', 'Kluckner Sigfried', NULL, 'Kluckner Sigfried', 'Kluckner Sigfried', 'right', 'Siegfried Kluckner
Römerweg 13
6408 Pettnau', NULL, NULL, '0', '0'), - ('19', '1', NULL, 'Herr', 'Bernhard Schauer', 'phoenix Wohnbauträger', NULL, 'phoenix1@chello.at', '+436642501200', 'right', 'Phoenix
Wohnbau und Projektentwicklungs GmbH
Schlossergasse 3, 6060 Hall in Tirol', NULL, NULL, '0', '0'), - ('20', '1', NULL, 'Herr', 'Hemma Businger', 'Hemma Businger', NULL, 'Hemma Businger ', '0699 / 19030325', 'right', 'Hemma Businger
Gsetzbichlweg 6
6080 Igls', NULL, NULL, '0', '0'), - ('21', '1', NULL, 'Herr', 'Scheiterer Franz', 'Gemeindeverband vorderes Zillertal', NULL, 'wer', 'wer', 'right', 'Gemeindeverband Altenheimverband Vorderes Zillertal
Franziskusweg 9
6263 Fügen', NULL, NULL, '0', '0'), - ('22', '1', NULL, 'Frau', 'Sabine Obmascher', 'Sabine Obmascher', NULL, '23r', '234', 'right', 'Sabine Obmascher
Wiesenweg 7
6175 Kematen in Tirol', NULL, NULL, '0', '0'), - ('23', '1', NULL, 'Herr', 'Spieler Angelika', 'Baumanagement Taubinger', NULL, 'sa@bm-taubinger.at', '07734/34400', 'right', 'Baumanagement Taubinger GmbH
Taufkirchen Nr. 98
A-4715 Taufkirchen an der Trattnach', NULL, NULL, '0', '0'), - ('24', '1', NULL, 'Herr', 'so wie Taubinger Baumanagement', 'WMU GmbH', NULL, 'so wie Taubinger Baumanagement', 'so wie Taubinger Baumanagement', 'right', 'WMU GmbH
Fellhof 5
4741 Wendling', NULL, NULL, '0', '0'), - ('25', '1', NULL, 'Herr', 'Dr. Simon Czermak', 'Dr. Simon Czermak', NULL, 'simon.czermak@mci.edu', '0676 / 74 55 55 4', 'right', 'Dr. Simon Czermak
Villerberg 3d
6020 Innsbruck', NULL, NULL, '0', '0'), - ('26', '1', NULL, 'Herr', 'Ing. Christian Bodner', 'Riedenhof', NULL, 'c.boder@gesfoe.at', '01-9043339-111', 'right', '', NULL, NULL, '0', '0'), - ('27', '1', NULL, 'Herr', 'Ing. Christian Bodner', 'Wertinvest', NULL, 'c.bodner@gesfoe.at', '01/9043339', 'right', '
WertInvest Immobilientreuhand GmbH
Mariahilferstraße 1/ Getreidemarkt 17
A-1060 Wien', NULL, NULL, '0', '0'), - ('28', '1', NULL, 'Herr', 'Ing. Friedrich Tussetschläger', 'Raiffeisen Wohnbau', NULL, '00', '00', 'right', 'Raiffeisen WohnBau Tirol GmbH
Mooslackengasse12
1190 Wien', NULL, NULL, '0', '0'), - ('29', '1', NULL, 'Herr', 'Armin Keil', 'Christine Steiner', NULL, 'armin.keil@tirol-kliniken.at', '0680-2196930', 'right', 'Christine Steiner
Brennerstrasse 15
6020 Innsbruck', NULL, NULL, '0', '0'), - ('30', '1', NULL, 'Herr', 'Martina Griesser', 'Griesser Götzens', NULL, 'mg@modularplus.com', '0699-10052418', 'right', 'Martina und Simon Griesser
Steinangerl 38, 6091 Götzens', NULL, NULL, '0', '0'), - ('31', '1', NULL, 'Herr', 'Hannes Hecher', 'Hannes Hecher', NULL, 'hannes.hecher@schiebel.net', '‭+43 676 83380124‬', 'right', 'Mag. Hannes Hecher
Dehmgasse 28
3400 Klosterneuburg', NULL, NULL, '0', '0'), - ('32', '1', NULL, 'Herr', 'DI Reitter Mojo', 'Arch. DI Reitter Helmut', NULL, 'mojo@reitter.cc', '0512 294099 44', 'right', 'Dr.in Marie-Luise Pokorny-Reitter
Arch. DI Helmut Reitter
Schulgasse 5
6020 Innsbruck', NULL, NULL, '0', '0'), - ('33', '1', NULL, 'Herr', 'Roland Meixner', 'BIG', NULL, 'Roland.Meixner@big.at', '0664 807457736', 'right', 'Kapuzinergasse Projektentwicklungs GmbH
Trabrennstraße 2b
1020 Wien
', NULL, NULL, '0', '0'), - ('34', '1', NULL, 'Herr', 'Wolfgang Lenz', 'H&J GmbH', NULL, 'wolfgang.lenz@hilti-jehle.at', ' 43 5472 2193 - 7316', 'right', '
Hilti und Jehle GmbH
Gartenland 248
A-6531 Ried im Oberinntal
', NULL, NULL, '0', '0'), - ('35', '1', NULL, 'Herr', 'Raika Schwaz', 'Raika Schwaz', NULL, 'n.v.', 'n.v.', 'right', '
Raiffeisen Regionalbank Schwaz eGen
Innsbrucker Straße 11
6130 Schwaz
', NULL, NULL, '0', '0'), - ('36', '1', NULL, 'Herr', 'Peter Walde', 'Ing. Peter Walde', NULL, 'peter@walde.at', '0699 17282166', 'right', '', NULL, NULL, '0', '0'), - ('37', '1', NULL, 'Herr', 'Ing. Sandra Peer', 'HYPO TIROL', NULL, 'sandra.peer@hypotirol.com', '', 'right', '
Hypo Tirol Bank AG
Meraner Straße 8
6020 Innsbruck
', NULL, NULL, '0', '0'), - ('38', '1', NULL, 'Herr', 'Hanno', 'Hanno Vogl-Fernheim', NULL, 'office@vogl-fernheim.eu', '0512/560303', 'right', '
Hanno Vogl-Fernheim
Richardsweg 1
6020 Innsbruck
', NULL, NULL, '0', '0'); - "; + ('1', '1', NULL, 'Herr', 'Moser Hans', 'NEUE HEIMAT TIROL', 'auftraggeber-logo/01K7S22BCDJKPG760E8A3ZDTYA.svg', 'h.moser@gnh.at', '+43512547895', '{\"type\":\"doc\",\"content\":[{\"type\":\"heading\",\"attrs\":{\"textAlign\":\"start\",\"level\":3},\"content\":[{\"type\":\"text\",\"text\":\"NEUE HEIMAT TIROL\"}]},{\"type\":\"paragraph\",\"attrs\":{\"textAlign\":\"start\"},\"content\":[{\"type\":\"text\",\"text\":\"Gemeinn\\u00fctzige WohnungsGmbH\"}]},{\"type\":\"paragraph\",\"attrs\":{\"textAlign\":\"start\"},\"content\":[{\"type\":\"text\",\"text\":\"Gumppstra\\u00dfe 47 - 6020 Innsbruck\"}]}]}', '1', '1', NULL, '2025-10-17 12:24:44'), + ('2', '1', NULL, 'Herr', 'Rudi Sommer', 'BauArt Immobilien GmbH', NULL, 'r.sommer@BauArtImmobilien.at', '+43512226688', 'BauArt Immobilien GmbH
Maximilianstraße 2
6020 Innsbruck', '0', '0', NULL, '2025-10-17 10:07:53'), + ('3', '1', NULL, 'Herr', 'Notar Schwarz', 'Ch. Stabel, H. Pechlaner, B. Augustin, S. Baumgartner', NULL, 'schwarz@notar.cc', '0512/59969-0', 'Christine Stabel, Omes 14, 6094 Axams
Hansjörg Pechlaner, Andreas Hofer-Strasse 18, 6020 Innsbruck
Barbara Augustin, St. Georgs-Weg 8, 6020 Innsbruck
Sabine Baumgartner, Hervicusgasse 4/4/10, 1120 Wien', '0', '0', NULL, NULL), + ('4', '1', NULL, 'Herr', 'Hr Atz', 'BUWOG', NULL, 'office@buwog.at', '++43 (0)1/878 28-0', 'BUWOG - Bauen und Wohnen Gesellschaft mbH
Hietzinger Kai 131
A-1130 Wien', '0', '0', NULL, NULL), + ('5', '1', NULL, NULL, '', 'Innsbrucker StadtBAU GesmbH', NULL, 'office@innsbrucker-stadtbau.at', '+43 512 3330', 'Innsbrucker StadtBAU GesmbH
Gumppstraße 47
A-6023 Innsbruck', '0', '0', NULL, NULL), + ('6', '1', NULL, 'Herr', 'Egger', 'WE', NULL, 'egger@we-tirol.at', '05125393-0', 'WOHNUNGSEIGENTUM
Tiroler gemeinnützige WohnbauGesmbH.
Südtiroler Platz 8
6020 Innsbruck', '0', '0', NULL, NULL), + ('7', '1', NULL, 'Herr', 'Dr. Arno Walde', 'Dr. Arno Walde', NULL, 'adwalde@gmx.at', '0680/2163458', 'Dr. Arno WALDE
Schneeburggasse 78
6020 INNSBRUCK', '0', '0', NULL, NULL), + ('8', '1', NULL, 'Herr', 'Helmut Klotz', 'Helmut Klotz', NULL, 'nicht vorhanden', '0650/2915291', 'Helmut Klotz
Innsbruckerstraße 291
6108 Scharnitz', '0', '0', NULL, NULL), + ('9', '1', NULL, 'Herr', 'Michael Steinbacher', 'Konstantin und Rupert Kerscher_Dold', NULL, 'steinbacher.immobilien@aon.at', '0676/3176521', 'Oliver Dold, Müllerstraße 14, A-6020 Innsbruck
Konstantin Kerscher, Robert Koch-Weg 10, D-87439 Kempten
Rupert Kerscher, Ziegeleiweg 1, D-87448 Waltenhofen', '0', '0', NULL, NULL), + ('10', '1', NULL, 'Frau', '0664/8195712', 'Mag. Christina Peer', NULL, 'christina_peer@wuerth-hochenburger.at', '0512/2221/5187 (Würth)', 'Mag. Christina Peer
Wildermieming 99c
6414 Wildermieming', '0', '0', NULL, NULL), + ('11', '1', NULL, 'Herr', 'Nocker', 'Josef Nocker', NULL, 'Nocker', 'Nocker', 'Josef Nocker
Josef-Schraffl-Straße 19
6020 Innsbruck', '0', '0', NULL, NULL), + ('12', '1', NULL, 'Herr', 'Wolfgang Rauth', 'IIG', NULL, 'w.rauth@iig.at', '0512/4004', 'Innsbrucker Immobilien GmbH & Co KG

Roßaugasse 4
6020 Innsbruck', '0', '0', NULL, NULL), + ('13', '1', NULL, 'Herr', 'Prem', 'Premium Living GmbH', NULL, 'office@premium-living.at', '06412/21004', 'Premium Living GmbH
Premweg 1
A-5600 St. Johann im Pongau', '0', '0', NULL, NULL), + ('14', '1', NULL, 'Herr', 'Lorenz Prem', 'Lorenz Prem', NULL, 'lorenzprem@hotmail.com', '06412/7848', 'Mag. Lorenz Prem
Premweg 7
5600 St. Johann im Pongau', '0', '0', NULL, NULL), + ('15', '1', NULL, 'Herr', 'Daniel Fügenschuh', 'Fügenschuh', NULL, 'office@ffuegenschuh.at', '0512/238601', 'Hausbesitzergemeinschaft Haspingerstraße 4
vertreten durch
Architekt Daniel Fügenschuh ZT GmbH

Höttinger Auffahrt 11
6020 Innsbruck', '0', '0', NULL, NULL), + ('16', '1', NULL, 'Herr', 'Czermak Benedikt', 'Dr. Benedikt Czermak', NULL, 'benedikt.czermak@yahoo.com', '0676/9672675', 'Dr. Benedikt Czermak
Bilgeristraße 2
6080 Igls', '0', '0', NULL, NULL), + ('17', '1', NULL, 'Herr', 'Hörtnagl', 'Ludwig Hörtnagl', NULL, 'Hörtnagl', '0000', 'Ludwig Hörtnagl
Messerschmittweg 6
6175 Kematen in Tirol', '0', '0', NULL, NULL), + ('18', '1', NULL, 'Herr', 'Kluckner Sigfried', 'Kluckner Sigfried', NULL, 'Kluckner Sigfried', 'Kluckner Sigfried', 'Siegfried Kluckner
Römerweg 13
6408 Pettnau', '0', '0', NULL, NULL), + ('19', '1', NULL, 'Herr', 'Bernhard Schauer', 'phoenix Wohnbauträger', NULL, 'phoenix1@chello.at', '+436642501200', 'Phoenix
Wohnbau und Projektentwicklungs GmbH
Schlossergasse 3, 6060 Hall in Tirol', '0', '0', NULL, NULL), + ('20', '1', NULL, 'Herr', 'Hemma Businger', 'Hemma Businger', NULL, 'Hemma Businger ', '0699 / 19030325', 'Hemma Businger
Gsetzbichlweg 6
6080 Igls', '0', '0', NULL, NULL), + ('21', '1', NULL, 'Herr', 'Scheiterer Franz', 'Gemeindeverband vorderes Zillertal', NULL, 'wer', 'wer', 'Gemeindeverband Altenheimverband Vorderes Zillertal
Franziskusweg 9
6263 Fügen', '0', '0', NULL, NULL), + ('22', '1', NULL, 'Frau', 'Sabine Obmascher', 'Sabine Obmascher', NULL, '23r', '234', 'Sabine Obmascher
Wiesenweg 7
6175 Kematen in Tirol', '0', '0', NULL, NULL), + ('23', '1', NULL, 'Herr', 'Spieler Angelika', 'Baumanagement Taubinger', NULL, 'sa@bm-taubinger.at', '07734/34400', 'Baumanagement Taubinger GmbH
Taufkirchen Nr. 98
A-4715 Taufkirchen an der Trattnach', '0', '0', NULL, NULL), + ('24', '1', NULL, 'Herr', 'so wie Taubinger Baumanagement', 'WMU GmbH', NULL, 'so wie Taubinger Baumanagement', 'so wie Taubinger Baumanagement', 'WMU GmbH
Fellhof 5
4741 Wendling', '0', '0', NULL, NULL), + ('25', '1', NULL, 'Herr', 'Dr. Simon Czermak', 'Dr. Simon Czermak', NULL, 'simon.czermak@mci.edu', '0676 / 74 55 55 4', 'Dr. Simon Czermak
Villerberg 3d
6020 Innsbruck', '0', '0', NULL, NULL), + ('26', '1', NULL, 'Herr', 'Ing. Christian Bodner', 'Riedenhof', NULL, 'c.boder@gesfoe.at', '01-9043339-111', '', '0', '0', NULL, NULL), + ('27', '1', NULL, 'Herr', 'Ing. Christian Bodner', 'Wertinvest', NULL, 'c.bodner@gesfoe.at', '01/9043339', '
WertInvest Immobilientreuhand GmbH
Mariahilferstraße 1/ Getreidemarkt 17
A-1060 Wien', '0', '0', NULL, NULL), + ('28', '1', NULL, 'Herr', 'Ing. Friedrich Tussetschläger', 'Raiffeisen Wohnbau', NULL, '00', '00', 'Raiffeisen WohnBau Tirol GmbH
Mooslackengasse12
1190 Wien', '0', '0', NULL, NULL), + ('29', '1', NULL, 'Herr', 'Armin Keil', 'Christine Steiner', NULL, 'armin.keil@tirol-kliniken.at', '0680-2196930', 'Christine Steiner
Brennerstrasse 15
6020 Innsbruck', '0', '0', NULL, NULL), + ('30', '1', NULL, 'Herr', 'Martina Griesser', 'Griesser Götzens', NULL, 'mg@modularplus.com', '0699-10052418', 'Martina und Simon Griesser
Steinangerl 38, 6091 Götzens', '0', '0', NULL, NULL), + ('31', '1', NULL, 'Herr', 'Hannes Hecher', 'Hannes Hecher', NULL, 'hannes.hecher@schiebel.net', '‭+43 676 83380124‬', 'Mag. Hannes Hecher
Dehmgasse 28
3400 Klosterneuburg', '0', '0', NULL, NULL), + ('32', '1', NULL, 'Herr', 'DI Reitter Mojo', 'Arch. DI Reitter Helmut', NULL, 'mojo@reitter.cc', '0512 294099 44', 'Dr.in Marie-Luise Pokorny-Reitter
Arch. DI Helmut Reitter
Schulgasse 5
6020 Innsbruck', '0', '0', NULL, NULL), + ('33', '1', NULL, 'Herr', 'Roland Meixner', 'BIG', NULL, 'Roland.Meixner@big.at', '0664 807457736', 'Kapuzinergasse Projektentwicklungs GmbH
Trabrennstraße 2b
1020 Wien
', '0', '0', NULL, NULL), + ('34', '1', NULL, 'Herr', 'Wolfgang Lenz', 'H&J GmbH', NULL, 'wolfgang.lenz@hilti-jehle.at', ' 43 5472 2193 - 7316', '
Hilti und Jehle GmbH
Gartenland 248
A-6531 Ried im Oberinntal
', '0', '0', NULL, NULL), + ('35', '1', NULL, 'Herr', 'Raika Schwaz', 'Raika Schwaz', NULL, 'n.v.', 'n.v.', '
Raiffeisen Regionalbank Schwaz eGen
Innsbrucker Straße 11
6130 Schwaz
', '0', '0', NULL, NULL), + ('36', '1', NULL, 'Herr', 'Peter Walde', 'Ing. Peter Walde', NULL, 'peter@walde.at', '0699 17282166', '', '0', '0', NULL, NULL), + ('37', '1', NULL, 'Herr', 'Ing. Sandra Peer', 'HYPO TIROL', NULL, 'sandra.peer@hypotirol.com', '', '
Hypo Tirol Bank AG
Meraner Straße 8
6020 Innsbruck
', '0', '0', NULL, NULL), + ('38', '1', NULL, 'Herr', 'Hanno', 'Hanno Vogl-Fernheim', NULL, 'office@vogl-fernheim.eu', '0512/560303', '
Hanno Vogl-Fernheim
Richardsweg 1
6020 Innsbruck
', '0', '0', NULL, NULL); +"; DB::unprepared($sql); } } diff --git a/resources/css/pdf-download.css b/resources/css/pdf-download.css index 6ecd1c4..5e46ace 100644 --- a/resources/css/pdf-download.css +++ b/resources/css/pdf-download.css @@ -8,26 +8,6 @@ table, padding: 0; } -body { - /* - mPDF has a custom css property for background images: background-image-resize with custom values from 0-6: - - 0 - No resizing (default) - 1 - Shrink-to-fit w (keep aspect ratio) - 2 - Shrink-to-fit h (keep aspect ratio) - 3 - Shrink-to-fit w and/or h (keep aspect ratio) - 4 - Resize-to-fit w (keep aspect ratio) - 5 - Resize-to-fit h (keep aspect ratio) - 6 - Resize-to-fit w and h - - */ - - background-image: url('images/adler2.jpg'); - background-repeat: no-repeat; - background-position: center; - background-image-resize: 3; -} - /** POSITION FIXED */ #deckblatt-gutachter { position: absolute; @@ -35,6 +15,14 @@ body { width: 185mm; } +#deckblatt-logo-gutachter { + width: 185mm; + height: 12mm; + background-size: contain; + background-repeat: no-repeat; + margin-bottom: 1mm; +} + #deckblatt-gutachten { position: absolute; top: 90mm; @@ -50,36 +38,38 @@ body { #deckblatt-auftraggeber { position: absolute; + top: 240mm; + width: 185mm; text-align: right; - bottom: 20mm; - right: 15mm; - left: 15mm; } -#deckblatt-image { - width: 185mm; - height: 12mm; +#deckblatt-logo-auftraggeber { + width: 255mm; + height: 20mm; background-size: contain; background-repeat: no-repeat; + background-position: center right; margin-bottom: 1mm; } + + /** FORMATTING */ h1 { - font-size: 28px; - line-height: 30px; + font-size: 24px; + line-height: 26px; margin: 0; } h2 { - font-size: 18px; - line-height: 20px; + font-size: 20px; + line-height: 22px; margin: 0; } h3 { - font-size: 14px; - line-height: 16px; + font-size: 16px; + line-height: 18px; margin: 0; } diff --git a/storage/hvf-logos/nht-logo.png b/storage/hvf-logos/nht-logo.png new file mode 100644 index 0000000..8c88d58 Binary files /dev/null and b/storage/hvf-logos/nht-logo.png differ
'.self::$projekt->erstellung.'