From 103b93a2b858a4de326591fa7d3df588d195c686 Mon Sep 17 00:00:00 2001 From: KarpAlex Date: Tue, 20 Dec 2022 22:22:36 +0100 Subject: [PATCH] getStundenplandata method: student lehreinheiten are taken from Studienplan, not view vw_studentlehrverband --- include/lehrstunde.class.php | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/include/lehrstunde.class.php b/include/lehrstunde.class.php index e2bba04e6..ab839957b 100644 --- a/include/lehrstunde.class.php +++ b/include/lehrstunde.class.php @@ -1119,13 +1119,26 @@ class lehrstunde extends basis_db } elseif($student_uid!='') { - $qry.=" lehreinheit_id in ( - SELECT - lehreinheit_id - FROM - campus.vw_student_lehrveranstaltung - WHERE - uid=".$this->db_add_param($student_uid)." AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz).")"; + $qry.=" tbl_lehreinheit.studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)." + AND ( + EXISTS + ( + SELECT 1 FROM public.tbl_studentlehrverband stlv + WHERE student_uid=".$this->db_add_param($student_uid)." + AND studiensemester_kurzbz = ".$this->db_add_param($studiensemester_kurzbz)." + AND studiengang_kz = stpl.studiengang_kz + AND (semester = stpl.semester OR stpl.semester IS NULL) + AND (verband = stpl.verband OR stpl.verband IS NULL OR stpl.verband ='0' OR stpl.verband = '') + AND (gruppe = stpl.gruppe OR stpl.gruppe IS NULL OR stpl.gruppe ='0' OR stpl.gruppe = '') + AND stpl.gruppe_kurzbz IS NULL + ) + OR EXISTS + ( + SELECT 1 FROM public.tbl_benutzergruppe + WHERE uid=".$this->db_add_param($student_uid)." + AND gruppe_kurzbz = stpl.gruppe_kurzbz + ) + ) "; } else return false;