diff --git a/vilesci/bis/personalmeldung.php b/vilesci/bis/personalmeldung.php index 9d0f92894..2e2910247 100644 --- a/vilesci/bis/personalmeldung.php +++ b/vilesci/bis/personalmeldung.php @@ -1,5 +1,22 @@ + */ require_once('../../config/vilesci.config.inc.php'); require_once('../../include/studiensemester.class.php'); require_once('../../include/datum.class.php'); @@ -78,7 +95,7 @@ if (!defined('BIS_FUNKTIONSCODE_6_ARR') || empty('BIS_FUNKTIONSCODE_6_ARR')) // Prüfe Zeitraum zur Erstellung einer BIS-Meldung $studiensemester = new studiensemester(); -$stsem = (isset($_GET['stsem'])) ? $_GET['stsem'] : $studiensemester->getaktorNext(1); // aktuelles Studiensemester +$stsem = (isset($_GET['stsem'])) ? $_GET['stsem'] : $studiensemester->getaktorNext(); // aktuelles Studiensemester $datum_obj = new datum(); if(mb_strstr($stsem,'SS')) @@ -121,6 +138,8 @@ foreach ($mitarbeiter_arr as $mitarbeiter) $person_obj->personalnummer = setLeadingZero(intval($mitarbeiter->personalnummer), 15); $person_obj->uid = $mitarbeiter->uid; + $person_obj->vorname = $mitarbeiter->vorname; + $person_obj->nachname = $mitarbeiter->nachname; $person_obj->geschlecht = $mitarbeiter->geschlecht; $person_obj->geschlechtX = $mitarbeiter->geschlechtX; $person_obj->geburtsjahr = $datum_obj->formatDatum($mitarbeiter->gebdatum, 'Y'); @@ -311,6 +330,8 @@ foreach ($mitarbeiter_arr as $mitarbeiter) // XML generieren // ********************************************************************************************************************* $xml = ''; + +_outputHTML($person_arr); $xml = _generateXML($person_arr); $xml_datei = 'bisdaten/bismeldung_mitarbeiter.xml'; @@ -318,12 +339,7 @@ $dateiausgabe = fopen($xml_datei,'w'); fwrite($dateiausgabe, $xml); fclose($dateiausgabe); -echo 'Herunterladen'; - -//header("Content-Type: text/xml"); -//echo $xml; - - +echo 'XML Herunterladen'; // --------------------------------------------------------------------------------------------------------------------- // Private Functions @@ -823,10 +839,19 @@ function _generateXML($person_arr) $xml = ''; $xml .= ''; -// TODO: ErhKz und Meldedatum aendern + $erhalter = new erhalter(); + $erhalter->getAll(); + + if(isset($erhalter->result[0])) + { + $erhalter = sprintf("%03s",trim($erhalter->result[0]->erhalter_kz)); + } + else + $erhalter = ''; + $xml .= ''; - $xml .= '005'; - $xml .= '15042020'; + $xml .= ''.$erhalter.''; + $xml .= '1504'.date('Y').''; $xml .= ''; foreach ($person_arr as $person) @@ -835,7 +860,8 @@ function _generateXML($person_arr) $xml .= 'personalnummer. ']]>'; $xml .= 'geschlecht. ']]>'; - $xml .= 'geschlechtX. ']]>'; + if ($person->geschlecht == 'x') + $xml .= 'geschlechtX. ']]>'; $xml .= 'geburtsjahr. ']]>'; $xml .= 'staatsangehoerigkeit. ']]>'; $xml .= 'hoechste_abgeschlossene_ausbildung. ']]>'; @@ -903,4 +929,187 @@ function _generateXML($person_arr) return $xml; } +/** + * Prints the HTML Table with all Persons + * @param $person_arr Array of PersonData + */ +function _outputHTML($person_arr) +{ + echo ' + + BIS - Meldung Personal + + '; + include('../../include/meta/jquery.php'); + include('../../include/meta/jquery-tablesorter.php'); + echo ' + + +

Personalmeldung

'; + echo ' + + '; + + echo "Anzahl der gemeldeten Personen: ".count($person_arr); + + echo ' + + + + + + + + + + + + + + + + + + + '; + + + foreach ($person_arr as $person) + { + echo ' + + + + + + + + + + + '; + + echo ''; + + echo ''; + + echo ' + '; + } + + echo ' +
PersNrVornameNachnameUIDGeschlecht (X)Geb.JahrStaatHöchste Ausb.Habil.HautpberufcodeVerwendungFunktionLehre
'.$person->personalnummer.''.$person->vorname.''.$person->nachname.''.$person->uid.''.$person->geschlecht.($person->geschlecht=='x'?'('.$person->geschlechtX.')':'').''.$person->geburtsjahr.''.$person->staatsangehoerigkeit.''.$person->hoechste_abgeschlossene_ausbildung.''.$person->habilitation.''.$person->hauptberufcode.''; + + if (count($person->verwendung_arr) > 0) + { + echo ' + + + + + + + + + + + + '; + + foreach ($person->verwendung_arr as $verwendung) + { + echo ' + + + + + + + '; + } + echo ' +
VerwendungBa1CodeBa2CodeVZÄJVZÄ
'.$verwendung->verwendung_code.''.$verwendung->ba1code.''.$verwendung->ba2code.''.$verwendung->vzae.''.$verwendung->jvzae.'
'; + } + echo '
'; + + if (count($person->funktion_arr) > 0) + { + echo ' + + + + + + + + + + '; + + foreach ($person->funktion_arr as $funktion) + { + echo ' + + + + + '; + } + echo ' +
FunktionBes.QualStgKZ
'. $funktion->funktionscode. ''. $funktion->besondereQualifikationCode. ''; + + if ($funktion->funktionscode == 5 || $funktion->funktionscode == 7) + { + if (is_array($funktion->studiengang)) + { + foreach ($funktion->studiengang as $studiengang) + { + echo $studiengang.' '; + } + } + else if (!is_null($funktion->studiengang)) + { + echo $funktion->studiengang.' '; + } + } + echo '
'; + } + echo '
'; + if ($person->lehre_arr > 0) + { + echo ' + + + + + + + + + '; + + foreach ($person->lehre_arr as $lehre) + { + echo ' + + + + + '; + } + + echo ' +
StgKZSommerSWSWinterSWS
'. $lehre->StgKz. ''. $lehre->SommersemesterSWS. ''. $lehre->WintersemesterSWS. '
'; + } + echo '
'; +}