with('orientierung')
->where('projekte_id', $projekte_id)
->where('nicht_in_orientierung', 0)
->get();
$has_loggien = ProjektMethode::where('projekte_id', $projekte_id)->where('methode_id', 2)->count();
if ($has_loggien) {
$header_row = ['Top Nummer', 'Geschoß', 'Typ', 'Nutzfläche', 'Loggia / Zusatzflächen', 'Gesamtnutzfläche'];
} else {
$header_row = ['Top Nummer', 'Geschoß', 'Typ', 'Nutzfläche'];
}
$projekt_merkmale = ProjektMerkmale::where('projekte_id', $projekte_id)->pluck('name', 'code');
$markmale_codes = [];
foreach ($projekt_merkmale as $key => $value) {
$markmale_codes[] = $key;
$header_row[] = $value;
}
$header_row[] = 'Summe Merkmale';
$header_row[] = 'Wohnungsbewertung';
$html = Html::table_header_90($header_row);
$summe_nutzfl = 0;
$summe_loggia = 0;
foreach ($objekte as $objekt) {
$detail = DB::table('projekt_objekte_im_details')
->join('projekt_methodes', 'projekt_objekte_im_details.raumart', '=', 'projekt_methodes.raumart')
->select(
'projekt_methodes.faktor',
'projekt_objekte_im_details.geschoss',
'projekt_objekte_im_details.raumart',
'projekt_objekte_im_details.flaeche',
'projekt_objekte_im_details.nutzwert',
)
->where('projekt_methodes.methode_id', 1)
->where('projekt_methodes.projekte_id', $projekte_id)
->where('projekt_objekte_im_details.projekt_objekte_id', $objekt->id)
->get();
$flaeche = $detail->sum('flaeche');
$geschoss = $detail->first()->geschoss;
$html .= '
';
$html .= Html::td($objekt->top_nummer, 'center bl br bb');
$html .= Html::td($geschoss, 'center br bb');
$html .= Html::td($objekt->type, 'br bb');
// Nutzfläche
$html .= Html::td(Format::dezimal($flaeche, 2).' m²', 'center br bb w30');
// SUMME Nutzfläche
$summe_nutzfl += $flaeche;
// Loggia
if ($has_loggien) {
$loggien = DB::table('projekt_objekte_im_details')
->join('projekt_methodes', 'projekt_objekte_im_details.raumart', '=', 'projekt_methodes.raumart')
->select('projekt_objekte_im_details.flaeche')
->where('projekt_methodes.methode_id', 2)
->where('projekt_methodes.projekte_id', $projekte_id)
->where('projekt_objekte_im_details.projekt_objekte_id', $objekt->id)
->get();
$flaeche_loggien = $loggien->sum('flaeche');
if ($flaeche_loggien) {
$html .= Html::td(Format::dezimal($flaeche_loggien, 2).' m²', 'center br bb');
} else {
$html .= Html::td('', 'br bb');
}
// SUMME Loggien
$summe_loggia += $flaeche_loggien;
$gesammt = $flaeche + $flaeche_loggien;
$html .= Html::td(Format::dezimal($gesammt, 2).' m²', 'center br bb');
}
$nutwert = 0;
foreach ($markmale_codes as $code) {
$nutwert += $objekt->$code;
$html .= Html::td(Format::dezimal($objekt->$code, 2), 'center br bb');
}
$html .= Html::td(Format::dezimal($nutwert, 2), 'center br bb');
$html .= Html::td(Format::dezimal(100 + $nutwert, 2), 'right br bb');
$html .= '
';
}
// SUMMEN
$html .= '';
$html .= Html::td('Summen', 'center bl bb br');
$html .= Html::td('', 'bb');
$html .= Html::td('', 'bb br');
$html .= Html::td(Format::dezimal($summe_nutzfl, 2).' m²', 'center bb br');
if ($summe_loggia) {
$html .= Html::td(Format::dezimal($summe_loggia, 2).' m²', 'center bb br');
}
$html .= Html::td(Format::dezimal($summe_nutzfl + $summe_loggia, 2).' m²', 'center bb br nowrap');
$html .= Html::td('', 'bb');
$html .= Html::td('', 'bb');
$html .= Html::td('', 'bb');
$html .= Html::td('', 'bb');
$html .= Html::td('', 'bb br');
$html .= '
';
$html .= '';
return $html;
}
}