loadActiveForStudiengaenge eigene Funktion

This commit is contained in:
cgfhtw
2023-12-18 14:27:32 +01:00
parent d8dc19ef2f
commit f4194c251a
2 changed files with 20 additions and 15 deletions
@@ -102,21 +102,9 @@ class Leitung extends FHC_Controller
$antraege = [];
if ($studiengaenge) {
if ($extra) {
$this->StudierendenantragModel->db->group_start();
$this->StudierendenantragModel->db->where_not_in('s.studierendenantrag_statustyp_kurzbz', [
Studierendenantragstatus_model::STATUS_CANCELLED,
Studierendenantragstatus_model::STATUS_APPROVED,
Studierendenantragstatus_model::STATUS_REJECTED,
Studierendenantragstatus_model::STATUS_OBJECTION_DENIED
]);
$this->StudierendenantragModel->db->or_group_start();
$this->StudierendenantragModel->db->where('s.studierendenantrag_statustyp_kurzbz', Studierendenantragstatus_model::STATUS_APPROVED);
$this->StudierendenantragModel->db->where('tbl_studierendenantrag.typ', Studierendenantrag_model::TYP_ABMELDUNG_STGL);
$this->StudierendenantragModel->db->group_end();
$this->StudierendenantragModel->db->group_end();
}
$result = $this->StudierendenantragModel->loadForStudiengaenge($studiengaenge, null, null, true);
$result = $extra
? $this->StudierendenantragModel->loadActiveForStudiengaenge($studiengaenge)
: $this->StudierendenantragModel->loadForStudiengaenge($studiengaenge);
if (isError($result)) {
$this->output->set_status_header(500);
return $this->outputJson('Internal Server Error');
@@ -73,6 +73,23 @@ class Studierendenantrag_model extends DB_Model
return $this->loadWhere($where);
}
public function loadActiveForStudiengaenge($studiengaenge) {
$this->db->group_start();
$this->db->where_not_in('s.studierendenantrag_statustyp_kurzbz', [
Studierendenantragstatus_model::STATUS_CANCELLED,
Studierendenantragstatus_model::STATUS_APPROVED,
Studierendenantragstatus_model::STATUS_REJECTED,
Studierendenantragstatus_model::STATUS_OBJECTION_DENIED
]);
$this->db->or_group_start();
$this->db->where('s.studierendenantrag_statustyp_kurzbz', Studierendenantragstatus_model::STATUS_APPROVED);
$this->db->where('tbl_studierendenantrag.typ', Studierendenantrag_model::TYP_ABMELDUNG_STGL);
$this->db->group_end();
$this->db->group_end();
return $this->loadForStudiengaenge($studiengaenge);
}
public function isInStudiengang($studierendenantrag_id, $studiengaenge)
{
$this->addJoin('public.tbl_prestudent', 'prestudent_id');