fix clone

This commit is contained in:
salam committed 2026-09-17 08:35:36 +02:00
1 parent 82ee9d2dcf
commit 9a5ad32315
33 files changed
+654 -496

No files matched your search

@@ -7,11 +7,14 @@ use App\Actions\Validation\GutachtenValidation;
use App\Filament\Resources\Projektes\ProjekteResource;
use App\Models\Konto;
use App\Models\Projekte;
use App\Models\ProjektMethode;
use App\Models\ProjektObjekteImDetail;
use App\Traits\HasBackUrl;
use Carbon\Carbon;
use Filament\Actions\Action;
use Filament\Actions\ActionGroup;
use Filament\Actions\DeleteAction;
use Filament\Forms\Components\Select;
use Filament\Notifications\Notification;
use Filament\Resources\Pages\EditRecord;
use Illuminate\Support\Facades\Auth;
@@ -151,17 +154,37 @@ class EditProjekte extends EditRecord
GutachtenValidation::run($record);
$this->record->refresh();
}),
DeleteAction::make()->icon('heroicon-o-trash')
->label('Projekt löschen')
->modalDescription('Möchten Sie dieses Projekt wirklich löschen? Die Daten werden unwiderbringlich gelöscht, dieser Vorgang kann nicht rückgängig gemacht werden.')
->requiresConfirmation(),
Action::make('fix_cloned_method_id')
->label('Fix cloned Method Id')
->tooltip('Visible only by me')
->visible(fn () => Auth::user()->id == 1)
->icon('phosphor-arrow-fat-line-right-fill')
->modalIcon('phosphor-arrow-fat-line-right-fill')
->schema([
Select::make('authorId')
->label('Author')
->options(Projekte::query()->pluck('interner_name', 'id'))
->required(),
])->action(function (array $data, Projekte $record): void {
$res = ProjektObjekteImDetail::where('projekte_id', 15)->get();
foreach ($res as $row) {
$projekt_methode_id = ProjektMethode::where('cloned_from_id', $row->projekt_methode_id)->value('id');
ProjektObjekteImDetail::where('id', $row->id)->update(['projekt_methode_id' => $projekt_methode_id]);
}
}),
Action::make('reparieren')
->color('success')
->label('Daten reparieren ..')
->tooltip('Visible only by me')
->visible(fn () => Auth::user()->id == 1)
->modalIcon('phosphor-arrow-fat-line-right-fill')
->modalDescription(self::reparierenText())
// ->hidden(fn ($record): bool => ! $record->cloned_from_id)
->action(fn ($record) => Reparieren::run($record))
->icon('phosphor-arrow-fat-line-right-fill'),
DeleteAction::make()->icon('heroicon-o-trash')
->label('Projekt löschen')
->modalDescription('Möchten Sie dieses Projekt wirklich löschen? Die Daten werden unwiderbringlich gelöscht, dieser Vorgang kann nicht rückgängig gemacht werden.'),
])->label('Admin')
->icon('phosphor-user-circle')
->button(),
@@ -272,7 +272,6 @@ class ProjektObjekteRelationManager extends RelationManager
return Orientierung::whereIn('id', $res)->orderBy('id')->pluck('name', 'id');
}),
TernaryFilter::make('nicht_in_orientierung')
->default(0)
->label('"Nicht in Orientierung" anzeigen'),
], FiltersLayout::AboveContent)
->deferFilters(false)