64 lines
2.2 KiB
PHP
Executable File
64 lines
2.2 KiB
PHP
Executable File
<?php
|
|
## Funktion berechnet die Lehrveranstaltungsstunden des Dozenten auf das Jahr
|
|
Funktion wurde abgelöst durch func_jahrsabschluss_erm.php
|
|
|
|
## Funktion muss überarbeitet werden, da Ausgangspunkt nicht mehr 594 LVS pauschal sind, sondern erst in Rangfolge 2 (sort_order) kommt.
|
|
function lvs_teilzeit($imtuid, $jahrgang){
|
|
|
|
require("config.inc.php");
|
|
$jahrgang2 = $jahrgang+1;
|
|
$db = dbconnect();
|
|
$lvs = "";
|
|
|
|
$start = new DateTime($jahrgang . '-09-01');
|
|
$ende = $jahrgang2.'-08-31';
|
|
$end = date_create($ende, new DateTimeZone('GMT'));
|
|
|
|
# Sind Einträge vorhanden
|
|
$query_vorh = $db->query("SELECT count(*) Anz
|
|
FROM dep_deputat_ermaessigung
|
|
WHERE jahr = '$jahrgang'
|
|
AND imtuid = $uid
|
|
AND art = 'Teilzeit'");
|
|
$row_vorh = $query_vorh->fetch_array();
|
|
|
|
# Was ist die Standard LVS
|
|
$query_baselvs = $db->query("SELECT lvs
|
|
FROM dep_kat_lvs
|
|
WHERE jahr <=$jahrgang
|
|
ORDER BY jahr desc
|
|
LIMIT 1");
|
|
$row_baselvs = $query_baselvs->fetch_array();
|
|
|
|
$baselvs = $row_baselvs['lvs'];
|
|
|
|
if($row_vorh['Anz'] > 0){
|
|
foreach (new DatePeriod($start, new DateInterval('P1M'), $end) as $cur) {
|
|
# Schleife läuft alle Monate des Studienjahrs durch und prüft monatliche Teilzeit
|
|
$akt_mon = $cur->format('Y-m');
|
|
|
|
$result_umf = $db->query("SELECT prozent
|
|
FROM dep_deputat_ermaessigung
|
|
WHERE date_format(beginn, '%Y-%m') <= '$akt_mon'
|
|
AND imtuid = $imtuid
|
|
AND art = 'Teilzeit'
|
|
ORDER BY beginn desc
|
|
LIMIT 1
|
|
");
|
|
$row_umf = $result_umf->fetch_array();
|
|
$lvs_ber = $baselvs/12*$row_umf['prozent'];
|
|
$lvs = $lvs+$lvs_ber;
|
|
|
|
echo "$akt_mon -> $row_umf[prozent] -> $lvs<br>";
|
|
}
|
|
|
|
}else{
|
|
# Keine Teilzeit
|
|
$lvs = $baselvs;
|
|
}
|
|
return $lvs;
|
|
}
|
|
|
|
echo lvs_teilzeit(1,2019);
|
|
?>
|