mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Lektoren- und Mitarbeiterstatistik wurden um eine Detailansicht erweitert, in der die Personen Namentlich aufgeführt werden.
This commit is contained in:
@@ -23,11 +23,14 @@
|
||||
* Erstellt eine Tablle mit der Anzahl der Lektoren die im angegebenen
|
||||
* StudienJAHR einen Lehrauftrag im jeweiligen Institut haben, getrennt nach Fixangestellten und Freien
|
||||
* und der Anzahl der Stunden die in diesem Institut gehalten wurden
|
||||
* Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen
|
||||
* Lektoren Namentlich aufscheinen.
|
||||
*/
|
||||
require_once('../../vilesci/config.inc.php');
|
||||
require_once('../../include/studiensemester.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/fachbereich.class.php');
|
||||
|
||||
if(!$conn = pg_pconnect(CONN_STRING))
|
||||
die('Fehler beim Connecten zur DB');
|
||||
@@ -51,6 +54,95 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
</head>
|
||||
<body>';
|
||||
|
||||
|
||||
|
||||
if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz']))
|
||||
{
|
||||
$ss = (isset($_GET['ss'])?$_GET['ss']:'');
|
||||
$ws = (isset($_GET['ws'])?$_GET['ws']:'');
|
||||
$fachbereich = new fachbereich($conn);
|
||||
if(!$fachbereich->load($_GET['fachbereich_kurzbz']))
|
||||
die('Institut existiert nicht');
|
||||
|
||||
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) $ws / $ss - ".$fachbereich->bezeichnung.'</h2>';
|
||||
$qry = "SELECT distinct mitarbeiter_uid, nachname, vorname, titelpre, titelpost
|
||||
FROM lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
JOIN lehre.tbl_lehrfach USING(lehrfach_id)
|
||||
JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid)
|
||||
JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE studiensemester_kurzbz in('$ws','$ss')
|
||||
AND fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."' AND fixangestellt
|
||||
ORDER BY nachname, vorname";
|
||||
|
||||
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
echo "Fixangestellt - Anzahl: ".pg_num_rows($result)."
|
||||
<table class='liste table-stripeclass:alternate table-autostripe'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>TitelPre</th>
|
||||
<th>Nachname</th>
|
||||
<th>Vorname</th>
|
||||
<th>Titelpost</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
";
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
echo '<tr>';
|
||||
echo "<td>$row->titelpre</td>";
|
||||
echo "<td>$row->nachname</td>";
|
||||
echo "<td>$row->vorname</td>";
|
||||
echo "<td>$row->titelpost</td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
|
||||
$qry = "SELECT distinct mitarbeiter_uid, nachname, vorname, titelpre, titelpost
|
||||
FROM lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING(lehreinheit_id)
|
||||
JOIN lehre.tbl_lehrfach USING(lehrfach_id)
|
||||
JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid)
|
||||
JOIN public.tbl_benutzer ON(uid=mitarbeiter_uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE studiensemester_kurzbz in('$ws','$ss')
|
||||
AND fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."' AND NOT fixangestellt
|
||||
ORDER BY nachname, vorname";
|
||||
|
||||
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
echo "<br /><br />Freiangestellt - Anzahl: ".pg_num_rows($result)."
|
||||
<table class='liste table-stripeclass:alternate table-autostripe'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>TitelPre</th>
|
||||
<th>Nachname</th>
|
||||
<th>Vorname</th>
|
||||
<th>Titelpost</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
";
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
echo '<tr>';
|
||||
echo "<td>$row->titelpre</td>";
|
||||
echo "<td>$row->nachname</td>";
|
||||
echo "<td>$row->vorname</td>";
|
||||
echo "<td>$row->titelpost</td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
else
|
||||
{
|
||||
if(substr($stsem, 0, 2)=='WS')
|
||||
{
|
||||
$stsem_obj = new studiensemester($conn);
|
||||
@@ -63,7 +155,6 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
$ws = $stsem_obj->getPreviousFrom($stsem);
|
||||
$ss = $stsem;
|
||||
}
|
||||
|
||||
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) $ws / $ss";
|
||||
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
|
||||
echo '</h2>';
|
||||
@@ -89,76 +180,77 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
echo '</SELECT>
|
||||
<input type="submit" value="Anzeigen" /></form><br><br>';
|
||||
|
||||
if($stsem!='')
|
||||
{
|
||||
|
||||
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th colspan=2>Anzahl</th>
|
||||
<th colspan=2>ALVS</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Institute</th>
|
||||
<th>fix</th>
|
||||
<th>extern</th>
|
||||
<th>$ws</th>
|
||||
<th>$ss</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
";
|
||||
|
||||
$qry = "SELECT
|
||||
bezeichnung,
|
||||
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt) a) as fix,
|
||||
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt) a) as extern,
|
||||
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ws' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ws,
|
||||
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ss' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ss
|
||||
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
|
||||
/*
|
||||
Mitarbeiter laut institutszuordnung
|
||||
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND fixangestellt AND aktiv) as fix,
|
||||
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND NOT fixangestellt AND aktiv) as extern,
|
||||
*/
|
||||
//echo '<pre>'.$qry.'</pre><br><br>';
|
||||
if($result = pg_query($conn, $qry))
|
||||
if($stsem!='')
|
||||
{
|
||||
|
||||
$gesamt_fix=0;
|
||||
$gesamt_extern=0;
|
||||
$gesamt_ws=0;
|
||||
$gesamt_ss=0;
|
||||
while($row = pg_fetch_object($result))
|
||||
echo "<table class='liste table-stripeclass:alternate table-autostripe'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th></th>
|
||||
<th colspan=2>Anzahl</th>
|
||||
<th colspan=2>ALVS</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>Institute</th>
|
||||
<th>fix</th>
|
||||
<th>extern</th>
|
||||
<th>$ws</th>
|
||||
<th>$ss</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
";
|
||||
|
||||
$qry = "SELECT
|
||||
bezeichnung, fachbereich_kurzbz,
|
||||
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt) a) as fix,
|
||||
(SELECT count(*) FROM (SELECT distinct mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE studiensemester_kurzbz in('$ws','$ss') AND fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt) a) as extern,
|
||||
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ws' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ws,
|
||||
(SELECT sum(semesterstunden) FROM lehre.tbl_lehreinheitmitarbeiter JOIN lehre.tbl_lehreinheit USING(lehreinheit_id) JOIN lehre.tbl_lehrfach USING(lehrfach_id) WHERE studiensemester_kurzbz='$ss' AND fachbereich_kurzbz=a.fachbereich_kurzbz AND faktor>0 AND stundensatz>0) as ss
|
||||
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
|
||||
/*
|
||||
Mitarbeiter laut institutszuordnung
|
||||
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND fixangestellt AND aktiv) as fix,
|
||||
(SELECT count(*) FROM public.tbl_benutzerfunktion JOIN public.tbl_mitarbeiter on (uid=mitarbeiter_uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND funktion_kurzbz='oezuordnung' AND NOT fixangestellt AND aktiv) as extern,
|
||||
*/
|
||||
//echo '<pre>'.$qry.'</pre><br><br>';
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
if($row->fix==0 && $row->extern==0)
|
||||
|
||||
$gesamt_fix=0;
|
||||
$gesamt_extern=0;
|
||||
$gesamt_ws=0;
|
||||
$gesamt_ss=0;
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
continue;
|
||||
if($row->fix==0 && $row->extern==0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
echo '<tr>';
|
||||
echo "<td><a href='".$_SERVER['PHP_SELF']."?details=true&fachbereich_kurzbz=$row->fachbereich_kurzbz&ss=$ss&ws=$ws'>$row->bezeichnung</a></td>";
|
||||
echo "<td align='center'>$row->fix</td>";
|
||||
echo "<td align='center'>$row->extern</td>";
|
||||
echo "<td align='center'>$row->ws</td>";
|
||||
echo "<td align='center'>$row->ss</td>";
|
||||
echo "</tr>";
|
||||
$gesamt_fix+=$row->fix;
|
||||
$gesamt_extern+=$row->extern;
|
||||
$gesamt_ws+=$row->ws;
|
||||
$gesamt_ss+=$row->ss;
|
||||
}
|
||||
echo '<tr>';
|
||||
echo "<td>$row->bezeichnung</td>";
|
||||
echo "<td align='center'>$row->fix</td>";
|
||||
echo "<td align='center'>$row->extern</td>";
|
||||
echo "<td align='center'>$row->ws</td>";
|
||||
echo "<td align='center'>$row->ss</td>";
|
||||
echo '<td><b>SUMME</b></td>';
|
||||
echo "<td align='center'> </td>";
|
||||
echo "<td align='center'> </td>";
|
||||
echo "<td align='center'><b>$gesamt_ws</b></td>";
|
||||
echo "<td align='center'><b>$gesamt_ss</b></td>";
|
||||
echo "</tr>";
|
||||
$gesamt_fix+=$row->fix;
|
||||
$gesamt_extern+=$row->extern;
|
||||
$gesamt_ws+=$row->ws;
|
||||
$gesamt_ss+=$row->ss;
|
||||
|
||||
}
|
||||
echo '<tr>';
|
||||
echo '<td><b>SUMME</b></td>';
|
||||
echo "<td align='center'> </td>";
|
||||
echo "<td align='center'> </td>";
|
||||
echo "<td align='center'><b>$gesamt_ws</b></td>";
|
||||
echo "<td align='center'><b>$gesamt_ss</b></td>";
|
||||
echo "</tr>";
|
||||
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
|
||||
@@ -22,11 +22,14 @@
|
||||
/*
|
||||
* Generiert eine Liste mit den Institutszuordnungen der Mitarbeiter
|
||||
* und einer aufschluesselung ob diese Fixangestellt sind
|
||||
* Bei einem klick auf das Institut wird die Detailansicht angezeigt, in der die einzelnen
|
||||
* Lektoren Namentlich aufscheinen.
|
||||
*/
|
||||
require_once('../../vilesci/config.inc.php');
|
||||
require_once('../../include/studiensemester.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/functions.inc.php');
|
||||
require_once('../../include/fachbereich.class.php');
|
||||
|
||||
if(!$conn = pg_pconnect(CONN_STRING))
|
||||
die('Fehler beim Connecten zur DB');
|
||||
@@ -41,7 +44,79 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
</head>
|
||||
<body>';
|
||||
|
||||
|
||||
if(isset($_GET['details']) && isset($_GET['fachbereich_kurzbz']))
|
||||
{
|
||||
$fachbereich = new fachbereich($conn);
|
||||
if(!$fachbereich->load($_GET['fachbereich_kurzbz']))
|
||||
die('Institut existiert nicht');
|
||||
|
||||
echo "<h2>Lektorenstatistik (Lehrauftrag ohne Betreuungen) - ".$fachbereich->bezeichnung.'</h2>';
|
||||
$qry = "SELECT distinct uid, nachname, vorname, titelpre, titelpost
|
||||
FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
|
||||
WHERE fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."'
|
||||
AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv
|
||||
ORDER BY nachname, vorname";
|
||||
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
echo "Fixangestellt - Anzahl: ".pg_num_rows($result)."
|
||||
<table class='liste table-stripeclass:alternate table-autostripe'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>TitelPre</th>
|
||||
<th>Nachname</th>
|
||||
<th>Vorname</th>
|
||||
<th>Titelpost</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
";
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
echo '<tr>';
|
||||
echo "<td>$row->titelpre</td>";
|
||||
echo "<td>$row->nachname</td>";
|
||||
echo "<td>$row->vorname</td>";
|
||||
echo "<td>$row->titelpost</td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
|
||||
$qry = "SELECT distinct uid, nachname, vorname, titelpre, titelpost
|
||||
FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid)
|
||||
WHERE fachbereich_kurzbz='".addslashes($fachbereich->fachbereich_kurzbz)."'
|
||||
AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv
|
||||
ORDER BY nachname, vorname";
|
||||
|
||||
if($result = pg_query($conn, $qry))
|
||||
{
|
||||
echo "<br /><br />Freiangestellt - Anzahl: ".pg_num_rows($result)."
|
||||
<table class='liste table-stripeclass:alternate table-autostripe'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>TitelPre</th>
|
||||
<th>Nachname</th>
|
||||
<th>Vorname</th>
|
||||
<th>Titelpost</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
";
|
||||
while($row = pg_fetch_object($result))
|
||||
{
|
||||
echo '<tr>';
|
||||
echo "<td>$row->titelpre</td>";
|
||||
echo "<td>$row->nachname</td>";
|
||||
echo "<td>$row->vorname</td>";
|
||||
echo "<td>$row->titelpost</td>";
|
||||
echo "</tr>";
|
||||
}
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
else
|
||||
{
|
||||
echo "<h2>Mitarbeiterstatistik (Hauptzuordnung)";
|
||||
echo '<span style="position:absolute; right:15px;">'.date('d.m.Y').'</span></h2><br>';
|
||||
echo '</h2>';
|
||||
@@ -65,7 +140,7 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
";
|
||||
//Bachelor
|
||||
$qry = "SELECT
|
||||
bezeichnung,
|
||||
bezeichnung, fachbereich_kurzbz,
|
||||
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as fix,
|
||||
(SELECT count(*) FROM (SELECT distinct uid FROM public.tbl_benutzerfunktion JOIN campus.vw_mitarbeiter USING(uid) WHERE fachbereich_kurzbz=a.fachbereich_kurzbz AND NOT fixangestellt AND funktion_kurzbz='oezuordnung' AND aktiv) a) as extern
|
||||
FROM public.tbl_fachbereich a WHERE aktiv ORDER BY bezeichnung";
|
||||
@@ -83,7 +158,7 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
continue;
|
||||
}
|
||||
echo '<tr>';
|
||||
echo "<td>$row->bezeichnung</td>";
|
||||
echo "<td><a href='".$_SERVER['PHP_SELF']."?details=true&fachbereich_kurzbz=".$row->fachbereich_kurzbz."'>$row->bezeichnung</a></td>";
|
||||
echo "<td align='center'>$row->fix</td>";
|
||||
echo "<td align='center'>$row->extern</td>";
|
||||
echo "</tr>";
|
||||
@@ -116,6 +191,7 @@ echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www
|
||||
|
||||
}
|
||||
echo '</tbody></table>';
|
||||
}
|
||||
?>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user