pdf nutzwerte wip
This commit is contained in:
1 parent
054654fb9c
commit
53cdc0413e
7 files changed
+74
-21
No files matched your search
+21
-8
@@ -57,7 +57,7 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
->columnSpan(2),
|
||||
TextInput::make('flaeche')
|
||||
->suffix(new HtmlString(' m²'))
|
||||
->rules(['required', 'flaeche' => 'decimal:2'])
|
||||
->rules(['required'])
|
||||
->label('Fläche')
|
||||
->validationMessages([
|
||||
'required' => 'Die Eingabe einer Fläche ist erforderlich.',
|
||||
@@ -69,7 +69,6 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
->columnSpan(2),
|
||||
TextInput::make('faktor')
|
||||
->suffixIcon('phosphor-function')
|
||||
->rules(['required', 'faktor' => 'decimal:0,2'])
|
||||
->afterStateUpdated(function (Component $livewire) {
|
||||
$livewire->dispatch('refreshProjektObjekteImDetail');
|
||||
})->validationMessages([
|
||||
@@ -97,10 +96,16 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
->extraInputAttributes(['onClick' => 'this.select()'])
|
||||
->suffixIcon('phosphor-function')
|
||||
->width('1rem')
|
||||
->rules(['required', 'faktor' => 'decimal:0,2'])
|
||||
->rules(['required'])
|
||||
->searchable()
|
||||
->afterStateUpdated(function (Component $livewire) {
|
||||
->afterStateUpdated(function ($record, Component $livewire) {
|
||||
|
||||
$object = ProjektObjekteImDetail::find($record['id']);
|
||||
$object->nutzwert = round($object->faktor * $object->flaeche, 2);
|
||||
$object->save();
|
||||
|
||||
$livewire->dispatch('refreshProjektObjekteImDetail');
|
||||
|
||||
})->validationMessages([
|
||||
'required' => 'Die Eingabe eines Faktors ist erforderlich.',
|
||||
'decimal' => 'Für den Faktors sind zwei Dezimalstellen erforderlich.',
|
||||
@@ -113,11 +118,17 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
->suffix(new HtmlString(' m²'))
|
||||
->width('2rem')
|
||||
->alignment('right')
|
||||
->rules(['required', 'flaeche' => 'decimal:2'])
|
||||
->rules(['required'])
|
||||
->label('Fläche')
|
||||
->searchable()
|
||||
->afterStateUpdated(function (Component $livewire) {
|
||||
->afterStateUpdated(function ($record, Component $livewire) {
|
||||
|
||||
$object = ProjektObjekteImDetail::find($record['id']);
|
||||
$object->nutzwert = round($object->faktor * $object->flaeche, 2);
|
||||
$object->save();
|
||||
|
||||
$livewire->dispatch('refreshProjektObjekteImDetail');
|
||||
|
||||
})->validationMessages([
|
||||
'required' => 'Die Eingabe einer Fläche ist erforderlich.',
|
||||
'decimal' => 'Für die Fläche sind zwei Dezimalstellen erforderlich.',
|
||||
@@ -131,7 +142,7 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
SelectFilter::make('top_nummer')
|
||||
->label('Top Nummer')
|
||||
->relationship('top_nummer', 'top_nummer', fn (Builder $query) => $query->where('projekte_id', $this->getOwnerRecord()->id))
|
||||
->searchable(),
|
||||
->preload(),
|
||||
SelectFilter::make('geschoss')
|
||||
->preload()
|
||||
->options(function (): array {
|
||||
@@ -143,6 +154,7 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
return ProjektObjekteImDetail::where('projekte_id', $this->getOwnerRecord()->id)->groupBy('raumart')->orderBy('raumart')->pluck('raumart', 'raumart')->toArray();
|
||||
}),
|
||||
])
|
||||
->deferFilters(false)
|
||||
->headerActions([
|
||||
CreateAction::make()
|
||||
->icon('phosphor-file-plus')
|
||||
@@ -150,7 +162,8 @@ class ProjektObjekteImDetailRelationManager extends RelationManager
|
||||
])
|
||||
->recordActions([
|
||||
EditAction::make()->iconButton()
|
||||
->mutateDataUsing(function (array $data): array {
|
||||
->mutateDataUsing(function ($data): array {
|
||||
|
||||
$data['nutzwert'] = round($data['faktor'] * $data['flaeche']);
|
||||
|
||||
return $data;
|
||||
|
||||
Reference in new issue
Block a user