From 503fbd5bde9852dc72030b5f7b446f4630a6af07 Mon Sep 17 00:00:00 2001 From: KarpAlex Date: Wed, 20 Jul 2022 01:01:58 +0200 Subject: [PATCH] bis studentenmeldung: Unterbrechungsdatum und Wiedereintrittsdatum gesetzt --- vilesci/bis/studentenmeldung.php | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/vilesci/bis/studentenmeldung.php b/vilesci/bis/studentenmeldung.php index b55aa9a5b..5553a5967 100644 --- a/vilesci/bis/studentenmeldung.php +++ b/vilesci/bis/studentenmeldung.php @@ -1073,11 +1073,29 @@ function GenerateXMLStudentBlock($row) { $status=1; $meldestatus='I'; + + // Wiedereintrittsdatum + // letzten Status des letzten Semesters holen + $prestudent_last_status = new prestudent(); + $prestudent_last_status->getLastStatus($row->prestudent_id, $psem); + + // Datum setzen wenn aktiver Status nach Unterbrecher + if ($prestudent_last_status->status_kurzbz == 'Unterbrecher') + $wiedereintrittsdatum = $rowstatus->datum; } else if($rowstatus->status_kurzbz=="Unterbrecher" ) { $status=2; $meldestatus='U'; + + // Unterbrechungsdatum + // letzten Status des letzten Semesters holen + $prestudent_last_status = new prestudent(); + $prestudent_last_status->getLastStatus($row->prestudent_id, $psem); + + // Datum setzen wenn aktiver Status vor Unterbrecher + if (in_array($prestudent_last_status->status_kurzbz, array('Student', 'Outgoing', 'Incoming', 'Praktikant', 'Diplomand'))) + $unterbrechungsdatum = $rowstatus->datum; } else if($rowstatus->status_kurzbz=="Absolvent" ) { @@ -1191,6 +1209,7 @@ function GenerateXMLStudentBlock($row) } } } + //Wenn im Status keine Organisationsform eingetragen ist, wird die des Studienganges uebernommen if($storgform=='') { @@ -1519,6 +1538,18 @@ function GenerateXMLStudentBlock($row) ".date("dmY", $datumobj->mktime_fromdate($aktstatus_datum)).""; } + if(isset($unterbrechungsdatum)) + { + $datei.=" + ".date("dmY", $datumobj->mktime_fromdate($unterbrechungsdatum)).""; + } + + if(isset($wiedereintrittsdatum)) + { + $datei.=" + ".date("dmY", $datumobj->mktime_fromdate($wiedereintrittsdatum)).""; + } + /* Ausbildungssemester nicht anzeigen wenn Incoming Ausserordentlich Studierender @@ -1546,7 +1577,6 @@ function GenerateXMLStudentBlock($row) if($db->db_num_rows($ioresults)>0) $meldestatus='A'; - // TODO: wenn extern, auch kein Meldestatus? welcher meldestatus bei GS? $datei.=" ".$meldestatus."";