Merge master into HEAD

Conflicts:
	include/dokument_export.class.php
	include/studiengang.class.php
	vilesci/stammdaten/reihungstestverwaltung.php
This commit is contained in:
Paolo
2016-08-18 16:23:11 +02:00
116 changed files with 10682 additions and 5335 deletions
+44 -5
View File
@@ -233,6 +233,7 @@ $error_msg='';
// **************************************************************
// Studiengangsleiter-Verteiler abgleichen
// Es werden auch StellvertreterInnen hinzugefügt
$mlist_name='tw_stgl';
setGeneriert($mlist_name);
// Personen holen die nicht mehr in den Verteiler gehoeren
@@ -247,9 +248,10 @@ $error_msg='';
JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid)
JOIN public.tbl_benutzerfunktion USING(uid)
JOIN public.tbl_studiengang USING(oe_kurzbz)
WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND
WHERE tbl_benutzer.aktiv AND (funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()))";
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now())
AND tbl_studiengang.aktiv=true)";
if(!($result = $db->db_query($sql_query)))
$error_msg.=$db->db_last_error();
while($row=$db->db_fetch_object($result))
@@ -262,7 +264,7 @@ $error_msg='';
}
// Personen holen die nicht im Verteiler sind
echo '<BR>';
$sql_query="SELECT mitarbeiter_uid AS uid
$sql_query="SELECT DISTINCT mitarbeiter_uid AS uid
FROM
public.tbl_mitarbeiter
JOIN public.tbl_benutzer ON (mitarbeiter_uid=uid)
@@ -270,10 +272,11 @@ $error_msg='';
JOIN public.tbl_studiengang USING(oe_kurzbz)
WHERE
tbl_benutzer.aktiv AND
(tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg') AND
(tbl_benutzerfunktion.funktion_kurzbz='Leitung' OR funktion_kurzbz='gLtg' OR funktion_kurzbz='stvLtg') AND
(tbl_benutzerfunktion.datum_von is null OR tbl_benutzerfunktion.datum_von<=now()) AND
(tbl_benutzerfunktion.datum_bis is null OR tbl_benutzerfunktion.datum_bis>=now()) AND
mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name'))";
mitarbeiter_uid NOT LIKE '\\\\_%' AND mitarbeiter_uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE UPPER(gruppe_kurzbz)=UPPER('$mlist_name'))
AND tbl_studiengang.aktiv=true";
if(!($result = $db->db_query($sql_query)))
$error_msg.=$db->db_last_error();
while($row=$db->db_fetch_object($result))
@@ -1702,6 +1705,42 @@ $error_msg='';
$error_msg.=$db->db_last_error().' '.$sql_querys;
}
$sql_query.=" AND uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name')";
if(!($result_oe = $db->db_query($sql_query)))
$error_msg.=$db->db_last_error().' '.$sql_query;
// Personen holen die nicht im Verteiler sind
while($row_oe = $db->db_fetch_object($result_oe))
{
$sql_query="INSERT INTO public.tbl_benutzergruppe(uid, gruppe_kurzbz, insertamum, insertvon) VALUES ('$row_oe->uid','".$mlist_name."', now(), 'mlists_generate')";
if(!$db->db_query($sql_query))
{
$error_msg.=$db->db_last_error().$sql_query;
}
}
// **************************************************************
// Alle MA mit Funktion Leitung oder stvLeitung oder gfLtg
$mlist_name='TW_LEITUNG';
$grp = new gruppe();
setGeneriert($mlist_name);
// Personen holen die nicht mehr in den Verteiler gehoeren
echo '<br>'.$mlist_name.' wird abgeglichen!';
flush();
$sql_query = "SELECT DISTINCT uid FROM tbl_person JOIN tbl_benutzer
USING (person_id) JOIN tbl_benutzerfunktion USING (uid)
WHERE funktion_kurzbz in('Leitung','stvLtg','gLtg')
AND (tbl_benutzerfunktion.datum_von<=now() OR tbl_benutzerfunktion.datum_von is null)
AND (tbl_benutzerfunktion.datum_bis>=now() OR tbl_benutzerfunktion.datum_bis is null)";
$sql_querys="DELETE FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name' AND uid NOT IN ($sql_query)";
if(!$db->db_query($sql_querys))
{
$error_msg.=$db->db_last_error().' '.$sql_querys;
}
$sql_query.=" AND uid NOT IN (SELECT uid FROM public.tbl_benutzergruppe WHERE gruppe_kurzbz='$mlist_name')";
if(!($result_oe = $db->db_query($sql_query)))
$error_msg.=$db->db_last_error().' '.$sql_query;