This commit is contained in:
Christian Paminger
2011-09-11 18:15:28 +00:00
parent eb065e2e3b
commit b2ba07488f
4 changed files with 87 additions and 231 deletions
@@ -426,7 +426,7 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<label value="Art" control="student-projektbetreuer-menulist-betreuerart"/>
<menulist id="student-projektbetreuer-menulist-betreuerart" disabled="true"
datasources="<?php echo APP_ROOT ?>rdf/betreuerart.rdf.php" flex="1"
ref="http://www.technikum-wien.at/betreuerart/liste" >
ref="http://www.technikum-wien.at/betreuerart" >
<template>
<menupopup>
<menuitem value="rdf:http://www.technikum-wien.at/betreuerart/rdf#betreuerart_kurzbz"
@@ -481,4 +481,4 @@ echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
<spacer flex="1" />
</vbox>
</overlay>
</overlay>
+46 -1
View File
@@ -333,6 +333,51 @@ class wawi_bestellung extends basis_db
}
}
/**
*
* Liefert die Bestellungen zu einem Projekt
* @param $projekt_kurzbz
*/
public function getBestellungProjekt($projekt_kurzbz)
{
//$projekt_kurzbz = addslashes($projekt_kurzbz);
$qry = "SELECT * FROM wawi.tbl_bestellung JOIN wawi.tbl_projekt_bestellung USING (bestellung_id) WHERE projekt_kurzbz='".$projekt_kurzbz."';";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$bestellung = new wawi_bestellung();
$bestellung->bestellung_id = $row->bestellung_id;
$bestellung->kostenstelle_id = $row->kostenstelle_id;
$bestellung->konto_id = $row->konto_id;
$bestellung->firma_id = $row->firma_id;
$bestellung->lieferadresse = $row->lieferadresse;
$bestellung->rechnungsadresse = $row->rechnungsadresse;
$bestellung->freigegeben = $row->freigegeben;
$bestellung->bestell_nr = $row->bestell_nr;
$bestellung->titel = $row->titel;
$bestellung->bemerkung = $row->bemerkung;
$bestellung->liefertermin = $row->liefertermin;
$bestellung->updateamum = $row->updateamum;
$bestellung->updatevon = $row->updatevon;
$bestellung->insertamum = $row->insertamum;
$bestellung->insertvon = $row->insertvon;
$bestellung->ext_id = $row->ext_id;
$bestellung->zahlungstyp_kurzbz = $row->zahlungstyp_kurzbz;
$this->result[] = $bestellung;
}
return true;
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
*
* Löscht die Bestellung mit der Übergebenen ID
@@ -987,4 +1032,4 @@ class wawi_bestellung extends basis_db
return $bnum;
}
}
}
+29 -194
View File
@@ -1,5 +1,5 @@
<?php
/* Copyright (C) 2006 Technikum-Wien
/* Copyright (C) 2011 Technikum-Wien
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
@@ -15,205 +15,40 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
*/
// header für no cache
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
// DAO
require_once('../config/vilesci.config.inc.php');
require_once('../include/datum.class.php');
require_once('../include/basis_db.class.php');
require_once('../include/rdf.class.php');
require_once('../include/wawi_bestellung.class.php');
require_once('../include/wawi_bestelldetail.class.php');
require_once('../include/benutzer.class.php');
require_once('../include/wawi_konto.class.php');
require_once('../include/wawi_kostenstelle.class.php');
require_once('../include/adresse.class.php');
require_once('../include/firma.class.php');
require_once('../include/standort.class.php');
require_once('../include/kontakt.class.php');
require_once('../include/wawi_aufteilung.class.php');
require_once('../include/studiengang.class.php');
if (isset($_REQUEST["xmlformat"]) && $_REQUEST["xmlformat"] == "xml")
{
$bestellung = new wawi_bestellung();
if(isset($_GET['id']))
{
if(!$bestellung->load($_GET['id']))
die('Bestellung wurde nicht gefunden');
$besteller = new benutzer();
if(!$besteller->load($bestellung->besteller_uid))
die('Besteller konnte nicht geladen werden');
$konto = new wawi_konto();
$konto->load($bestellung->konto_id);
$kostenstelle = new wawi_kostenstelle();
$kostenstelle->load($bestellung->kostenstelle_id);
$rechnungsadresse = new adresse();
$rechnungsadresse->load($bestellung->rechnungsadresse);
$lieferadresse = new adresse();
$lieferadresse->load($bestellung->lieferadresse);
$aufteilung = new wawi_aufteilung();
$aufteilung->getAufteilungFromBestellung($bestellung->bestellung_id);
$studiengang = new studiengang();
$oRdf = new rdf('BESTELLUNG','http://www.technikum-wien.at/bestellung');
$oRdf->sendHeader();
$firma = new firma();
$standort = new standort();
$empfaengeradresse = new adresse();
if($bestellung->firma_id!='')
{
$firma->load($bestellung->firma_id);
$kundennummer = $firma->get_kundennummer($bestellung->firma_id, $kostenstelle->oe_kurzbz);
$standort->load_firma($firma->firma_id);
if(isset($standort->result[0]))
$standort = $standort->result[0];
$empfaengeradresse->load($standort->adresse_id);
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($standort->standort_id, 'telefon');
$telefon = $kontakt->kontakt;
$kontakt = new kontakt();
$kontakt->loadFirmaKontakttyp($standort->standort_id, 'fax');
$fax = $kontakt->kontakt;
}
else
{
$telefon='';
$fax='';
$kundennummer='';
}
$datum_obj = new datum();
header("Content-type: application/xhtml+xml");
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
echo "\n<bestellungen><bestellung>\n";
echo " <bestell_nr><![CDATA[$bestellung->bestell_nr]]></bestell_nr>\n";
echo " <titel><![CDATA[$bestellung->titel]]></titel>\n";
echo " <liefertermin><![CDATA[$bestellung->liefertermin]]></liefertermin>\n";
echo " <kundennummer><![CDATA[$kundennummer]]></kundennummer>\n";
echo " <kontaktperson>\n";
echo " <titelpre><![CDATA[$besteller->titelpre]]></titelpre>\n";
echo " <vorname><![CDATA[$besteller->vorname]]></vorname>\n";
echo " <nachname><![CDATA[$besteller->nachname]]></nachname>\n";
echo " <titelpost><![CDATA[$besteller->titelpost]]></titelpost>\n";
echo " <email><![CDATA[",$besteller->uid,'@',DOMAIN,"]]></email>\n";
echo " </kontaktperson>\n";
echo " <konto><![CDATA[",$konto->beschreibung[1],"]]></konto>\n";
echo " <kostenstelle><![CDATA[$kostenstelle->bezeichnung]]></kostenstelle>\n";
echo " <rechnungsadresse>\n";
echo " <name><![CDATA[$rechnungsadresse->name]]></name>\n";
echo " <strasse><![CDATA[$rechnungsadresse->strasse]]></strasse>\n";
echo " <plz><![CDATA[$rechnungsadresse->plz]]></plz>\n";
echo " <ort><![CDATA[$rechnungsadresse->ort]]></ort>\n";
echo " </rechnungsadresse>\n";
echo " <lieferadresse>\n";
echo " <name><![CDATA[$lieferadresse->name]]></name>\n";
echo " <strasse><![CDATA[$lieferadresse->strasse]]></strasse>\n";
echo " <plz><![CDATA[$lieferadresse->plz]]></plz>\n";
echo " <ort><![CDATA[$lieferadresse->ort]]></ort>\n";
echo " </lieferadresse>\n";
echo " <empfaenger>\n";
echo " <name><![CDATA[$firma->name]]></name>\n";
echo " <strasse><![CDATA[$empfaengeradresse->strasse]]></strasse>\n";
echo " <plz><![CDATA[$empfaengeradresse->plz]]></plz>\n";
echo " <ort><![CDATA[$empfaengeradresse->ort]]></ort>\n";
echo " <telefon><![CDATA[$telefon]]></telefon>\n";
echo " <fax><![CDATA[$fax]]></fax>\n";
echo " </empfaenger>\n";
$details = new wawi_bestelldetail();
$details->getAllDetailsFromBestellung($bestellung->bestellung_id);
$summe_netto=0;
$summe_brutto=0;
$summe_mwst=0;
$i=0;
echo " <details>\n";
foreach($details->result as $row)
{
if($i==28)
{
echo "</details>\n";
echo "<details_1>\n";
}
echo " <detail>\n";
echo " <position><![CDATA[$row->position]]></position>\n";
echo " <menge><![CDATA[$row->menge]]></menge>\n";
echo " <verpackungseinheit><![CDATA[$row->verpackungseinheit]]></verpackungseinheit>\n";
echo " <beschreibung><![CDATA[$row->beschreibung]]></beschreibung>\n";
echo " <artikelnummer><![CDATA[$row->artikelnummer]]></artikelnummer>\n";
echo " <preisprove><![CDATA[",number_format($row->preisprove,2,',','.'),"]]></preisprove>\n";
echo " <mwst><![CDATA[",number_format($row->mwst,2,',','.'),"]]></mwst>\n";
$summe_brutto_detail=$row->menge*$row->preisprove/100*($row->mwst+100);
$summe_netto_detail=$row->menge*$row->preisprove;
echo " <summe_brutto><![CDATA[",number_format($summe_brutto_detail,2,',','.'),"]]></summe_brutto>\n";
echo " <summe_netto><![CDATA[",number_format($summe_netto_detail,2,',','.'),"]]></summe_netto>\n";
echo " </detail>\n";
$summe_brutto+=$summe_brutto_detail;
$summe_netto+=$row->menge*$row->preisprove;
$summe_mwst+=$row->menge*$row->preisprove/100*$row->mwst;
$i++;
}
if($i>28)
echo " </details_1>\n";
else
echo " </details>\n";
echo " <aufteilungen_1>\n";
$anzAufteilungen = sizeof($aufteilung->result);
$i = 0;
foreach($aufteilung->result as $aufteilung_row)
{
if($i==15)
{
echo '</aufteilungen_1>';
echo '<aufteilungen_2>';
}
$studiengang->getStudiengangFromOe($aufteilung_row->oe_kurzbz);
// Diplomstudiengänge nicht laden
if($studiengang->typ !='d' && $aufteilung_row->oe_kurzbz !='Infrastruktur' && $aufteilung_row->oe_kurzbz != 'etw')
{
echo " <aufteilung>\n";
echo " <oe><![CDATA[".strtoupper($aufteilung_row->oe_kurzbz)."]]></oe>\n";
echo " <prozent><![CDATA[$aufteilung_row->anteil]]></prozent>\n";
echo " </aufteilung>\n";
$i++;
}
}
if($i>15)
echo " </aufteilungen_2>\n";
else
echo " </aufteilungen_1>\n";
$oBestellung = new wawi_bestellung();
$oBestellung->getBestellungProjekt('lernquadrat');
foreach ($oBestellung->result as $bestellung)
{
$i=$oRdf->newObjekt($bestellung->bestellung_id);
$oRdf->obj[$i]->setAttribut('bestellung_id',$bestellung->bestellung_id,false);
$oRdf->obj[$i]->setAttribut('kostenstelle_id',$bestellung->kostenstelle_id,false);
$oRdf->obj[$i]->setAttribut('konto_id',$bestellung->konto_id,false);
$oRdf->obj[$i]->setAttribut('lieferadresse',$bestellung->lieferadresse,true);
$oRdf->obj[$i]->setAttribut('rechnungsadresse',$bestellung->rechnungsadresse,true);
$oRdf->obj[$i]->setAttribut('freigegeben',$bestellung->freigegeben,true);
$oRdf->obj[$i]->setAttribut('bestell_nr',$bestellung->bestell_nr,false);
$oRdf->obj[$i]->setAttribut('titel',$bestellung->titel,true);
$oRdf->obj[$i]->setAttribut('bemerkung',$bestellung->bemerkung,true);
$oRdf->obj[$i]->setAttribut('liefertermin',$bestellung->liefertermin,true);
$oRdf->obj[$i]->setAttribut('besteller_uid',$bestellung->besteller_uid,false);
$oRdf->obj[$i]->setAttribut('updateamum',$bestellung->updateamum,true);
$oRdf->obj[$i]->setAttribut('updatevon',$bestellung->updatevon,true);
$oRdf->obj[$i]->setAttribut('insertamum',$bestellung->insertamum,true);
$oRdf->obj[$i]->setAttribut('insertvon',$bestellung->insertvon,true);
$oRdf->obj[$i]->setAttribut('ext_id',$bestellung->ext_id,false);
$oRdf->obj[$i]->setAttribut('zahlungstyp_kurzbz',$bestellung->zahlungstyp_kurzbz,true);
echo " <datum><![CDATA[",date('d.m.Y'),"]]></datum>\n";
echo " <erstelldatum><![CDATA[",$datum_obj->formatDatum($bestellung->insertamum, 'd.m.Y'),"]]></erstelldatum>\n";
echo " <summe_netto>",number_format($summe_netto,2,',','.'),"</summe_netto>\n";
echo " <summe_mwst>",number_format($summe_mwst,2,',','.'),"</summe_mwst>\n";
echo " <summe_brutto>",number_format($summe_brutto,2,',','.'),"</summe_brutto>\n";
echo "</bestellung></bestellungen>";
}
else
die('Parameter id missing');
}
else
die('RDF not implemented! Use Parameter xmlformat=xml');
$oRdf->sendRdfText();
?>
+10 -34
View File
@@ -15,50 +15,26 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
*
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>
*/
// header für no cache
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/xhtml+xml");
// xml
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';
// DAO
require_once('../config/vilesci.config.inc.php');
require_once('../include/rdf.class.php');
require_once('../include/basis_db.class.php');
$rdf_url='http://www.technikum-wien.at/betreuerart';
echo '
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:BETREUERART="'.$rdf_url.'/rdf#"
>
<RDF:Seq about="'.$rdf_url.'/liste">
';
$oRdf = new rdf('BETREUERART','http://www.technikum-wien.at/betreuerart');
$oRdf->sendHeader();
$qry = "SELECT * FROM lehre.tbl_betreuerart ORDER BY betreuerart_kurzbz";
$db = new basis_db();
if($db->db_query($qry))
{
while($row = $db->db_fetch_object())
{
echo '
<RDF:li>
<RDF:Description id="'.$row->betreuerart_kurzbz.'" about="'.$rdf_url.'/'.$row->betreuerart_kurzbz.'" >
<BETREUERART:betreuerart_kurzbz><![CDATA['.$row->betreuerart_kurzbz.']]></BETREUERART:betreuerart_kurzbz>
<BETREUERART:beschreibung><![CDATA['.$row->beschreibung.']]></BETREUERART:beschreibung>
</RDF:Description>
</RDF:li>
';
{
$i=$oRdf->newObjekt($row->betreuerart_kurzbz);
//$oRdf->obj[$i]->setAttribut('id',$row->betreuerart_kurzbz,false);
$oRdf->obj[$i]->setAttribut('betreuerart_kurzbz',$row->betreuerart_kurzbz,true);
$oRdf->obj[$i]->setAttribut('beschreibung',$row->beschreibung,true);
}
}
$oRdf->sendRdfText();
?>
</RDF:Seq>
</RDF:RDF>