diff --git a/application/controllers/jobs/TagJob.php b/application/controllers/jobs/TagJob.php index 52c0326c9..9db55c929 100644 --- a/application/controllers/jobs/TagJob.php +++ b/application/controllers/jobs/TagJob.php @@ -8,8 +8,6 @@ class TagJob extends JOB_Controller { const BATCHUSER = 'sftest'; - const SEMESTER = 'SS2026'; //docker - //TODO semester /** * API constructor @@ -26,11 +24,8 @@ class TagJob extends JOB_Controller // Load Models $this->load->model('crm/Prestudentstatus_model', 'PrestudentstatusModel'); - - $this->load->model('organisation/Studiengang_model', 'StudiengangModel'); - $this->load->model('person/Notiz_model', 'NotizModel'); + $this->load->model('organisation/Studiensemester_model', 'StudiensemesterModel'); $this->load->model('system/Notiztyp_model', 'NotiztypModel'); - $this->load->model('person/Notizzuordnung_model', 'NotizzuordnungModel'); $this->loadPhrases([ 'lehre' @@ -43,7 +38,14 @@ class TagJob extends JOB_Controller $automatedTagsRes = $this->NotiztypModel->loadWhere(array('automatisiert' => true, 'taglib IS NOT NULL' => null)); $automatedTags = hasData($automatedTagsRes) ? getData($automatedTagsRes) : []; - //print_r($automatedTags); + + $result = $this->StudiensemesterModel->getLastOrAktSemester(); + if (isError($result)) + return error ('Error occurred during retrieving studiensemester'); + if (empty($result->retval) || !isset($result->retval[0])) { + return error('No studiensemester found'); + } + $studiensemester_kurzbz = $result->retval[0]->studiensemester_kurzbz ?? null; foreach($automatedTags as $autoTag) { @@ -63,7 +65,7 @@ class TagJob extends JOB_Controller $obj = new $className(); - $outputArray = $obj->getZuordnungIds(['studiensemester_kurzbz' => self::SEMESTER]); + $outputArray = $obj->getZuordnungIds(['studiensemester_kurzbz' => $studiensemester_kurzbz]); $data = $outputArray->data; $result = $this->taglib->updateAutomatedTags($kurz_bz, $data); diff --git a/application/libraries/TagLib.php b/application/libraries/TagLib.php index 353c8eb56..5724d3ff5 100644 --- a/application/libraries/TagLib.php +++ b/application/libraries/TagLib.php @@ -18,7 +18,6 @@ class TagLib { const BATCHUSER = 'sftest'; const TYP_ZUORDNUNG = 'prestudent_id'; - const SEMESTER = 'SS2026'; /** * Object initialization @@ -31,15 +30,11 @@ class TagLib $this->_ci->load->config('stv'); // Models - $this->_ci->load->model('organisation/Studiengang_model', 'StudiengangModel'); - $this->_ci->load->model('crm/Prestudent_model', 'PrestudentModel'); - $this->_ci->load->model('person/Person_model', 'PersonModel'); $this->_ci->load->model('person/Notiz_model', 'NotizModel'); $this->_ci->load->model('system/Notiztyp_model', 'NotiztypModel'); $this->_ci->load->model('person/Notizzuordnung_model', 'NotizzuordnungModel'); $this->_ci->load->model('crm/Prestudentstatus_model', 'PrestudentstatusModel'); - // Tag-Helper - + $this->_ci->load->model('organisation/Studiensemester_model', 'StudiensemesterModel'); // Libraries $this->_ci->load->library('PermissionLib'); @@ -316,6 +311,15 @@ class TagLib $automatedTagsRes = $this->_ci->NotiztypModel->loadWhere(array('automatisiert' => true, 'taglib IS NOT NULL' => null)); //echo $this->NotiztypModel->db->last_query(); $automatedTags = hasData($automatedTagsRes) ? getData($automatedTagsRes) : []; + + $result = $this->_ci->StudiensemesterModel->getLastOrAktSemester(); + if (isError($result)) + return error ('Error occurred during retrieving studiensemester'); + if (empty($result->retval) || !isset($result->retval[0])) { + return error('No studiensemester found'); + } + $studiensemester_kurzbz = $result->retval[0]->studiensemester_kurzbz ?? null; + print_r($automatedTags); $return = []; @@ -338,7 +342,7 @@ class TagLib $obj = new $className(); $criteriaIsSet = $obj->isCriteriaSetFor([ 'prestudent_id' => $prestudent_id, - 'studiensemester_kurzbz' => self::SEMESTER + 'studiensemester_kurzbz' => $studiensemester_kurzbz ]); //$return = $this->_ci->PrestudentstatusModel->db->last_query(); $kurz_bz = $autoTag->typ_kurzbz;