mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-20 00:12:15 +00:00
Added ECTS Summe functions to AnrechnungLib
Added functions to calculate total ECTS Summe of . angerechnete Studiensemester of Quereinsteiger . bisher angerechnete schulische Kenntnisse . bisher angerechente berufliche Kenntisse
This commit is contained in:
@@ -80,14 +80,22 @@ class AnrechnungLib
|
||||
// Get latest ZGV
|
||||
$result = $this->ci->PrestudentModel->getLatestZGVBezeichnung($prestudent_id);
|
||||
$latest_zgv_bezeichnung = hasData($result) ? getData($result)[0]->bezeichnung : '';
|
||||
|
||||
// Get Sum of berufliche and schulische ECTS
|
||||
$sumEctsQuereinsteiger = $this->getQuereinsteigerEctsSumme($prestudent_id, $lv->studiengang_kz);
|
||||
$sumEctsSchulisch = $this->getSchulischeAnrechnungenEctsSumme($uid);
|
||||
$sumEctsBeruflich = $this->getBeruflicheAnrechnungenEctsSumme($uid);
|
||||
|
||||
// Set the given studiensemester
|
||||
$antrag_data->lv_id = $lv_id;
|
||||
$antrag_data->lv_bezeichnung = $lv->bezeichnung;
|
||||
$antrag_data->ects = $lv->ects;
|
||||
$antrag_data->sumEctsSchulisch = $sumEctsQuereinsteiger + $sumEctsSchulisch;
|
||||
$antrag_data->sumEctsBeruflich = $sumEctsBeruflich;
|
||||
$antrag_data->studiensemester_kurzbz = $studiensemester_kurzbz;
|
||||
$antrag_data->vorname = $person->vorname;
|
||||
$antrag_data->nachname = $person->nachname;
|
||||
$antrag_data->student_uid = $uid;
|
||||
$antrag_data->matrikelnr = $student->matrikelnr;
|
||||
$antrag_data->studiengang_kz = $studiengang->studiengang_kz;
|
||||
$antrag_data->stg_bezeichnung = $studiengang->bezeichnung;
|
||||
@@ -823,4 +831,110 @@ class AnrechnungLib
|
||||
|
||||
return $anrechnung_data;
|
||||
}
|
||||
|
||||
/**
|
||||
* If Student is a Quereinsteiger, get ECTS Summe of all angerechnete Studiensemester.
|
||||
*
|
||||
* @param $prestudent_id
|
||||
* @param $studiengang_kz Studiengang_kz der LV
|
||||
* @return int|mixed
|
||||
*/
|
||||
public function getQuereinsteigerEctsSumme($prestudent_id, $studiengang_kz)
|
||||
{
|
||||
$sumEctsQuereinsteiger = 0;
|
||||
|
||||
// Check, if student is Quereinsteiger
|
||||
$this->ci->load->model('crm/Prestudentstatus_model', 'PrestudentstatusModel');
|
||||
$result = $this->ci->PrestudentstatusModel->getFirstStatus($prestudent_id, 'Student');
|
||||
|
||||
$prestudentFirstStudentStatus = getData($result)[0];
|
||||
|
||||
// If Prestudent is not a Quereinsteiger
|
||||
if ($prestudentFirstStudentStatus->ausbildungssemester == 1)
|
||||
{
|
||||
return $sumEctsQuereinsteiger; // return 0
|
||||
}
|
||||
|
||||
$anzahlAngerechneteStudiensemester = $prestudentFirstStudentStatus->ausbildungssemester - 1;
|
||||
|
||||
// If Prestudent is a Quereinsteiger
|
||||
if ($prestudentFirstStudentStatus->ausbildungssemester > 1)
|
||||
{
|
||||
// Get the 'angerechnete Studiensemester'
|
||||
$this->ci->load->model('organisations/Studiensemester_model', 'StudiensemesterModel');
|
||||
$result = $this->ci->StudiensemesterModel->getPreviousFrom(
|
||||
$prestudentFirstStudentStatus->studiensemester_kurzbz,
|
||||
$anzahlAngerechneteStudiensemester
|
||||
);
|
||||
|
||||
// Get ECTS Summe of each 'angerechnetes Studiensemester'
|
||||
foreach (getData($result) as $studiensemester)
|
||||
{
|
||||
$result = $this->ci->LehrveranstaltungModel->getSumQuereinstiegsECTSProSemester(
|
||||
$studiengang_kz,
|
||||
$studiensemester->studiensemester_kurzbz,
|
||||
$anzahlAngerechneteStudiensemester--,
|
||||
$prestudentFirstStudentStatus->orgform_kurzbz
|
||||
);
|
||||
|
||||
if (hasData($result))
|
||||
{
|
||||
$sumEctsQuereinsteiger = $sumEctsQuereinsteiger + getData($result)[0]->sum_ects;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $sumEctsQuereinsteiger; // return sum of ects of all 'angerechnete Studiensemester'
|
||||
}
|
||||
|
||||
/**
|
||||
* Get ECTS Summe of all Anrechnungen based on schulische Kenntnisse.
|
||||
*
|
||||
* @param $student_uid
|
||||
* @return int|mixed
|
||||
*/
|
||||
public function getSchulischeAnrechnungenEctsSumme($student_uid)
|
||||
{
|
||||
$sumEctsSchule = 0;
|
||||
|
||||
$result = $this->ci->LehrveranstaltungModel->getSumAngerechneteECTSByBegruendung($student_uid);
|
||||
|
||||
if (hasData($result))
|
||||
{
|
||||
foreach (getData($result) as $ects)
|
||||
{
|
||||
if ($ects->begruendung_id != 4)
|
||||
{
|
||||
$sumEctsSchule = $sumEctsSchule + $ects->sum;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $sumEctsSchule;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get ECTS Summe of all Anrechnungen based on berufliche Kenntnisse.
|
||||
*
|
||||
* @param $student_uid
|
||||
* @return int
|
||||
*/
|
||||
public function getBeruflicheAnrechnungenEctsSumme($student_uid)
|
||||
{
|
||||
$sumEctsBeruflich = 0;
|
||||
|
||||
$result = $this->ci->LehrveranstaltungModel->getSumAngerechneteECTSByBegruendung($student_uid);
|
||||
|
||||
if (hasData($result))
|
||||
{
|
||||
foreach (getData($result) as $ects)
|
||||
{
|
||||
if ($ects->begruendung_id == 4)
|
||||
{
|
||||
$sumEctsBeruflich = $ects->sum;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $sumEctsBeruflich;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user