mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-19 16:02:15 +00:00
This commit is contained in:
+150
-1
@@ -1,6 +1,7 @@
|
||||
<?php
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/studiensemester.class.php');
|
||||
|
||||
class stip extends basis_db
|
||||
{
|
||||
@@ -97,7 +98,7 @@ class stip extends basis_db
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
/**
|
||||
*
|
||||
* Enter description here ...
|
||||
* @param unknown_type $Svnr
|
||||
@@ -155,6 +156,154 @@ class stip extends basis_db
|
||||
else
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* Ermittelt den StutStatusCode
|
||||
*/
|
||||
public function getStudStatusCode($prestudent_id, $studiensemester_kurzbz, $bisdatum=null)
|
||||
{
|
||||
$qrystatus="
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id='$prestudent_id'
|
||||
AND studiensemester_kurzbz='$studiensemester_kurzbz'";
|
||||
if(!is_null($bisdatum))
|
||||
$qrystatus.=" AND (tbl_prestudentstatus.datum<'$bisdatum')";
|
||||
|
||||
$qrystatus.=" ORDER BY datum desc, insertamum desc, ext_id desc;";
|
||||
|
||||
if($resultstatus = $this->db_query($qrystatus))
|
||||
{
|
||||
if($this->db_num_rows($resultstatus)==0)
|
||||
{
|
||||
$stsem = new studiensemester();
|
||||
$psem = $stsem->getPreviousFrom($studiensemester_kurzbz);
|
||||
|
||||
$qrystatus="
|
||||
SELECT *
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id='$prestudent_id'
|
||||
AND studiensemester_kurzbz='$psem'";
|
||||
if(!is_null($bisdatum))
|
||||
$qrystatus.=" AND (tbl_prestudentstatus.datum<'$bisdatum') ";
|
||||
$qrystatus.=" ORDER BY datum desc, insertamum desc, ext_id desc;";
|
||||
|
||||
if(!$resultstatus = $this->db_query($qrystatus))
|
||||
{
|
||||
$this->errormsg='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if($rowstatus = $this->db_fetch_object($resultstatus))
|
||||
{
|
||||
switch($rowstatus->status_kurzbz)
|
||||
{
|
||||
case 'Student':
|
||||
case 'Incoming':
|
||||
case 'Outgoing':
|
||||
case 'Praktikant':
|
||||
case 'Diplomand':
|
||||
$status=1;
|
||||
break;
|
||||
case 'Unterbrecher':
|
||||
$status=2;
|
||||
break;
|
||||
case 'Absolvent':
|
||||
$status=3;
|
||||
break;
|
||||
case 'Abbrecher':
|
||||
$status=4;
|
||||
break;
|
||||
default:
|
||||
$this->errormsg='Fehlerhafter Status';
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return $status;
|
||||
}
|
||||
/**
|
||||
*
|
||||
* Ermittelt den SemesterCode
|
||||
*/
|
||||
public function getSemester($prestudent_id, $studiensemester_kurzbz, $bisdatum=null)
|
||||
{
|
||||
$qrystatus="
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id='$prestudent_id'
|
||||
AND studiensemester_kurzbz='$studiensemester_kurzbz'";
|
||||
if(!is_null($bisdatum))
|
||||
$qrystatus.=" AND (tbl_prestudentstatus.datum<'$bisdatum')";
|
||||
|
||||
$qrystatus.=" ORDER BY datum desc, insertamum desc, ext_id desc;";
|
||||
|
||||
if($resultstatus = $this->db_query($qrystatus))
|
||||
{
|
||||
if($this->db_num_rows($resultstatus)==0)
|
||||
{
|
||||
$stsem = new studiensemester();
|
||||
$psem = $stsem->getPreviousFrom($studiensemester_kurzbz);
|
||||
|
||||
$qrystatus="
|
||||
SELECT *
|
||||
FROM
|
||||
public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id='$prestudent_id'
|
||||
AND studiensemester_kurzbz='$psem'";
|
||||
if(!is_null($bisdatum))
|
||||
$qrystatus.=" AND (tbl_prestudentstatus.datum<'$bisdatum') ";
|
||||
$qrystatus.=" ORDER BY datum desc, insertamum desc, ext_id desc;";
|
||||
|
||||
if(!$resultstatus = $this->db_query($qrystatus))
|
||||
{
|
||||
$this->errormsg='Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if($rowstatus = $this->db_fetch_object($resultstatus))
|
||||
{
|
||||
$qry1="
|
||||
SELECT count(*) AS dipl FROM public.tbl_prestudentstatus
|
||||
WHERE
|
||||
prestudent_id='$prestudent_id'
|
||||
AND status_kurzbz='Diplomand'";
|
||||
if(!is_null($bisdatum))
|
||||
$qry1.=" AND (tbl_prestudentstatus.datum<'$bisdatum') ";
|
||||
|
||||
if($result1 = $this->db_query($qry1))
|
||||
{
|
||||
if($row1 = $this->db_fetch_object($result1))
|
||||
{
|
||||
$sem=$rowstatus->ausbildungssemester;
|
||||
|
||||
if($row1->dipl>1)
|
||||
{
|
||||
$sem=50;
|
||||
}
|
||||
if($row1->dipl>3)
|
||||
{
|
||||
$sem=60;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $sem;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class error
|
||||
|
||||
+9
-3
@@ -25,6 +25,7 @@ require_once('../include/basis_db.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
require_once('../include/konto.class.php');
|
||||
require_once('../include/datum.class.php');
|
||||
require_once('stip.class.php');
|
||||
|
||||
$SOAPServer = new SoapServer("stip.soap.wsdl");
|
||||
@@ -36,7 +37,8 @@ function getStipDaten($ErhKz, $AnfragedatenID, $Bezieher)
|
||||
{
|
||||
$prestudentID;
|
||||
$studentUID;
|
||||
$StipBezieher = new stip();
|
||||
$StipBezieher = new stip();
|
||||
$datum_obj = new datum();
|
||||
|
||||
if(validateStipDaten($ErhKz, $AnfragedatenID, $Bezieher))
|
||||
{
|
||||
@@ -69,8 +71,12 @@ function getStipDaten($ErhKz, $AnfragedatenID, $Bezieher)
|
||||
if($Bezieher->Typ == "as" || $Bezieher->Typ == "AS")
|
||||
{
|
||||
$StipBezieher->Inskribiert ="j";
|
||||
$StipBezieher->Ausbildungssemester = $prestudent->ausbildungssemester;
|
||||
$StipBezieher->StudStatusCode = $prestudent->status_kurzbz;
|
||||
$StipBezieher->Ausbildungssemester = $StipBezieher->getSemester($prestudentID, 'SS2009');
|
||||
//return new SoapFault("Server", "Some error message");
|
||||
$StipBezieher->StudStatusCode = $StipBezieher->getStudStatusCode($prestudentID, 'SS2009');
|
||||
if($StipBezieher->StudStatusCode==3 || $StipBezieher->StudStatusCode==4)
|
||||
$StipBezieher->BeendigungsDatum = $datum_obj->formatDatum($prestudent->datum,'dmY');
|
||||
|
||||
if($konto->checkStudienbeitrag($studentUID, 'SS2009'))
|
||||
$StipBezieher->Studienbeitrag = 300;
|
||||
}
|
||||
|
||||
+10
-4
@@ -74,9 +74,15 @@ if(isset($_REQUEST['submit']))
|
||||
$bezieher->Familienname= $_REQUEST['Familienname'];
|
||||
$bezieher->Vorname= $_REQUEST['Vorname'];
|
||||
$bezieher->Typ = $_REQUEST['Typ'];
|
||||
|
||||
$response = $client->getStipDaten($ErhKz, $AnfragedatenID, $bezieher);
|
||||
|
||||
echo var_dump($response);
|
||||
try
|
||||
{
|
||||
$response = $client->getStipDaten($ErhKz, $AnfragedatenID, $bezieher);
|
||||
echo var_dump($response);
|
||||
}
|
||||
catch(SoapFault $fault)
|
||||
{
|
||||
echo "SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR;
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user