first commit
This commit is contained in:
63
#func_lvs_teilzeit.php
Executable file
63
#func_lvs_teilzeit.php
Executable file
@ -0,0 +1,63 @@
|
||||
<?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);
|
||||
?>
|
Reference in New Issue
Block a user