mirror of
https://github.com/OpenXE-org/OpenXE.git
synced 2024-12-26 14:40:29 +01:00
237 lines
9.2 KiB
PHP
237 lines
9.2 KiB
PHP
<?php
|
|
/*
|
|
**** COPYRIGHT & LICENSE NOTICE *** DO NOT REMOVE ****
|
|
*
|
|
* Xentral (c) Xentral ERP Sorftware GmbH, Fuggerstrasse 11, D-86150 Augsburg, * Germany 2019
|
|
*
|
|
* This file is licensed under the Embedded Projects General Public License *Version 3.1.
|
|
*
|
|
* You should have received a copy of this license from your vendor and/or *along with this file; If not, please visit www.wawision.de/Lizenzhinweis
|
|
* to obtain the text of the corresponding license version.
|
|
*
|
|
**** END OF COPYRIGHT & LICENSE NOTICE *** DO NOT REMOVE ****
|
|
*/
|
|
?>
|
|
<?php
|
|
class AdressstammblattPDF extends Dokumentenvorlage {
|
|
public $doctype;
|
|
|
|
function __construct($app,$projekt="")
|
|
{
|
|
$this->app=$app;
|
|
//parent::Dokumentenvorlage();
|
|
$this->doctype="adresse";
|
|
$this->table="adresse";
|
|
$this->doctypeOrig="Adressstammblatt";
|
|
parent::__construct($this->app,$projekt);
|
|
}
|
|
|
|
public function renderDocument() {
|
|
// prepare page details
|
|
SuperFPDF::__construct('P','mm','A4');
|
|
|
|
|
|
$this->AddPage();
|
|
$this->SetDisplayMode("real","single");
|
|
|
|
$this->SetMargins(15,50);
|
|
$this->SetAutoPageBreak(true,40);
|
|
$this->AliasNbPages('{nb}');
|
|
|
|
|
|
// Bei Adressstammblatt immer oben beginnen
|
|
$this->abstand_betreffzeileoben=0;
|
|
$this->logofile = "";//$this->app->erp->GetTMP()."/".$this->app->Conf->WFdbname."_logo.jpg";
|
|
$this->briefpapier="";
|
|
|
|
|
|
$schrift = $this->app->erp->Firmendaten('schriftgroesse');
|
|
|
|
$this->SetFontSize($schrift);
|
|
$this->SetFont($this->GetFont(),'','10');
|
|
$this->SetX($this->GetX()+160);
|
|
$this->Cell(10,0,date("d.m.Y"),"","","L");
|
|
|
|
$this->renderDoctype();
|
|
|
|
$adresse = $this->app->DB->SelectArr("SELECT * FROM adresse WHERE id='".$this->id."'");
|
|
$adresse = reset($adresse);
|
|
|
|
if($adresse['typ']=="firma")
|
|
{
|
|
$infofields[]=array("Firma",$adresse['name']);
|
|
if($adresse['ansprechpartner']!="")
|
|
$infofields[]=array("Ansprechpartner",$adresse['ansprechpartner']);
|
|
} else {
|
|
$infofields[]=array("Name",$adresse['name']);
|
|
}
|
|
|
|
$infofields[]=array("Anschrift",$adresse['land']."-".$adresse['plz']." ".$adresse['ort'].", ".$adresse['strasse']);
|
|
|
|
$felder = array('telefon','telefax','mobil','email','web');
|
|
foreach($felder as $feldname)
|
|
{
|
|
$infofields[]=array(ucfirst($feldname),$adresse[$feldname=='web'?'internetseite':$feldname]);
|
|
}
|
|
|
|
|
|
if($this->app->erp->Firmendaten("modul_mlm")==1)
|
|
{
|
|
$mlmvertragsbeginn = $this->app->DB->Select("SELECT DATE_FORMAT(mlmvertragsbeginn,'%d.%m.%Y') FROM adresse WHERE id='".$adresse['id']."' LIMIT 1");
|
|
if($mlmvertragsbeginn=="00.00.0000") $mlmvertragsbeginn = "kein Vertragsbeginn eingestellt";
|
|
$sponsorid = $this->app->DB->Select("SELECT sponsor FROM adresse WHERE id='".$adresse['id']."' LIMIT 1");
|
|
if($sponsorid> 0)
|
|
$sponsor = $this->app->DB->Select("SELECT CONCAT(kundennummer,' ',name) FROM adresse WHERE id='$sponsorid' LIMIT 1");
|
|
else
|
|
$sponsor = "Kein Sponsor vorhanden";
|
|
|
|
$erfasstam = $this->app->DB->Select("SELECT DATE_FORMAT(zeitstempel,'%d.%m.%Y') FROM objekt_protokoll WHERE objekt='adresse' AND objektid='".$adresse['id']."' AND action_long='adresse_create' LIMIT 1");
|
|
|
|
$infofields[]=array("Sponsor",$sponsor);
|
|
$infofields[]=array("Erfasst am",$erfasstam);
|
|
$infofields[]=array("Vertragsbeginn am",$mlmvertragsbeginn);
|
|
}
|
|
|
|
|
|
|
|
$infofields[]=array("UST-ID",$adresse['ustid']);
|
|
|
|
|
|
if($adresse['kundennummer']!="")
|
|
$numbers[] = array("Kunden Nr.",$adresse['kundennummer']);
|
|
|
|
if($adresse['lieferantennummer']!="")
|
|
$numbers[] = array("Lieferanten Nr.",$adresse['lieferantennummer']);
|
|
|
|
if($adresse['mitarbeiternummer']!="")
|
|
$numbers[] = array("Mitarbeiter Nr.",$adresse['mitarbeiternummer']);
|
|
|
|
if($numbers?count($numbers):0>0)
|
|
$this->renderInfoBox($numbers);
|
|
|
|
$this->Ln(5);
|
|
$this->renderHeading("Adressstammblatt",8);
|
|
$this->renderInfoBox($infofields);
|
|
|
|
|
|
|
|
$ansprechpartner_tmp = $this->app->DB->SelectArr("SELECT CONCAT(name,', ',if(bereich='','-',bereich),
|
|
', Telefon: ',telefon,
|
|
', Mobil: ',mobil,
|
|
', E-Mail: ',email
|
|
) as 'value' FROM ansprechpartner WHERE adresse='".$adresse['id']."'");
|
|
|
|
for($i=0;$i<($ansprechpartner_tmp?count($ansprechpartner_tmp):0);$i++) $ansprechpartner[] = $ansprechpartner_tmp[$i]['value'];
|
|
if($ansprechpartner_tmp?count($ansprechpartner):0 > 0)
|
|
{
|
|
$this->Ln(5);
|
|
$this->renderHeading("Ansprechpartner",8);
|
|
$this->renderInfoBoxSingle($ansprechpartner);
|
|
}
|
|
|
|
$lieferadressen_tmp = $this->app->DB->SelectArr("SELECT name,abteilung,unterabteilung,adresszusatz,strasse,plz,ort,land,
|
|
telefon,email
|
|
FROM lieferadressen WHERE adresse='".$adresse['id']."' ORDER by standardlieferadresse DESC");
|
|
|
|
for($i=0;$i<($lieferadressen_tmp?count($lieferadressen_tmp):0);$i++) {
|
|
$lieferadressen_tmp[$i]['value']="";
|
|
foreach($lieferadressen_tmp[$i] as $key=>$value)
|
|
{
|
|
switch($key)
|
|
{
|
|
case "email":
|
|
$lieferadressen_tmp[$i]['value'] .= "E-Mail: $value, ";
|
|
break;
|
|
|
|
case "telefon":
|
|
$lieferadressen_tmp[$i]['value'] .= "Telefon: $value, ";
|
|
break;
|
|
case "telefax":
|
|
$lieferadressen_tmp[$i]['value'] .= "Telefax: $value, ";
|
|
break;
|
|
|
|
default:
|
|
if($value!="")
|
|
$lieferadressen_tmp[$i]['value'] .= "$value, ";
|
|
}
|
|
}
|
|
|
|
$lieferadressen_tmp[$i]['value'] = trim($lieferadressen_tmp[$i]['value'],', ');
|
|
if($i==0) $standard = " (Standard)"; else $standard="";
|
|
|
|
$lieferadressen[] = $lieferadressen_tmp[$i]['value'].$standard;
|
|
}
|
|
|
|
if($lieferadressen?count($lieferadressen):0 > 0)
|
|
{
|
|
$this->Ln(5);
|
|
$this->renderHeading("Lieferadressen",8);
|
|
$this->renderInfoBoxSingle($lieferadressen);
|
|
}
|
|
|
|
|
|
$this->Ln(5);
|
|
|
|
if($adresse['sonstiges']!="")
|
|
{
|
|
$this->renderHeading("Sonstiges",8);
|
|
$this->SetFont($this->GetFont(),'',7);
|
|
$this->MultiCell(180,4,$this->WriteHTML($adresse['sonstiges']));
|
|
}
|
|
|
|
$this->renderFooter();
|
|
}
|
|
|
|
|
|
function GetAdressstammblatt($id,$info="",$extrafreitext="")
|
|
{
|
|
$this->id = $id;
|
|
// das muss vom reisekosten sein!!!!
|
|
//$this->setRecipientLieferadresse($id,"reisekosten");
|
|
|
|
// OfferNo, customerId, OfferDate
|
|
/*$auftrag = $this->app->DB->Select("SELECT auftragid FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$auftrag = $this->app->DB->Select("SELECT belegnr FROM auftrag WHERE id='$auftrag' LIMIT 1");
|
|
$bearbeiter = $this->app->DB->Select("SELECT bearbeiter FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$prefix = $this->app->DB->Select("SELECT prefix FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$bestellbestaetigung = $this->app->DB->Select("SELECT bestellbestaetigung FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$this->datum = $this->app->DB->Select("SELECT DATE_FORMAT(datum,'%d.%m.%Y') FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
|
|
$this->von = $this->app->DB->Select("SELECT DATE_FORMAT(von,'%d.%m.%Y') FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$this->bis = $this->app->DB->Select("SELECT DATE_FORMAT(bis,'%d.%m.%Y') FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$this->von_zeit = $this->app->DB->Select("SELECT von_zeit FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$this->bis_zeit = $this->app->DB->Select("SELECT bis_zeit FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$belegnr = $this->app->DB->Select("SELECT belegnr FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$this->anlass = $this->app->DB->Select("SELECT anlass FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$this->freitext = $this->app->DB->Select("SELECT freitext FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$projekt = $this->app->DB->Select("SELECT projekt FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
$mitarbeiter = $this->app->DB->Select("SELECT mitarbeiter FROM reisekosten WHERE id='$id' LIMIT 1");*/
|
|
$kunde= $this->app->DB->SelectArr("SELECT name,kundennummer,lieferantennummer FROM adresse WHERE id='$id' LIMIT 1");
|
|
$kunde = reset($kunde);
|
|
|
|
$kundennummer = $kunde['kundennummer'];
|
|
$this->name = $kunde['name'];
|
|
|
|
$this->projektabkuerzung = $this->app->DB->Select("SELECT abkuerzung FROM projekt WHERE id='$projekt'");
|
|
$this->firmenname = $this->app->erp->Firmendaten('name');
|
|
$this->doctypeOrig="Adresse: ".$kunde['name'];
|
|
$this->barcode=$belegnr;
|
|
|
|
//$ohne_briefpapier = $this->app->DB->Select("SELECT ohne_briefpapier FROM reisekosten WHERE id='$id' LIMIT 1");
|
|
|
|
|
|
|
|
|
|
//$artikel = $this->app->DB->SelectArr("SELECT *,DATE_FORMAT(datum,'%d.%m.%Y') as datum, CONCAT(rk.nummer,'- ',rk.beschreibung) as reisekostenart FROM reisekosten_position rp LEFT JOIN reisekostenart rk ON rk.id=rp.reisekostenart WHERE rp.reisekosten='$id' ORDER By rp.sort");
|
|
|
|
//$waehrung = $this->app->DB->Select("SELECT waehrung FROM reisekosten_position WHERE reisekosten='$id' LIMIT 1");
|
|
|
|
/* Dateiname */
|
|
$this->filename = date('Ymd')."_STAMMDATEN_ADRESSE_".$this->app->erp->Dateinamen($kunde['name']).".pdf";
|
|
|
|
$this->setBarcode($id);
|
|
}
|
|
|
|
|
|
}
|