From d6e4789797876c9598f579db1431d01dd9837f99 Mon Sep 17 00:00:00 2001 From: salam Date: Wed, 17 Jun 2026 16:53:02 +0200 Subject: [PATCH] wip --- app/Actions/Klone/KloneDokument.php | 34 +++++++++++++++++++ .../Projektes/Tables/ProjektesTable.php | 7 ++++ bootstrap/cache/packages.php | 14 -------- bootstrap/cache/services.php | 16 ++++----- 4 files changed, 47 insertions(+), 24 deletions(-) create mode 100644 app/Actions/Klone/KloneDokument.php diff --git a/app/Actions/Klone/KloneDokument.php b/app/Actions/Klone/KloneDokument.php new file mode 100644 index 0000000..9fbd781 --- /dev/null +++ b/app/Actions/Klone/KloneDokument.php @@ -0,0 +1,34 @@ +id; + + $insert_array = $record->toArray(); + unset($insert_array['id']); + $insert_array['bezahlt_am'] = $record->bezahlt_am->format('Y-m-d H:i:s'); + $insert_array['created_at'] = Carbon::now(); + $insert_array['updated_at'] = Carbon::now(); + + $res = Projekte::insert($insert_array); + $new_id = $res->id; + + dd($new_id); + + $res = ProjektAllgemeinflaechen::where('projekt_id', $old_id)->get()->toArray(); + foreach ($res as $row) { + unset($row['id']); + $row['projekt_id'] = $new_id; + ProjektAllgemeinflaechen::insert($row); + } + exit; + } +} diff --git a/app/Filament/Resources/Projektes/Tables/ProjektesTable.php b/app/Filament/Resources/Projektes/Tables/ProjektesTable.php index 9a12efe..aec4a94 100644 --- a/app/Filament/Resources/Projektes/Tables/ProjektesTable.php +++ b/app/Filament/Resources/Projektes/Tables/ProjektesTable.php @@ -2,10 +2,12 @@ namespace App\Filament\Resources\Projektes\Tables; +use App\Actions\Klone\KloneDokument; use App\Enums\ProjektStatus; use App\Models\Auftraggeber; use App\Models\Gutachter; use App\Models\Projekte; +use Filament\Actions\Action; use Filament\Actions\EditAction; use Filament\Tables\Columns\TextColumn; use Filament\Tables\Enums\FiltersLayout; @@ -65,6 +67,11 @@ class ProjektesTable ->deferFilters(false) ->recordActions([ EditAction::make()->iconButton(), + Action::make('dokument_klonen') + ->action(fn (Projekte $record) => KloneDokument::clone($record)) + ->iconButton() + ->icon('phosphor-copy') + ->requiresConfirmation(), ]); } } diff --git a/bootstrap/cache/packages.php b/bootstrap/cache/packages.php index ee098d0..4f174c9 100755 --- a/bootstrap/cache/packages.php +++ b/bootstrap/cache/packages.php @@ -253,20 +253,6 @@ 0 => 'Swis\\Filament\\Backgrounds\\FilamentBackgroundsServiceProvider', ), ), - 'tonegabes/filament-better-options' => - array ( - 'providers' => - array ( - 0 => 'ToneGabes\\BetterOptions\\BetterOptionsServiceProvider', - ), - ), - 'tonegabes/filament-phosphor-icons' => - array ( - 'providers' => - array ( - 0 => 'ToneGabes\\Filament\\Icons\\PhosphorIconsServiceProvider', - ), - ), 'ysfkaya/filament-phone-input' => array ( 'providers' => diff --git a/bootstrap/cache/services.php b/bootstrap/cache/services.php index 7b06a6a..c87a2c3 100755 --- a/bootstrap/cache/services.php +++ b/bootstrap/cache/services.php @@ -58,11 +58,9 @@ 54 => 'Spatie\\LoginLink\\LoginLinkServiceProvider', 55 => 'Spatie\\Permission\\PermissionServiceProvider', 56 => 'Swis\\Filament\\Backgrounds\\FilamentBackgroundsServiceProvider', - 57 => 'ToneGabes\\BetterOptions\\BetterOptionsServiceProvider', - 58 => 'ToneGabes\\Filament\\Icons\\PhosphorIconsServiceProvider', - 59 => 'Ysfkaya\\FilamentPhoneInput\\FilamentPhoneInputServiceProvider', - 60 => 'App\\Providers\\AppServiceProvider', - 61 => 'App\\Providers\\Filament\\AdminPanelProvider', + 57 => 'Ysfkaya\\FilamentPhoneInput\\FilamentPhoneInputServiceProvider', + 58 => 'App\\Providers\\AppServiceProvider', + 59 => 'App\\Providers\\Filament\\AdminPanelProvider', ), 'eager' => array ( @@ -108,11 +106,9 @@ 39 => 'Spatie\\LoginLink\\LoginLinkServiceProvider', 40 => 'Spatie\\Permission\\PermissionServiceProvider', 41 => 'Swis\\Filament\\Backgrounds\\FilamentBackgroundsServiceProvider', - 42 => 'ToneGabes\\BetterOptions\\BetterOptionsServiceProvider', - 43 => 'ToneGabes\\Filament\\Icons\\PhosphorIconsServiceProvider', - 44 => 'Ysfkaya\\FilamentPhoneInput\\FilamentPhoneInputServiceProvider', - 45 => 'App\\Providers\\AppServiceProvider', - 46 => 'App\\Providers\\Filament\\AdminPanelProvider', + 42 => 'Ysfkaya\\FilamentPhoneInput\\FilamentPhoneInputServiceProvider', + 43 => 'App\\Providers\\AppServiceProvider', + 44 => 'App\\Providers\\Filament\\AdminPanelProvider', ), 'deferred' => array (