function form_import_gfad($file = null) { if (!isset($_SESSION['objekt_id'])) { fehlermeldung_ausgeben("Objekt wählen"); $bg = new berlussimo_global(); $bg->objekt_auswahl_liste('?daten=objekte_raus&objekte_raus=import'); } else { if (!file_exists(BERLUS_PATH . '/' . $file)) { $ff = BERLUS_PATH . '/' . $file; die(fehlermeldung_ausgeben("Datei: <u>{$ff}</u> existiert nicht")); } $arr = file(BERLUS_PATH . '/' . $file); $o = new objekt(); $o->get_objekt_infos($_SESSION['objekt_id']); echo '<pre>'; print_r($arr); $anz = count($arr); // $this->akt_zeile = 1; $z = 0; $z_et = 201; $z_mi = 201; $z_ga = 601; for ($a = 1; $a < $anz; $a++) { $zeile = explode(';', $arr[$a]); $we = $zeile[2]; $lage = $zeile[14]; $datum_von = date_german2mysql(substr($zeile[15], 0, 10)); $datum_bis = date_german2mysql(substr($zeile[16], 0, 10)); $qm = nummer_punkt2komma(nummer_komma2punkt($zeile[42])); $typ = $zeile[1]; $anrede = $zeile[3]; $email = $zeile[24]; $new_arr[$we]['EINHEIT_BEZ'] = $we; $tel = $zeile[9]; $strasse = $zeile[7]; $ort_plz = $zeile[8]; $wm = $zeile[17]; $mwst = $zeile[18]; // J/N $km = $zeile[17]; // miete vor 3 Jahren $km_3 = $zeile[17]; // miete vor 3 Jahren $nk = $zeile[17]; // miete vor 3 Jahren $hk = $zeile[17]; // miete vor 3 Jahren $kto = $zeile[37]; $blz = $zeile[35]; $sep = new sepa(); $sep->get_iban_bic($kto, $blz); if ($typ == 'E') { $new_arr[$we]['ET']['BEZ_NEW'] = "WEG-{$o->objekt_kurzname}-{$z_et}"; $new_arr[$we]['ET']['TYP'] = 'Wohneigentum'; $z_et++; $new_arr[$we]['TYP'][] = "ET"; $et1 = $zeile[4]; $et2 = $zeile[6]; $new_arr[$we]['ET']['NAMEN'][] = "{$et1}"; if (!empty($et2)) { $new_arr[$we]['ET']['NAMEN'][] = $et2; $zustell_ans = "{$anrede}\n{$et1} {$et2}\n {$strasse} {$ort_plz}"; } else { $zustell_ans = "{$anrede}\n{$et1}\n {$strasse} {$ort_plz}"; } $new_arr[$we]['ET']['ZANSCHRIFT'] = $zustell_ans; $new_arr[$we]['ET']['VON'] = $datum_von; $new_arr[$we]['ET']['BIS'] = $datum_bis; $new_arr[$we]['ET']['LAGE'] = $lage; $new_arr[$we]['ET']['QM'] = $qm; $new_arr[$we]['ET']['EMAIL'] = $email; $new_arr[$we]['ET']['TEL'] = $tel; $new_arr[$we]['ET']['KTO'] = $kto; $new_arr[$we]['ET']['BLZ'] = $blz; $new_arr[$we]['ET']['IBAN'] = $sep->IBAN1; $new_arr[$we]['ET']['BIC'] = $sep->BIC; if ($anrede == 'Herr' or $anrede == 'Herrn') { $new_arr[$we]['ET']['GES'][] = 'männlich'; } if ($anrede == 'Herren') { $new_arr[$we]['ET']['GES'][] = 'männlich'; $new_arr[$we]['ET']['GES'][] = 'männlich'; } if ($anrede == 'Frau') { $new_arr[$we]['ET']['GES'][] = 'weiblich'; } if ($anrede == 'Herr und Frau') { $new_arr[$we]['ET']['GES'][] = 'männlich'; $new_arr[$we]['ET']['GES'][] = 'weiblich'; } if (empty($anrede)) { $anz_m = count($new_arr[$we]['ET']['NAMEN']); $new_arr[$we]['ET']['GES'][] = 'unbekannt'; $new_arr[$we]['ET']['GES'][] = 'unbekannt'; } } if ($typ == 'M') { $new_arr[$we]['MIETER']['BEZ_NEW'] = "{$o->objekt_kurzname}-{$z_mi}"; $new_arr[$we]['MIETER']['TYP'] = 'Wohnraum'; $z_mi++; $new_arr[$we]['TYP'][] = "MIETER"; $mi1 = $zeile[4]; $mi2 = $zeile[6]; $new_arr[$we]['MIETER']['NAMEN'][] = "{$mi1}"; if (!empty($mi2)) { $new_arr[$we]['MIETER']['NAMEN'][] = $mi2; $zustell_ans = "{$anrede}\n{$mi1} {$mi2}\n {$strasse} {$ort_plz}"; } else { $zustell_ans = "{$anrede}\n{$mi1}\n {$strasse} {$ort_plz}"; } $new_arr[$we]['MIETER']['ZANSCHRIFT'] = $zustell_ans; $new_arr[$we]['MIETER']['VON'] = $datum_von; $new_arr[$we]['MIETER']['BIS'] = $datum_bis; $new_arr[$we]['MIETER']['LAGE'] = $lage; $new_arr[$we]['MIETER']['QM'] = $qm; $new_arr[$we]['MIETER']['EMAIL'] = $email; $new_arr[$we]['MIETER']['TEL'] = $tel; $new_arr[$we]['MIETER']['KTO'] = $kto; $new_arr[$we]['MIETER']['BLZ'] = $blz; $new_arr[$we]['MIETER']['IBAN'] = $sep->IBAN1; $new_arr[$we]['MIETER']['BIC'] = $sep->BIC; if ($anrede == 'Herr' or $anrede == 'Herrn') { $new_arr[$we]['MIETER']['GES'][] = 'männlich'; } if ($anrede == 'Herren') { $new_arr[$we]['MIETER']['GES'][] = 'männlich'; $new_arr[$we]['MIETER']['GES'][] = 'männlich'; } if ($anrede == 'Frau') { $new_arr[$we]['MIETER']['GES'][] = 'weiblich'; } if ($anrede == 'Herr und Frau') { $new_arr[$we]['MIETER']['GES'][] = 'männlich'; $new_arr[$we]['MIETER']['GES'][] = 'weiblich'; } if (empty($anrede)) { $anz_m = count($new_arr[$we]['MIETER']['NAMEN']); $new_arr[$we]['MIETER']['GES'][] = 'unbekannt'; $new_arr[$we]['MIETER']['GES'][] = 'unbekannt'; } } if ($typ == 'S') { $new_arr[$we]['SMIETER']['BEZ_NEW'] = "{$o->objekt_kurzname}-{$z_ga}"; $new_arr[$we]['SMIETER']['TYP'] = 'Stellplatz'; $z_ga++; $new_arr[$we]['TYP'][] = "SMIETER"; $mi1 = $zeile[4]; $mi2 = $zeile[6]; $new_arr[$we]['SMIETER']['NAMEN'][] = "{$mi1}"; if (!empty($mi2)) { $new_arr[$we]['SMIETER']['NAMEN'][] = $mi2; $zustell_ans = "{$anrede}\n{$mi1} {$mi2}\n {$strasse} {$ort_plz}"; } else { $zustell_ans = "{$anrede}\n{$mi1}\n {$strasse} {$ort_plz}"; } $new_arr[$we]['SMIETER']['ZANSCHRIFT'] = $zustell_ans; $new_arr[$we]['SMIETER']['VON'] = $datum_von; $new_arr[$we]['SMIETER']['BIS'] = $datum_bis; $new_arr[$we]['SMIETER']['LAGE'] = $lage; $new_arr[$we]['SMIETER']['QM'] = $qm; $new_arr[$we]['SMIETER']['EMAIL'] = $email; $new_arr[$we]['SMIETER']['TEL'] = $tel; $new_arr[$we]['SMIETER']['KTO'] = $kto; $new_arr[$we]['SMIETER']['BLZ'] = $blz; $new_arr[$we]['SMIETER']['IBAN'] = $sep->IBAN1; $new_arr[$we]['SMIETER']['BIC'] = $sep->BIC; if ($anrede == 'Herr' or $anrede == 'Herrn') { $new_arr[$we]['SMIETER']['GES'][] = 'männlich'; } if ($anrede == 'Herren') { $new_arr[$we]['SMIETER']['GES'][] = 'männlich'; $new_arr[$we]['SMIETER']['GES'][] = 'männlich'; } if ($anrede == 'Frau') { $new_arr[$we]['SMIETER']['GES'][] = 'weiblich'; } if ($anrede == 'Herr und Frau') { $new_arr[$we]['SMIETER']['GES'][] = 'männlich'; $new_arr[$we]['SMIETER']['GES'][] = 'weiblich'; } if (empty($anrede)) { $anz_m = count($new_arr[$we]['SMIETER']['NAMEN']); $new_arr[$we]['SMIETER']['GES'][] = 'unbekannt'; $new_arr[$we]['SMIETER']['GES'][] = 'unbekannt'; } } // print_r($zeile); /* * $new_arr[$z][$we]['QM'] = $qm; * $new_arr[$z][$we]['LAGE'] = $lage; * $new_arr[$z][$we]['TYP'] = $typ; */ $z++; } // print_r($zeile); // print_r($new_arr); $anz_a = count($new_arr); $keys = array_keys($new_arr); // print_r($keys); for ($a = 0; $a < $anz_a; $a++) { $key = $keys[$a]; $arr_n[] = $new_arr[$key]; } // print_r($arr_n); if (!isset($_SESSION['akt_z'])) { $_SESSION['akt_z'] = 0; } if (isset($_REQUEST['next'])) { $_SESSION['akt_z']++; } if (isset($_REQUEST['vor'])) { $_SESSION['akt_z']--; } if ($_SESSION['akt_z'] < 0) { $_SESSION['akt_z'] = 0; } if ($_SESSION['akt_z'] >= $anz_a) { $_SESSION['akt_z'] = $anz_a - 1; } $this->akt_z = $_SESSION['akt_z']; // print_r($_SESSION); echo "<h1>{$this->akt_z}</h1>"; // print_r($arr_n[$this->akt_z]['MIETER']); $alt_bez = $arr_n[$this->akt_z]['EINHEIT_BEZ']; if (in_array('MIETER', $arr_n[$this->akt_z]['TYP'])) { $bez_new = $arr_n[$this->akt_z]['MIETER']['BEZ_NEW']; $lage = $arr_n[$this->akt_z]['MIETER']['LAGE']; $typ = $arr_n[$this->akt_z]['MIETER']['TYP']; $qm = $arr_n[$this->akt_z]['MIETER']['QM']; $telefon_m = $arr_n[$this->akt_z]['MIETER']['TEL']; $handy_m = $arr_n[$this->akt_z]['MIETER']['TEL']; $email_m = $arr_n[$this->akt_z]['MIETER']['EMAIL']; $einzug_m = date_mysql2german($arr_n[$this->akt_z]['MIETER']['VON']); $auszug_m = date_mysql2german($arr_n[$this->akt_z]['MIETER']['BIS']); $saldo_vv = $arr_n[$this->akt_z]['MIETER']['SALDO_VV']; $km_3 = $arr_n[$this->akt_z]['MIETER']['KM_3']; $km = $arr_n[$this->akt_z]['MIETER']['KM']; $nk = $arr_n[$this->akt_z]['MIETER']['NK']; $hk = $arr_n[$this->akt_z]['MIETER']['HK']; echo "<table>"; $ee = new einheit(); $ee->get_einheit_id($bez_new); if (!isset($ee->einheit_id)) { echo "<tr>"; echo "<td>"; $f = new formular(); $f->erstelle_formular("Import MIETER aus GFAD ins Objekt {$o->objekt_kurzname}", null); $f->text_feld("Kurzname (Alt:{$alt_bez})", "kurzname", "{$bez_new}", "50", 'kurzname', ''); echo "</td>"; echo "<td>"; $f->text_feld("Lage {$lage}", "lage", "{$lage}", "10", 'lage', ''); echo "</td>"; echo "<td>"; $f->text_feld("qm", "qm", "{$qm}", "10", 'qm', ''); echo "</td>"; $h = new haus(); echo "<td>"; $o->dropdown_haeuser_objekt($o->objekt_id, 'Haus', 'haus_id', 'haus_id', ''); echo "</td>"; echo "<td>"; $e = new einheit(); $e->dropdown_einheit_typen("Typ {$lage} {$typ}", 'typ', 'typ', $typ); echo "</td>"; $f->hidden_feld("objekte_raus", "einheit_speichern"); echo "<td>"; $f->send_button("submit_einheit", "Einheit erstellen"); echo "</td>"; $f->ende_formular(); echo "</tr>"; } else { echo "<tr><td>"; fehlermeldung_ausgeben("Einheit {$bez_new} existiert"); echo "</td></tr>"; } $anz_namen = count($arr_n[$this->akt_z]['MIETER']['NAMEN']); for ($n = 0; $n < $anz_namen; $n++) { echo "<tr>"; echo "<td>"; $f = new formular(); $f->erstelle_formular("Import Namen aus GFAD ", null); $arr_n[$this->akt_z]['MIETER']['NAMEN'][$n] = ltrim(rtrim(str_replace('Frau', '', $arr_n[$this->akt_z]['MIETER']['NAMEN'][$n]))); $arr_n[$this->akt_z]['MIETER']['NAMEN'][$n] = ltrim(rtrim(str_replace('Herr', '', $arr_n[$this->akt_z]['MIETER']['NAMEN'][$n]))); $name_arr = explode(' ', $arr_n[$this->akt_z]['MIETER']['NAMEN'][$n]); $vorname = $name_arr[0]; $nachname = $name_arr[1]; $f->text_feld("Nachname", "nachname", "{$nachname}", "50", 'nachname', ''); $f->text_feld("Vorname", "vorname", "{$vorname}", "50", 'vorname', ''); $pp = new personen(); $pp->dropdown_geschlecht('Geschlecht', 'geschlecht', 'geschlecht'); $f->text_feld("Telefon", "telefon", "{$telefon_m}", "50", 'telefon', ''); $f->text_feld("Handy", "handy", "{$handy_m}", "50", 'handy', ''); $f->text_feld("Email", "email", "{$email_m}", "50", 'email', ''); // $f->text_feld("Zustellanschrift", "email", "$email_m", "50", 'email',''); $f->send_button("submit_pers", "Person speichern"); echo "</td>"; echo "<td>"; $this->dropdown_personen_liste_filter('Name gefunden', 'name_g', 'name_g', null, $nachname, $vorname); echo "</td>"; echo "</tr>"; $f->hidden_feld("geburtsdatum", "01.01.1900"); $f->hidden_feld("objekte_raus", "person_speichern"); $f->ende_formular(); } $f = new formular(); if (!$ee->get_einheit_status($ee->einheit_id)) { echo "<tr><td>"; $f->erstelle_formular("Mietvertrag erstellen", null); $f->hidden_feld("einheit_id", "{$ee->einheit_id}"); $f->text_feld_inaktiv('Einheit', 'ein', $bez_new, 50, 'ein'); $f->datum_feld('Einzug', 'einzug', $einzug_m, 'einzug'); $f->datum_feld('Auszug', 'auszug', $auszug_m, 'auszug'); // $f->datum_feld('Auszug', 'auszug', $auszug_m, 'auszug'); $f->text_feld("Saldo VV", "saldo_vv", "{$saldo_vv}", "10", 'saldo_vv', ''); $f->text_feld("Kaltmiete vor 3 Jahren", "km_3", "{$km_3}", "10", 'km_3', ''); $f->text_feld("Kaltmiete", "km", "{$km}", "10", 'km', ''); $f->text_feld("Nebenkosten", "nk", "{$nk}", "10", 'nk', ''); $f->text_feld("Heizkosten", "hk", "{$hk}", "10", 'hk', ''); $f->hidden_feld("objekte_raus", "mv_speichern"); $anz_namen = count($arr_n[$this->akt_z]['MIETER']['NAMEN']); for ($n = 0; $n < $anz_namen; $n++) { $name_arr = explode(' ', $arr_n[$this->akt_z]['MIETER']['NAMEN'][$n]); $vorname = $name_arr[0]; $nachname = $name_arr[1]; $this->dropdown_personen_liste_filter('Name gefunden', 'person_ids[]', 'person_ids', null, $nachname, $vorname); } $f->send_button("submit_mv", "MV anlegen"); $f->ende_formular(); echo "</td></tr>"; } else { echo "<tr><td>Mietvertrag bereits angelegt</td></tr>"; } echo "</table>"; } // echo '<pre><br><br><br><br><br><br><br><br>'; // print_r($o); /* * $f = new formular(); * $f->erstelle_formular("Import aus GFAD ins Objekt $o->objekt_kurzname", null); * $f->text_feld("Kurzname", "kurzname", "", "50", 'kurzname',''); * $f->text_feld("Lage", "lage", "", "10", 'lage',''); * $f->text_feld("qm", "qm", "", "10", 'qm',''); * $h = new haus; * echo "<br>"; * * $o->dropdown_haeuser_objekt($o->objekt_id, 'Haus', 'haus_id', 'haus_id', ''); * $e = new einheit; * $e->dropdown_einheit_typen('Typ', 'typ', 'typ', 'Wohnraum'); * $f->hidden_feld("einheit_raus", "einheit_speichern"); * $f->send_button("submit_einheit", "Einheit erstellen"); * $f->ende_formular(); */ } }
function ls_daten_holen($mv_id) { unset($this->ls_konto_inhaber_dat); unset($this->ls_konto_inhaber); unset($this->ls_konto_nummer_dat); unset($this->ls_blz_dat); unset($this->ls_blz); unset($this->ls_bankname_dat); unset($this->ls_bankname); unset($this->ls_autoeinzugsart_dat); unset($this->ls_autoeinzugsart); unset($this->ls_einzugsermaechtigung_dat); unset($this->ls_einzugsermaechtigung); unset($this->ls_iban); unset($this->ls_iban1); unset($this->ls_bic); unset($this->ls_bankname_sep); unset($this->ls_bankname_sep_k); /* Kontoinhaber holen */ $result = mysql_query("SELECT DETAIL_DAT, DETAIL_INHALT FROM DETAIL WHERE DETAIL_NAME='Kontoinhaber-AutoEinzug' && DETAIL_ZUORDNUNG_TABELLE='MIETVERTRAG' && DETAIL_ZUORDNUNG_ID='{$mv_id}' && DETAIL_AKTUELL='1'"); $row = mysql_fetch_assoc($result); $this->ls_konto_inhaber_dat = $row['DETAIL_DAT']; $this->ls_konto_inhaber = $row['DETAIL_INHALT']; /* Kontonummer holen */ $result = mysql_query("SELECT DETAIL_DAT, DETAIL_INHALT FROM DETAIL WHERE DETAIL_NAME='Kontonummer-AutoEinzug' && DETAIL_ZUORDNUNG_TABELLE='MIETVERTRAG' && DETAIL_ZUORDNUNG_ID='{$mv_id}' && DETAIL_AKTUELL='1'"); $row = mysql_fetch_assoc($result); $this->ls_konto_nummer_dat = $row['DETAIL_DAT']; $this->ls_konto_nummer = $row['DETAIL_INHALT']; /* BLZ holen */ $result = mysql_query("SELECT DETAIL_DAT, DETAIL_INHALT FROM DETAIL WHERE DETAIL_NAME='BLZ-AutoEinzug' && DETAIL_ZUORDNUNG_TABELLE='MIETVERTRAG' && DETAIL_ZUORDNUNG_ID='{$mv_id}' && DETAIL_AKTUELL='1'"); $row = mysql_fetch_assoc($result); $this->ls_blz_dat = $row['DETAIL_DAT']; $this->ls_blz = $row['DETAIL_INHALT']; /* Bankname holen */ $result = mysql_query("SELECT DETAIL_DAT, DETAIL_INHALT FROM DETAIL WHERE DETAIL_NAME='Bankname-AutoEinzug' && DETAIL_ZUORDNUNG_TABELLE='MIETVERTRAG' && DETAIL_ZUORDNUNG_ID='{$mv_id}' && DETAIL_AKTUELL='1'"); $row = mysql_fetch_assoc($result); $this->ls_bankname_dat = $row['DETAIL_DAT']; $this->ls_bankname = $row['DETAIL_INHALT']; /* Autoeinzugsart holen */ $result = mysql_query("SELECT DETAIL_DAT, DETAIL_INHALT FROM DETAIL WHERE DETAIL_NAME='Autoeinzugsart' && DETAIL_ZUORDNUNG_TABELLE='MIETVERTRAG' && DETAIL_ZUORDNUNG_ID='{$mv_id}' && DETAIL_AKTUELL='1'"); $row = mysql_fetch_assoc($result); $this->ls_autoeinzugsart_dat = $row['DETAIL_DAT']; $this->ls_autoeinzugsart = $row['DETAIL_INHALT']; /* Einzugsermächtigungt holen */ $result = mysql_query("SELECT DETAIL_DAT, DETAIL_INHALT FROM DETAIL WHERE DETAIL_NAME='Einzugsermächtigung' && DETAIL_ZUORDNUNG_TABELLE='MIETVERTRAG' && DETAIL_ZUORDNUNG_ID='{$mv_id}' && DETAIL_AKTUELL='1'"); $row = mysql_fetch_assoc($result); $this->ls_einzugsermaechtigung_dat = $row['DETAIL_DAT']; $this->ls_einzugsermaechtigung = $row['DETAIL_INHALT']; if (!empty($this->ls_konto_nummer) && !empty($this->ls_blz)) { if (file_exists("classes/class_sepa.php")) { $sep = new sepa(); $sep->get_iban_bic($this->ls_konto_nummer, $this->ls_blz); $this->ls_iban = $sep->IBAN; $this->ls_iban1 = $sep->IBAN1; $this->ls_bic = $sep->BIC; $this->ls_bankname_sep = $sep->BANKNAME; $this->ls_bankname_sep_k = $sep->BANKNAME_K; } // echo '<pre>'; // print_r($this); // die(); } }
// echo "<b>$gk_id</b>"; echo "</td><td>"; $ktnr_arr = explode('/', $arr[$a][1]); // KTO BLZ $blz = $ktnr_arr[0]; $kto_full = $ktnr_arr[1]; if (strpos($kto_full, 'EUR')) { $kto_arr = explode('EUR', $kto_full); $kto = $kto_arr[0]; } else { $kto = substr($kto_full, 0, -3); } $gk_id = $gk->get_geldkonto_id2($kto, $blz); if (!$gk_id) { $sep = new sepa(); $IBAN = $sep->get_iban_bic($kto, $blz); // $kto = substr($ktnr_arr[1],0,-3); $gk_id = $gk->get_geldkonto_id2($kto, $blz, $IBAN); } if (!$gk_id) { $gk_id = $gk->get_geldkonto_id($arr[$a][0]); if (!$gk_id) { echo "Kein Konto mit BEZ " . $arr[$a][0] . "<br>"; echo "{$kto} {$blz} " . $arr[$a][0] . " prüfen!!!"; } } if ($gk_id) { echo $gk_id; } // echo "</td><td>"; // echo "$kto $blz<br>";
$sep->test_fremd_sepa_ls(); break; case "mandat_nutzungen_anzeigen": if (isset($_REQUEST['m_ref']) && !empty($_REQUEST['m_ref'])) { $sep = new sepa(); $sep->mandat_nutzungen_anzeigen($_REQUEST['m_ref']); } else { fehlermeldung_ausgeben("Mandat wählen"); } break; case "sammler_anzeigen": if (isset($_SESSION['geldkonto_id'])) { $gk = new geldkonto_info(); $gk->geld_konto_details($_SESSION['geldkonto_id']); $sep = new sepa(); $sep->get_iban_bic($gk->kontonummer, $gk->blz); $gk_id = $_SESSION['geldkonto_id']; echo "<h1>{$gk->geldkonto_bezeichnung} - {$sep->IBAN1} - {$sep->BIC}</h1>"; /* * if($sep->sepa_sammler_anzeigen($_SESSION['geldkonto_id'], 'RECHNUNG')==true){ * $kat = 'RECHNUNG'; * echo "<a href=\"?daten=sepa&option=sammler2sepa&gk_id=$gk_id&kat=$kat\">SEPA-Datei für $kat erstellen</a>"; * } * if($sep->sepa_sammler_anzeigen($_SESSION['geldkonto_id'], 'ET-AUSZAHLUNG')==true){ * $kat = 'ET-AUSZAHLUNG'; * echo "<a href=\"?daten=sepa&option=sammler2sepa&gk_id=$gk_id&kat=$kat\">SEPA-Datei für $kat erstellen</a>"; * } * * if($sep->sepa_sammler_anzeigen($_SESSION['geldkonto_id'], 'LOHN')==true){ * $kat = 'LOHN'; * echo "<a href=\"?daten=sepa&option=sammler2sepa&gk_id=$gk_id&kat=$kat\">SEPA-Datei für $kat erstellen</a>";
function erstelle_brief_vorlage($v_dat, $empf_typ, $empf_id_arr, $option = '0') { if (file_exists('classes/class_bpdf.php')) { include_once 'classes/class_bpdf.php'; } $anz_empf = count($empf_id_arr); if ($anz_empf > 0) { $pdf = new Cezpdf('a4', 'portrait'); $bpdf = new b_pdf(); $bpdf->b_header($pdf, 'Partner', $_SESSION['partner_id'], 'portrait', 'Helvetica.afm', 6); $pdf->ezStopPageNumbers(); // seitennummerierung beenden for ($index = 0; $index < sizeof($empf_id_arr); $index++) { $mv_id = $empf_id_arr[$index]; $mv = new mietvertraege(); unset($mv->postanschrift); $mv->get_mietvertrag_infos_aktuell($mv_id); $jahr = date("Y"); $monat = date("m"); $mkk = new mietkonto(); $this->aktuelle_g_miete = 0.0; $this->aktuelle_g_miete_arr = explode('|', $mkk->summe_forderung_monatlich($mv_id, $monat, $jahr)); $this->aktuelle_g_miete = nummer_punkt2komma($this->aktuelle_g_miete_arr[0]); $dets = new detail(); $mv_sepa = new sepa(); // SEPA LS Infos auf leer stellen // Infos nur von LS-teilnehmern if ($dets->finde_detail_inhalt('MIETVERTRAG', $mv_id, 'Einzugsermächtigung') == 'JA') { $mv->ls_konto = $dets->finde_detail_inhalt('MIETVERTRAG', $mv_id, 'Kontonummer-AutoEinzug'); $mv->ls_blz = $dets->finde_detail_inhalt('MIETVERTRAG', $mv_id, 'BLZ-AutoEinzug'); $mv_sepa->get_iban_bic($mv->ls_konto, $mv->ls_blz); } $gk = new geldkonto_info(); $gk->geld_konto_ermitteln('Objekt', $mv->objekt_id); $o = new objekt(); $o->get_objekt_infos($mv->objekt_id); /* SEPA ERMITLUNG */ $sepa = new sepa(); $sepa->get_iban_bic($gk->kontonummer, $gk->blz); $dets = new detail(); if (isset($sepa->GLAEUBIGER_ID)) { unset($sepa->GLAEUBIGER_ID); } $sepa->GLAEUBIGER_ID = $dets->finde_detail_inhalt('GELD_KONTEN', $gk->geldkonto_id, 'GLAEUBIGER_ID'); if (!isset($sepa->GLAEUBIGER_ID)) { die("Bei {$gk->kontonummer} {$mv->objekt_kurzname} fehlt die Gläubiger ID"); } $this->get_texte($v_dat); // ############################################################## /* Normale Mieter ohne Verzug und Zustell */ $add = 0; $pa_arr = array(); if (count($mv->postanschrift) < 1) { $pa_arr[$add]['anschrift'] = "{$mv->personen_name_string_u}\n{$mv->haus_strasse} {$mv->haus_nr}\n<b>{$mv->haus_plz} {$mv->haus_stadt}</b>"; $pa_arr[$add]['mv_id'] = $mv_id; $add++; } /* Mieter mit Verzug oder Zustell */ if (count($mv->postanschrift) == 1) { $key_arr = array_keys($mv->postanschrift); $key = $key_arr[0]; $pa = $mv->postanschrift[$key]['adresse']; $pa_arr[$add]['anschrift'] = $pa; $pa_arr[$add]['mv_id'] = $mv_id; $add++; } if (count($mv->postanschrift) > 1) { $anz_ad = count($mv->postanschrift); for ($pp = 0; $pp < $anz_ad; $pp++) { $pa_arr[$add]['anschrift'] = $mv->postanschrift[$pp]['adresse']; $pa_arr[$add]['mv_id'] = $mv_id; $add++; } } $anz_ppa = count($pa_arr); for ($br = 0; $br < $anz_ppa; $br++) { /* Kopf */ $pdf_einzeln = new Cezpdf('a4', 'portrait'); $bpdf->b_header($pdf_einzeln, 'Partner', $_SESSION['partner_id'], 'portrait', 'Helvetica.afm', 6); $pdf_einzeln->ezStopPageNumbers(); // seitennummerirung beenden /* Faltlinie */ $pdf->setLineStyle(0.2); $pdf_einzeln->setLineStyle(0.2); $pdf->line(5, 542, 20, 542); $pdf_einzeln->line(5, 542, 20, 542); if (count($mv->postanschrift) < 1) { // $pdf->addText(260,590,6,"$mv->einheit_lage",0); // $pdf_einzeln->addText(260,590,6,$mv->einheit_lage,0); // $pdf->ezText("$mv->einheit_lage",9); // $pdf_einzeln->ezText("$mv->einheit_lage",9); } $pa_1 = $pa_arr[$br]['anschrift']; $mv_id_1 = $pa_arr[$br]['mv_id']; $mv->get_mietvertrag_infos_aktuell($mv_id_1); $pdf->addText(250, $pdf->y, 6, "{$mv->einheit_lage}", 0); $pdf_einzeln->addText(250, $pdf->y, 6, $mv->einheit_lage, 0); $pdf->ezText("{$pa_1}", 10); $pdf_einzeln->ezText("{$pa_1}", 10); // ############################################################## $pdf->ezSetDy(-80); $pdf_einzeln->ezSetDy(-80); if (!isset($_REQUEST['datum'])) { $datum_heute = date("d.m.Y"); } else { $datum_heute = $_REQUEST['datum']; } $p = new partners(); $p->get_partner_info($_SESSION['partner_id']); $pdf->ezText("{$p->partner_ort}, {$datum_heute}", 9, array('justification' => 'right')); $pdf->ezText("<b>Objekt: {$mv->haus_strasse} {$mv->haus_nr}, {$mv->haus_plz} {$mv->haus_stadt}</b>", 9); if (!isset($mv->postanschrift)) { $pdf->ezText("<b>Einheit: {$mv->einheit_kurzname}</b>", 9); } else { $pdf->ezText("<b>Einheit: {$mv->einheit_kurzname} (Mieter: {$mv->personen_name_string})</b>", 9); } $pdf->ezText("<b>{$this->v_kurztext}</b>", 9); $pdf->ezSetDy(-30); $pdf->ezText("{$mv->mv_anrede}", 9); eval("\$this->v_text = \"{$this->v_text}\";"); // Variable ausm Text füllen $pdf->ezText("{$this->v_text}", 9); $pdf_einzeln->ezText("{$p->partner_ort}, {$datum_heute}", 11, array('justification' => 'right')); $pdf_einzeln->ezText("<b>Objekt: {$mv->haus_strasse} {$mv->haus_nr}, {$mv->haus_plz} {$mv->haus_stadt}</b>", 12); $pdf_einzeln->ezText("<b>Einheit: {$mv->einheit_kurzname}</b>", 11); $pdf_einzeln->ezText("<b>{$this->v_kurztext}</b>", 11); $pdf_einzeln->ezSetDy(-30); $pdf_einzeln->ezText("{$mv->mv_anrede}", 11); $txt_alt = $this->v_text; $pdf_einzeln->ezText("{$this->v_text}", 11, array('justification' => 'full')); $this->pdf_speichern("SERIENBRIEFE/{$_SESSION['username']}", "{$mv->einheit_kurzname} - {$this->v_kurztext} vom {$datum_heute}" . '.pdf', $pdf_einzeln->output()); if ($index < sizeof($empf_id_arr) - 1) { $pdf->ezNewPage(); $pdf_einzeln->ezNewPage(); } } } if (isset($_REQUEST['emailsend'])) { /* erste packen und gz erstellen */ $dir = 'SERIENBRIEFE'; $tar_dir_name = "{$dir}/{$_SESSION['username']}"; if (!file_exists($tar_dir_name)) { mkdir($tar_dir_name, 0777); } $tar_file_name = "Serienbrief - {$mv->einheit_kurzname} - {$this->v_kurztext} vom {$datum_heute}.tar.gz"; exec("cd {$tar_dir_name} && tar cfvz '{$tar_file_name}' *.pdf"); exec("rm {$tar_dir_name}/*.pdf"); /* das Raus */ ob_clean(); // ausgabepuffer leeren $file = "{$tar_dir_name}/Serienbrief - {$mv->einheit_kurzname} - {$this->v_kurztext} vom {$datum_heute}.tar.gz"; if (file_exists($file)) { header('Content-Disposition: attachment; filename="' . basename($file) . '"'); readfile($file); exec("rm '{$tar_dir_name}/{$tar_file_name}'"); exit; } } else { // emalsend /* Kein Emailversand angefordert, nur ansehen */ /* Ausgabe */ ob_clean(); // ausgabepuffer leeren header("Content-type: application/pdf"); // wird von MSIE ignoriert // $pdf->ezStream(); $dateiname = "\"{$datum_heute} - Serie - {$this->v_kurztext}.pdf\""; $pdf_opt['Content-Disposition'] = $dateiname; $pdf->ezStream($pdf_opt); } } else { die('Keine Empfänger gewählt'); } }
function update_iban_bic_alle() { $result = mysql_query("SELECT * FROM GELD_KONTEN WHERE GELD_KONTEN.AKTUELL = '1' ORDER BY KONTO_DAT"); $numrows = mysql_numrows($result); if ($numrows) { while ($row = mysql_fetch_assoc($result)) { $dat = $row['KONTO_DAT']; $kto = $row['KONTONUMMER']; $blz = $row['BLZ']; $sep = new sepa(); $sep->get_iban_bic($kto, $blz); // echo "$sep->IBAN|$sep->BIC|$sep->BANKNAME_K<br>"; /* Update */ $db_abfrage = "UPDATE GELD_KONTEN SET IBAN='{$sep->IBAN}', BIC='{$sep->BIC}' WHERE KONTO_DAT='{$dat}'"; $resultat = mysql_query($db_abfrage) or die(mysql_error()); // die(); } echo "Alle vorhandenen Geldkonten mit IBAN und BIC versehen!!!"; } }
function sepa_datei_erstellen($sammelbetrag = 1, $dateiname_msgid, $nutzungsart = 'MIETZAHLUNG', $pdf = 0) { $arr = $this->get_mandate_arr($nutzungsart); // echo '<pre>'; // print_r($mandate_arr); // die(); $anz = count($arr); $myKtoSepaSimple = new KtoSepaSimple(); $monat = date("m"); $monatsname = monat2name($monat); $jahr = date("Y"); $this->summe_frst = 0.0; $this->summe_rcur = 0.0; for ($a = 0; $a < $anz; $a++) { $name = substr($this->umlautundgross($arr[$a]['NAME']), 0, 35); // auf 70 Zeichen kürzen $iban = $arr[$a]['IBAN']; $bic = $arr[$a]['BIC']; $mandat_datum = $arr[$a]['M_UDATUM']; $m_ref = $arr[$a]['M_REFERENZ']; $kos_id = $arr[$a]['M_KOS_ID']; $kos_typ = $arr[$a]['M_KOS_TYP']; $einzugsart = $arr[$a]['EINZUGSART']; if ($nutzungsart == 'MIETZAHLUNG') { $mv = new mietvertraege(); $mv->get_mietvertrag_infos_aktuell($kos_id); $einheit_kn = $mv->einheit_kurzname; $mz = new miete(); $mz->mietkonto_berechnung($kos_id); if ($einzugsart == 'Aktuelles Saldo komplett') { if ($mz->erg < 0.0) { $summe_zu_ziehen = substr($mz->erg, 1); } else { $summe_zu_ziehen = 0.0; } } if ($einzugsart == 'Nur die Summe aus Vertrag') { $mk = new mietkonto(); $summe_zu_ziehen_arr = explode('|', $mk->summe_forderung_monatlich($kos_id, $monat, $jahr)); $summe_zu_ziehen = $summe_zu_ziehen_arr[0]; } if ($einzugsart == 'Ratenzahlung') { $mk = new mietkonto(); $summe_zu_ziehen_arr = explode('|', $mk->summe_forderung_monatlich($kos_id, $monat, $jahr)); $summe_raten = $mk->summe_rate_monatlich($kos_id, $monat, $jahr); $summe_zu_ziehen = $summe_zu_ziehen_arr[0] + $summe_raten; } /* * $mv = new mietvertraege(); * $mv->get_mietvertrag_infos_aktuell($kos_id); * * $mz = new miete(); * $mz->mietkonto_berechnung($kos_id); * * if($mz->erg<0.00){ * $mz->erg = substr($mz->erg,1); * } */ $kat = 'RENT'; $vzweck1 = substr($this->umlautundgross("Mieteinzug {$monatsname} {$jahr} für {$mv->einheit_kurzname} {$name}"), 0, 140); $PmtInfId = substr($this->umlautundgross($mv->objekt_kurzname . " LS-MIETEN {$monat}/{$jahr}"), -30); } if ($nutzungsart == 'HAUSGELD') { /* Berechnung */ $weg = new weg(); $einheit_id = $weg->get_einheit_id_from_eigentuemer($kos_id); $e = new einheit(); $e->get_einheit_info($einheit_id); // $weg->get_wg_info($monat, $jahr, 'Einheit', $einheit_id, 'Hausgeld'); $weg->get_eigentuemer_saldo($kos_id, $einheit_id); $einheit_kn = $e->einheit_kurzname; if ($einzugsart == 'Aktuelles Saldo komplett') { if ($weg->hg_erg < 0) { $summe_zu_ziehen = $weg->soll_aktuell; } else { $summe_zu_ziehen = 0.0; } } if ($einzugsart == 'Nur die Summe aus Vertrag') { $summe_zu_ziehen = $weg->soll_aktuell; } $vzweck1 = substr($this->umlautundgross("Hausgeld {$monatsname} {$jahr} für {$e->einheit_kurzname} {$name}"), 0, 140); $kat = ''; $PmtInfId = substr($e->objekt_kurzname . " HAUSGELDER {$monat}/{$jahr}", -30); } /* Gemeinsame vars */ $last_ident = substr($this->umlautundgross("MANDAT:{$m_ref}"), 0, 35); /* * SequenceType1Code Wertebereich: FRST (Erstlastschrift), RCUR (Folgelastschrift), OOFF (Einmallastschrift),FNAL (letzte Lastschrift) */ /* Feststellen ob Erstnutzung, Folgenutzung des Mandats */ if (!$this->check_mandat_is_used($m_ref, $iban) == true) { $abbuchung = 'FRST'; // $datum = date("2014-01-25");//PLUS TAGE 7 $o = new objekt(); $datum = $o->datum_plus_tage(date("Y-m-d"), 7); $this->summe_frst += $summe_zu_ziehen; } else { $abbuchung = 'RCUR'; // $datum = date("2014-01-20");//PLUS TAGE 3 $o = new objekt(); $datum = $o->datum_plus_tage(date("Y-m-d"), 3); $this->summe_rcur += $summe_zu_ziehen; } if ($summe_zu_ziehen > 0.0) { if ($pdf == 0) { $myKtoSepaSimple->Add($datum, $summe_zu_ziehen, $name, $iban, $bic, NULL, $kat, $last_ident, $vzweck1, $abbuchung, $m_ref, $mandat_datum); /* Eintragen als genutzt */ $this->mandat_seq_speichern($m_ref, $summe_zu_ziehen, $datum, $dateiname_msgid, $vzweck1, $iban); } else { if ($abbuchung == 'FRST') { $tab_frst[$a]['EINHEIT'] = $einheit_kn; $tab_frst[$a]['DATUM'] = date_mysql2german($datum); $tab_frst[$a]['BETRAG'] = nummer_punkt2komma_t($summe_zu_ziehen); $tab_frst[$a]['NAME'] = $name; $tab_frst[$a]['ABBUCHUNG'] = $abbuchung; $tab_frst[$a]['IBAN'] = $iban; $tab_frst[$a]['BIC'] = $bic; $tab_frst[$a]['KAT'] = $kat; $tab_frst[$a]['IDENT'] = $last_ident; $tab_frst[$a]['VZWECK'] = $vzweck1; $tab_frst[$a]['M_REF'] = $m_ref; $tab_frst[$a]['M_DATUM'] = $mandat_datum; } if ($abbuchung == 'RCUR') { $tab_rcur[$a]['EINHEIT'] = $einheit_kn; $tab_rcur[$a]['DATUM'] = date_mysql2german($datum); $tab_rcur[$a]['BETRAG'] = nummer_punkt2komma_t($summe_zu_ziehen); $tab_rcur[$a]['NAME'] = $name; $tab_rcur[$a]['ABBUCHUNG'] = $abbuchung; $tab_rcur[$a]['IBAN'] = $iban; $tab_rcur[$a]['BIC'] = $bic; $tab_rcur[$a]['KAT'] = $kat; $tab_rcur[$a]['IDENT'] = $last_ident; $tab_rcur[$a]['VZWECK'] = $vzweck1; $tab_rcur[$a]['M_REF'] = $m_ref; $tab_rcur[$a]['M_DATUM'] = $mandat_datum; } } } // $myKtoSepaSimple->Add('2014-02-01', 119.00, 'Kunde,Konrad', 'DE54100700000190001800', 'DEUTDEBBXXX', // NULL, NULL, '1111222111', 'Rechnung 111111', 'OOFF', 'KUN1', '2013-09-13'); } $gk = new geldkonto_info(); $gk->geld_konto_details($_SESSION['geldkonto_id']); $monat = date("m"); $jahr = date("Y"); $username = $_SESSION['username']; $seps = new sepa(); $seps->get_iban_bic($gk->kontonummer, $gk->blz); $d = new detail(); $glaeubiger_id = $d->finde_detail_inhalt('GELD_KONTEN', $_SESSION['geldkonto_id'], 'GLAEUBIGER_ID'); /* SEPA FILE */ if ($pdf == 0) { $xmlstring = $myKtoSepaSimple->GetXML('CORE', $dateiname_msgid, $PmtInfId, $this->umlautundgross($gk->konto_beguenstigter), $this->umlautundgross($gk->konto_beguenstigter), $seps->IBAN, $seps->BIC, $glaeubiger_id, $sammelbetrag); /* SEPA AUSGABE */ ob_clean(); header('Content-type: text/xml; charset=utf-8'); header("Content-disposition: attachment;filename={$dateiname_msgid}"); echo $xmlstring; die; } else { /* PDF */ $pdf = new Cezpdf('a4', 'landscape'); $bpdf = new b_pdf(); $bpdf->b_header($pdf, 'Partner', $_SESSION[partner_id], 'landscape', 'Helvetica.afm', 6); $this->footer_zahlungshinweis = $bpdf->zahlungshinweis; $pdf->ezStopPageNumbers(); // seitennummerirung beenden $p = new partners(); $p->get_partner_info($_SESSION['partner_id']); $datum = date("d.m.Y"); $cols = array('DATUM' => "Datum", 'EINHEIT' => "Einheit", 'BETRAG' => "Betrag", 'NAME' => "Name", 'M_REF' => "MANDAT", 'VZWECK' => "TEXT", 'ABBUCHUNG' => "RF", 'BIC' => "BIC", 'IBAN' => "IBAN"); /* * $tab_arr[$a]['IBAN'] = $iban; * $tab_arr[$a]['BIC'] = $bic; * $tab_arr[$a]['KAT'] = $kat; * $tab_arr[$a]['IDENT'] = $last_ident; */ if (is_array($tab_frst)) { $tab_frst = array_merge($tab_frst, array()); $anz_t = count($tab_frst); $tab_frst[$anz_t]['EINHEIT'] = "<b>SUMME</b>"; $tab_frst[$anz_t]['BETRAG'] = "<b>{$this->summe_frst}</b>"; $pdf->ezTable($tab_frst, $cols, "<b>Beigleitzettel " . $this->umlautundgross($gk->konto_beguenstigter) . " - ERSTABBUCHUNGEN</b>", array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 50, 'xOrientation' => 'right', 'width' => 750, 'cols' => array('BETRAG' => array('justification' => 'right', 'width' => 50), 'NAME' => array('justification' => 'left', 'width' => 100), 'VZWECK' => array('justification' => 'left', 'width' => 200), 'DATUM' => array('justification' => 'left', 'width' => 50)))); } if (is_array($tab_rcur)) { $tab_rcur = array_merge($tab_rcur, array()); // echo '<pre>'; // print_r($tab_rcur); // print_r($rcur_arr_new); // die('RCIR'); $pdf->ezSetDy(-20); $anz_r = count($tab_rcur); $tab_rcur[$anz_r]['EINHEIT'] = "<b>SUMME</b>"; $tab_rcur[$anz_r]['BETRAG'] = "<b>{$this->summe_rcur}</b>"; $pdf->ezTable($tab_rcur, $cols, "<b>Beigleitzettel " . $this->umlautundgross($gk->konto_beguenstigter) . " - FOLGEABBUCHUNGEN</b>", array('rowGap' => 1.5, 'showLines' => 1, 'showHeadings' => 1, 'shaded' => 1, 'shadeCol' => array(0.9, 0.9, 0.9), 'titleFontSize' => 9, 'fontSize' => 7, 'xPos' => 50, 'xOrientation' => 'right', 'width' => 750, 'cols' => array('BETRAG' => array('justification' => 'right', 'width' => 50), 'NAME' => array('justification' => 'left', 'width' => 100), 'VZWECK' => array('justification' => 'left', 'width' => 140), 'DATUM' => array('justification' => 'left', 'width' => 50), 'G_KEY_A' => array('justification' => 'right', 'width' => 55), 'E_KEY_A' => array('justification' => 'right', 'width' => 50), 'E_BETRAG' => array('justification' => 'right', 'width' => 50)))); } $pdf->ezSetDy(-20); $uhrzeit = date("d.m.Y H:i:s"); $pdf->eztext(" Erstellt am: {$uhrzeit}", 10); ob_clean(); // ausgabepuffer leeren $pdf->ezStream(); } }