,
*/
/**
* Testclient fuer Abfrage der REST Webservice Schnittstelle des Datenverbundes
*/
require_once('../config/vilesci.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/basis_db.class.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/dvb.class.php');
require_once('../include/errorhandler.class.php');
require_once('../include/person.class.php');
require_once('../include/adresse.class.php');
$uid = get_uid();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($uid);
if (!$rechte->isBerechtigt('admin'))
die($rechte->errormsg);
$db = new basis_db();
if (isset($_GET['action']))
$action = $_GET['action'];
else
$action = 'getBySvnr';
$username = DVB_USERNAME;
$password = DVB_PASSWORD;
$studienjahr = filter_input(INPUT_POST, 'studienjahr');
$matrikelnr = filter_input(INPUT_POST, 'matrikelnummer');
$nachname = filter_input(INPUT_POST, 'nachname');
$vorname = filter_input(INPUT_POST, 'vorname');
$geburtsdatum = filter_input(INPUT_POST, 'geburtsdatum');
$geschlecht = filter_input(INPUT_POST, 'geschlecht');
$postleitzahl = filter_input(INPUT_POST, 'postleitzahl');
$staat = filter_input(INPUT_POST, 'staat');
$matura = filter_input(INPUT_POST, 'matura');
$svnr = filter_input(INPUT_POST, 'svnr');
$ersatzkennzeichen = filter_input(INPUT_POST, 'ersatzkennzeichen');
$person_id = filter_input(INPUT_POST, 'person_id');
$strasse = filter_input(INPUT_POST, 'strasse');
$dokumenttyp = filter_input(INPUT_POST, 'dokumenttyp');
$ausgabedatum = filter_input(INPUT_POST, 'ausgabedatum');
$ausstellbehoerde = filter_input(INPUT_POST, 'ausstellbehoerde');
$ausstellland = filter_input(INPUT_POST, 'ausstellland');
$dokumentnr = filter_input(INPUT_POST, 'dokumentnr');
$getPersonData = filter_input(INPUT_POST, 'getPersonData', FILTER_VALIDATE_BOOLEAN);
$data_person_id = filter_input(INPUT_POST, 'data_person_id');
if ($getPersonData)
{
$person = new person($data_person_id);
$adresse = new adresse();
$adresse->loadZustellAdresse($person->person_id);
$svnr = $person->svnr;
if ($svnr == '' && $person->ersatzkennzeichen != '')
{
$svnr = $person->ersatzkennzeichen;
}
echo json_encode(array(
'status'=>'ok',
'matrikelnummer'=>$person->matr_nr,
'nachname'=>$person->nachname,
'vorname'=>$person->vorname,
'geburtsdatum'=>str_replace('-','',$person->gebdatum),
'geschlecht'=>strtoupper($person->geschlecht),
'postleitzahl'=>$adresse->plz,
'staat'=>$adresse->nation,
'sozialversicherungsnummer'=>$svnr
));
exit();
}
?>
Datenverbund-Client
Testclient für Datenverbund-Webservice
Portal: ".DVB_PORTAL;
echo "
Bildungseinrichtung: ".DVB_BILDUNGSEINRICHTUNG_CODE;
?>
authenticate();
if (ErrorHandler::isSuccess($result))
echo '
OAuth Bearer Token: '.$dvb->authentication->access_token;
else
echo '
Failed: '.$dvb->errormsg;
break;
case 'getBySvnr':
$data = $dvb->getMatrikelnrBySVNR($_POST['svnr']);
if(ErrorHandler::isSuccess($data) && ErrorHandler::hasData($data))
{
echo '
Matrikelnummer vorhanden: '.$data->retval->matrikelnummer;
if(isset($data->retval->bpk) && $data->retval->bpk!='')
echo '
BPK vorhanden: '.$data->retval->bpk;
}
else
{
echo '
Matrikelnummer nicht vorhanden:'.$data->errormsg;
}
break;
case 'getByErsatzkennzeichen':
$data = $dvb->getMatrikelnrByErsatzkennzeichen($_POST['ersatzkennzeichen']);
if (ErrorHandler::isSuccess($data) && ErrorHandler::hasData($data))
echo '
Matrikelnummer vorhanden:'.$data->retval->matrikelnummer;
else
echo '
Matrikelnummer nicht vorhanden:'.$data->errormsg;
break;
case 'getByNachname':
$data = $dvb->getMatrikelnrByNachname($_POST['nachname'], $_POST['geburtsdatum']);
if(ErrorHandler::isSuccess($data) && ErrorHandler::hasData($data))
{
if(isset($data->retval->data) && is_array($data->retval->data) && count($data->retval->data)>0)
{
echo '
Daten gefunden: ';
var_dump($data->retval);
}
else
{
echo 'keine Einträge gefunden';
}
}
else
{
echo '
Matrikelnummer nicht vorhanden:'.$data->errormsg;
}
break;
case 'getByName':
$data = $dvb->getMatrikelnrByName($_POST['nachname'], $_POST['vorname'], $_POST['geburtsdatum']);
if(ErrorHandler::isSuccess($data) && ErrorHandler::hasData($data))
{
if(isset($data->retval->data) && is_array($data->retval->data) && count($data->retval->data)>0)
{
echo '
Daten gefunden: ';
var_dump($data->retval);
}
else
{
echo 'keine Einträge gefunden';
}
}
else
{
echo '
Matrikelnummer nicht vorhanden:'.$data->errormsg;
}
break;
case 'getByMatrikelnummer':
$data = $dvb->getDataByMatrikelnr($_POST['matrikelnummer']);
if(ErrorHandler::isSuccess($data) && ErrorHandler::hasData($data))
{
if(isset($data->retval->data) && is_array($data->retval->data) && count($data->retval->data)>0)
{
echo '
Daten gefunden: ';
var_dump($data->retval);
}
else
{
echo 'keine Einträge gefunden';
}
}
else
{
echo '
Matrikelnummer nicht vorhanden:'.$data->errormsg;
}
break;
case 'getReservations':
$result = $dvb->getReservations(DVB_BILDUNGSEINRICHTUNG_CODE, $_POST['studienjahr']);
if(ErrorHandler::isSuccess($result) && ErrorHandler::hasData($result))
{
$reservierteNummern = $result->retval->reservations;
if ($reservierteNummern !== false)
echo '
Reservierte Nummern:'.print_r($reservierteNummern, true);
else
echo '
Fehlgeschlagen:'.$result->errormsg;
}
break;
case 'getKontingent':
$result = $dvb->getKontingent(DVB_BILDUNGSEINRICHTUNG_CODE, $_POST['studienjahr']);
if(ErrorHandler::isSuccess($result) && ErrorHandler::hasData($result))
{
$kontingent = $result->retval->kontingent;
if ($kontingent !== false)
echo '
Kontingent:'.print_r($kontingent, true);
else
echo '
Fehlgeschlagen:'.$result->errormsg;
}
break;
case 'setMatrikelnummer':
$person = new stdClass();
$person->matrikelnummer = $matrikelnr;
$person->vorname = $vorname;
$person->nachname = $nachname;
$person->geburtsdatum = $geburtsdatum;
$person->geschlecht = $geschlecht;
$person->staat = $staat;
$person->plz = $postleitzahl;
$person->matura = $matura; // Optional
$person->svnr = $svnr; // Optional
$result = $dvb->setMatrikelnummer(DVB_BILDUNGSEINRICHTUNG_CODE, $person);
if (ErrorHandler::isSuccess($result))
echo '
Erfolgreich gemeldet';
else
echo '
Fehlgeschlagen:'.$result->errormsg;
break;
case 'setMatrikelnummerErnp':
$person = new stdClass();
$person->matrikelnummer = $matrikelnr;
$person->vorname = $vorname;
$person->nachname = $nachname;
$person->geburtsdatum = $geburtsdatum;
$person->geschlecht = $geschlecht;
$person->staat = $staat;
$person->plz = $postleitzahl;
$person->matura = $matura; // Optional
$person->svnr = $svnr; // Optional
$reisepass = new stdClass();
$reisepass->dokumenttyp = $dokumenttyp;
$reisepass->ausgabedatum = $ausgabedatum;
$reisepass->ausstellBehoerde = $ausstellbehoerde;
$reisepass->ausstellland = $ausstellland;
$reisepass->dokumentnr = $dokumentnr;
$result = $dvb->setMatrikelnummerErnp(DVB_BILDUNGSEINRICHTUNG_CODE, $person, $reisepass);
if (ErrorHandler::isSuccess($result))
echo '
Erfolgreich gemeldet';
else
echo '
Fehlgeschlagen:'.$result->errormsg;
break;
case 'assignMatrikelnummer':
$result = $dvb->assignMatrikelnummer($person_id);
if(ErrorHandler::isSuccess($result))
{
echo '
OK';
}
else
echo '
Fehlgeschlagen:'.$result->errormsg;
break;
case 'getBPK':
$data = $dvb->getBPK($person_id);
if(ErrorHandler::isSuccess($data))
{
echo '
OK BPK: '.$data->retval->bpk;
}
else
echo '
Fehlgeschlagen:'.$data->errormsg;
break;
case 'pruefeBPK':
$data = $dvb->pruefeBPK($geburtsdatum, $vorname, $nachname, $geschlecht, $postleitzahl, $strasse);
if(ErrorHandler::isSuccess($data))
{
echo '
OK BPK: '.$data->retval->bpk;
}
else
echo '
Fehlgeschlagen:'.$data->errormsg;
break;
default:
echo "Unknown action";
break;
}
if (isset($_POST['debug']))
{
$output = nl2br(htmlentities($dvb->debug_output));
$output = str_replace('><','>
<',$output);
$output = preg_replace('/(<uni:.*?>)/','$1',$output);
$output = preg_replace('/(<\/uni:.*?>)/','$1',$output);
echo ''.$output.'
';
}
}
?>