mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
GUI zur Verwaltung der Verträge im FAS
This commit is contained in:
+498
-29
@@ -15,40 +15,127 @@
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Nikolaus Krondraf <nikolaus.krondraf@technikum-wien.at>
|
||||
* Authors: Nikolaus Krondraf <nikolaus.krondraf@technikum-wien.at>,
|
||||
* Andreas Österreicher <andreas.oesterreicher@technikum-wien.at>
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class vertrag extends basis_db
|
||||
{
|
||||
public $new;
|
||||
public $new=true;
|
||||
public $result = array();
|
||||
|
||||
public $vertragtyp_kurzbz;
|
||||
public $vertragtyp_bezeichnung;
|
||||
|
||||
/**
|
||||
public $vertragstyp_bezeichnung;
|
||||
|
||||
public $vertrag_id; // bigint
|
||||
public $bezeichnung; // varchar(256)
|
||||
public $person_id; // bigint
|
||||
public $vertragstyp_kurzbz; // varchar(32)
|
||||
public $betrag; // numeric(8,2)
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(32)
|
||||
public $updateamum; // timestamp
|
||||
public $updatevon; // varchar(32)
|
||||
public $ext_id; // bigint
|
||||
|
||||
|
||||
/**
|
||||
* Konstruktor
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
|
||||
public function load($vertrag_id)
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_vertrag WHERE vertrag_id=".$this->db_add_param($vertrag_id, FHC_INTEGER);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->vertrag_id = $row->vertrag_id;
|
||||
$this->vertragstyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$this->bezeichnung = $row->bezeichnung;
|
||||
$this->betrag = $row->betrag;
|
||||
$this->person_id = $row->person_id;
|
||||
$this->new=false;
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Eintrag wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Verträge einer Person
|
||||
* @param $person_id
|
||||
* @return boolean true wenn ok ,false im Fehlerfall
|
||||
*/
|
||||
public function loadVertrag($person_id)
|
||||
{
|
||||
$qry = "SELECT
|
||||
*,
|
||||
tbl_vertrag.bezeichnung as bezeichnung,
|
||||
tbl_vertragstyp.bezeichnung as vertragstyp_bezeichnung
|
||||
FROM
|
||||
lehre.tbl_vertrag
|
||||
LEFT JOIN lehre.tbl_vertragstyp USING(vertragstyp_kurzbz)
|
||||
WHERE person_id=".$this->db_add_param($person_id);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new vertrag();
|
||||
|
||||
$obj->vertrag_id = $row->vertrag_id;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$obj->person_id = $row->person_id;
|
||||
$obj->vertragstyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$obj->betrag = $row->betrag;
|
||||
$obj->insertamum = $row->insertamum;
|
||||
$obj->insertvon = $row->insertvon;
|
||||
$obj->updateamum = $row->updateamum;
|
||||
$obj->updatevon = $row->updatevon;
|
||||
|
||||
$obj->vertragstyp_bezeichnung = $row->vertragstyp_bezeichnung;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert den Vertragstyp in der Datenbank
|
||||
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz
|
||||
* angelegt, ansonsten der Datensatz upgedated
|
||||
* @return true wenn erfolgreich, false im Fehlerfall
|
||||
*/
|
||||
public function saveVertragtyp($new=null)
|
||||
public function saveVertragstyp($new=null)
|
||||
{
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
if($this->vertragtyp_kurzbz=='')
|
||||
if($this->vertragstyp_kurzbz=='')
|
||||
{
|
||||
$this->errormsg = 'Vertragtyp_kurzbz muss angegeben werden';
|
||||
$this->errormsg = 'Vertragstyp_kurzbz muss angegeben werden';
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -56,7 +143,7 @@ class vertrag extends basis_db
|
||||
{
|
||||
//Prüfung, ob Eintrag bereits vorhanden
|
||||
$qry='SELECT vertragstyp_kurzbz FROM lehre.tbl_vertragstyp
|
||||
WHERE vertragstyp_kurzbz='.$this->db_add_param($this->vertragtyp_kurzbz);
|
||||
WHERE vertragstyp_kurzbz='.$this->db_add_param($this->vertragstyp_kurzbz);
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($this->db_fetch_object())
|
||||
@@ -75,14 +162,14 @@ class vertrag extends basis_db
|
||||
if($new)
|
||||
{
|
||||
$qry = 'INSERT INTO lehre.tbl_vertragstyp(vertragstyp_kurzbz, bezeichnung) VALUES('.
|
||||
$this->db_add_param($this->vertragtyp_kurzbz).','.
|
||||
$this->db_add_param($this->vertragtyp_bezeichnung).');';
|
||||
$this->db_add_param($this->vertragstyp_kurzbz).','.
|
||||
$this->db_add_param($this->vertragstyp_bezeichnung).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = 'UPDATE lehre.tbl_vertragstyp SET '.
|
||||
'bezeichnung = '.$this->db_add_param($this->vertragtyp_bezeichnung).
|
||||
'WHERE vertragstyp_kurzbz = '.$this->db_add_param($this->vertragtyp_kurzbz);
|
||||
'bezeichnung = '.$this->db_add_param($this->vertragstyp_bezeichnung).
|
||||
'WHERE vertragstyp_kurzbz = '.$this->db_add_param($this->vertragstyp_kurzbz);
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
@@ -98,13 +185,13 @@ class vertrag extends basis_db
|
||||
|
||||
/**
|
||||
* Loescht einen Vertragstyp wenn er noch nicht verwendet wird
|
||||
* @param vertragtyp_kurzbz
|
||||
* @param vertragstyp_kurzbz
|
||||
*/
|
||||
public function deleteVertragtyp($vertragtyp_kurzbz)
|
||||
public function deleteVertragstyp($vertragstyp_kurzbz)
|
||||
{
|
||||
// prüfen ob Vertrag bereits verwendet wird
|
||||
$qry = "SELECT vertragstyp_kurzbz FROM lehre.tbl_vertrag
|
||||
WHERE vertragstyp_kurzbz = " . $this->db_add_param($vertragtyp_kurzbz);
|
||||
WHERE vertragstyp_kurzbz = " . $this->db_add_param($vertragstyp_kurzbz);
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
@@ -120,14 +207,14 @@ class vertrag extends basis_db
|
||||
return false;
|
||||
}
|
||||
|
||||
if(is_null($vertragtyp_kurzbz))
|
||||
if(is_null($vertragstyp_kurzbz))
|
||||
{
|
||||
$this->errormsg = 'Vertragtyp_kurzbz darf nicht leer sein';
|
||||
$this->errormsg = 'Vertragstyp_kurzbz darf nicht leer sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "DELETE FROM lehre.tbl_vertragstyp
|
||||
WHERE vertragstyp_kurzbz=".$this->db_add_param($vertragtyp_kurzbz).";";
|
||||
WHERE vertragstyp_kurzbz=".$this->db_add_param($vertragstyp_kurzbz).";";
|
||||
|
||||
if($this->db_query($qry))
|
||||
return true;
|
||||
@@ -142,7 +229,7 @@ class vertrag extends basis_db
|
||||
* Liefert alle Vertragsytpen
|
||||
* @return true wenn ok false im Fehlerfall
|
||||
*/
|
||||
public function getAllVertragtypen()
|
||||
public function getAllVertragstypen()
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_vertragstyp ORDER BY bezeichnung;";
|
||||
|
||||
@@ -152,8 +239,8 @@ class vertrag extends basis_db
|
||||
{
|
||||
$vertrag = new vertrag();
|
||||
|
||||
$vertrag->vertragtyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$vertrag->vertragtyp_bezeichnung = $row->bezeichnung;
|
||||
$vertrag->vertragstyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$vertrag->vertragstyp_bezeichnung = $row->bezeichnung;
|
||||
|
||||
$this->result[] = $vertrag;
|
||||
}
|
||||
@@ -169,21 +256,21 @@ class vertrag extends basis_db
|
||||
/**
|
||||
* Laedt einen Vertragstyp
|
||||
*
|
||||
* @param $vertragtyp_kurzbz
|
||||
* @param $vertragstyp_kurzbz
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function loadVertragtyp($vertragtyp_kurzbz)
|
||||
public function loadVertragstyp($vertragstyp_kurzbz)
|
||||
{
|
||||
$qry="SELECT * FROM lehre.tbl_vertragstyp
|
||||
WHERE
|
||||
vertragstyp_kurzbz=".$this->db_add_param($vertragtyp_kurzbz);
|
||||
vertragstyp_kurzbz=".$this->db_add_param($vertragstyp_kurzbz);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->vertragtyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$this->vertragtyp_bezeichnung = $row->bezeichnung;
|
||||
$this->vertragstyp_kurzbz = $row->vertragstyp_kurzbz;
|
||||
$this->vertragstyp_bezeichnung = $row->bezeichnung;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
@@ -197,6 +284,388 @@ class vertrag extends basis_db
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die Vertragselemente die noch keinem Vertrag zugeordnet sind
|
||||
* @param $person_id
|
||||
* @return boolean true wenn ok ,false im Fehlerfall
|
||||
*/
|
||||
public function loadNichtZugeordnet($person_id)
|
||||
{
|
||||
/*
|
||||
Lehrauftraege
|
||||
UNION
|
||||
Betreuungen
|
||||
UNION
|
||||
Pruefungen
|
||||
*/
|
||||
$qry = "
|
||||
SELECT
|
||||
'Lehrauftrag' as type,
|
||||
lehreinheit_id,
|
||||
mitarbeiter_uid,
|
||||
null as pruefung_id,
|
||||
null as projektarbeit_id,
|
||||
(tbl_lehreinheitmitarbeiter.faktor*tbl_lehreinheitmitarbeiter.semesterstunden*tbl_lehreinheitmitarbeiter.stundensatz) as betrag,
|
||||
tbl_lehreinheit.studiensemester_kurzbz,
|
||||
null as betreuerart_kurzbz,
|
||||
( SELECT
|
||||
upper(tbl_studiengang.typ || tbl_studiengang.kurzbz) || tbl_lehrveranstaltung.semester || '-' || tbl_lehrveranstaltung.kurzbz || '-' || tbl_lehreinheit.lehrform_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
JOIN public.tbl_studiengang USING(studiengang_kz)
|
||||
WHERE
|
||||
lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id)
|
||||
as bezeichnung
|
||||
FROM
|
||||
lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
mitarbeiter_uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER).")
|
||||
AND vertrag_id IS NULL
|
||||
UNION
|
||||
SELECT
|
||||
'Betreuung' as type,
|
||||
tbl_projektarbeit.lehreinheit_id as lehreinheit_id,
|
||||
null as mitarbeiter_uid,
|
||||
null::integer as pruefung_id,
|
||||
projektarbeit_id,
|
||||
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stunden*tbl_projektbetreuer.stundensatz) as betrag,
|
||||
tbl_lehreinheit.studiensemester_kurzbz,
|
||||
tbl_projektbetreuer.betreuerart_kurzbz,
|
||||
(SELECT nachname || ' ' || vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=tbl_projektarbeit.student_uid)
|
||||
as bezeichnung
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer
|
||||
JOIN lehre.tbl_projektarbeit USING(projektarbeit_id)
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
|
||||
AND vertrag_id IS NULL
|
||||
UNION
|
||||
SELECT
|
||||
'Pruefung' as type,
|
||||
lehreinheit_id,
|
||||
mitarbeiter_uid,
|
||||
pruefung_id,
|
||||
null as projektarbeit_id,
|
||||
'".PRUEFUNGSHONORAR."' as betrag,
|
||||
tbl_lehreinheit.studiensemester_kurzbz AS studiensemester_kurzbz,
|
||||
null as betreuerart_kurzbz,
|
||||
( SELECT
|
||||
nachname || ' ' || vorname || ' ' || (SELECT kurzbz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id)
|
||||
FROM
|
||||
public.tbl_person
|
||||
JOIN public.tbl_benutzer USING(person_id)
|
||||
WHERE uid=tbl_pruefung.student_uid)
|
||||
as bezeichnung
|
||||
FROM
|
||||
lehre.tbl_pruefung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
mitarbeiter_uid IN (SELECT uid FROM public.tbl_benutzer WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER).")
|
||||
AND vertrag_id IS NULL
|
||||
";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
|
||||
$obj->type = $row->type;
|
||||
$obj->lehreinheit_id = $row->lehreinheit_id;
|
||||
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
|
||||
$obj->projektarbeit_id = $row->projektarbeit_id;
|
||||
$obj->pruefung_id = $row->pruefung_id;
|
||||
$obj->betrag = $row->betrag;
|
||||
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$obj->betreuerart_kurzbz = $row->betreuerart_kurzbz;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Laedt die Vertragselemente die einem Vertrag zugeordnet sind
|
||||
* @param $vertrag_id
|
||||
* @return boolean true wenn ok ,false im Fehlerfall
|
||||
*/
|
||||
public function loadZugeordnet($vertrag_id)
|
||||
{
|
||||
/*
|
||||
Lehrauftraege
|
||||
UNION
|
||||
Betreuungen
|
||||
UNION
|
||||
Pruefungen
|
||||
*/
|
||||
$qry = "
|
||||
SELECT
|
||||
'Lehrauftrag' as type,
|
||||
lehreinheit_id,
|
||||
mitarbeiter_uid,
|
||||
null as pruefung_id,
|
||||
null as projektarbeit_id,
|
||||
(tbl_lehreinheitmitarbeiter.faktor*tbl_lehreinheitmitarbeiter.semesterstunden*tbl_lehreinheitmitarbeiter.stundensatz) as betrag,
|
||||
tbl_lehreinheit.studiensemester_kurzbz,
|
||||
null as betreuerart_kurzbz,
|
||||
( SELECT
|
||||
upper(tbl_studiengang.typ || tbl_studiengang.kurzbz) || tbl_lehrveranstaltung.semester || '-' || tbl_lehrveranstaltung.kurzbz || '-' || tbl_lehreinheit.lehrform_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehrveranstaltung
|
||||
JOIN public.tbl_studiengang USING(studiengang_kz)
|
||||
WHERE
|
||||
lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id)
|
||||
as bezeichnung
|
||||
FROM
|
||||
lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
vertrag_id=".$this->db_add_param($vertrag_id, FHC_INTEGER)."
|
||||
UNION
|
||||
SELECT
|
||||
'Betreuung' as type,
|
||||
tbl_projektarbeit.lehreinheit_id as lehreinheit_id,
|
||||
null as mitarbeiter_uid,
|
||||
null::integer as pruefung_id,
|
||||
projektarbeit_id,
|
||||
(tbl_projektbetreuer.faktor*tbl_projektbetreuer.stunden*tbl_projektbetreuer.stundensatz) as betrag,
|
||||
tbl_lehreinheit.studiensemester_kurzbz,
|
||||
tbl_projektbetreuer.betreuerart_kurzbz,
|
||||
(SELECT nachname || ' ' || vorname FROM public.tbl_person JOIN public.tbl_benutzer USING(person_id) WHERE uid=tbl_projektarbeit.student_uid)
|
||||
as bezeichnung
|
||||
FROM
|
||||
lehre.tbl_projektbetreuer
|
||||
JOIN lehre.tbl_projektarbeit USING(projektarbeit_id)
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
vertrag_id=".$this->db_add_param($vertrag_id, FHC_INTEGER)."
|
||||
UNION
|
||||
SELECT
|
||||
'Pruefung' as type,
|
||||
lehreinheit_id,
|
||||
mitarbeiter_uid,
|
||||
pruefung_id,
|
||||
null as projektarbeit_id,
|
||||
'".PRUEFUNGSHONORAR."' as betrag,
|
||||
tbl_lehreinheit.studiensemester_kurzbz AS studiensemester_kurzbz,
|
||||
null as betreuerart_kurzbz,
|
||||
( SELECT
|
||||
nachname || ' ' || vorname || ' ' || (SELECT kurzbz FROM lehre.tbl_lehrveranstaltung WHERE lehrveranstaltung_id=tbl_lehreinheit.lehrveranstaltung_id)
|
||||
FROM
|
||||
public.tbl_person
|
||||
JOIN public.tbl_benutzer USING(person_id)
|
||||
WHERE uid=tbl_pruefung.student_uid)
|
||||
as bezeichnung
|
||||
FROM
|
||||
lehre.tbl_pruefung
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
WHERE
|
||||
vertrag_id=".$this->db_add_param($vertrag_id, FHC_INTEGER);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
|
||||
$obj->type = $row->type;
|
||||
$obj->lehreinheit_id = $row->lehreinheit_id;
|
||||
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
|
||||
$obj->projektarbeit_id = $row->projektarbeit_id;
|
||||
$obj->pruefung_id = $row->pruefung_id;
|
||||
$obj->betrag = $row->betrag;
|
||||
$obj->studiensemester_kurzbz = $row->studiensemester_kurzbz;
|
||||
$obj->betreuerart_kurzbz = $row->betreuerart_kurzbz;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert einen Vertrag
|
||||
*/
|
||||
public function save($new=null)
|
||||
{
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
|
||||
if($new)
|
||||
{
|
||||
$qry = "BEGIN;INSERT INTO lehre.tbl_vertrag(bezeichnung, person_id, vertragstyp_kurzbz, betrag, insertamum, insertvon, updateamum, updatevon)
|
||||
VALUES(".
|
||||
$this->db_add_param($this->bezeichnung).','.
|
||||
$this->db_add_param($this->person_id,FHC_INTEGER).','.
|
||||
$this->db_add_param($this->vertragstyp_kurzbz).','.
|
||||
$this->db_add_param($this->betrag).','.
|
||||
$this->db_add_param($this->insertamum).','.
|
||||
$this->db_add_param($this->insertvon).','.
|
||||
$this->db_add_param($this->updateamum).','.
|
||||
$this->db_add_param($this->updatevon).');';
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = "UPDATE lehre.tbl_vertrag SET ".
|
||||
" bezeichnung=".$this->db_add_param($this->bezeichnung).','.
|
||||
" person_id=".$this->db_add_param($this->person_id, FHC_INTEGER).','.
|
||||
" vertragstyp_kurzbz=".$this->db_add_param($this->vertragstyp_kurzbz).','.
|
||||
" betrag=".$this->db_add_param($this->betrag).','.
|
||||
" updateamum=".$this->db_add_param($this->updateamum).','.
|
||||
" updatevon=".$this->db_add_param($this->updatevon).
|
||||
" WHERE vertrag_id=".$this->db_add_param($this->vertrag_id, FHC_INTEGER,false);
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($new)
|
||||
{
|
||||
//Sequence auslesen
|
||||
$qry = "SELECT currval('lehre.seq_vertrag_vertrag_id') as id;";
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$this->vertrag_id = $row->id;
|
||||
$this->new=false;
|
||||
$this->db_query('COMMIT');
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Auslesen der Sequence';
|
||||
$this->db_query('ROLLBACK;');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Auslesen der Sequence';
|
||||
$this->db_query('ROLLBACK;');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler beim Speichern der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Stati eines Vertrags
|
||||
*
|
||||
* @param $vertrag_id
|
||||
* @return boolean
|
||||
*/
|
||||
public function getAllStatus($vertrag_id)
|
||||
{
|
||||
$qry="SELECT
|
||||
*
|
||||
FROM
|
||||
lehre.tbl_vertrag_vertragsstatus
|
||||
JOIN lehre.tbl_vertragsstatus USING(vertragsstatus_kurzbz)
|
||||
WHERE
|
||||
tbl_vertrag_vertragsstatus.vertrag_id=".$this->db_add_param($vertrag_id)."
|
||||
ORDER BY datum DESC";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
$obj->vertrag_id = $row->vertrag_id;
|
||||
$obj->vertragsstatus_kurzbz = $row->vertragsstatus_kurzbz;
|
||||
$obj->vertragsstatus_bezeichnung = $row->bezeichnung;
|
||||
$obj->datum = $row->datum;
|
||||
$obj->uid = $row->uid;
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function saveVertragsstatus($new=null)
|
||||
{
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
if($new)
|
||||
{
|
||||
$qry = "INSERT INTO lehre.tbl_vertrag_vertragsstatus(vertragsstatus_kurzbz, vertrag_id, uid, datum) VALUES(".
|
||||
$this->db_add_param($this->vertragsstatus_kurzbz).','.
|
||||
$this->db_add_param($this->vertrag_id).','.
|
||||
$this->db_add_param($this->uid).','.
|
||||
$this->db_add_param($this->datum).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Update not implemented';
|
||||
return false;
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt alle Vorhandenen Vertragsstati
|
||||
* @return boolean true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
public function loadVertragsstatus()
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_vertragsstatus ORDER BY bezeichnung";
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$obj = new stdClass();
|
||||
$obj->vertragsstatus_kurzbz = $row->vertragsstatus_kurzbz;
|
||||
$obj->bezeichnung = $row->bezeichnung;
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user