mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-16 11:39:31 +00:00
Fehler behoben in der Anzeige der Lehrveranstaltungen im FAS wenn mehrere verschiedene Studienordnungen aktiv sind
This commit is contained in:
@@ -700,7 +700,7 @@ class studienplan extends basis_db
|
||||
* @param $ausbuldungssemester
|
||||
* @param $orgform_kurzbz
|
||||
*/
|
||||
function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester, $orgform_kurzbz = "")
|
||||
function getStudienplaeneFromSem($studiengang_kz, $studiensemester_kurzbz, $ausbildungssemester="", $orgform_kurzbz = "")
|
||||
{
|
||||
$qry = "SELECT
|
||||
*
|
||||
@@ -711,8 +711,10 @@ class studienplan extends basis_db
|
||||
WHERE
|
||||
tbl_studienplan.aktiv
|
||||
AND tbl_studienordnung.studiengang_kz=".$this->db_add_param($studiengang_kz, FHC_INTEGER)."
|
||||
AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)."
|
||||
AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester);
|
||||
AND tbl_studienplan_semester.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz);
|
||||
|
||||
if($ausbildungssemester!='')
|
||||
$qry.=" AND tbl_studienplan_semester.semester=".$this->db_add_param($ausbildungssemester);
|
||||
|
||||
if($orgform_kurzbz!='')
|
||||
{
|
||||
|
||||
@@ -176,25 +176,12 @@ else
|
||||
$stp_ids=array();
|
||||
$stpl_main = new studienplan();
|
||||
|
||||
$sto_obj = new studienordnung();
|
||||
if($sto_obj->loadStudienordnungSTG($stg_kz, $semester_aktuell, $sem))
|
||||
$stpl_main->getStudienplaeneFromSem($stg_kz, $semester_aktuell, $sem, $orgform);
|
||||
foreach($stpl_main->result as $row_stp)
|
||||
{
|
||||
foreach($sto_obj->result as $row_sto)
|
||||
{
|
||||
//echo "$row_sto->studienordnung_id $row_sto->semester\n";
|
||||
$stp_obj = new studienplan();
|
||||
if($stp_obj->loadStudienplanSTO($row_sto->studienordnung_id, $orgform))
|
||||
{
|
||||
foreach($stp_obj->result as $row_stp)
|
||||
{
|
||||
$stp_ids_arr[]=array('stpid'=>$row_stp->studienplan_id,'semester'=>$row_sto->semester);
|
||||
$stp_ids[]=$row_stp->studienplan_id;
|
||||
}
|
||||
}
|
||||
}
|
||||
$stp_ids_arr[]=array('stpid'=>$row_stp->studienplan_id,'semester'=>$row_stp->semester);
|
||||
$stp_ids[]=$row_stp->studienplan_id;
|
||||
}
|
||||
else
|
||||
echo "FAILED:".$stpl_main->errormsg;
|
||||
$qry='';
|
||||
|
||||
if(count($stp_ids)>0)
|
||||
@@ -229,7 +216,7 @@ else
|
||||
tbl_lehrveranstaltung.lehre, lehreverzeichnis as lv_lehreverzeichnis, aktiv, planfaktor as lv_planfaktor,
|
||||
planlektoren as lv_planlektoren, planpersonalkosten as lv_planpersonalkosten,
|
||||
plankostenprolektor as lv_plankostenprolektor, tbl_lehrveranstaltung.lehrform_kurzbz as lv_lehrform_kurzbz, tbl_lehrveranstaltung.orgform_kurzbz,
|
||||
'' as studienplan_id, '' as studienplan_bezeichnung, '' as studienplan_lehrveranstaltung_id_parent,
|
||||
''::text as studienplan_id, '' as studienplan_bezeichnung, '' as studienplan_lehrveranstaltung_id_parent,
|
||||
tbl_lehrveranstaltung.lehrtyp_kurzbz
|
||||
FROM lehre.tbl_lehrveranstaltung JOIN lehre.tbl_lehreinheit USING (lehrveranstaltung_id)
|
||||
WHERE 1=1";
|
||||
@@ -247,9 +234,22 @@ else
|
||||
$qry.=" AND NOT EXISTS (SELECT 1 FROM lehre.tbl_studienplan_lehrveranstaltung where studienplan_id in (".$db->db_implode4SQL($stp_ids).")
|
||||
AND lehrveranstaltung_id=tbl_lehrveranstaltung.lehrveranstaltung_id AND tbl_lehrveranstaltung.aktiv)";
|
||||
}
|
||||
//$qry = 'SELECT distinct on(lehrveranstaltung_id) * FROM ('.$qry.' ORDER BY studienplan_id DESC) a';
|
||||
/*
|
||||
$qry = 'SELECT
|
||||
lehrveranstaltung_id, lv_kurzbz, lv_bezeichnung, lv_bezeichnung_english, studiengang_kz,
|
||||
semester, sprache, lv_ects, semesterstunden, anmerkung, lehre, lv_lehreverzeichnis, aktiv,
|
||||
lv_planfaktor, lv_planlektoren, lv_planpersonalkosten, lv_plankostenprolektor, lv_lehrform_kurzbz,
|
||||
orgform_kurzbz, studienplan_lehrveranstaltung_id_parent, lehrtyp_kurzbz,
|
||||
array_agg(studienplan_id) as studienplan_id, array_agg(studienplan_bezeichnung) as studienplan_bezeichnung
|
||||
FROM ('.$qry.') a
|
||||
GROUP BY
|
||||
lehrveranstaltung_id, lv_kurzbz, lv_bezeichnung, lv_bezeichnung_english, studiengang_kz,
|
||||
semester, sprache, lv_ects, semesterstunden, anmerkung, lehre, lv_lehreverzeichnis, aktiv,
|
||||
lv_planfaktor, lv_planlektoren, lv_planpersonalkosten, lv_plankostenprolektor, lv_lehrform_kurzbz,
|
||||
orgform_kurzbz, studienplan_lehrveranstaltung_id_parent, lehrtyp_kurzbz';
|
||||
*/
|
||||
}
|
||||
//die($qry);
|
||||
//die($qry);
|
||||
if(!$result = $db->db_query($qry))
|
||||
die($db->db_last_error().'<BR>'.$qry);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user