mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-21 08:52:21 +00:00
Client für FÖBisAktive, Bug Fixes, Performance Verbesserungen
This commit is contained in:
@@ -24,6 +24,7 @@
|
||||
* Werner Masik <werner@gefi.at>
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
require_once(__DIR__ .'/functions.inc.php');
|
||||
|
||||
class studienplatz extends basis_db
|
||||
{
|
||||
@@ -167,7 +168,7 @@ class studienplatz extends basis_db
|
||||
//Pruefen ob $studiengang_kz eine gueltige Zahl ist
|
||||
if(!is_numeric($studiengang_kz) || $studiengang_kz == '')
|
||||
{
|
||||
$this->errormsg = '$studiengang_kz muss eine gültige Zahl sein';
|
||||
$this->errormsg = 'studiengang_kz muss eine gültige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -194,6 +195,55 @@ class studienplatz extends basis_db
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Liefert Array mit GPZ und NPZ für die FÖBis relevanten Orgformen (BB, VZ, VBB).
|
||||
* Dient als Ersatz für load_studiengang_studiensemester_orgform weil hiermit
|
||||
* alle Daten mit einer Abfrage geholt werden können.
|
||||
* @param type $studienjahr z.B: 2013
|
||||
* @param type $zeitraum z.B: 10 [Semester]
|
||||
* @return boolean|array false bei Fehler
|
||||
*/
|
||||
public function getAnzahlAlleOrgformen($studienjahr, $zeitraum)
|
||||
{
|
||||
|
||||
// Semesterliste für where klausel erzeugen:
|
||||
$startSemester= 'WS'.substr($studienjahr,0,4);
|
||||
$semesterList = generateSemesterList($startSemester,($zeitraum*2)-1);
|
||||
$semesterList_comma_separated = "'".join("','",$semesterList)."'";
|
||||
|
||||
//Lesen der Daten aus der Datenbank
|
||||
$qry = "SELECT studiensemester_kurzbz,studiengang_kz,
|
||||
sum(case when orgform_kurzbz='VZ' then npz else 0 end) as npz_vz,
|
||||
sum(case when orgform_kurzbz='BB' then npz else 0 end) as npz_bb,
|
||||
sum(case when orgform_kurzbz='VBB' then npz else 0 end) as npz_vbb,
|
||||
sum(npz) as npz_gesamt,
|
||||
sum(case when orgform_kurzbz='VZ' then npz else 0 end) as gpz_vz,
|
||||
sum(case when orgform_kurzbz='BB' then npz else 0 end) as gpz_bb,
|
||||
sum(case when orgform_kurzbz='VBB' then npz else 0 end) as gpz_vbb,
|
||||
sum(gpz) as gpz_gesamt
|
||||
FROM lehre.tbl_studienplatz
|
||||
WHERE ausbildungssemester is null and studiensemester_kurzbz IN ($semesterList_comma_separated)
|
||||
group by studiensemester_kurzbz,studiengang_kz";
|
||||
$this->result = array();
|
||||
if(!$this->db_query($qry))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
$result = array();
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['BB']['NPZ'] = $row->npz_bb;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VZ']['NPZ'] = $row->npz_vz;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VBB']['NPZ'] = $row->npz_vbb;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['gesamt']['NPZ'] = $row->npz_gesamt;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['BB']['GPZ'] = $row->npz_bb;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VZ']['GPZ'] = $row->gpz_vz;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['VBB']['GPZ'] = $row->gpz_vbb;
|
||||
$result[$row->studiensemester_kurzbz][$row->studiengang_kz]['gesamt']['GPZ'] = $row->gpz_gesamt;
|
||||
}
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Prueft die Variablen auf Gueltigkeit
|
||||
|
||||
Reference in New Issue
Block a user