first commit

This commit is contained in:
aschwarz
2023-04-25 13:25:59 +02:00
commit 086d1e1e9e
1774 changed files with 396049 additions and 0 deletions

132
fetch_lvs_erm_7-8.php Executable file
View File

@ -0,0 +1,132 @@
<?php
session_start();
#if(isset($_POST['get_option'])){
$jahrgang = $_SESSION["jahrgang"];
$jahrgang2 = $jahrgang+1;
require_once("config/datenbankanbindung.php"); // f&uuml;gt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php
require_once("func_timediff.php"); // Funktionen für die Berechnung der Differenz der Tage
$std = str_replace(',','.',str_replace('.','', $_POST['get_option']));
$beginn_funktion = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $_POST['get_beginn_funktion']);
$ende_funktion = preg_replace('/^(\\d{2})\\.(\\d{2})\\.(\\d{4})$/', '$3-$2-$1', $_POST['get_ende_funktion']);
if($std == ''){
$std = 0;
}
/*
$std = 2;
$beginn_funktion = '2017-07-01';
$ende_funktion = '2022-09-30';
*/
$dat_min = strtotime($jahrgang."-09-01");
$dat_max = strtotime($jahrgang2."-08-31");
$dat_beginn = strtotime($beginn_funktion);
$dat_ende = strtotime($ende_funktion);
if($dat_beginn <= $dat_min or $beginn_funktion == ''){
$beginn_funktion = $jahrgang."-09-01";
}
if($dat_ende >= $dat_max or $ende_funktion == ''){
$ende_funktion = $jahrgang2."-08-31";
}
$year_start = substr($beginn_funktion,0,4);
$mon_start = substr($beginn_funktion,5,2);
$day_start = substr($beginn_funktion,8,2);
$year_ende = substr($ende_funktion,0,4);
$mon_ende = substr($ende_funktion,5,2);
$day_ende = substr($ende_funktion,8,2);
/*Grundsätzlich beginnen die Beauftragungen / Funktionen an der Hochschule zum Monatsersten und enden am Monatsletzten.
Aber: ich kann auch nicht mit 100%iger Sicherheit sagen, dass dies immer so ist. Daher sollten wir zur Sicherheit mit Tagen rechnen.
Im Beispiel unten: Beauftragung vom 1.10.2019 30.09.2022. Für das Studienjahr 2019/20 bedeutet dies, dass er für 335 von 365 Tagen die Ermäßigung erhält.
Das sind 60,57 LVS Ermäßigung. Hatten wir hier uns schon auf eine Rundung festgelegt? Falls nicht, würde ich auf 2 Stellen nach dem Komma runden, dann wäre die Ermäßigung (nach Rundung) 60,58 LVS.
*/
# Wie viele Tage hat das Schuljahr 365 bzw 366 Tage
$start = $jahrgang."-09-01";
$ende = $jahrgang2."-08-31";
$jahr_tage = tage($start, $ende);
# Wie viele Tage wurde die Funktion ausgeübt
$funk_tage = tage($beginn_funktion, $ende_funktion);
# func_timediff.php
# Je nach vorgehensweise. Werden die Anzahl der Tage im Jahr zugrunde gerlegt (tage()) 300/365
# oder die Anzahl der Monate (datediff_ymd()) 11/12
# $module = $_COOKIE["modulid"];
$db = dbconnect();
$query_sw = $db->query("SELECT sw
FROM dep_kat_lvs
WHERE jahr <=$jahrgang
ORDER BY jahr desc
LIMIT 1");
$row_sw = $query_sw->fetch_array();
$sw = $row_sw['sw'];
# Die 33 sind Semesterwochen aus dep_kat_lvs
# Bsp Beauftragung ging 11 Monate
$ausgabe = round($std*$sw*$funk_tage/$jahr_tage,2);
$start2 = mktime(0, 0, 0, $mon_start, $day_start, $year_start);
$ende2 = mktime(0, 0, 0, $mon_ende, $day_ende, $year_ende);
$ende2_form = mktime(0, 0, 0, $mon_ende, $day_ende, $year_ende);
echo "<b>Berechnung:</b>
<table>
<tr>
<td>
Funktionsbeginn:
</td>
<td>"
.date("d.m.Y", $start2)."
</td>
</tr>
<tr>
<td>
Funktionsende:
</td>
<td>"
.date("d.m.Y",$ende2_form)."
</td>
</tr>
<tr>
<td>
Funktionstage:
</td>
<td>"
.$funk_tage."
</td>
</tr>
<tr>
<td>
Rechenweg:
</td>
<td>"
.number_format($std, 2, ',', '.')." x $sw x $funk_tage / $jahr_tage
</td>
</tr>
<tr>
<td>
LVS:
</td>
<td>"
.number_format($ausgabe, 2, ',', '.')."
</td>
</tr>
</table>"."||".$ausgabe;
#echo "Rechenweg: $std*$sw*$funk_tage/$jahr_tage<br>LVS: $ausgabe||$ausgabe";
exit;
#}
?>