diff --git a/application/libraries/AntragLib.php b/application/libraries/AntragLib.php index f1a757bc2..e3119d65b 100644 --- a/application/libraries/AntragLib.php +++ b/application/libraries/AntragLib.php @@ -288,6 +288,7 @@ class AntragLib } else { + $studierendenantrag_status_id = getData($result); $resultAntrag = $this->_ci->StudierendenantragModel->load($studierendenantrag_id); if (isError($resultAntrag)) return $resultAntrag; @@ -299,6 +300,11 @@ class AntragLib // Prestudentstatus und Unterbrechungsfolgeaktionen setzen $result = $this->_ci->prestudentlib->setUnterbrecher($resultAntrag->prestudent_id, $resultAntrag->studiensemester_kurzbz, $studierendenantrag_id); + if (isError($result)) { + $this->_ci->StudierendenantragstatusModel->delete($studierendenantrag_status_id); + return $result; + } + //Mail $subject = 'Unterbrechung freigegeben'; $mail = []; diff --git a/application/libraries/PrestudentLib.php b/application/libraries/PrestudentLib.php index 6dff4e812..2597b40d0 100644 --- a/application/libraries/PrestudentLib.php +++ b/application/libraries/PrestudentLib.php @@ -203,8 +203,23 @@ class PrestudentLib if (isError($result)) return $result; $result = getData($result); - if (!$result) - return error('Kein Prestudent in diesem Studiensemester gefunden'); + if (!$result) { + /** TODO(chris): Zukünftige Unterbrecher so nicht möglich + * - Verband und Gruppe dürfen noch nicht gesetzt werden + * - Keine Garantie das Ausbildungssemester gleich bleibt (weiter Unterbrechungen oder eine Wiederholung in der Zwischenzeit) + * - LVs eventuell nicht zugewießen + * Mögliche Lösung: JOB! + + $result = $this->_ci->PrestudentstatusModel->getLastStatus($prestudent_id); + if (isError($result)) + return $result; + $result = getData($result); + if (!$result) { + return error('Kein Prestudent status gefunden'); + } + $result->studiensemester_kurzbz*/ + return error('Kein Prestudent status gefunden'); + } $prestudent_status = current($result); diff --git a/system/dbupdate_3.4/27351_digitalisierung_formulare.php b/system/dbupdate_3.4/27351_digitalisierung_formulare.php index a40b457e2..e94bd2b61 100644 --- a/system/dbupdate_3.4/27351_digitalisierung_formulare.php +++ b/system/dbupdate_3.4/27351_digitalisierung_formulare.php @@ -100,8 +100,8 @@ if(!$result = @$db->db_query("SELECT 1 FROM campus.tbl_studierendenantrag_status CACHE 1; ALTER TABLE campus.tbl_studierendenantrag_status ALTER COLUMN studierendenantrag_status_id SET DEFAULT nextval('campus.tbl_studierendenantrag_status_studierendenantrag_status_id_seq'); - GRANT SELECT, INSERT ON campus.tbl_studierendenantrag_status TO vilesci; - GRANT SELECT, INSERT ON campus.tbl_studierendenantrag_status TO web; + GRANT SELECT, INSERT, DELETE ON campus.tbl_studierendenantrag_status TO vilesci; + GRANT SELECT, INSERT, DELETE ON campus.tbl_studierendenantrag_status TO web; GRANT SELECT, UPDATE ON campus.tbl_studierendenantrag_status_studierendenantrag_status_id_seq TO vilesci; GRANT SELECT, UPDATE ON campus.tbl_studierendenantrag_status_studierendenantrag_status_id_seq TO web;";