From b22c9753559f65b2a979c64353a4d24516a95094 Mon Sep 17 00:00:00 2001 From: FHBGLD <33415881+FHBGLD@users.noreply.github.com> Date: Tue, 4 May 2021 14:19:48 +0200 Subject: [PATCH 01/12] Create set_gemeinde.php --- vilesci/stammdaten/set_gemeinde.php | 163 ++++++++++++++++++++++++++++ 1 file changed, 163 insertions(+) create mode 100644 vilesci/stammdaten/set_gemeinde.php diff --git a/vilesci/stammdaten/set_gemeinde.php b/vilesci/stammdaten/set_gemeinde.php new file mode 100644 index 000000000..df07be120 --- /dev/null +++ b/vilesci/stammdaten/set_gemeinde.php @@ -0,0 +1,163 @@ + delete from bis.tbl_gemeinde; +Skript aufrufen, csv auswählen und hochladen. +Datei wird eingelesen und in die DB gespeichert. +*/ + +require_once('../../config/system.config.inc.php'); +require_once(DOC_ROOT.'include/functions.inc.php'); +require_once(DOC_ROOT.'include/benutzerberechtigung.class.php'); +require_once(DOC_ROOT.'include/gemeinde.class.php'); +require_once(DOC_ROOT.'include/benutzerberechtigung.class.php'); + + +$user = get_uid(); + +$rechte = new benutzerberechtigung(); +$rechte->getBerechtigungen($user); + +if(!$rechte->isBerechtigt('basis/gemeinde')) { + die('Sie haben keine Berechtigung fuer diese Seite'); +} + +$tmp_gemeinde_ar = array(); + +if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { + + $rows = array_map('str_getcsv', file( $_FILES['parsefile']['tmp_name'] )); + $header = array_shift($rows); + $data = array(); + foreach($rows as $row) { + $data[] = array_combine($header, $row); + } + + foreach ($data as $gemeinde_details) { + + //Wenn nicht gültig dann überspringen + if ($gemeinde_details['Gültig'] == 'Nein') continue; + + //es können mehrere plz in einer zeile stehen + $plzs = explode(' ', trim($gemeinde_details['PLZ'])); + + foreach ($plzs as $plz) { + $tmp_obj_gemeinde = null; + $tmp_obj_gemeinde = new gemeinde(); + $tmp_obj_gemeinde->plz = $plz; + $tmp_obj_gemeinde->name = $gemeinde_details['Gemeindename']; + $tmp_obj_gemeinde->ortschaftskennziffer = $gemeinde_details['Ortschaftskennziffer']; + $tmp_obj_gemeinde->ortschaftsname = $gemeinde_details['Ortschaftsname']; + $tmp_obj_gemeinde->bulacode = $gemeinde_details['BULA_Code']; + $tmp_obj_gemeinde->bulabez = $gemeinde_details['BULA_Bez']; + $tmp_obj_gemeinde->kennziffer = $gemeinde_details['Gemeindekennziffer']; + + //print_r($tmp_obj_gemeinde); + $tmp_obj_gemeinde->save(); + $tmp_gemeinde_ar[] = $tmp_obj_gemeinde; + // if ($tmp_obj_gemeinde->save()) { + // echo "
"; + // echo "gemeinde save true"; + // echo "
"; + // print_r($tmp_obj_gemeinde); + // echo "
"; + // } else { + // echo "
"; + // echo "gemeinde save false"; + // echo "
"; + // print_r($tmp_obj_gemeinde); + // echo "
"; + // } + } + } +} +?> + + + + + + set gemeinde skript + + +
Filesyntax: (Standard xlsx-File von https://www.bis.ac.at/BISSuite, gespeichert als csv! erste Zeile ist Header (alles was oberhalb ist kann entfernt werden) -> dann Daten) +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GemeindekennzifferGemeindenameOrtschaftskennzifferOrtschaftsnamePLZBULA_CodeBULA_BezGültig
10101Eisenstadt1Eisenstadt70001BGLDJa
10101Eisenstadt2Kleinhöflein im Burgenland7000 7001 70021BGLDJa
........................
+
+
+
PLZ Kodextabelle + +
+
+
+				
+			
+
+ + From aac4467d8a82a1a29f2422b37a19383932bdad57 Mon Sep 17 00:00:00 2001 From: FHBGLD <33415881+FHBGLD@users.noreply.github.com> Date: Wed, 5 May 2021 11:52:12 +0200 Subject: [PATCH 02/12] Update set_gemeinde.php --- vilesci/stammdaten/set_gemeinde.php | 92 +++++++++++++++-------------- 1 file changed, 48 insertions(+), 44 deletions(-) diff --git a/vilesci/stammdaten/set_gemeinde.php b/vilesci/stammdaten/set_gemeinde.php index df07be120..5cc2f0097 100644 --- a/vilesci/stammdaten/set_gemeinde.php +++ b/vilesci/stammdaten/set_gemeinde.php @@ -101,55 +101,59 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { set gemeinde skript -
Filesyntax: (Standard xlsx-File von https://www.bis.ac.at/BISSuite, gespeichert als csv! erste Zeile ist Header (alles was oberhalb ist kann entfernt werden) -> dann Daten) -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
GemeindekennzifferGemeindenameOrtschaftskennzifferOrtschaftsnamePLZBULA_CodeBULA_BezGültig
10101Eisenstadt1Eisenstadt70001BGLDJa
10101Eisenstadt2Kleinhöflein im Burgenland7000 7001 70021BGLDJa
........................
+
+ Filesyntax:(Standard xlsx-File von https://www.bis.ac.at/BISSuite, gespeichert als csv! erste Zeile ist Header (alles was oberhalb ist kann entfernt werden) -> dann Daten) +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GemeindekennzifferGemeindenameOrtschaftskennzifferOrtschaftsnamePLZBULA_CodeBULA_BezGültig
10101Eisenstadt1Eisenstadt70001BGLDJa
10101Eisenstadt2Kleinhöflein im Burgenland7000 7001 70021BGLDJa
........................


PLZ Kodextabelle
+
 				
Date: Wed, 15 Sep 2021 13:49:20 +0200
Subject: [PATCH 03/12] =?UTF-8?q?Berechtigung=20f=C3=BCr=20basis/gemeinde?=
 =?UTF-8?q?=20hinzugef=C3=BCgt=20Pfade=20korrigiert?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 system/dbupdate_3.3.php             | 14 ++++++++++++++
 vilesci/stammdaten/set_gemeinde.php | 20 ++++++++++----------
 2 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php
index 3aef03b4d..a75b648fa 100644
--- a/system/dbupdate_3.3.php
+++ b/system/dbupdate_3.3.php
@@ -4962,6 +4962,20 @@ if(!@$db->db_query("SELECT statusgrund_kurzbz FROM public.tbl_status_grund LIMIT
 		echo '
Neue Spalte statusgrund_kurzbz zu Tabelle public.tbl_status_grund hinzugefügt'; } +// Add permission to set gemeinde +if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berechtigung_kurzbz = 'basis/gemeinde';")) +{ + if($db->db_num_rows($result) == 0) + { + $qry = "INSERT INTO system.tbl_berechtigung(berechtigung_kurzbz, beschreibung) VALUES('basis/gemeinde', 'Gemeindedaten pflegen');"; + + if(!$db->db_query($qry)) + echo 'system.tbl_berechtigung '.$db->db_last_error().'
'; + else + echo ' system.tbl_berechtigung: Added permission for basis/gemeinde
'; + } +} + // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; diff --git a/vilesci/stammdaten/set_gemeinde.php b/vilesci/stammdaten/set_gemeinde.php index 5cc2f0097..c59e3264b 100644 --- a/vilesci/stammdaten/set_gemeinde.php +++ b/vilesci/stammdaten/set_gemeinde.php @@ -28,10 +28,10 @@ Datei wird eingelesen und in die DB gespeichert. */ require_once('../../config/system.config.inc.php'); -require_once(DOC_ROOT.'include/functions.inc.php'); -require_once(DOC_ROOT.'include/benutzerberechtigung.class.php'); -require_once(DOC_ROOT.'include/gemeinde.class.php'); -require_once(DOC_ROOT.'include/benutzerberechtigung.class.php'); +require_once(dirname(__FILE__).'/../../include/functions.inc.php'); +require_once(dirname(__FILE__).'/../../include/benutzerberechtigung.class.php'); +require_once(dirname(__FILE__).'/../../include/gemeinde.class.php'); +require_once(dirname(__FILE__).'/../../include/benutzerberechtigung.class.php'); $user = get_uid(); @@ -55,13 +55,13 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { } foreach ($data as $gemeinde_details) { - + //Wenn nicht gültig dann überspringen if ($gemeinde_details['Gültig'] == 'Nein') continue; - + //es können mehrere plz in einer zeile stehen $plzs = explode(' ', trim($gemeinde_details['PLZ'])); - + foreach ($plzs as $plz) { $tmp_obj_gemeinde = null; $tmp_obj_gemeinde = new gemeinde(); @@ -72,7 +72,7 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { $tmp_obj_gemeinde->bulacode = $gemeinde_details['BULA_Code']; $tmp_obj_gemeinde->bulabez = $gemeinde_details['BULA_Bez']; $tmp_obj_gemeinde->kennziffer = $gemeinde_details['Gemeindekennziffer']; - + //print_r($tmp_obj_gemeinde); $tmp_obj_gemeinde->save(); $tmp_gemeinde_ar[] = $tmp_obj_gemeinde; @@ -156,9 +156,9 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) {
-				
 			
From 8075ba3a8484da34a95156aefb39e1e51b5fb6fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= Date: Wed, 15 Sep 2021 15:57:15 +0200 Subject: [PATCH 04/12] =?UTF-8?q?Menueeintrag=20hinzugef=C3=BCgt=20f=C3=BC?= =?UTF-8?q?r=20Gemeinde?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/tw/vilesci_menu_main.inc.php | 1 + vilesci/stammdaten/set_gemeinde.php | 45 +++++++++++----------------- 2 files changed, 19 insertions(+), 27 deletions(-) diff --git a/include/tw/vilesci_menu_main.inc.php b/include/tw/vilesci_menu_main.inc.php index d465eba28..34f44ec66 100644 --- a/include/tw/vilesci_menu_main.inc.php +++ b/include/tw/vilesci_menu_main.inc.php @@ -190,6 +190,7 @@ $menu=array 'StudienplanZuteilung'=>array('name'=>'Studienplan Zuteilung', 'link'=>'lehre/studienplan_zuteilung.php', 'target'=>'main','permissions'=>array('assistenz')), 'lv_merge'=>array('name'=>'LVs zusammenlegen', 'link'=>'lehre/lv_merge.php', 'target'=>'main','permissions'=>array('lehre/lehrveranstaltung')), 'akteupdate'=>array('name'=>'Akten überschreiben', 'link'=>'personen/akteupdate.php', 'target'=>'main','permissions'=>array('admin')), + 'gemeindeupdate'=>array('name'=>'Gemeinden aktualisieren', 'link'=>'stammdaten/set_gemeinde.php', 'target'=>'main','permissions'=>array('basis/gemeinde')), ), 'Auswertung'=> array ( diff --git a/vilesci/stammdaten/set_gemeinde.php b/vilesci/stammdaten/set_gemeinde.php index c59e3264b..e461c7872 100644 --- a/vilesci/stammdaten/set_gemeinde.php +++ b/vilesci/stammdaten/set_gemeinde.php @@ -26,35 +26,37 @@ Die Tabelle bis.tbl_gemeinde löschen. -> delete from bis.tbl_gemeinde; Skript aufrufen, csv auswählen und hochladen. Datei wird eingelesen und in die DB gespeichert. */ - require_once('../../config/system.config.inc.php'); require_once(dirname(__FILE__).'/../../include/functions.inc.php'); require_once(dirname(__FILE__).'/../../include/benutzerberechtigung.class.php'); require_once(dirname(__FILE__).'/../../include/gemeinde.class.php'); require_once(dirname(__FILE__).'/../../include/benutzerberechtigung.class.php'); - $user = get_uid(); $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); -if(!$rechte->isBerechtigt('basis/gemeinde')) { +if (!$rechte->isBerechtigt('basis/gemeinde')) +{ die('Sie haben keine Berechtigung fuer diese Seite'); } $tmp_gemeinde_ar = array(); -if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { +if (isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) +{ - $rows = array_map('str_getcsv', file( $_FILES['parsefile']['tmp_name'] )); + $rows = array_map('str_getcsv', file( $_FILES['parsefile']['tmp_name'] )); $header = array_shift($rows); - $data = array(); - foreach($rows as $row) { + $data = array(); + foreach ($rows as $row) + { $data[] = array_combine($header, $row); } - foreach ($data as $gemeinde_details) { + foreach ($data as $gemeinde_details) + { //Wenn nicht gültig dann überspringen if ($gemeinde_details['Gültig'] == 'Nein') continue; @@ -62,7 +64,8 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { //es können mehrere plz in einer zeile stehen $plzs = explode(' ', trim($gemeinde_details['PLZ'])); - foreach ($plzs as $plz) { + foreach ($plzs as $plz) + { $tmp_obj_gemeinde = null; $tmp_obj_gemeinde = new gemeinde(); $tmp_obj_gemeinde->plz = $plz; @@ -73,35 +76,22 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) { $tmp_obj_gemeinde->bulabez = $gemeinde_details['BULA_Bez']; $tmp_obj_gemeinde->kennziffer = $gemeinde_details['Gemeindekennziffer']; - //print_r($tmp_obj_gemeinde); $tmp_obj_gemeinde->save(); $tmp_gemeinde_ar[] = $tmp_obj_gemeinde; - // if ($tmp_obj_gemeinde->save()) { - // echo "
"; - // echo "gemeinde save true"; - // echo "
"; - // print_r($tmp_obj_gemeinde); - // echo "
"; - // } else { - // echo "
"; - // echo "gemeinde save false"; - // echo "
"; - // print_r($tmp_obj_gemeinde); - // echo "
"; - // } } } } ?> - - set gemeinde skript + Set Gemeinde + -
+

Gemeinden aktualisieren

+ Diese Seite dient dazu die Gemeinde Kodex Tabelle zu aktualisieren.

Filesyntax:(Standard xlsx-File von https://www.bis.ac.at/BISSuite, gespeichert als csv! erste Zeile ist Header (alles was oberhalb ist kann entfernt werden) -> dann Daten)

@@ -157,7 +147,8 @@ if(isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0) {
 				

From a8327a20abcb356e6d154fb5b19001bfae6b6c26 Mon Sep 17 00:00:00 2001
From: ma0048 
Date: Fri, 8 Oct 2021 10:40:10 +0200
Subject: [PATCH 05/12] excel report angepasst

---
 content/statistik/lvplanung.xls.php | 65 +++++++++++++++++++++++++----
 1 file changed, 58 insertions(+), 7 deletions(-)

diff --git a/content/statistik/lvplanung.xls.php b/content/statistik/lvplanung.xls.php
index 3b74992fa..09af429ec 100644
--- a/content/statistik/lvplanung.xls.php
+++ b/content/statistik/lvplanung.xls.php
@@ -29,6 +29,7 @@ require_once('../../include/benutzer.class.php');
 require_once('../../include/mitarbeiter.class.php');
 require_once('../../include/organisationseinheit.class.php');
 require_once('../../include/benutzerberechtigung.class.php');
+require_once('../../include/studiensemester.class.php');
 
 $user = get_uid();
 
@@ -114,6 +115,9 @@ $oe_arr[''] = '';
 $stg_obj = new studiengang();
 $stg_obj->getAll('typ, kurzbz', false);
 
+$stsem = new studiensemester();
+
+$previousStsem = $stsem->getPreviousFrom($stsem->getPreviousFrom($studiensemester_kurzbz));
 $qry = "
 SELECT tbl_lehrveranstaltung.bezeichnung AS lf_bezeichnung,
 	tbl_lehrveranstaltung.studiengang_kz,
@@ -124,18 +128,21 @@ SELECT tbl_lehrveranstaltung.bezeichnung AS lf_bezeichnung,
 	tbl_lehreinheitmitarbeiter.stundensatz,
 	tbl_lehreinheitmitarbeiter.semesterstunden lemss,
 	tbl_lehreinheitmitarbeiter.planstunden,
+	tbl_lehreinheitmitarbeiter.anmerkung as mitarbeiter_anmerkung,
 	tbl_lehreinheit.stundenblockung,
 	tbl_lehreinheit.wochenrythmus,
 	tbl_lehreinheit.raumtyp,
 	tbl_lehreinheit.raumtypalternativ,
-	tbl_lehreinheit.anmerkung,
+	tbl_lehreinheit.anmerkung as lehreinheit_anmerkung,
 	tbl_lehreinheit.studiensemester_kurzbz,
+	tbl_lehreinheit.start_kw,
 	tbl_lehrveranstaltung.ects,
 	tbl_lehrveranstaltung.semesterstunden,
 	tbl_lehrveranstaltung.semesterstunden AS sws,
 	tbl_lehrveranstaltung.lehrform_kurzbz,
 	tbl_lehrveranstaltung.lehrveranstaltung_id,
 	tbl_lehrveranstaltung.orgform_kurzbz,
+	tbl_lehrveranstaltung.sprache,
 	(
 		SELECT nachname
 		FROM PUBLIC.tbl_person
@@ -163,6 +170,16 @@ SELECT tbl_lehrveranstaltung.bezeichnung AS lf_bezeichnung,
 		FROM lehre.tbl_lehrform
 		WHERE lehre.tbl_lehrform.lehrform_kurzbz = tbl_lehrveranstaltung.lehrform_kurzbz LIMIT 1
 		) AS lv_type,
+	(
+			SELECT STRING_AGG(DISTINCT (person.nachname || ' ' || person.vorname), ', ')
+			FROM lehre.tbl_lehrveranstaltung slv
+			JOIN lehre.tbl_lehreinheit sle USING (lehrveranstaltung_id)
+			JOIN lehre.tbl_lehreinheitmitarbeiter slema USING (lehreinheit_id)
+			JOIN PUBLIC.tbl_benutzer benutzer ON benutzer.uid = slema.mitarbeiter_uid
+			JOIN PUBLIC.tbl_person person USING (person_id)
+			WHERE lehre.tbl_lehreinheit.lehrveranstaltung_id = sle.lehrveranstaltung_id
+			AND sle.studiensemester_kurzbz = " . $db->db_add_param($previousStsem) . "
+		) AS vorjahr_lektor,
 	tbl_lehrveranstaltung.lehrform_kurzbz
 FROM lehre.tbl_lehrveranstaltung
 JOIN lehre.tbl_lehreinheit USING (lehrveranstaltung_id)
@@ -217,6 +234,10 @@ $worksheet->write($zeile,++$spalte,"LektorIn", $format_bold);
 $maxlength[$spalte]=6;
 $worksheet->write($zeile,++$spalte,"Fixangestellt", $format_bold);
 $maxlength[$spalte]=10;
+$worksheet->write($zeile,++$spalte,"Vorjahrslektor", $format_bold);
+$maxlength[$spalte]=12;
+$worksheet->write($zeile,++$spalte,"Wunschlektor", $format_bold);
+$maxlength[$spalte]=12;
 $worksheet->write($zeile,++$spalte,"Bezeichnung", $format_bold);
 $maxlength[$spalte]=25;
 $worksheet->write($zeile,++$spalte,"Semester", $format_bold);
@@ -239,8 +260,12 @@ $worksheet->write($zeile,++$spalte,"Raum", $format_bold);
 $maxlength[$spalte]=4;
 $worksheet->write($zeile,++$spalte,"Raum alternativ", $format_bold);
 $maxlength[$spalte]=15;
-$worksheet->write($zeile,++$spalte,"Anmerkung", $format_bold);
-$maxlength[$spalte]=9;
+
+$worksheet->write($zeile,++$spalte,"Anmerkung für LV Planung", $format_bold);
+$maxlength[$spalte]=25;
+
+$worksheet->write($zeile,++$spalte,"Anmerkung für Dpt/KF", $format_bold);
+$maxlength[$spalte]=25;
 
 $worksheet->write($zeile,++$spalte,"LV-Leitung", $format_bold);
 $maxlength[$spalte]=9;
@@ -260,6 +285,16 @@ $maxlength[$spalte]=9;
 $worksheet->write($zeile,++$spalte,"Organisationsform", $format_bold);
 $maxlength[$spalte]=15;
 
+$worksheet->write($zeile,++$spalte,"Sprache (LV)", $format_bold);
+$maxlength[$spalte]=10;
+
+$worksheet->write($zeile,++$spalte,"Software", $format_bold);
+$maxlength[$spalte]=10;
+
+$worksheet->write($zeile,++$spalte,"Start in KW", $format_bold);
+$maxlength[$spalte]=10;
+
+
 if($result = $db->db_query($qry))
 {
 	while($row = $db->db_fetch_object($result))
@@ -290,6 +325,10 @@ if($result = $db->db_query($qry))
 		if($maxlength[$spalte]fixangestellt ? 'Ja' : 'Nein'))
 			$maxlength[$spalte]=mb_strlen($mitarbeiter->fixangestellt ? 'Ja' : 'Nein');
 
+		$worksheet->write($zeile,++$spalte, $row->vorjahr_lektor);
+
+		$worksheet->write($zeile,++$spalte, '');
+
 		//Lehrfach
 		$worksheet->write($zeile,++$spalte,$row->lf_bezeichnung);
 		//if($maxlength[$spalte]lf_bezeichnung))
@@ -354,10 +393,13 @@ if($result = $db->db_query($qry))
 		$worksheet->write($zeile,++$spalte,$row->raumtypalternativ);
 		if($maxlength[$spalte]raumtypalternativ))
 			$maxlength[$spalte]=mb_strlen($row->raumtypalternativ);
-		//Anmerkung
-		$worksheet->write($zeile,++$spalte,$row->anmerkung);
-		//if($maxlength[$spalte]anmerkung))
-			//$maxlength[$spalte]=mb_strlen($row->anmerkung);
+
+		//Anmerkung für LV Planung
+		$worksheet->write($zeile,++$spalte,$row->lehreinheit_anmerkung
+);
+
+		//Anmerkung für Dpt/KF
+		$worksheet->write($zeile,++$spalte,$row->mitarbeiter_anmerkung);
 
 		//LV-Leitung
 		$worksheet->write($zeile,++$spalte,$row->lv_leitung.' '.$row->lv_leitung_vorname);
@@ -394,6 +436,15 @@ if($result = $db->db_query($qry))
 		$worksheet->write($zeile,++$spalte,$row->orgform_kurzbz);
 		if($maxlength[$spalte]orgform_kurzbz))
 			$maxlength[$spalte]=mb_strlen($row->orgform_kurzbz);
+
+		//Sprache (LV)
+		$worksheet->write($zeile,++$spalte,$row->sprache);
+
+		//Software
+		$worksheet->write($zeile,++$spalte,'');
+
+		//Software
+		$worksheet->write($zeile,++$spalte,$row->start_kw);
 	}
 
 	//Betreuungen

From 20f583f7e25321bc4640d2c613502ee2eff4c7e4 Mon Sep 17 00:00:00 2001
From: ma0048 
Date: Fri, 8 Oct 2021 10:44:27 +0200
Subject: [PATCH 06/12] excel report angepasst

---
 content/statistik/lvplanung.xls.php | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/content/statistik/lvplanung.xls.php b/content/statistik/lvplanung.xls.php
index 09af429ec..ff6faa508 100644
--- a/content/statistik/lvplanung.xls.php
+++ b/content/statistik/lvplanung.xls.php
@@ -178,6 +178,7 @@ SELECT tbl_lehrveranstaltung.bezeichnung AS lf_bezeichnung,
 			JOIN PUBLIC.tbl_benutzer benutzer ON benutzer.uid = slema.mitarbeiter_uid
 			JOIN PUBLIC.tbl_person person USING (person_id)
 			WHERE lehre.tbl_lehreinheit.lehrveranstaltung_id = sle.lehrveranstaltung_id
+			AND tbl_lehrveranstaltung.lehrform_kurzbz = slv.lehrform_kurzbz
 			AND sle.studiensemester_kurzbz = " . $db->db_add_param($previousStsem) . "
 		) AS vorjahr_lektor,
 	tbl_lehrveranstaltung.lehrform_kurzbz
@@ -395,8 +396,7 @@ if($result = $db->db_query($qry))
 			$maxlength[$spalte]=mb_strlen($row->raumtypalternativ);
 
 		//Anmerkung für LV Planung
-		$worksheet->write($zeile,++$spalte,$row->lehreinheit_anmerkung
-);
+		$worksheet->write($zeile,++$spalte,$row->lehreinheit_anmerkung);
 
 		//Anmerkung für Dpt/KF
 		$worksheet->write($zeile,++$spalte,$row->mitarbeiter_anmerkung);
@@ -443,7 +443,7 @@ if($result = $db->db_query($qry))
 		//Software
 		$worksheet->write($zeile,++$spalte,'');
 
-		//Software
+		//Start in KW
 		$worksheet->write($zeile,++$spalte,$row->start_kw);
 	}
 

From 0e5e6866690cdeb41a2e626a93bb880c37d7ce06 Mon Sep 17 00:00:00 2001
From: FHBGLD <33415881+FHBGLD@users.noreply.github.com>
Date: Thu, 14 Oct 2021 14:33:55 +0200
Subject: [PATCH 07/12] =?UTF-8?q?=C3=84nderungen=20bez=C3=BCglich=20genera?=
 =?UTF-8?q?teMatrikelnummer?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Hallo liebes Technikum Team,

wie besprochen die Änderungen bezüglich generateMatrikelnummer.

Als erstes die Erweiterung der Unterscheidung von Lehrgang und Studiengang.
Weiters die Aufteilung von unseren AO Studiengängen zwischen 90010 bis 90019.

Hoffe das dies für alle FH's so passt.

Bitte um check ob dieser Code so übernommen werden kann.

Danke und liebe Grüße
Thomas und Michael
---
 content/student/studentDBDML.php | 29 ++++++++++++++++++++++++-----
 1 file changed, 24 insertions(+), 5 deletions(-)

diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php
index e411dbaad..31da28b8a 100644
--- a/content/student/studentDBDML.php
+++ b/content/student/studentDBDML.php
@@ -109,12 +109,23 @@ if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz') && !$r
 function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
 {
 	$db = new basis_db();
-
+	
+	
+	$studiengang_details = new studiengang();
+	$studiengang_details->load($studiengang_kz);
+	
+	if (!isset($studiengang_details->studiengang_kz)) {
+		//wenn es diesen Studiengang nicht gibt (übergabeparamter falsch)
+		//wie müsste hier ein error handle gemacht werden?
+	}
+	
 	$jahr = substr($studiensemester_kurzbz, 4);
 	$art = substr($studiensemester_kurzbz, 0, 2);
 
-	if($studiengang_kz<0)
-	{
+	if(			($studiengang_kz < 0) 
+			|| 	(			isset($studiengang_details->typ) 
+						&&	($studiengang_details->typ == 'l'))
+	) {
 		$studiengang_kz=abs($studiengang_kz);
 		//Lehrgang
 		switch($art)
@@ -136,8 +147,16 @@ function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
 	}
 	if($art=='2' || $art=='4')
 		$jahr = $jahr-1;
-	$matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
-
+	
+	
+	//FH-Burgenland - weil leider die AO Studiengänge aufgeteilt sind (AO sind normal 9+erhalter Nummer, matrikelnr/personenkz wird auch im DVUH Extension berücksichtigt)
+	if ($studiengang_kz >= 90010 && $studiengang_kz <= 90019) {
+		$matrikelnummer = sprintf("%02d",$jahr).$art.substr($studiengang_kz, 0, 4);
+	} else {
+		$matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
+	}
+	
+	$qry = null;
 	$qry = "SELECT matrikelnr FROM public.tbl_student WHERE matrikelnr LIKE '$matrikelnummer%' ORDER BY matrikelnr DESC LIMIT 1";
 
 	if($result = $db->db_query($qry))

From 19548bf5f9b276476d580b5126614c378c28d599 Mon Sep 17 00:00:00 2001
From: FHBGLD <33415881+FHBGLD@users.noreply.github.com>
Date: Thu, 14 Oct 2021 14:36:58 +0200
Subject: [PATCH 08/12] Update studentDBDML.php

---
 content/student/studentDBDML.php | 2 --
 1 file changed, 2 deletions(-)

diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php
index 31da28b8a..df841115d 100644
--- a/content/student/studentDBDML.php
+++ b/content/student/studentDBDML.php
@@ -148,7 +148,6 @@ function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
 	if($art=='2' || $art=='4')
 		$jahr = $jahr-1;
 	
-	
 	//FH-Burgenland - weil leider die AO Studiengänge aufgeteilt sind (AO sind normal 9+erhalter Nummer, matrikelnr/personenkz wird auch im DVUH Extension berücksichtigt)
 	if ($studiengang_kz >= 90010 && $studiengang_kz <= 90019) {
 		$matrikelnummer = sprintf("%02d",$jahr).$art.substr($studiengang_kz, 0, 4);
@@ -156,7 +155,6 @@ function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
 		$matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
 	}
 	
-	$qry = null;
 	$qry = "SELECT matrikelnr FROM public.tbl_student WHERE matrikelnr LIKE '$matrikelnummer%' ORDER BY matrikelnr DESC LIMIT 1";
 
 	if($result = $db->db_query($qry))

From 1c7bd4986a18f1cbb9d6af6e34d17f24e3a46268 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= 
Date: Fri, 15 Oct 2021 15:12:23 +0200
Subject: [PATCH 09/12] =?UTF-8?q?Fehler=20beim=20Anlegen=20von=20neuen=20S?=
 =?UTF-8?q?tudieng=C3=A4ngen=20behoben?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 include/studiengang.class.php | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/include/studiengang.class.php b/include/studiengang.class.php
index 08d6e1f13..530b072c0 100644
--- a/include/studiengang.class.php
+++ b/include/studiengang.class.php
@@ -500,7 +500,8 @@ class studiengang extends basis_db
 			$qry = 'INSERT INTO public.tbl_studiengang (studiengang_kz, kurzbz, kurzbzlang, bezeichnung, english,
 				typ, farbe, email, telefon, max_verband, max_semester, max_gruppe, erhalter_kz, bescheid, bescheidbgbl1,
 				bescheidbgbl2, bescheidgz, bescheidvom, titelbescheidvom, aktiv, onlinebewerbung, orgform_kurzbz, zusatzinfo_html,
-				oe_kurzbz, moodle, sprache, testtool_sprachwahl, studienplaetze, lgartcode, mischform,projektarbeit_note_anzeige) VALUES ('.
+				oe_kurzbz, moodle, sprache, testtool_sprachwahl, studienplaetze, lgartcode, mischform,projektarbeit_note_anzeige,
+				melderelevant, foerderrelevant, standort_code) VALUES ('.
 				$this->db_add_param($this->studiengang_kz, FHC_INTEGER).', '.
 				$this->db_add_param($this->kurzbz).', '.
 				$this->db_add_param($this->kurzbzlang).', '.
@@ -1103,7 +1104,7 @@ class studiengang extends basis_db
 				return false;
 		}
 	}
-	
+
 	/**
 	 * Laedt die Studiengänge die vom übergeben Typ sind
 	 * @param string $typ
@@ -1118,13 +1119,13 @@ class studiengang extends basis_db
 					tbl_studiengang.typ=".$this->db_add_param($typ)."
 				ORDER BY
 					kurzbz";
-		
+
 		if($this->db_query($qry))
 		{
 			while($row = $this->db_fetch_object())
 			{
 				$obj = new studiengang();
-				
+
 				$obj->studiengang_kz = $row->studiengang_kz;
 				$obj->kurzbz = $row->kurzbz;
 				$obj->kurzbzlang = $row->kurzbzlang;
@@ -1160,10 +1161,10 @@ class studiengang extends basis_db
 				$obj->melderelevant = $this->db_parse_bool($row->melderelevant);
 				$obj->foerderrelevant = $this->db_parse_bool($row->foerderrelevant);
 				$obj->standort_code = $row->standort_code;
-				
+
 				$obj->bezeichnung_arr['German'] = $obj->bezeichnung;
 				$obj->bezeichnung_arr['English'] = $obj->english;
-				
+
 				$this->result[] = $obj;
 			}
 			return true;

From 2bcf422d7ab5bcc6216bd36111b53fc9322f97c2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= 
Date: Fri, 15 Oct 2021 16:01:52 +0200
Subject: [PATCH 10/12] Fixed Coding Guidelines

---
 content/student/studentDBDML.php | 33 ++++++++++++++++----------------
 1 file changed, 17 insertions(+), 16 deletions(-)

diff --git a/content/student/studentDBDML.php b/content/student/studentDBDML.php
index df841115d..dd3525d1d 100644
--- a/content/student/studentDBDML.php
+++ b/content/student/studentDBDML.php
@@ -109,23 +109,20 @@ if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz') && !$r
 function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
 {
 	$db = new basis_db();
-	
-	
+
 	$studiengang_details = new studiengang();
 	$studiengang_details->load($studiengang_kz);
-	
-	if (!isset($studiengang_details->studiengang_kz)) {
-		//wenn es diesen Studiengang nicht gibt (übergabeparamter falsch)
-		//wie müsste hier ein error handle gemacht werden?
+
+	if (!isset($studiengang_details->studiengang_kz))
+	{
+		return false;
 	}
-	
+
 	$jahr = substr($studiensemester_kurzbz, 4);
 	$art = substr($studiensemester_kurzbz, 0, 2);
 
-	if(			($studiengang_kz < 0) 
-			|| 	(			isset($studiengang_details->typ) 
-						&&	($studiengang_details->typ == 'l'))
-	) {
+	if (($studiengang_kz < 0) || (isset($studiengang_details->typ) && ($studiengang_details->typ == 'l')))
+	{
 		$studiengang_kz=abs($studiengang_kz);
 		//Lehrgang
 		switch($art)
@@ -147,14 +144,18 @@ function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
 	}
 	if($art=='2' || $art=='4')
 		$jahr = $jahr-1;
-	
-	//FH-Burgenland - weil leider die AO Studiengänge aufgeteilt sind (AO sind normal 9+erhalter Nummer, matrikelnr/personenkz wird auch im DVUH Extension berücksichtigt)
-	if ($studiengang_kz >= 90010 && $studiengang_kz <= 90019) {
+
+	//FH-Burgenland - weil leider die AO Studiengänge aufgeteilt sind
+	//(AO sind normal 9+erhalter Nummer, matrikelnr/personenkz wird auch im DVUH Extension berücksichtigt)
+	if ($studiengang_kz >= 90010 && $studiengang_kz <= 90019)
+	{
 		$matrikelnummer = sprintf("%02d",$jahr).$art.substr($studiengang_kz, 0, 4);
-	} else {
+	}
+	else
+	{
 		$matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
 	}
-	
+
 	$qry = "SELECT matrikelnr FROM public.tbl_student WHERE matrikelnr LIKE '$matrikelnummer%' ORDER BY matrikelnr DESC LIMIT 1";
 
 	if($result = $db->db_query($qry))

From 7c81f5a64c2b10228670401ce1ac8b67ceb19d5a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20=C3=96sterreicher?= 
Date: Fri, 15 Oct 2021 17:21:05 +0200
Subject: [PATCH 11/12] =?UTF-8?q?Gemeinde=20Update=20Infotext=20erg=C3=A4n?=
 =?UTF-8?q?zt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 vilesci/stammdaten/set_gemeinde.php | 1 +
 1 file changed, 1 insertion(+)

diff --git a/vilesci/stammdaten/set_gemeinde.php b/vilesci/stammdaten/set_gemeinde.php
index e461c7872..075f2c910 100644
--- a/vilesci/stammdaten/set_gemeinde.php
+++ b/vilesci/stammdaten/set_gemeinde.php
@@ -92,6 +92,7 @@ if (isset($_FILES['parsefile']) && $_FILES['parsefile']['error'] == 0)
   
 	  	

Gemeinden aktualisieren

Diese Seite dient dazu die Gemeinde Kodex Tabelle zu aktualisieren.

+ Die Gemeinde Tabelle muss zuvor manuell geleert werden
Filesyntax:(Standard xlsx-File von https://www.bis.ac.at/BISSuite, gespeichert als csv! erste Zeile ist Header (alles was oberhalb ist kann entfernt werden) -> dann Daten)

From 3f90efaed2be5155fd6aab62e0bf8e515a3dc583 Mon Sep 17 00:00:00 2001 From: ma0068 Date: Tue, 19 Oct 2021 14:54:39 +0200 Subject: [PATCH 12/12] Hinweis: Pause fehlt bei AllIn eingetragen --- cis/private/tools/zeitaufzeichnung.php | 32 ++++++++++++++++++-------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/cis/private/tools/zeitaufzeichnung.php b/cis/private/tools/zeitaufzeichnung.php index fcf3dd811..724323f4c 100644 --- a/cis/private/tools/zeitaufzeichnung.php +++ b/cis/private/tools/zeitaufzeichnung.php @@ -762,7 +762,6 @@ echo ' else { $("#homeofficeBlock").hide(); - } } }); @@ -932,12 +931,8 @@ if(isset($_POST['save']) || isset($_POST['edit']) || isset($_POST['import'])) $verwendung->getVerwendungDatum($data[0],$vonCSV); foreach ($verwendung->result as $v) - // echo "homeoffice für Tag " . $vonCSV . " ". $v->homeoffice . " " . $v->bisverwendung_id . "
"; - if ($v->homeoffice) { - - // echo "homeoffice erlaubt
"; $zeit->homeoffice = true; } else @@ -1800,10 +1795,29 @@ if ($projekt->getProjekteMitarbeiter($user, true)) $tagessaldo = $tagessaldo-$pausesumme; // fehlende Pausen berechnen $pausefehlt_str = ''; - if ($tagessaldo > 19800 && $pausesumme < 1800) - $pausefehlt_str = '-- Pause fehlt oder zu kurz --'; - elseif ($tagessaldo > 18000 && $tagessaldo < 19800 && $pausesumme < $tagessaldo - 18000) - $pausefehlt_str = '-- Pause fehlt oder zu kurz --'; + + //Prüfung auf azgrelevant + $azgrelevant = false; + $verwendung = new bisverwendung(); + + $verwendung->getVerwendungDatum($user, $datum->formatDatum($tag, 'Y-m-d')); + $azgrelevant = true; + foreach ($verwendung->result as $v) + { + if ($v->azgrelevant) + { + $azgrelevant = false; + } + } + + if ($tagessaldo > 19800 && $pausesumme < 1800 && !$azgrelevant) + $pausefehlt_str = '-- Pause fehlt oder zu kurz --'; + elseif ($tagessaldo > 19800 && $pausesumme < 1800 && $azgrelevant) + $pausefehlt_str = '-- Hinweis: Pause fehlt --'; + elseif ($tagessaldo > 18000 && $tagessaldo < 19800 && $pausesumme < $tagessaldo - 18000 && !$azgrelevant) + $pausefehlt_str = '-- Pause fehlt oder zu kurz --'; + elseif ($tagessaldo > 18000 && $tagessaldo < 19800 && $pausesumme < $tagessaldo - 18000 && $azgrelevant) + $pausefehlt_str = '-- Hinweis: Pause fehlt --'; $tagessaldo = date('H:i', ($tagessaldo));