corrected Studienpläne Query

This commit is contained in:
cgfhtw
2024-07-25 15:51:30 +02:00
parent e1b179a248
commit 0534ab4ac2
2 changed files with 17 additions and 21 deletions
@@ -264,18 +264,15 @@ class Prestudent extends FHCAPI_Controller
return $this->terminateWithSuccess(getData($result) ?: []);
}
public function getStudienplaene($prestudent_ids)
public function getStudienplaene($prestudent_id)
{
$prestudent_ids = urldecode($prestudent_ids);
if (!is_int($prestudent_id))
show_404();
$this->load->model('organisation/Studienplan_model', 'StudienplanModel');
$result = $this->StudienplanModel->getStudienplaeneByPrestudents($prestudent_ids);
$result = $this->StudienplanModel->getStudienplaeneByPrestudents($prestudent_id);
$data = $this->getDataOrTerminateWithError($result);
if (isError($result))
{
$this->terminateWithError(getError($result), self::ERROR_TYPE_GENERAL);
}
return $this->terminateWithSuccess(getData($result) ?: []);
return $this->terminateWithSuccess($data);
}
}
@@ -120,19 +120,18 @@ class Studienplan_model extends DB_Model
]);
}
public function getStudienplaeneByPrestudents($prestudentIds)
public function getStudienplaeneByPrestudents($prestudent_id)
{
$prestudentIds = intVal($prestudentIds);
$this->addDistinct();
$this->addSelect($this->dbTable . '.*');
$this->addSelect('sem.start AS start_stsem');
$this->addJoin('lehre.tbl_studienordnung o', 'studienordnung_id');
$this->addJoin('public.tbl_prestudent p', 'studiengang_kz');
$this->addJoin('public.tbl_studiensemester sem', 'sem.studiensemester_kurzbz = o.gueltigvon', 'LEFT');
$this->addOrder('sem.start');
$query = "
SELECT so.studienordnung_id, sp.bezeichnung
FROM public.tbl_prestudent ps
JOIN lehre.tbl_studienordnung so ON (ps.studiengang_kz = so.studiengang_kz)
JOIN lehre.tbl_studienplan sp ON (sp.studienordnung_id = so.studienordnung_id)
WHERE ps.prestudent_id IN (?)
ORDER BY so.studienordnung_id DESC
";
return $this->execQuery($query, array($prestudentIds));
return $this->loadWhere([
'prestudent_id' => $prestudent_id
]);
}
}