33 lines
1.0 KiB
PHP
33 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Actions\Create;
|
|
|
|
use App\Models\OrientierungZuAbschlaege;
|
|
use App\Models\Raeumealle;
|
|
|
|
class CreateOrientierungZuAbschlaege
|
|
{
|
|
public function create($record)
|
|
{
|
|
OrientierungZuAbschlaege::where('projekte_id', $record->id)->delete();
|
|
|
|
$raeumealles = Raeumealle::select('top_nummer', 'geschoss')->where('projekte_id', $record->id)->get();
|
|
|
|
$arr = [];
|
|
foreach ($raeumealles as $raeumealle) {
|
|
if (! in_array($raeumealle->top_nummer, $arr)) {
|
|
|
|
$orientierung = new OrientierungZuAbschlaege;
|
|
$orientierung->projekte_id = $record->id;
|
|
$orientierung->top_nummer = $raeumealle->top_nummer;
|
|
$orientierung->geschoss = $raeumealle->geschoss ?? '';
|
|
$orientierung->save();
|
|
|
|
Raeumealle::where('projekte_id', $record->id)->where('top_nummer', $raeumealle->top_nummer)->update(['orientierung_zu_abschlaege_id' => $orientierung->id]);
|
|
|
|
$arr[] = $raeumealle->top_nummer;
|
|
}
|
|
}
|
|
}
|
|
}
|