ext_id aus Save Funktionen entfernt damit diese beim Speichern von Datensätzen nicht verloren geht

This commit is contained in:
oesi
2015-08-18 11:26:01 +02:00
parent 21b2b60fc2
commit 2ec1996b0f
36 changed files with 2609 additions and 2679 deletions
+170 -172
View File
@@ -15,7 +15,7 @@
* 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>,
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
*/
@@ -53,9 +53,9 @@ class prestudent extends person
public $mentor;
public $ext_id_prestudent;
public $dual = false;
public $zgvdoktor_code;
public $zgvdoktorort;
public $zgvdoktordatum;
public $zgvdoktor_code;
public $zgvdoktorort;
public $zgvdoktordatum;
public $zgvdoktornation;
public $status_kurzbz;
@@ -78,7 +78,7 @@ class prestudent extends person
// ErgebnisArray
public $result = array();
public $num_rows = 0;
/**
* Konstruktor - Uebergibt die Connection und laedt optional einen Prestudent
* @param $prestudent_id Prestudent der geladen werden soll (default=null)
@@ -90,7 +90,7 @@ class prestudent extends person
if($prestudent_id != null)
$this->load($prestudent_id);
}
/**
* Laedt Prestudent mit der uebergebenen ID
* @param $prestudent_id ID des Prestudenten der geladen werden soll
@@ -102,11 +102,11 @@ class prestudent extends person
$this->errormsg = 'ID ist ungueltig';
return false;
}
$qry = 'SELECT * '
. 'FROM public.tbl_prestudent '
. 'WHERE prestudent_id = '.$this->db_add_param($prestudent_id, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
@@ -140,31 +140,31 @@ class prestudent extends person
$this->ext_id_prestudent = $row->ext_id;
$this->dual = $this->db_parse_bool($row->dual);
$this->ausstellungsstaat = $row->ausstellungsstaat;
$this->zgvdoktor_code = $row->zgvdoktor_code;
$this->zgvdoktor_code = $row->zgvdoktor_code;
$this->zgvdoktorort = $row->zgvdoktorort;
$this->zgvdoktordatum = $row->zgvdoktordatum;
$this->zgvdoktornation = $row->zgvdoktornation;
if(!person::load($row->person_id))
return false;
else
else
return true;
}
else
else
{
$this->errormsg = "Kein Prestudent Eintrag gefunden";
return false;
}
}
}
else
else
{
$this->errormsg = "Fehler beim Laden des Prestudenten";
return false;
}
}
}
/**
* Prueft die Variablen vor dem Speichern
* Prueft die Variablen vor dem Speichern
* auf Gueltigkeit.
* @return true wenn ok, false im Fehlerfall
*/
@@ -193,7 +193,7 @@ class prestudent extends person
return true;
}
/**
* Speichert die Benutzerdaten in die Datenbank
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz angelegt
@@ -211,15 +211,15 @@ class prestudent extends person
//Variablen auf Gueltigkeit pruefen
if(!prestudent::validate())
return false;
if($this->new) //Wenn new true ist dann ein INSERT absetzen ansonsten ein UPDATE
{
$qry = 'BEGIN;INSERT INTO public.tbl_prestudent (aufmerksamdurch_kurzbz, person_id,
$qry = 'BEGIN;INSERT INTO public.tbl_prestudent (aufmerksamdurch_kurzbz, person_id,
studiengang_kz, berufstaetigkeit_code, ausbildungcode, zgv_code, zgvort, zgvdatum, zgvnation,
zgvmas_code, zgvmaort, zgvmadatum, zgvmanation, aufnahmeschluessel, facheinschlberuf,
reihungstest_id, anmeldungreihungstest, reihungstestangetreten, rt_gesamtpunkte,
rt_punkte1, rt_punkte2, rt_punkte3, bismelden, insertamum, insertvon,
updateamum, updatevon, ext_id, anmerkung, dual, ausstellungsstaat, mentor) VALUES('.
reihungstest_id, anmeldungreihungstest, reihungstestangetreten, rt_gesamtpunkte,
rt_punkte1, rt_punkte2, rt_punkte3, bismelden, insertamum, insertvon,
updateamum, updatevon, anmerkung, dual, ausstellungsstaat, mentor) VALUES('.
$this->db_add_param($this->aufmerksamdurch_kurzbz).",".
$this->db_add_param($this->person_id).",".
$this->db_add_param($this->studiengang_kz).",".
@@ -247,7 +247,6 @@ class prestudent extends person
$this->db_add_param($this->insertvon).",".
$this->db_add_param($this->updateamum).",".
$this->db_add_param($this->updatevon).",".
$this->db_add_param($this->ext_id_prestudent).",".
$this->db_add_param($this->anmerkung).",".
$this->db_add_param($this->dual, FHC_BOOLEAN).",".
$this->db_add_param($this->ausstellungsstaat).",".
@@ -281,14 +280,13 @@ class prestudent extends person
' bismelden='.$this->db_add_param($this->bismelden, FHC_BOOLEAN).",".
' updateamum='.$this->db_add_param($this->updateamum).",".
' updatevon='.$this->db_add_param($this->updatevon).",".
' ext_id='.$this->db_add_param($this->ext_id_prestudent).",".
' anmerkung='.$this->db_add_param($this->anmerkung).",".
' mentor='.$this->db_add_param($this->mentor).",".
' dual='.$this->db_add_param($this->dual, FHC_BOOLEAN).",".
' ausstellungsstaat='.$this->db_add_param($this->ausstellungsstaat).
" WHERE prestudent_id=".$this->db_add_param($this->prestudent_id).";";
}
if($this->db_query($qry))
{
if($this->new)
@@ -302,14 +300,14 @@ class prestudent extends person
$this->db_query('COMMIT;');
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
return false;
}
}
}
else
else
{
$this->errormsg = 'Fehler beim Auslesen der Sequence';
$this->db_query('ROLLBACK;');
@@ -319,8 +317,8 @@ class prestudent extends person
//Log schreiben
return true;
}
else
{
else
{
$this->errormsg = 'Fehler beim Speichern des Prestudent-Datensatzes';
return false;
}
@@ -348,8 +346,8 @@ class prestudent extends person
/**
* Laden aller Prestudenten, die an $datum zum Reihungstest geladen sind.
* Wenn $equal auf true gesetzt ist wird genau dieses Datum verwendet,
* ansonsten werden auch alle mit späterem Datum geladen. ---> von kindlm am 30.03.2012 geändert
* da zukünftige Teilnehmer nicht mehr angezeigt werden sollen.
* ansonsten werden auch alle mit späterem Datum geladen. ---> von kindlm am 30.03.2012 geändert
* da zukünftige Teilnehmer nicht mehr angezeigt werden sollen.
* @return true wenn erfolgreich, false im Fehlerfall
*/
public function getPrestudentRT($datum, $equal=false)
@@ -360,15 +358,15 @@ class prestudent extends person
else
$sql_query.='=';
$sql_query.="'$datum' ORDER BY nachname,vorname";
if(!$this->db_query($sql_query))
{
{
$this->errormsg = 'Fehler beim Speichern des Benutzer-Datensatzes:'.$sql_query;
return false;
}
$this->num_rows=0;
while($row = $this->db_fetch_object())
{
$ps=new prestudent();
@@ -426,11 +424,11 @@ class prestudent extends person
$ps->insertvon = $row->insertvon;
//$ps->ext_id_prestudent = $row->ext_id_prestudent;
$this->result[]=$ps;
$this->num_rows++;
$this->num_rows++;
}
return true;
return true;
}
/**
* Laedt die Rolle(n) eines Prestudenten
*/
@@ -441,13 +439,13 @@ class prestudent extends person
$this->errormsg = 'Prestudent_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT
$qry = "SELECT
tbl_prestudentstatus.*, tbl_studienplan.bezeichnung as studienplan_bezeichnung
FROM public.tbl_prestudentstatus
FROM public.tbl_prestudentstatus
LEFT JOIN lehre.tbl_studienplan USING(studienplan_id)
WHERE
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
WHERE
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if($status_kurzbz!=null)
$qry.= " AND status_kurzbz=".$this->db_add_param($status_kurzbz);
if($studiensemester_kurzbz!=null)
@@ -457,13 +455,13 @@ class prestudent extends person
if($order!='')
$qry.=" ORDER BY ".$order;
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$rolle = new prestudent();
$rolle->prestudent_id = $row->prestudent_id;
$rolle->status_kurzbz = $row->status_kurzbz;
$rolle->studiensemester_kurzbz = $row->studiensemester_kurzbz;
@@ -483,13 +481,13 @@ class prestudent extends person
}
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
}
}
/**
* Laedt die Rolle
*
@@ -506,16 +504,16 @@ class prestudent extends person
$this->errormsg = 'Prestudent_id muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT * FROM public.tbl_prestudentstatus WHERE prestudent_id=".$this->db_add_param($prestudent_id).
" AND status_kurzbz=".$this->db_add_param($status_kurzbz).
" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz).
" AND ausbildungssemester=".$this->db_add_param($ausbildungssemester);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
{
$this->prestudent_id = $row->prestudent_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
@@ -533,19 +531,19 @@ class prestudent extends person
return true;
}
else
else
{
$this->errormsg = 'Rolle existiert nicht';
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
}
}
/**
* Laedt die Interessenten und Bewerber fuer ein bestimmtes Studiensemester
* @param $studiensemester_kurzbz Studiensemester fuer das die Int. und Bewerber
@@ -556,36 +554,36 @@ class prestudent extends person
$stsemqry='';
if(!is_null($studiensemester_kurzbz) && $studiensemester_kurzbz!='')
$stsemqry=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
$qry = "SELECT
*, a.anmerkung, tbl_person.anmerkung as anmerkungen
FROM
$qry = "SELECT
*, a.anmerkung, tbl_person.anmerkung as anmerkungen
FROM
(
SELECT
*, (SELECT status_kurzbz FROM tbl_prestudentstatus
SELECT
*, (SELECT status_kurzbz FROM tbl_prestudentstatus
WHERE prestudent_id=prestudent.prestudent_id $stsemqry
ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) AS rolle
ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) AS rolle
FROM tbl_prestudent prestudent ORDER BY prestudent_id
) a, tbl_prestudentstatus, tbl_person
WHERE a.rolle=tbl_prestudentstatus.status_kurzbz AND
WHERE a.rolle=tbl_prestudentstatus.status_kurzbz AND
a.person_id=tbl_person.person_id AND
a.prestudent_id = tbl_prestudentstatus.prestudent_id AND
a.studiengang_kz=".$this->db_add_param($studiengang_kz);
if(!is_null($studiensemester_kurzbz) && $studiensemester_kurzbz!='')
$qry.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
if($semester!=null)
$qry.=" AND ausbildungssemester=".$this->db_add_param($semester);
if($orgform!=null && $orgform!='')
$qry.=" AND tbl_prestudentstatus.orgform_kurzbz=".$this->db_add_param($orgform);
switch ($typ)
{
case "interessenten":
case "interessenten":
$qry.=" AND a.rolle='Interessent'";
break;
case "zgv":
case "zgv":
$stg_obj = new studiengang();
$stg_obj->load($studiengang_kz);
if($stg_obj->typ=='m')
@@ -593,7 +591,7 @@ class prestudent extends person
else
$qry.=" AND a.rolle='Interessent' AND a.zgv_code is not null";
break;
case "reihungstestangemeldet":
case "reihungstestangemeldet":
$qry.=" AND a.rolle='Interessent' AND a.anmeldungreihungstest is not null";
break;
case "reihungstestnichtangemeldet":
@@ -614,7 +612,7 @@ class prestudent extends person
case "prestudent":
if($studiensemester_kurzbz=='' || is_null($studiensemester_kurzbz))
$qry = "SELECT *, '' as status_kurzbz, '' as studiensemester_kurzbz, '' as ausbildungssemester, '' as datum, tbl_person.anmerkung as anmerkungen, '' as orgform_kurzbz FROM public.tbl_prestudent prestudent, public.tbl_person WHERE NOT EXISTS (select * from tbl_prestudentstatus WHERE prestudent_id=prestudent.prestudent_id) AND studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)." AND prestudent.person_id=tbl_person.person_id";
else
else
$qry .= " AND a.rolle IN('Interessent', 'Bewerber', 'Aufgenommener', 'Wartender', 'Abgewiesener')";
break;
case "absolvent":
@@ -623,8 +621,8 @@ class prestudent extends person
case "diplomand":
$qry.=" AND a.rolle='Diplomand'";
break;
default:
break;
default:
break;
}
if($this->db_query($qry))
@@ -632,7 +630,7 @@ class prestudent extends person
while($row = $this->db_fetch_object())
{
$ps = new prestudent();
$ps->person_id = $row->person_id;
$ps->staatsbuergerschaft = $row->staatsbuergerschaft;
$ps->gebnation = $row->geburtsnation;
@@ -655,7 +653,7 @@ class prestudent extends person
$ps->geschlecht = $row->geschlecht;
$ps->anzahlkinder = $row->anzahlkinder;
$ps->aktiv = $this->db_parse_bool($row->aktiv);
$ps->prestudent_id = $row->prestudent_id;
$ps->aufmerksamdurch_kurzbz = $row->aufmerksamdurch_kurzbz;
$ps->studiengang_kz = $row->studiengang_kz;
@@ -682,24 +680,24 @@ class prestudent extends person
$ps->bismelden = $this->db_parse_bool($row->bismelden);
$ps->anmerkung = $row->anmerkung;
$ps->dual = $this->db_parse_bool($row->dual);
$ps->status_kurzbz = $row->status_kurzbz;
$ps->studiensemester_kurzbz = $row->studiensemester_kurzbz;
$ps->ausbildungssemester = $row->ausbildungssemester;
$ps->datum = $row->datum;
$ps->orgform_kurzbz = $row->orgform_kurzbz;
$this->result[] = $ps;
}
return true;
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Prueft ob eine Person bereits einen PreStudenteintrag
* fuer einen Studiengang besitzt
@@ -716,45 +714,45 @@ class prestudent extends person
$this->errormsg = 'Person_id muss eine gueltige Zahl sein';
return false;
}
if(!is_numeric($studiengang_kz))
{
$this->errormsg = 'Studiengang_kz muss eine gueltige Zahl sein';
return false;
}
$qry = "SELECT count(*) as anzahl FROM public.tbl_prestudent
WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
$qry = "SELECT count(*) as anzahl FROM public.tbl_prestudent
WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER)."
AND studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER);
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
{
if($row->anzahl>0)
{
$this->errormsg = '';
return true;
}
else
else
{
$this->errormsg = '';
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Speichert den Prestudentstatus
* @return true wenn ok, false im Fehlerfall
@@ -770,8 +768,8 @@ class prestudent extends person
return false;
}
$qry = 'INSERT INTO public.tbl_prestudentstatus (prestudent_id, status_kurzbz,
studiensemester_kurzbz, ausbildungssemester, datum, insertamum, insertvon,
$qry = 'INSERT INTO public.tbl_prestudentstatus (prestudent_id, status_kurzbz,
studiensemester_kurzbz, ausbildungssemester, datum, insertamum, insertvon,
updateamum, updatevon, ext_id, orgform_kurzbz, bestaetigtam, bestaetigtvon, anmerkung,
studienplan_id) VALUES('.
$this->db_add_param($this->prestudent_id).",".
@@ -791,12 +789,12 @@ class prestudent extends person
$this->db_add_param($this->studienplan_id,FHC_INTEGER).");";
}
else
{
if($this->studiensemester_old=='')
{
if($this->studiensemester_old=='')
$this->studiensemester_old = $this->studiensemester_kurzbz;
if($this->ausbildungssemester_old=='')
$this->ausbildungssemester_old = $this->ausbildungssemester;
//wenn der PrimaryKey geaendert wird, schauen ob schon ein Eintrag mit diesem Key vorhanden ist
if($this->studiensemester_old!=$this->studiensemester_kurzbz || $this->ausbildungssemester_old!=$this->ausbildungssemester)
{
@@ -817,25 +815,25 @@ class prestudent extends person
' studienplan_id='.$this->db_add_param($this->studienplan_id, FHC_INTEGER).",".
' anmerkung='.$this->db_add_param($this->anmerkung_status).",".
' orgform_kurzbz='.$this->db_add_param($this->orgform_kurzbz).
" WHERE
prestudent_id=".$this->db_add_param($this->prestudent_id, FHC_INTEGER, false)."
" WHERE
prestudent_id=".$this->db_add_param($this->prestudent_id, FHC_INTEGER, false)."
AND status_kurzbz=".$this->db_add_param($this->status_kurzbz, FHC_STRING, false)."
AND studiensemester_kurzbz=".$this->db_add_param($this->studiensemester_old, FHC_STRING, false)."
AND ausbildungssemester=".$this->db_add_param($this->ausbildungssemester_old, FHC_STRING, false).";";
}
if($this->db_query($qry))
{
//Log schreiben
return true;
}
else
{
else
{
$this->errormsg = 'Fehler beim Speichern des Prestudentstatus';
return false;
}
}
/**
* Loescht einen Prestudentstatus
* @param $prestudent_id
@@ -852,8 +850,8 @@ class prestudent extends person
return false;
}
$qry = "DELETE FROM public.tbl_prestudentstatus
WHERE
$qry = "DELETE FROM public.tbl_prestudentstatus
WHERE
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
AND status_kurzbz=".$this->db_add_param($status_kurzbz)."
AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz)."
@@ -862,9 +860,9 @@ class prestudent extends person
if($this->load_rolle($prestudent_id, $status_kurzbz, $studiensemester_kurzbz, $ausbildungssemester))
{
$this->db_query('BEGIN;');
$log = new log();
$log->executetime = date('Y-m-d H:i:s');
$log->beschreibung = 'Loeschen der Rolle '.$status_kurzbz.' bei '.$prestudent_id;
$log->mitarbeiter_uid = get_uid();
@@ -889,32 +887,32 @@ class prestudent extends person
$this->db_add_param($this->studienplan_id, FHC_INTEGER).');';
if($log->save(true))
{
if($this->db_query($qry))
{
$this->db_query('COMMIT');
return true;
}
else
else
{
$this->db_query('ROLLBACK');
$this->errormsg = 'Fehler beim Loeschen der Daten';
return false;
}
}
else
else
{
$this->db_query('ROLLBACK');
$this->errormsg = 'Fehler beim Speichern des Log-Eintrages';
return false;
}
}
else
else
{
return false;
}
}
}
public function bestaetige_rolle($prestudent_id, $status_kurzbz, $studiensemester_kurzbz, $ausbildungssemester, $user)
{
if(!is_numeric($prestudent_id))
@@ -926,12 +924,12 @@ class prestudent extends person
$qry = 'UPDATE public.tbl_prestudentstatus SET'.
' bestaetigtam='.$this->db_add_param(date('Y-m-d')).','.
' bestaetigtvon='.$this->db_add_param($user)." ".
' WHERE
' WHERE
prestudent_id='.$this->db_add_param($prestudent_id, FHC_INTEGER).'
AND status_kurzbz='.$this->db_add_param($status_kurzbz).'
AND studiensemester_kurzbz='.$this->db_add_param($studiensemester_kurzbz).'
AND ausbildungssemester='.$this->db_add_param($ausbildungssemester);
if($this->db_query($qry))
{
return true;
@@ -957,22 +955,22 @@ class prestudent extends person
$this->errormsg = 'Prestudent_id ist ungueltig';
return false;
}
$qry = "SELECT tbl_prestudentstatus.*, bezeichnung AS studienplan_bezeichnung
$qry = "SELECT tbl_prestudentstatus.*, bezeichnung AS studienplan_bezeichnung
FROM public.tbl_prestudentstatus LEFT JOIN lehre.tbl_studienplan USING (studienplan_id)
WHERE prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER);
if($studiensemester_kurzbz!='')
$qry.=" AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
if($status_kurzbz !='')
$qry.= " AND status_kurzbz =".$this->db_add_param($status_kurzbz);
$qry.=" ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
{
$this->prestudent_id = $row->prestudent_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
@@ -987,21 +985,21 @@ class prestudent extends person
$this->orgform_kurzbz = $row->orgform_kurzbz;
$this->studienplan_id = $row->studienplan_id;
$this->studienplan_bezeichnung = $row->studienplan_bezeichnung;
return true;
return true;
}
else
else
{
$this->errormsg = 'Keine Rolle vorhanden';
return false;
}
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
}
}
/**
* Liefert den Ersten Status eines Prestudenten mit der übergebenen Statuskurzbezeichnung
* @param $prestudent_id
@@ -1015,16 +1013,16 @@ class prestudent extends person
$this->errormsg = 'Prestudent_id ist ungueltig';
return false;
}
$qry = "SELECT * FROM public.tbl_prestudentstatus
WHERE
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
$qry = "SELECT * FROM public.tbl_prestudentstatus
WHERE
prestudent_id=".$this->db_add_param($prestudent_id, FHC_INTEGER)."
AND status_kurzbz = ".$this->db_add_param($status_kurzbz)."
ORDER BY datum ASC, insertamum ASC, ext_id ASC LIMIT 1";
if($this->db_query($qry))
{
if($row = $this->db_fetch_object())
{
{
$this->prestudent_id = $row->prestudent_id;
$this->status_kurzbz = $row->status_kurzbz;
$this->studiensemester_kurzbz = $row->studiensemester_kurzbz;
@@ -1038,15 +1036,15 @@ class prestudent extends person
$this->bestaetigtvon = $row->bestaetigtvon;
$this->orgform_kurzbz = $row->orgform_kurzbz;
$this->studienplan_id = $row->studienplan_id;
return true;
return true;
}
else
else
{
$this->errormsg = 'Keine Rolle vorhanden';
return false;
}
}
}
else
else
{
$this->errormsg = 'Fehler beim Laden der PrestudentDaten';
return false;
@@ -1064,15 +1062,15 @@ class prestudent extends person
$this->errormsg='ID ist ungueltig';
return false;
}
$qry = "SELECT * FROM public.tbl_prestudent WHERE person_id=".$this->db_add_param($person_id, FHC_INTEGER)." ORDER BY prestudent_id";
if($this->db_query($qry))
{
while($row = $this->db_fetch_object())
{
$obj = new prestudent();
$obj->prestudent_id = $row->prestudent_id;
$obj->aufmerksamdurch_kurzbz = $row->aufmerksamdurch_kurzbz;
$obj->studiengang_kz = $row->studiengang_kz;
@@ -1102,15 +1100,15 @@ class prestudent extends person
$obj->ext_id_prestudent = $row->ext_id;
$obj->dual = $this->db_parse_bool($row->dual);
$obj->ausstellungsstaat = $row->ausstellungsstaat;
$obj->zgvdoktor_code = $row->zgvdoktor_code;
$obj->zgvdoktorort = $row->zgvdoktorort;
$obj->zgvdoktordatum = $row->zgvdoktordatum;
$obj->zgvdoktor_code = $row->zgvdoktor_code;
$obj->zgvdoktorort = $row->zgvdoktorort;
$obj->zgvdoktordatum = $row->zgvdoktordatum;
$this->result[] = $obj;
}
return true;
}
else
else
{
$this->errormsg = "Fehler beim Laden";
return false;
@@ -1180,7 +1178,7 @@ class prestudent extends person
{
$qry = "SELECT
count(*) as anzahl
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
@@ -1227,7 +1225,7 @@ class prestudent extends person
{
$qry = "SELECT
count(*) as anzahl
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
@@ -1274,7 +1272,7 @@ class prestudent extends person
{
$qry = "SELECT
count(*) as anzahl
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
@@ -1323,11 +1321,11 @@ class prestudent extends person
public function listAnzBewerber($studiensemester_kurzbz=null)
{
$qry = "SELECT
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudent.studiengang_kz,
tbl_prestudentstatus.ausbildungssemester,
COALESCE(tbl_prestudentstatus.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) as orgform_kurzbz
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
@@ -1353,7 +1351,7 @@ class prestudent extends person
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']=0;
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']++;
// Orgform
if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']))
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']=0;
@@ -1375,10 +1373,10 @@ class prestudent extends person
}
}
/**
* Liefert ein Array mit den Interessentenzahlen
* @param $studiensemester_kurzbz (optional)
@@ -1390,11 +1388,11 @@ class prestudent extends person
public function listAnzInteressenten($studiensemester_kurzbz=null)
{
$qry = "SELECT
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudent.studiengang_kz,
tbl_prestudentstatus.ausbildungssemester,
COALESCE(tbl_prestudentstatus.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) as orgform_kurzbz
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
@@ -1421,7 +1419,7 @@ class prestudent extends person
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']=0;
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']++;
// Orgform
if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']))
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']=0;
@@ -1442,16 +1440,16 @@ class prestudent extends person
return false;
}
}
public function listAnzAbbrecher($studiensemester_kurzbz=null)
{
$qry = "SELECT
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudent.studiengang_kz,
tbl_prestudentstatus.ausbildungssemester,
COALESCE(tbl_prestudentstatus.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) as orgform_kurzbz
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
@@ -1478,7 +1476,7 @@ class prestudent extends person
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']=0;
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']++;
// Orgform
if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']))
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']=0;
@@ -1499,16 +1497,16 @@ class prestudent extends person
return false;
}
}
public function listAnzStudierende($studiensemester_kurzbz=null)
{
$qry = "SELECT
distinct on(prestudent_id) prestudent_id,
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudentstatus.studiensemester_kurzbz,
tbl_prestudent.studiengang_kz,
tbl_prestudentstatus.ausbildungssemester,
COALESCE(tbl_prestudentstatus.orgform_kurzbz, tbl_studiengang.orgform_kurzbz) as orgform_kurzbz
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
JOIN public.tbl_studiengang USING(studiengang_kz)
@@ -1519,8 +1517,8 @@ class prestudent extends person
if(!is_null($studiensemester_kurzbz))
$qry.=" AND tbl_prestudentstatus.studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
$this->result = array();
if($result = $this->db_query($qry))
{
@@ -1537,7 +1535,7 @@ class prestudent extends person
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']=0;
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz]['anzahl']++;
// Orgform
if(!isset($this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']))
$this->result[$row->studiensemester_kurzbz][$row->studiengang_kz][$row->orgform_kurzbz]['anzahl']=0;
@@ -1558,7 +1556,7 @@ class prestudent extends person
return false;
}
}
/**
* Anzahl der Abbrecher liefern.<br>
* WM: Kopie von getBewerber() => @TODO: überprüfen!!!
@@ -1572,7 +1570,7 @@ class prestudent extends person
{
$qry = "SELECT
count(*) as anzahl
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
@@ -1607,7 +1605,7 @@ class prestudent extends person
return false;
}
}
/**
* Anzahl der Studierenden liefern.<br>
* WM: Kopie von getBewerber() => @TODO: überprüfen!!!
@@ -1622,7 +1620,7 @@ class prestudent extends person
$qry = "SELECT count(*) as anzahl FROM (
SELECT
distinct on(prestudent_id) prestudent_id
FROM
FROM
public.tbl_prestudent
JOIN public.tbl_prestudentstatus USING(prestudent_id)
WHERE
@@ -1665,17 +1663,17 @@ class prestudent extends person
* @param $uid
* @return array mit Studiensemestern
*/
public function getSemesterZuUid($uid)
public function getSemesterZuUid($uid)
{
$qry = "SELECT
tbl_studiensemester.studiensemester_kurzbz, tbl_studiensemester.bezeichnung
FROM
public.tbl_prestudentstatus
$qry = "SELECT
tbl_studiensemester.studiensemester_kurzbz, tbl_studiensemester.bezeichnung
FROM
public.tbl_prestudentstatus
JOIN public.tbl_prestudent USING (prestudent_id)
JOIN public.tbl_student USING (prestudent_id)
JOIN public.tbl_student USING (prestudent_id)
JOIN public.tbl_studiensemester USING (studiensemester_kurzbz)
WHERE
WHERE
status_kurzbz IN ('Student', 'Diplomand','Incoming')
AND student_uid = ". $this->db_add_param($uid)."
ORDER BY ausbildungssemester";
@@ -1684,7 +1682,7 @@ class prestudent extends person
{
$semester = array();
while($row = $this->db_fetch_object($result))
while($row = $this->db_fetch_object($result))
$semester[$row->studiensemester_kurzbz] = $row->bezeichnung;
return $semester;