function form_bk_hk_anpassung_alle() { if (!isset($_SESSION['profil_id'])) { die(fehlermeldung_ausgeben('BK Profil wählen')); } $this->bk_profil_infos($_SESSION['profil_id']); $datum_t_arr = explode('-', $this->bk_verrechnungs_datum); $jahr_t = $datum_t_arr[0]; $monat_t = $datum_t_arr[1]; $me = new miete(); $end_datum = $me->tage_minus($this->bk_verrechnungs_datum, 1); $end_datum_d = date_mysql2german($end_datum); // echo $end_datum_d; // echo '<pre>'; // print_r($this); // print_r($_SESSION); $f = new formular(); $f->erstelle_formular("Anpassung der Mietdefinition: ({$this->bk_bezeichnung} für das Jahr {$this->bk_jahr})", NULL); $form = new mietkonto(); if (!isset($_SESSION['me_kostenkat'])) { $_SESSION['me_kostenkat'] = 'Nebenkosten Vorauszahlung'; } if (isset($_POST['me_kostenkat'])) { $_SESSION['me_kostenkat'] = $_POST['me_kostenkat']; } $me = new mietentwicklung(); $me->dropdown_me_bk_hk('Kostenkategorie auswählen', 'me_kostenkat', $_SESSION['me_kostenkat']); $f->send_button("BtN_ME", "Kostenkategorie neu laden!!!"); $f->ende_formular(); $f = new formular(); $f->erstelle_formular($_SESSION['me_kostenkat'] . " in der Mietdefinition ab {$this->bk_verrechnungs_datum_d} �ndern", NULL); fehlermeldung_ausgeben("Alle Eingaben werden in der Mietdefinition zum {$this->bk_verrechnungs_datum_d} gespeichert!!! Verrechnungsdatum im Profil prüfen!!!<br><br>"); $jahr = date("Y"); // $ob = new objekt; // $einheiten_array = $ob->einheiten_objekt_arr($_SESSION['objekt_id']); $ob = new objekt(); $einheiten_array = $ob->einheiten_objekt_arr($_SESSION['objekt_id']); $anz = count($einheiten_array); for ($a = 0; $a < $anz; $a++) { $bk = new bk(); $einheit_id = $einheiten_array[$a]['EINHEIT_ID']; $einheit_kn = $einheiten_array[$a]['EINHEIT_KURZNAME']; $arr[$a]['MVS'] = $bk->mvs_und_leer_jahr($einheit_id, $this->bk_jahr); $arr[$a]['EINHEIT_KURZNAME'] = $einheit_kn; } $anz = count($arr); // echo "<pre>"; // print_r($arr); echo "<table>"; echo "<tr><th>ANZ</th><th>EINHEIT</th><th>MIETER</th><th>VON-BIS</th><th>AUSZUG</th><th>AKTUELL ZUM {$this->bk_verrechnungs_datum_d}</th><th>NEU ab {$this->bk_verrechnungs_datum_d}</th></tr>"; $z = 0; for ($a = 0; $a < $anz; $a++) { $anz1 = count($arr[$a]['MVS']); for ($b = 0; $b < $anz1; $b++) { $mv_id = $arr[$a]['MVS'][$b]['KOS_ID']; $b_von = date_mysql2german($arr[$a]['MVS'][$b]['BERECHNUNG_VON']); $b_bis = date_mysql2german($arr[$a]['MVS'][$b]['BERECHNUNG_BIS']); $tage = $arr[$a]['MVS'][$b]['TAGE']; if ($mv_id != 'Leerstand') { $z++; $mv = new mietvertraege(); $mv->get_mietvertrag_infos_aktuell($mv_id); $mz = new miete(); $summe_nebenkosten_jahr = $mz->summe_nebenkosten_im_jahr('MIETVERTRAG', $mv_id, $jahr); $summe_hk_jahr = $mz->summe_heizkosten_im_jahr('MIETVERTRAG', $mv_id, $jahr); $me = new mietentwicklung(); $me_arr = $me->get_kostenkat_info_aktuell($mv_id, $monat_t, $jahr_t, $_SESSION['me_kostenkat']); if (is_array($me_arr)) { // echo '<pre>'; // print_r($me_arr); $betrag_akt = nummer_punkt2komma_t($me_arr['BETRAG']); $dat = $me_arr['MIETENTWICKLUNG_DAT']; } else { $betrag_akt = nummer_punkt2komma_t(0.0); $dat = '0'; } echo "<tr><td>{$z}.</td><td>{$mv->einheit_kurzname}</td><td>{$mv->personen_name_string}</td><td>{$b_von} - {$b_bis}</td>"; if ($mv->mietvertrag_aktuell == 0) { echo "<td class=\"rot\">{$mv->mietvertrag_bis_d}</td>"; } else { echo "<td></td>"; } echo "<td>"; $f->text_feld_inaktiv('AKTUELL', "vorschuss{$z}", $betrag_akt, 10, "vorschuss{$z}"); echo "</td>"; // echo "<td>$end_datum_d</td>"; echo "<td>"; $f->text_feld('Neuer Betrag', 'vorschuss_neu[]', '', 10, "vorschuss_neu{$z}", null); echo "</td></tr>"; $f->hidden_feld("mvs[]", "{$mv_id}"); $f->hidden_feld("dat[]", "{$dat}"); } else { // echo "<tr><td>$mv_id auszug</td></tr>"; $einheit_kn = $arr[$a]['EINHEIT_KURZNAME']; echo "<tr class=\"rot\"><td class=\"rot\"></td><td class=\"rot\">{$einheit_kn}</td><td class=\"rot\">LEERSTAND</td><td class=\"rot\">{$b_von} - {$b_bis}</td><td class=\"rot\"></td><td class=\"rot\"></td><td class=\"rot\"></td></tr>"; /* echo "<tr><td class=\"gruen\">$einheit_kn</td><td class=\"gruen\"><b>LEERSTAND</b></td><td>$b_von</td><td>$b_bis</td><td>$tage</td><td></td><td></td><td></td></tr>"; */ } } // $z++; } echo "<tr><td></td><td></td><td>"; // $f->datum_feld('Verrechnungsdatum', 'v_datum', $this->bk_verrechnungs_datum_d, 'dd'); echo "</td><td>"; $f->hidden_feld("v_datum", "{$this->bk_verrechnungs_datum_d}"); $f->hidden_feld("option", "me_send_hk_bk"); $f->hidden_feld("kat", $_SESSION['me_kostenkat']); $f->hidden_feld("ende", $end_datum_d); $f->send_button("BtN_EN", "Werte in die\nMietdefinition speichern"); echo "</td></tr></table>"; $f->ende_formular(); }
function get_png($objekt_id, $monat, $jahr, $w = 300, $h = 200) { $monat = sprintf('%02d', $monat); include_once BERLUS_PATH . "/classes/phplot.php"; $plot = new PHPlot($w, $h, "/tmp/plot_sanierung.png"); $plot->SetImageBorderType('plain'); $plot->SetPlotType('stackedbars'); $plot->SetDataType('text-data'); // $column_names = array('LEER VM', 'LEER NEU', 'IST WM','DIFF'); $plot->SetShading(10); $plot->SetLegendReverse(True); // $plot->SetLegend($column_names); $oo = new objekt(); $oo->get_objekt_infos($objekt_id); $anz_einheiten_alle = $oo->anzahl_einheiten_objekt($objekt_id); $datum_heute = "{$jahr}-{$monat}-01"; $mi = new miete(); $datum_vormonat = $mi->tage_minus($datum_heute, 30); $arr = $this->leerstand_finden_monat($objekt_id, $datum_vormonat); $anz_leer_vormonat = count($arr); // unset($arr); $arr_leer = $this->leerstand_finden_monat($objekt_id, $datum_heute); $anz_leer_akt = count($arr_leer); $anz_vermietet = $anz_einheiten_alle - $anz_leer_akt; $leere = $this->array_intersect_recursive($arr_leer, $arr, 'EINHEIT_KURZNAME'); $vermietete = $this->array_intersect_recursive($arr, $arr_leer, 'EINHEIT_KURZNAME'); $leer_akt_string = ''; $anz__L = count($leere); if ($anz__L > 0) { for ($ee = 0; $ee < $anz__L; $ee++) { $leer_akt_string .= $leere[$ee] . "\n"; } } $vermietet_akt_string = ''; $anz__V = count($vermietete); // print_r($vermietete); if ($anz__V > 0) { for ($ee = 0; $ee < $anz__V; $ee++) { $vermietet_akt_string .= $vermietete[$ee] . "\n"; } } // unset($arr); /* * $mvs = new mietvertraege; * $anz_ausgezogene = $mvs->anzahl_ausgezogene_mieter($objekt_id, $jahr, $monat); * $anz_eingezogene = $mvs->anzahl_eingezogene_mieter($objekt_id, $jahr, $monat); */ $bilanz_akt = $anz__V - $anz__L; // 0-1 = -1; $z = 0; /* * $data[$z][] = "ALLE\nAKTUELL"; * $data[$z][] = $anz_einheiten_alle; * * $data[$z][] = 0; * $data[$z][] = 0; * */ // $z++; /* * $data[$z][] = "LEER\nVERM."; * $data[$z][] = 0; * $data[$z][] = $anz_vermietet; * $data[$z][] = $anz_leer_akt; */ $data[$z][] = "VOR-\nMONAT"; $data[$z][] = 0; $data[$z][] = $anz_leer_vormonat; $z++; $data[$z][] = "LEER-\nAKTUELL"; $data[$z][] = 0; $data[$z][] = 0; $data[$z][] = $anz_leer_akt; $z++; $data[$z][] = "LEER\n\n{$leer_akt_string}"; $data[$z][] = '0'; $data[$z][] = '0'; $data[$z][] = $anz__L; $z++; $data[$z][] = "VERM.\n\n{$vermietet_akt_string}"; $data[$z][] = '0'; $data[$z][] = $anz__V; $z++; $data[$z][] = "BILANZ\nEIN/AUS"; if ($bilanz_akt < 0) { $data[$z][] = 0; $data[$z][] = 0; $data[$z][] = 0; $data[$z][] = 0; $data[$z][] = $bilanz_akt; } else { $data[$z][] = 0; $data[$z][] = $bilanz_akt; } // $z++; $plot->SetYDataLabelPos('plotstack'); $plot->SetDataValues($data); // Main plot title: $plot->SetTitle("{$oo->objekt_kurzname} {$monat}/{$jahr}"); // No 3-D shading of the bars: $plot->SetShading(0); // Make a legend for the 3 data sets plotted: // $plot->SetLegend(array('Mieteinnahmen', 'Leerstand')); // $plot->SetLegend(array('MIETE')); // Turn off X tick labels and ticks because they don't apply here: $plot->SetXTickLabelPos('none'); $plot->SetXTickPos('none'); // Draw it $plot->SetIsInline(true); $plot->DrawGraph(); // echo "<hr>$plot->img "; // $plot->PrintImageFrame(); // $ima = $plot->PrintImage(); $ima = $plot->EncodeImage(); // ob_clean(); return $ima; // echo "<img src=\"$ima\"></img>"; }