diff --git a/application/controllers/api/frontend/v1/stv/Pruefung.php b/application/controllers/api/frontend/v1/stv/Pruefung.php index bb7c6bc58..7ea8cc95c 100644 --- a/application/controllers/api/frontend/v1/stv/Pruefung.php +++ b/application/controllers/api/frontend/v1/stv/Pruefung.php @@ -461,11 +461,13 @@ class Pruefung extends FHCAPI_Controller $this->terminateWithSuccess($data); } - public function getLvsandLesByStudent($student_uid) + public function getLvsandLesByStudent($student_uid, $semester_kurzbz=null) { $this->load->model('education/Lehrveranstaltung_model', 'LehrveranstaltungModel'); - $result = $this->LehrveranstaltungModel->getLvsByStudent($student_uid); + //return $this->terminateWithError($semester_kurzbz, self::ERROR_TYPE_GENERAL); + + $result = $this->LehrveranstaltungModel->getLvsByStudent($student_uid, $semester_kurzbz); $data = $this->getDataOrTerminateWithError($result); diff --git a/application/models/education/Lehrveranstaltung_model.php b/application/models/education/Lehrveranstaltung_model.php index 0993eb851..6a8437622 100644 --- a/application/models/education/Lehrveranstaltung_model.php +++ b/application/models/education/Lehrveranstaltung_model.php @@ -522,24 +522,27 @@ class Lehrveranstaltung_model extends DB_Model */ public function getLvsByStudent($student_uid, $studiensemester_kurzbz = null) { - $params = array($student_uid); + // $studiensemester_kurzbz = 'WS2024'; + //$studiensemester_kurzbz = null; - $qry = "SELECT * FROM lehre.tbl_lehrveranstaltung - WHERE lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM campus.vw_student_lehrveranstaltung - WHERE uid=?"; + $params = array($student_uid); + $qry = "SELECT DISTINCT * FROM lehre.tbl_lehrveranstaltung + WHERE lehrveranstaltung_id IN( + SELECT lehrveranstaltung_id FROM campus.vw_student_lehrveranstaltung + WHERE uid=?"; if (isset($studiensemester_kurzbz)) { - $qry .= " AND studiensemester_kurzbz=?"; $params[] = $studiensemester_kurzbz; + $qry .= " AND studiensemester_kurzbz=?"; } - $qry .= ") OR lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM lehre.tbl_zeugnisnote WHERE student_uid=?"; + $qry .= ")"; + + $qry .= " OR lehrveranstaltung_id IN( + SELECT lehrveranstaltung_id FROM lehre.tbl_zeugnisnote + WHERE student_uid=?"; $params[] = $student_uid; -/* if (isset($studiensemester_kurzbz)) - { - $qry .= " AND studiensemester_kurzbz=?"; - $params[] = $studiensemester_kurzbz; - }*/ + $qry .= ") ORDER BY semester, bezeichnung"; return $this->execQuery($qry, $params); diff --git a/public/js/api/stv/exam.js b/public/js/api/stv/exam.js index 2f9ed5ffc..5071dbdf5 100644 --- a/public/js/api/stv/exam.js +++ b/public/js/api/stv/exam.js @@ -14,8 +14,8 @@ export default { getLvsByStudent(uid){ return this.$fhcApi.get('api/frontend/v1/stv/pruefung/getLvsByStudent/' + uid) }, - getLvsandLesByStudent(uid){ - return this.$fhcApi.get('api/frontend/v1/stv/pruefung/getLvsandLesByStudent/' + uid); + getLvsandLesByStudent(uid, semester){ + return this.$fhcApi.get('api/frontend/v1/stv/pruefung/getLvsandLesByStudent/' + uid + '/' + semester); }, getLvsAndMas(uid){ return this.$fhcApi.get('api/frontend/v1/stv/pruefung/getLvsAndMas/' + uid) diff --git a/public/js/api/stv/mobility.js b/public/js/api/stv/mobility.js index c680dc70b..c0dd5b086 100644 --- a/public/js/api/stv/mobility.js +++ b/public/js/api/stv/mobility.js @@ -5,14 +5,14 @@ export default { getProgramsMobility(){ return this.$fhcApi.get('api/frontend/v1/stv/mobility/getProgramsMobility/'); }, - addNewMobility(data){ - return this.$fhcApi.post('api/frontend/v1/stv/mobility/insertMobility/', data); + addNewMobility(form, data){ + return this.$fhcApi.post(form, 'api/frontend/v1/stv/mobility/insertMobility/', data); }, loadMobility(bisio_id){ return this.$fhcApi.get('api/frontend/v1/stv/mobility/loadMobility/' + bisio_id); }, - updateMobility(data){ - return this.$fhcApi.post('api/frontend/v1/stv/mobility/updateMobility/', data); + updateMobility(form, data){ + return this.$fhcApi.post(form, 'api/frontend/v1/stv/mobility/updateMobility/', data); }, deleteMobility(bisio_id){ return this.$fhcApi.post('api/frontend/v1/stv/mobility/deleteMobility/' + bisio_id); diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Mobility/Mobility.js b/public/js/components/Stv/Studentenverwaltung/Details/Mobility/Mobility.js index a05a03131..308a4f7a4 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Mobility/Mobility.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Mobility/Mobility.js @@ -209,7 +209,7 @@ export default { uid: this.student.uid, formData: this.formData }; - return this.$refs.formMobility.factory.stv.mobility.addNewMobility(dataToSend) + return this.$fhcApi.factory.stv.mobility.addNewMobility(this.$refs.formMobility, dataToSend) .then(response => { this.$fhcAlert.alertSuccess(this.$p.t('ui', 'successSave')); this.resetForm(); @@ -252,7 +252,7 @@ export default { formData: this.formData, uid: this.student.uid, }; - this.$refs.formMobility.factory.stv.mobility.updateMobility(dataToSend) + this.$fhcApi.factory.stv.mobility.updateMobility(this.$refs.formMobility, dataToSend) .then(response => { this.$fhcAlert.alertSuccess(this.$p.t('ui', 'successSave')); this.resetForm(); diff --git a/public/js/components/Stv/Studentenverwaltung/Details/Pruefung/Pruefunglist.js b/public/js/components/Stv/Studentenverwaltung/Details/Pruefung/Pruefunglist.js index e50564a4d..fc3e1acfa 100644 --- a/public/js/components/Stv/Studentenverwaltung/Details/Pruefung/Pruefunglist.js +++ b/public/js/components/Stv/Studentenverwaltung/Details/Pruefung/Pruefunglist.js @@ -362,7 +362,7 @@ export default{ }) .catch(this.$fhcAlert.handleSystemError); - this.$fhcApi.factory.stv.exam.getLvsandLesByStudent(this.uid) + this.$fhcApi.factory.stv.exam.getLvsandLesByStudent(this.uid, this.currentSemester) .then(result => { this.listLvsAndLes = result.data; }) @@ -387,6 +387,10 @@ export default{ }, template: `
+ + {{currentSemester}} + + {{listLvsAndLes.gruppe}}