Exemplo n.º 1
0
 function mietkonto_berechnung_2007($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();
     $buchung->datum_saldo_vortrag_vorverwaltung($mietvertrag_id);
     /* wenn datum vom saldovv */
     if (!empty($this->datum_saldo_vv)) {
         $datum_saldo_vv = explode("-", $datum_saldo_vv);
         $this->saldo_vv = $buchung->saldo_vortrag_vorverwaltung($mietvertrag_id);
         $this->saldo_vv = number_format($this->saldo_vv, 2, '.', '');
         // $this->saldo_vormonat = $this->saldo_vv;
         // if($this->saldo_vv>0.00){
         // $this->saldo_vv = '-'.$this->saldo_vv;
         // }
     }
     /* Sonst datum aus mietdefinition oder einzugsdatum aus mietvertrag */
     $datum_mietdefinition = $buchung->datum_1_mietdefinition($mietvertrag_id);
     $datum_mietdefinition1 = explode('-', $datum_mietdefinition);
     $datum_mietdefinition1 = implode('', $datum_mietdefinition1);
     $datum1_zahlung = $buchung->datum_1_zahlung($mietvertrag_id);
     $datum1_zahlung1 = explode('-', $datum1_zahlung);
     $datum1_zahlung1 = implode('', $datum1_zahlung1);
     /* echo "<h1>$datum_mietdefinition1 $datum1_zahlung1</h1>"; */
     /* Entscheiden welches ab welchem tag gerechnet werden soll */
     if ($datum_mietdefinition1 > $datum1_zahlung1) {
         $datum_mietdefinition = $datum1_zahlung;
     }
     /* Wenn miete über mietentwicklung definiert ist */
     if (!empty($datum_mietdefinition)) {
         // echo "DEFINITION $datum_mietdefinition";
         $datum_mietdefinition = explode("-", $datum_mietdefinition);
         $this->start_m = $datum_mietdefinition[1];
         $this->start_j = $datum_mietdefinition[0];
         $buchung->ein_auszugsdatum_mietvertrag($mietvertrag_id);
         if ($buchung->mietvertrag_bis != '0000-00-00') {
             $auszugsdatum = explode("-", $buchung->mietvertrag_bis);
             /* Falls MV abgelaufen nur bis zum aktuellen Monat berechnen */
             // $this->end_j = $auszugsdatum[0];
             $this->end_m = $this->monat_aktuell;
             $this->end_j = $this->jahr_aktuell;
         }
         /* Wenn Auszugsjahr kleiner als aktuelles Jahr UND mehr als 2 Jahre in Vergangenheit, dann nur 1 Jahr nach Auszug berechnen. */
         /*
          * if($auszugsdatum[0] < $this->jahr_aktuell && $this->jahr_aktuell - $auszugsdatum[0] >1){
          * $this->end_m = 12;
          * $this->end_j = $auszugsdatum[0] +1;
          * }
          */
     } else {
         $buchung->ein_auszugsdatum_mietvertrag($mietvertrag_id);
         $einzugsdatum = explode("-", $buchung->mietvertrag_von);
         $this->start_m = $einzugsdatum[1];
         $this->start_j = $einzugsdatum[0];
         /* Wenn MV befristet dann enddatum auch setzen */
         if ($buchung->mietvertrag_bis != '0000-00-00') {
             $auszugsdatum = explode("-", $buchung->mietvertrag_bis);
             // $this->end_m = $auszugsdatum[1];
             // $this->end_j = $auszugsdatum[0];
             $this->end_j = date("Y");
             $this->end_m = date("m");
         }
     }
     /* 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->bk_abrechnung = $buchung->summe_bk_abrechnung;
             }
             if ($buchung->summe_heizkostenabrechnung($mietvertrag_id, $b, $a) && $buchung->summe_heizkostenabrechnung($mietvertrag_id, $b, $a) != '0.00') {
                 $this->hk_abrechnung = $buchung->summe_hk_abrechnung;
             }
             $this->temp_soll = '-' . $buchung->summe_forderung_monatlich($this->mietvertrag_id, $b, $a);
             $buchung->summe_aller_zahlungen_monat($mietvertrag_id, $b, $a);
             $sum_mon = $buchung->summe_z_im_monat;
             $sum_mon = number_format($sum_mon, 2, '.', '');
             $this->erg = $this->saldo_vormonat + $this->temp_soll + $sum_mon + $this->hk_abrechnung + $this->bk_abrechnung;
             $this->bk_abrechnung = '0.00';
             $this->hk_abrechnung = '0.00';
             $this->erg = number_format($this->erg, 2, '.', '');
             // $this->daten_arr[$a]['monate'][$m_zaehler]['erg']= $this->erg;
             $this->saldo_vormonat = $this->erg;
             $m_zaehler++;
         }
     }
 }