コード例 #1
0
ファイル: class_todo.php プロジェクト: BerlusGmbH/Berlussimo
 function pdf_auftrag($id)
 {
     $this->get_aufgabe_alles($id);
     $pp = new benutzer();
     $b_arr = $pp->get_user_info($_SESSION['benutzer_id']);
     $_SESSION['partner_id'] = $b_arr[0]['BP_PARTNER_ID'];
     if ($this->kos_typ == 'Einheit') {
         $kontaktdaten_mieter = $this->kontaktdaten_anzeigen_mieter($this->kos_id);
         $kontaktdaten_mieter = "<b>Einheit</b>: {$this->kos_bez}" . "\n" . str_replace('<br>', "\n", $kontaktdaten_mieter);
     }
     if ($this->kos_typ == 'Partner') {
         $p = new partners();
         $p->get_partner_info($this->kos_id);
         $kontaktdaten_mieter = "{$p->partner_name}\n{$p->partner_strasse} {$p->partner_hausnr}\n{$p->partner_plz} {$p->partner_ort}\n";
         $det_arr = $this->finde_detail_kontakt_arr('PARTNER_LIEFERANT', $this->kos_id);
         if (is_array($det_arr)) {
             $anzd = count($det_arr);
             for ($a = 0; $a < $anzd; $a++) {
                 $dname = $this->html2txt($det_arr[$a]['DETAIL_NAME']);
                 $dinhalt = $this->html2txt($det_arr[$a]['DETAIL_INHALT']);
                 $kontaktdaten_mieter .= "\n{$dname}:{$dinhalt}";
             }
         }
     }
     if ($this->kos_typ == 'Eigentuemer') {
         $weg = new weg();
         $weg->get_eigentumer_id_infos2($this->kos_id);
         $miteigentuemer_namen = strip_tags($weg->eigentuemer_name_str_u);
         $kontaktdaten_mieter = "{$weg->haus_strasse} {$weg->haus_nummer}\n<b>{$weg->haus_plz} {$weg->haus_stadt}</b>\n\n";
         for ($pe = 0; $pe < count($weg->eigentuemer_person_ids); $pe++) {
             $et_p_id = $weg->eigentuemer_person_ids[$pe];
             $det_arr = $this->finde_detail_kontakt_arr('Person', $et_p_id);
             // echo strtoupper($this->kos_typ);
             $kontaktdaten_mieter .= rtrim(ltrim($weg->eigentuemer_name[$pe]['HRFRAU'])) . " ";
             $kontaktdaten_mieter .= rtrim(ltrim($weg->eigentuemer_name[$pe]['Nachname'])) . " ";
             $kontaktdaten_mieter .= rtrim(ltrim($weg->eigentuemer_name[$pe]['Vorname'])) . "\n";
             if (is_array($det_arr)) {
                 $anzd = count($det_arr);
                 for ($ad = 0; $ad < $anzd; $ad++) {
                     $dname = $this->html2txt($det_arr[$ad]['DETAIL_NAME']);
                     $dinhalt = $this->html2txt($det_arr[$ad]['DETAIL_INHALT']);
                     $kontaktdaten_mieter .= "{$dname}:{$dinhalt}\n";
                 }
             }
             $kontaktdaten_mieter .= "\n";
         }
     }
     if ($this->kos_typ != 'Partner' && $this->kos_typ != 'Einheit' && $this->kos_typ != 'Eigentuemer') {
         if ($this->kos_typ == 'Haus') {
             $h = new haus();
             $h->get_haus_info($this->kos_id);
             $kontaktdaten_mieter = "Haus:\n{$h->haus_strasse} {$h->haus_nummer}\n<b>{$h->haus_plz} {$h->haus_stadt}</b>";
         } else {
             $d = new detail();
             $kontaktdaten_mieter = $this->kos_bez;
         }
     }
     $kontaktdaten_mieter = str_replace('<br />', "\n", $kontaktdaten_mieter);
     $kontaktdaten_mieter = $this->html2txt($kontaktdaten_mieter);
     ob_clean();
     // ausgabepuffer leeren
     include_once 'classes/class_bpdf.php';
     $pdf = new Cezpdf('a4', 'portrait');
     $bpdf = new b_pdf();
     $bpdf->b_header($pdf, 'Partner', $_SESSION['partner_id'], 'portrait', 'Helvetica.afm', 6);
     $pdf->Rectangle(250, 630, 305, 80);
     $pdf->addText(252, 700, 10, "Arbeitsauftrag Nr: <b>{$id}</b> an");
     $pdf->addText(252, 685, 9, "<b>{$this->benutzer_typ}</b>: {$this->mitarbeiter_name} {$this->partner_ans}");
     if ($this->benutzer_typ == 'Partner') {
         $pdf->addText(252, 675, 9, "<b>Fax: {$this->partner_fax}</b>");
         $pdf->addText(375, 675, 9, "<b>Email: {$this->partner_email}</b>");
     }
     $pdf->addText(252, 665, 8, "<b>Datum</b>: {$this->anzeigen_ab}");
     if ($this->erledigt == '1') {
         $erledigt = 'JA';
     } else {
         $erledigt = 'NEIN';
     }
     $pdf->addText(252, 655, 8, "<b>AKUT</b>: {$this->akut}");
     $pdf->addText(252, 645, 8, "<b>Erfasst</b>: {$this->verfasst_von}");
     if ($this->kos_typ == 'Einheit') {
         $weg = new weg();
         $weg->get_last_eigentuemer($this->kos_id);
         if (isset($weg->eigentuemer_id)) {
             $e_id = $weg->eigentuemer_id;
             $weg->get_eigentuemer_namen($e_id);
             $miteigentuemer_namen = strip_tags($weg->eigentuemer_name_str);
             /* ################Betreuer################## */
             $anz_p = count($weg->eigentuemer_person_ids);
             $betreuer_str = '';
             $betreuer_arr;
             for ($be = 0; $be < $anz_p; $be++) {
                 $et_p_id = $weg->eigentuemer_person_ids[$be];
                 $d_k = new detail();
                 $dt_arr = $d_k->finde_alle_details_grup('PERSON', $et_p_id, 'INS-Kundenbetreuer');
                 if (is_array($dt_arr)) {
                     $anz_bet = count($dt_arr);
                     for ($bet = 0; $bet < $anz_bet; $bet++) {
                         $bet_str = $dt_arr[$bet]['DETAIL_INHALT'];
                         $betreuer_str .= "{$bet_str}<br>";
                         $betreuer_arr[] = $bet_str;
                     }
                 }
             }
             if (is_array($betreuer_arr)) {
                 $betreuer_str = '';
                 $betreuer_arr1 = array_unique($betreuer_arr);
                 for ($bbb = 0; $bbb < count($betreuer_arr1); $bbb++) {
                     $betreuer_str .= $betreuer_arr1[$bbb];
                 }
                 $pdf->addText(252, 635, 8, "<b>Erledigt</b>:{$erledigt}");
             }
         } else {
             $miteigentuemer_namen = "UNBEKANNT";
         }
     } else {
         $pdf->addText(252, 635, 8, "<b>Erledigt</b>: {$erledigt}");
     }
     $pdf->ezText($kontaktdaten_mieter);
     if ($pdf->y > 645) {
         $pdf->ezSetY(645);
     }
     $pdf->ezSetDy(-5);
     // abstand
     $pdf->ezText("<b>Auftragsbeschreibung:</b>", 12);
     $pdf->ezText($this->text);
     $pdf->ezSetDy(-10);
     // abstand
     if ($this->benutzer_typ == 'Benutzer') {
         $pdf->ezText("<b>Durchgeführte Arbeiten:</b>");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezSetDy(-15);
         // abstand
         $pdf->ezText("<b>Material:</b>");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezText("_________________________________________________________________________");
         $pdf->ezSetDy(-10);
         // abstand
         $pdf->Rectangle(50, $pdf->y - 20, 10, 10);
         $pdf->addText(65, $pdf->y - 18, 8, "<b>Arbeit abgeschlossen</b>");
         $pdf->ezSetDy(-15);
         // abstand
         $pdf->Rectangle(50, $pdf->y - 20, 10, 10);
         $pdf->addText(65, $pdf->y - 18, 8, "<b>Arbeit nicht abgeschlossen</b>");
         $pdf->addText(200, $pdf->y - 18, 8, "<b>Neuer Termin: _______________/____________ Uhr</b>");
         $pdf->ezSetDy(-50);
         // abstand
         $pdf->Rectangle(50, $pdf->y - 20, 10, 10);
         $pdf->addText(65, $pdf->y - 18, 8, "<b>Fahrzeit:______________ Std:Min</b>");
         $pdf->addText(200, $pdf->y - 18, 8, "<b>Ankunftszeit: _______________ Uhr</b>");
         $pdf->addText(375, $pdf->y - 18, 8, "<b>Fertigstellunsgszeit: _______________ Uhr</b>");
         $pdf->ezSetDy(-100);
         // abstand
         $pdf->addText(50, $pdf->y - 18, 8, "_______________________");
         $pdf->addText(200, $pdf->y - 18, 8, "_______________________________");
         $pdf->addText(375, $pdf->y - 18, 8, "___________________________________");
         $pdf->ezSetDy(-10);
         // abstand
         $pdf->addText(90, $pdf->y - 18, 6, "Datum");
         $pdf->addText(240, $pdf->y - 18, 6, "Unterschrift Kunde");
         $pdf->addText(425, $pdf->y - 18, 6, "Unterschrift Monteur");
     }
     if ($this->benutzer_typ == 'Partner') {
         $rr = new rechnung();
         if ($this->kos_typ == 'Eigentuemer') {
             $rr->get_empfaenger_infos('Objekt', $weg->objekt_id);
         } else {
             $rr->get_empfaenger_infos($this->kos_typ, $this->kos_id);
         }
         $dd = new detail();
         $rep_eur = $dd->finde_detail_inhalt('PARTNER_LIEFERANT', $rr->rechnungs_empfaenger_id, 'Rep-Freigabe');
         $rr->get_empfaenger_info($rr->rechnungs_empfaenger_id);
         $pdf->ezSetDy(-10);
         // abstand
         if (empty($rep_eur)) {
             $pdf->ezText("<b>Freigabe bis: ______ EUR Netto</b>");
         } else {
             $pdf->ezText("<b>Freigabe bis: {$rep_eur} EUR Netto</b>");
         }
         $dd = new detail();
         $b_tel = $dd->finde_detail_inhalt('BENUTZER', $_SESSION['benutzer_id'], 'Telefon');
         if (empty($b_tel)) {
             $b_tel = $dd->finde_detail_inhalt('PARTNER_LIEFERANT', $_SESSION[partner_id], 'Telefon');
         }
         $pdf->ezSetDy(-10);
         // abstand
         $pdf->ezText("<b>Bei Kosten über Freigabesumme bitten wir um Rückmeldung unter {$b_tel}.</b>");
         $pdf->ezSetDy(-10);
         // abstand
         $pdf->ezText("Rechnung bitte unter Angabe der <u><b>Auftragsnummer {$id}</b></u> und <u><b>{$this->kos_typ} {$this->kos_bez}</b></u>   an:", 10);
         $pdf->ezSetDy(-10);
         // abstand
         $pdf->ezText("<b>{$rr->rechnungs_empfaenger_name}\n{$rr->rechnungs_empfaenger_strasse}  {$rr->rechnungs_empfaenger_hausnr}\n{$rr->rechnungs_empfaenger_plz}  {$rr->rechnungs_empfaenger_ort}</b>", 12);
         $pdf->ezSetDy(-25);
         // abstand
         $pdf->ezText("Mit freundlichen Grüßen", 10);
         $pdf->ezSetDy(-25);
         // abstand
         $pdf->ezText("i.A. {$this->verfasst_von}", 10);
     }
     ob_clean();
     $gk_bez = utf8_encode(date("Y_m_d") . '_' . substr(str_replace('.', '_', str_replace(',', '', str_replace(' ', '_', ltrim(rtrim($this->kos_bez))))), 0, 30) . '_Auftrag-Nr._' . $id . '.pdf');
     $pdf_opt['Content-Disposition'] = $gk_bez;
     $pdf->ezStream($pdf_opt);
 }