Beispiel #1
0
 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>";
 }