}
 echo " </p>";
 echo "<hr>";
 // ###########################################
 // $buchung->array_anzeigen($mieter_daten_arr);
 // ###########################################
 // ####Alle Zahlbetraege in Array ############
 // $alle_zahbetraege_arr = $buchung->alle_zahlbetraege_arr($mietvertrag_id);
 // $buchung->array_anzeigen($alle_zahbetraege_arr);
 // ###########ERMITTELN DES SALDOS BEI DER VORVERWALTUNG##############################
 $zeitraum = new zeitraum();
 // Zeitraum Klasse für den Monatearray
 $saldo_vortrag_vorverwaltung = $buchung->saldo_vortrag_vorverwaltung($mietvertrag_id);
 if (empty($saldo_vortrag_vorverwaltung)) {
     // $saldo_vortrag_vorverwaltung = '0';
     $datum_mietdefinition = $buchung->datum_1_mietdefinition($mietvertrag_id);
     if (!empty($datum_mietdefinition)) {
         // echo "DEFINITION $datum_mietdefinition";
         $datum_mietdefinition = explode("-", $datum_mietdefinition);
         $monat_mietdefintion = $datum_mietdefinition[1];
         $jahr_mietdefinition = $datum_mietdefinition[0];
         $monate_arr = $zeitraum->zeitraum_generieren($monat_mietdefintion, $jahr_mietdefinition, $monat_aktuell, $jahr_aktuell);
         $einzugs_monat = $monat_mietdefintion;
         $einzugs_jahr = $jahr_mietdefinition;
     } else {
         // echo "EINZUG $einzugs_monat $einzugs_jahr";
         $monate_arr = $zeitraum->zeitraum_generieren($einzugs_monat, $einzugs_jahr, $monat_aktuell, $jahr_aktuell);
     }
 } else {
     // echo "SALDO EXISTS";
     $datum_saldo_vv = $buchung->datum_saldo_vortrag_vorverwaltung($mietvertrag_id);
 function plotfile_me($pdf, $mv_id, $w = 800, $h = 600)
 {
     $mvs = new mietvertraege();
     $mvs->get_mietvertrag_infos_aktuell($mv_id);
     $mk = new mietkonto();
     $datum_mietdefinition = $mk->datum_1_mietdefinition($mv_id);
     // echo "<h1>$datum_mietdefinition</h1>";
     $a_dat = explode('-', $datum_mietdefinition);
     $jahr_a = date("Y") - 2;
     $jahr_e = date("Y") + 3;
     $jahre = $jahr_e - $jahr_a;
     $z = 0;
     for ($jahr = $jahr_a; $jahr <= $jahr_e; $jahr++) {
         $monat = date("m");
         $mk->kaltmiete_monatlich($mv_id, $monat, $jahr);
         if ($jahr > $jahr_a) {
             $miete_vorjahr = $arr_stat[$z - 1][1];
             $prozent = ($mk->ausgangs_kaltmiete - $miete_vorjahr) / ($miete_vorjahr / 100);
         } else {
             $prozent = 0;
         }
         $prozent = nummer_punkt2komma($prozent);
         $arr_stat[$z][0] = "{$jahr}\n{$mk->ausgangs_kaltmiete}\nEUR\n{$prozent} %";
         $arr_stat[$z][1] = $mk->ausgangs_kaltmiete;
         $z++;
     }
     // print_r($arr_stat);
     require_once 'phplot.php';
     $plot = new PHPlot($w, $h);
     $plot->SetImageBorderType('plain');
     $plot->SetPlotType('bars');
     $plot->SetDataType('text-data');
     $plot->SetDataValues($arr_stat);
     // Main plot title:
     $plot->SetTitle('MIETENTWICKLUNG' . " {$mvs->einheit_kurzname} \n {$mvs->personen_name_string}");
     // 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);
     $img = $plot->DrawGraph();
     $px = 'px';
     // echo "<hr>$plot->img ";
     // $plot->PrintImageFrame();
     // $hhh = $plot->PrintImage();
     $ima = $plot->EncodeImage();
     // echo "<a style=\"width:$w$px;heigth:$h$px;\" href=\"?option=stat_mv_big&mv_id=$mv_id\"><img style=\"width:$w$px;heigth:$h$px;\" src=\"$plot->img\"></img></a>";
     // die();
     // echo "<img src=\"$ima\">";
     // die();
     if ($mvs->mietvertrag_aktuell == 1) {
         $pdf->ezNewPage();
         $druckdatum = date("d.m.Y");
         $pdf->addText(464, 730, 7, "<b>Druckdatum: {$druckdatum}</b>");
         $pdf->addPngFromFile($ima, $pdf->x + 10, $pdf->y - $h, $w, $h);
     }
 }
Example #3
0
 function mietkonto_berechnung($mietvertrag_id)
 {
     $this->mietvertrag_id = $mietvertrag_id;
     $this->jahr_aktuell = date("Y");
     $this->monat_aktuell = date("m");
     $this->end_j = date("Y");
     $this->end_m = date("m");
     /* Include mietkonto_class */
     $buchung = new mietkonto();
     $datum_saldo_vv = $buchung->datum_saldo_vortrag_vorverwaltung($mietvertrag_id);
     $this->saldo_vv = $buchung->saldo_vortrag_vorverwaltung($mietvertrag_id);
     // echo "$datum_saldo_vv $this->saldo_vv";
     $this->saldo_vv = number_format($this->saldo_vv, 2, '.', '');
     // die();
     /* Saldo Vortrag vorhanden, dann ab Saldo VV rechnen */
     // echo $datum_saldo_vv;
     if (!empty($datum_saldo_vv)) {
         /* Saldo Vorvertrag mit 1. Zahlung vergleichen, älteres nehmen */
         $datum_saldo_vv_s = str_replace('-', '', $datum_saldo_vv);
         // $datums_arr[] = $datum_saldo_vv_s;
         // echo $datum_saldo_vv_s;
         /* Einen Monat nach SALDO VV */
         $anfangs_datum = $this->tage_plus($datum_saldo_vv, 15);
         // echo "AD $anfangs_datum<br>";
         $anfangs_datum_s = str_replace('-', '', $anfangs_datum);
         $datums_arr[] = $anfangs_datum_s;
         // echo "1. $anfangs_datum $anfangs_datum_s<br>";
         $datum1_zahlung = $buchung->datum_1_zahlung($mietvertrag_id);
         if (!empty($datum1_zahlung)) {
             $datum1_zahlung_s = str_replace('-', '', $datum1_zahlung);
             $datums_arr[] = $datum1_zahlung_s;
         }
         /* älteres wählen und als Startdatum setzen */
         $anfangs_datum = min($datums_arr);
         $this->start_m = substr($anfangs_datum, 4, 2);
         $this->start_j = substr($anfangs_datum, 0, 4);
         // echo '<pre>';
         // print_r($datums_arr);
         // die("$this->start_m $this->start_j");
         // }
         // echo "$this->start_m $this->start_j";
         // die('BLA');
     } else {
         /* Datum der 1. Mietdefinition */
         $datum_mietdefinition = $buchung->datum_1_mietdefinition($mietvertrag_id);
         if (!empty($datum_mietdefinition)) {
             $datum_mietdefinition_s = str_replace('-', '', $datum_mietdefinition);
             $datums_arr[] = $datum_mietdefinition_s;
         }
         /* Datum 1 Zahlung ermitteln */
         $datum1_zahlung = $buchung->datum_1_zahlung($mietvertrag_id);
         if (!empty($datum1_zahlung)) {
             $datum1_zahlung_s = str_replace('-', '', $datum1_zahlung);
             $datums_arr[] = $datum1_zahlung_s;
         }
         /* Wenn MD oder 1 Zahlung definiert */
         if (is_array($datums_arr)) {
             /* älteres Datum nehmen, da Zahlung vor Definition sein kann */
             $anfangs_datum = min($datums_arr);
             $this->start_m = substr($anfangs_datum, 4, 2);
             $this->start_j = substr($anfangs_datum, 0, 4);
         } else {
             $buchung->ein_auszugsdatum_mietvertrag($mietvertrag_id);
             $einzugsdatum_s = str_replace('-', '', $buchung->mietvertrag_von);
             $this->start_m = substr($einzugsdatum_s, 4, 2);
             $this->start_j = substr($einzugsdatum_s, 0, 4);
         }
     }
     /* jahresschleife */
     for ($a = $this->start_j; $a <= $this->end_j; $a++) {
         /* anfangs und endjahr gleich */
         if ($a == $this->start_j && $a == $this->end_j) {
             $start_m = $this->start_m;
             $end_m = $this->end_m;
         }
         /* voll jahre dazwischen */
         if ($a > $this->start_j && $a < $this->end_j) {
             $start_m = 1;
             $end_m = 12;
         }
         /* erstjahr */
         if ($a == $this->start_j && $a != $this->end_j) {
             $start_m = $this->start_m;
             $end_m = 12;
         }
         /* endjahr */
         if ($a == $this->end_j && $a != $this->start_j) {
             $start_m = 1;
             $end_m = $this->end_m;
         }
         /* monatsschleife */
         $m_zaehler = 0;
         if ($start_m < 10) {
             $start_m = substr($start_m, -1);
         }
         for ($b = $start_m; $b <= $end_m; $b++) {
             if ($m_zaehler == 0 && $a == $this->start_j) {
                 $this->saldo_vormonat = $this->saldo_vv;
             }
             $this->daten_arr[$a]['monate'][$m_zaehler]['monat'] = $b;
             $this->daten_arr[$a]['monate'][$m_zaehler]['saldo_vormonat'] = $this->saldo_vormonat;
             if ($buchung->summe_betriebskostenabrechnung($mietvertrag_id, $b, $a) && $buchung->summe_betriebskostenabrechnung($mietvertrag_id, $b, $a) != '0.00') {
                 $this->daten_arr[$a]['monate'][$m_zaehler]['bk_abrechnung'] = $buchung->summe_betriebskostenabrechnung($mietvertrag_id, $b, $a);
                 $this->daten_arr[$a]['monate'][$m_zaehler]['bk_abrechnung_datum'] = $buchung->datum_betriebskostenabrechnung($mietvertrag_id, $b, $a);
                 $this->bk_abrechnung = $this->daten_arr[$a]['monate'][$m_zaehler]['bk_abrechnung'];
             }
             if ($buchung->summe_heizkostenabrechnung($mietvertrag_id, $b, $a) && $buchung->summe_heizkostenabrechnung($mietvertrag_id, $b, $a) != '0.00') {
                 $this->daten_arr[$a]['monate'][$m_zaehler]['hk_abrechnung'] = $buchung->summe_heizkostenabrechnung($mietvertrag_id, $b, $a);
                 $this->daten_arr[$a]['monate'][$m_zaehler]['hk_abrechnung_datum'] = $buchung->datum_heizkostenabrechnung($mietvertrag_id, $b, $a);
                 $this->hk_abrechnung = $this->daten_arr[$a]['monate'][$m_zaehler]['hk_abrechnung'];
             }
             if ($buchung->summe_wasserkostenabrechnung($mietvertrag_id, $b, $a) && $buchung->summe_wasserkostenabrechnung($mietvertrag_id, $b, $a) != '0.00') {
                 $this->daten_arr[$a]['monate'][$m_zaehler][wasser_abrechnung] = $buchung->summe_wasserkostenabrechnung($mietvertrag_id, $b, $a);
                 $this->daten_arr[$a]['monate'][$m_zaehler][wasser_abrechnung_datum] = $buchung->datum_wasserkostenabrechnung($mietvertrag_id, $b, $a);
                 $this->wasser_abrechnung = $this->daten_arr[$a]['monate'][$m_zaehler][wasser_abrechnung];
             }
             if ($buchung->summe_mahngebuehr_im_monat($mietvertrag_id, $b, $a) && $buchung->summe_mahngebuehr_im_monat($mietvertrag_id, $b, $a) != '0.00') {
                 $this->daten_arr[$a]['monate'][$m_zaehler][mahngebuehr] = $buchung->summe_mahngebuehr_im_monat($mietvertrag_id, $b, $a);
                 $this->mahngebuehr = $this->daten_arr[$a]['monate'][$m_zaehler][mahngebuehr];
                 $this->daten_arr[$a]['monate'][$m_zaehler][mahngebuehren] = $buchung->mahngebuehr_monatlich_arr($mietvertrag_id, $b, $a);
             }
             if ($this->mietvertrag_id = '329') {
                 // echo "$datum_saldo_vv_s<$datum1_zahlung_s<br>";
             }
             /* Wenn Saldo VV vorhanden und 1. zahlung vorhanden */
             if (isset($datum_saldo_vv_s) && isset($datum1_zahlung_s)) {
                 /* Wenn SaldoVV vor 1. zahlung - Regelfall */
                 if ($datum_saldo_vv_s < $datum1_zahlung_s) {
                     // if($this->mietvertrag_id='329'){
                     // echo "<br>1. $datum_saldo_vv_s<$datum1_zahlung_s<br>";
                     // die();
                     // }
                     $this->daten_arr[$a]['monate'][$m_zaehler]['soll'] = '-' . $buchung->summe_forderung_monatlich($mietvertrag_id, $b, $a);
                     $this->temp_soll = $this->daten_arr[$a]['monate'][$m_zaehler]['soll'];
                     $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'] = $buchung->zahlbetraege_im_monat_arr($mietvertrag_id, $b, $a);
                 }
                 if ($datum_saldo_vv_s >= $datum1_zahlung_s) {
                     // if($this->mietvertrag_id='1704'){
                     // echo "<br>2. $datum_saldo_vv_s>=$datum1_zahlung_s $start_m<br>";
                     // die();
                     // $dif_moo = $this->diff_in_monaten2($datum1_zahlung, $datum_saldo_vv);
                     // echo "$m_zaehler $dif_moo";
                     // echo "($a==$this->start_j) && ($m_zaehler==$start_m)";
                     // die();
                     // }
                     // if($m_zaehler<=$dif_moo){
                     if ($a == $this->start_j && $m_zaehler == '0') {
                         $this->daten_arr[$a]['monate'][$m_zaehler]['soll'] = '-' . '0.00';
                         // $this->daten_arr[$a]['monate'][$m_zaehler]['soll']= '-'.$buchung->summe_forderung_monatlich($this->mietvertrag_id, $b, $a);;
                         $this->temp_soll = $this->daten_arr[$a]['monate'][$m_zaehler]['soll'];
                         $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'] = $buchung->zahlbetraege_im_monat_arr($mietvertrag_id, $b, $a);
                     } else {
                         $this->daten_arr[$a]['monate'][$m_zaehler]['soll'] = '-' . $buchung->summe_forderung_monatlich($mietvertrag_id, $b, $a);
                         $this->temp_soll = $this->daten_arr[$a]['monate'][$m_zaehler]['soll'];
                         $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'] = $buchung->zahlbetraege_im_monat_arr($mietvertrag_id, $b, $a);
                     }
                 }
             } else {
                 /* Wenn kein Saldo VV vorhanden und keine zahlung vorhanden */
                 $this->daten_arr[$a]['monate'][$m_zaehler]['soll'] = '-' . $buchung->summe_forderung_monatlich($mietvertrag_id, $b, $a);
                 $this->temp_soll = $this->daten_arr[$a]['monate'][$m_zaehler]['soll'];
                 $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'] = $buchung->zahlbetraege_im_monat_arr($mietvertrag_id, $b, $a);
             }
             // echo "<h1> $b $a</h1><br>";
             /*
              * $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'][0][txt]= 'zb';
              * $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'][0][b]= $this->temp_zb;
              * $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'][1][txt]= 'zb';
              * $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'][1][b]= $this->temp_zb;
              */
             $sum_mon = 0;
             $z_arr = $this->daten_arr[$a]['monate'][$m_zaehler]['zahlungen'];
             for ($c = 0; $c < count($z_arr); $c++) {
                 $sum_mon = $sum_mon + $z_arr[$c]['BETRAG'];
             }
             $sum_mon = number_format($sum_mon, 2, '.', '');
             $this->daten_arr[$a]['monate'][$m_zaehler]['zb'] = $sum_mon;
             // $this->erg = $this->saldo_vormonat + $this->temp_soll + $sum_mon + $this->hk_abrechnung + $this->bk_abrechnung + $this->wasser_abrechnung + $this->mahngebuehr;
             if (!isset($this->wasser_abrechnung)) {
                 $this->wasser_abrechnung = 0.0;
             }
             $this->zb_mon = nummer_punkt2komma_t($sum_mon);
             $this->erg = $this->saldo_vormonat + $this->temp_soll + $sum_mon + $this->hk_abrechnung + $this->bk_abrechnung + $this->wasser_abrechnung;
             if ($b == $end_m - 1) {
                 $this->saldo_vormonat_end = number_format($this->erg, 2, '.', '');
             }
             $this->saldo_vormonat = $this->erg;
             $this->bk_abrechnung = '0.00';
             $this->hk_abrechnung = '0.00';
             $this->wasser_abrechnung = '0.00';
             $this->mahngebuehr = '0.00';
             $this->erg = number_format($this->erg, 2, '.', '');
             $this->daten_arr[$a]['monate'][$m_zaehler]['erg'] = $this->erg;
             $m_zaehler++;
         }
     }
 }