Merge branch 'FHBGLD-studentDBML-generateMatrikelnummer' of https://github.com/FHBGLD/FHC-Core into FHBGLD-FHBGLD-studentDBML-generateMatrikelnummer

This commit is contained in:
Andreas Österreicher
2021-10-15 14:12:00 +02:00
+22 -5
View File
@@ -109,12 +109,23 @@ if(!$rechte->isBerechtigt('admin') && !$rechte->isBerechtigt('assistenz') && !$r
function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
{
$db = new basis_db();
$studiengang_details = new studiengang();
$studiengang_details->load($studiengang_kz);
if (!isset($studiengang_details->studiengang_kz)) {
//wenn es diesen Studiengang nicht gibt (übergabeparamter falsch)
//wie müsste hier ein error handle gemacht werden?
}
$jahr = substr($studiensemester_kurzbz, 4);
$art = substr($studiensemester_kurzbz, 0, 2);
if($studiengang_kz<0)
{
if( ($studiengang_kz < 0)
|| ( isset($studiengang_details->typ)
&& ($studiengang_details->typ == 'l'))
) {
$studiengang_kz=abs($studiengang_kz);
//Lehrgang
switch($art)
@@ -136,8 +147,14 @@ function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz)
}
if($art=='2' || $art=='4')
$jahr = $jahr-1;
$matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
//FH-Burgenland - weil leider die AO Studiengänge aufgeteilt sind (AO sind normal 9+erhalter Nummer, matrikelnr/personenkz wird auch im DVUH Extension berücksichtigt)
if ($studiengang_kz >= 90010 && $studiengang_kz <= 90019) {
$matrikelnummer = sprintf("%02d",$jahr).$art.substr($studiengang_kz, 0, 4);
} else {
$matrikelnummer = sprintf("%02d",$jahr).$art.sprintf("%04d",$studiengang_kz);
}
$qry = "SELECT matrikelnr FROM public.tbl_student WHERE matrikelnr LIKE '$matrikelnummer%' ORDER BY matrikelnr DESC LIMIT 1";
if($result = $db->db_query($qry))