From 38cdcef38ef6c45586f3c082363899c58bc41b81 Mon Sep 17 00:00:00 2001 From: ma0068 Date: Fri, 29 Oct 2021 10:35:12 +0200 Subject: [PATCH] =?UTF-8?q?Notenliste=20und=20Anwesenheitsliste=20um=20Mob?= =?UTF-8?q?ilit=C3=A4t=20DegreeProgram=20erweitert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cis/private/lehre/anwesenheitsliste.pdf.php | 19 +++++++--- cis/private/lehre/notenliste.xls.php | 39 +++++++++++++-------- system/dbupdate_3.3.php | 14 ++++++++ 3 files changed, 53 insertions(+), 19 deletions(-) diff --git a/cis/private/lehre/anwesenheitsliste.pdf.php b/cis/private/lehre/anwesenheitsliste.pdf.php index 01ec1c93f..16ba8972b 100644 --- a/cis/private/lehre/anwesenheitsliste.pdf.php +++ b/cis/private/lehre/anwesenheitsliste.pdf.php @@ -166,9 +166,10 @@ $qry = 'SELECT tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, (SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, tbl_bisio.bisio_id, tbl_bisio.von, tbl_bisio.bis, tbl_student.studiengang_kz AS stg_kz_student, - tbl_note.lkt_ueberschreibbar, tbl_note.anmerkung, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang + tbl_note.lkt_ueberschreibbar, tbl_note.anmerkung, tbl_mitarbeiter.mitarbeiter_uid, tbl_person.matr_nr, tbl_studiengang.kurzbzlang, tbl_mobilitaet.mobilitaetstyp_kurzbz FROM - campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) + campus.vw_student_lehrveranstaltung + JOIN public.tbl_benutzer USING(uid) JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_student ON(uid=student_uid) LEFT JOIN public.tbl_mitarbeiter ON(uid=mitarbeiter_uid) LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz) @@ -176,9 +177,11 @@ $qry = 'SELECT LEFT JOIN lehre.tbl_note USING (note) LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid) LEFT JOIN public.tbl_studiengang ON(tbl_student.studiengang_kz=tbl_studiengang.studiengang_kz) + LEFT JOIN bis.tbl_mobilitaet USING(prestudent_id) WHERE - vw_student_lehrveranstaltung.lehrveranstaltung_id='.$db->db_add_param($lvid, FHC_INTEGER).' AND - vw_student_lehrveranstaltung.studiensemester_kurzbz='.$db->db_add_param($studiensemester); + vw_student_lehrveranstaltung.lehrveranstaltung_id='.$db->db_add_param($lvid, FHC_INTEGER).' AND + vw_student_lehrveranstaltung.studiensemester_kurzbz='.$db->db_add_param($studiensemester);';'; + if($lehreinheit!='') $qry.=' AND vw_student_lehrveranstaltung.lehreinheit_id='.$db->db_add_param($lehreinheit, FHC_INTEGER); @@ -223,6 +226,11 @@ if($result = $db->db_query($qry)) if($row->stg_kz_student==$a_o_kz) //Außerordentliche Studierende $zusatz.='(a.o.)'; + if($row->mobilitaetstyp_kurzbz !='') //Double Degree Student + $zusatz.='(d.d.)'; + + //$zusatz.='test'; + $data[]=array('student'=>array( 'vorname'=>$row->vorname, 'nachname'=>$row->nachname, @@ -232,7 +240,8 @@ if($result = $db->db_query($qry)) 'verband'=>trim($row->verband), 'gruppe'=>trim($row->gruppe), 'zusatz'=>$zusatz, - 'studiengang_kurzbz'=>$row->kurzbzlang + 'studiengang_kurzbz'=>$row->kurzbzlang, + 'mobilitaetstyp_kurzbz'=>$row->mobilitaetstyp_kurzbz )); } } diff --git a/cis/private/lehre/notenliste.xls.php b/cis/private/lehre/notenliste.xls.php index 4f6437358..9866a6299 100644 --- a/cis/private/lehre/notenliste.xls.php +++ b/cis/private/lehre/notenliste.xls.php @@ -200,20 +200,26 @@ else $stsemdatumbis = $stsem_obj->ende; $qry = "SELECT - distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id, tbl_student.student_uid as uid, - tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, - (SELECT status_kurzbz FROM public.tbl_prestudentstatus WHERE prestudent_id=tbl_student.prestudent_id ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, - tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von, - tbl_zeugnisnote.note - FROM - campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) - JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid) - LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz) - LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id AND tbl_zeugnisnote.student_uid=tbl_student.student_uid AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz) - LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid) - WHERE - vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND - vw_student_lehrveranstaltung.studiensemester_kurzbz=".$db->db_add_param($stsem); + distinct on(nachname, vorname, person_id) vorname, nachname, matrikelnr, person_id, tbl_student.student_uid as uid, + tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, tbl_studentlehrverband.gruppe, + (SELECT status_kurzbz + FROM public.tbl_prestudentstatus + WHERE prestudent_id=tbl_student.prestudent_id + ORDER BY datum DESC, insertamum DESC, ext_id DESC LIMIT 1) as status, + tbl_bisio.bisio_id, tbl_bisio.bis, tbl_bisio.von, + tbl_zeugnisnote.note,tbl_mobilitaet.mobilitaetstyp_kurzbz + FROM + campus.vw_student_lehrveranstaltung JOIN public.tbl_benutzer USING(uid) + JOIN public.tbl_person USING(person_id) JOIN public.tbl_student ON(uid=student_uid) + LEFT JOIN public.tbl_studentlehrverband USING(student_uid,studiensemester_kurzbz) + LEFT JOIN lehre.tbl_zeugnisnote on(vw_student_lehrveranstaltung.lehrveranstaltung_id=tbl_zeugnisnote.lehrveranstaltung_id + AND tbl_zeugnisnote.student_uid=tbl_student.student_uid + AND tbl_zeugnisnote.studiensemester_kurzbz=tbl_studentlehrverband.studiensemester_kurzbz) + LEFT JOIN bis.tbl_bisio ON(uid=tbl_bisio.student_uid) + LEFT JOIN bis.tbl_mobilitaet USING(prestudent_id) + WHERE + vw_student_lehrveranstaltung.lehrveranstaltung_id=".$db->db_add_param($lvid, FHC_INTEGER)." AND + vw_student_lehrveranstaltung.studiensemester_kurzbz=".$db->db_add_param($stsem);";"; if($lehreinheit_id!='') $qry.=" AND vw_student_lehrveranstaltung.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER); @@ -243,6 +249,10 @@ else $inc.=' (ar)'; $note='ar'; } + if($elem->mobilitaetstyp_kurzbz !='') //dd-Program + { + $inc.=' (dd)'; + } else $note=''; $worksheet->write($lines,1,$elem->uid); @@ -295,6 +305,7 @@ else $worksheet->write(++$lines,0,'(i) ... Incoming'); $worksheet->write(++$lines,0,'(o) ... Outgoing'); $worksheet->write(++$lines,0,'(ar) ... '.$p->t('anwesenheitsliste/angerechnet')); + $worksheet->write(++$lines,0,'(dd) ... Double Degree Program'); $worksheet->setColumn(0, 0, 5); $worksheet->setColumn(0, 1, 16); diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php index bb8f250fd..cb59a86f1 100644 --- a/system/dbupdate_3.3.php +++ b/system/dbupdate_3.3.php @@ -1740,6 +1740,20 @@ if ($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants } +// SELECT Berechtigung fuer web User erteilen fuer tbl_mobilitaet +if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants WHERE table_name='tbl_mobilitaet' AND table_schema='bis' AND grantee='web' AND privilege_type='SELECT'")) +{ + if($db->db_num_rows($result)==0) + { + $qry = "GRANT SELECT ON bis.tbl_mobilitaet TO web;"; + + if(!$db->db_query($qry)) + echo 'bis.tbl_mobilitaet Berechtigungen: '.$db->db_last_error().'
'; + else + echo 'SELECT Recht fuer bis.tbl_mobilitaet fuer web user gesetzt '; + } +} + /** * Kommentare fuer Datenbanktabellen */