mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 20:29:29 +00:00
- use studiengang_kz and studiengangkurzbz of studienordnung of persontRT
- add check for existing studiengang - use studiengang_kz instead studiengangkurzbz for filter and background green
This commit is contained in:
@@ -36,15 +36,44 @@ class Aufnahmetermine extends FHCAPI_Controller
|
||||
// Load models
|
||||
$this->load->model('crm/Reihungstest_model', 'ReihungstestModel');
|
||||
$this->load->model('crm/RtPerson_model', 'RtPersonModel');
|
||||
$this->load->model('organisation/Studienplan_model', 'StudienplanModel');
|
||||
$this->load->model('organisation/Studienordnung_model', 'StudienordnungModel');
|
||||
$this->load->model('organisation/Studiengang_model', 'StudiengangModel');
|
||||
}
|
||||
|
||||
public function getAufnahmetermine($person_id)
|
||||
{
|
||||
$result = $this->ReihungstestModel->getReihungstestPerson($person_id);
|
||||
$arrayRt = $this->getDataOrTerminateWithError($result);
|
||||
|
||||
$data = $this->getDataOrTerminateWithError($result);
|
||||
foreach ($arrayRt as $item) {
|
||||
//Studienplan
|
||||
$result = $this->StudienplanModel->loadWhere([
|
||||
'studienplan_id' => $item->studienplan_id
|
||||
]);
|
||||
$data = $this->getDataOrTerminateWithError($result);
|
||||
$studienordnung_id_ber = current($data)->studienordnung_id;
|
||||
|
||||
$this->terminateWithSuccess($data);
|
||||
//Studienordnung
|
||||
$result = $this->StudienordnungModel->loadWhere([
|
||||
'studienordnung_id' => $studienordnung_id_ber
|
||||
]);
|
||||
$data = $this->getDataOrTerminateWithError($result);
|
||||
$studiengang_kz_ber = current($data)->studiengang_kz;
|
||||
|
||||
//Studiengang von studiengang_kz_ber
|
||||
$result = $this->StudiengangModel->load($studiengang_kz_ber);
|
||||
$data = $this->getDataOrTerminateWithError($result);
|
||||
|
||||
$studiengangkurzbzlang_ber = current($data)->kurzbzlang;
|
||||
$typ_ber = current($data)->typ;
|
||||
|
||||
//add to Array
|
||||
$item->studiengang_kz_ber = $studiengang_kz_ber;
|
||||
$item->studiengangkurzbzlang_ber = $studiengangkurzbzlang_ber;
|
||||
$item->studiengangtyp_ber = $typ_ber;
|
||||
}
|
||||
$this->terminateWithSuccess($arrayRt);
|
||||
}
|
||||
|
||||
public function insertAufnahmetermin()
|
||||
@@ -60,7 +89,6 @@ class Aufnahmetermine extends FHCAPI_Controller
|
||||
return $this->terminateWithError($this->p->t('ui', 'error_missingId', ['id'=> 'Person ID']), self::ERROR_TYPE_GENERAL);
|
||||
}
|
||||
|
||||
|
||||
$rt_id = (isset($formData['rt_id']) && !empty($formData['rt_id'])) ? $formData['rt_id'] : null;
|
||||
$anmeldedatum = (isset($formData['anmeldedatum']) && !empty($formData['anmeldedatum'])) ? $formData['anmeldedatum'] : null;
|
||||
$teilgenommen = (isset($formData['teilgenommen']) && !empty($formData['teilgenommen'])) ? $formData['teilgenommen'] : false;
|
||||
@@ -237,6 +265,8 @@ class Aufnahmetermine extends FHCAPI_Controller
|
||||
if($item->studienplan_id != null)
|
||||
$studienplan_arr[] = $item->studienplan_id;
|
||||
}
|
||||
if(!hasData($studienplan_arr))
|
||||
$this->terminateWithSuccess([]);
|
||||
|
||||
//get Placementtests Person
|
||||
$person_id = $this->_getPersonId($prestudent_id);
|
||||
|
||||
+13
-19
@@ -46,8 +46,7 @@ export default {
|
||||
const data = response.data;
|
||||
|
||||
const filtered = data.filter(item =>
|
||||
item.studiengangkurzbzlang === this.student.studiengang ||
|
||||
item.stg_kuerzel === this.student.studiengang
|
||||
item.studiengang_kz_ber === this.student.studiengang_kz
|
||||
);
|
||||
|
||||
if (filtered.length > 0) {
|
||||
@@ -62,17 +61,15 @@ export default {
|
||||
return data;
|
||||
},
|
||||
rowFormatter: function(row) {
|
||||
let data = row.getData(); // get data for this row
|
||||
let data = row.getData();
|
||||
|
||||
if (data.studiengangkurzbzlang == self.student.studiengang &&
|
||||
if (data.studiengang_kz_ber === self.student.studiengang_kz &&
|
||||
data.studiensemester === self.youngestSemester) {
|
||||
let cells = row.getCells();
|
||||
|
||||
cells.forEach((c) => {
|
||||
c.getElement().classList.add("row-green");
|
||||
}
|
||||
|
||||
);
|
||||
let cells = row.getCells();
|
||||
cells.forEach((c) => {
|
||||
c.getElement().classList.add("row-green");
|
||||
}
|
||||
);
|
||||
}
|
||||
},
|
||||
dataLoaded: function() {
|
||||
@@ -124,8 +121,9 @@ export default {
|
||||
{title: "ort", field: "ort", visible: false},
|
||||
{title: "studienplan", field: "studienplan", visible: false},
|
||||
{title: "studienplan_id", field: "studienplan_id", visible: false},
|
||||
{title: "stg", field: "studiengangkurzbzlang"},
|
||||
{title: "Stg", field: "stg_kuerzel"},
|
||||
//{title: "stg", field: "studiengangkurzbzlang"},
|
||||
{title: "stg_ber", field: "studiengangkurzbzlang_ber"},
|
||||
{title: "stg_kz", field: "studiengang_kz_ber", visible: false},
|
||||
{
|
||||
title: 'Aktionen', field: 'actions',
|
||||
minWidth: 150, // Ensures Action-buttons will be always fully displayed
|
||||
@@ -209,12 +207,9 @@ export default {
|
||||
cm.getColumnByField('studienplan_id').component.updateDefinition({
|
||||
title: this.$p.t('ui', 'studienplan_id')
|
||||
});
|
||||
cm.getColumnByField('studiengangkurzbzlang').component.updateDefinition({
|
||||
cm.getColumnByField('studiengangkurzbzlang_ber').component.updateDefinition({
|
||||
title: this.$p.t('projektarbeitsbeurteilung', 'studiengang')
|
||||
});
|
||||
cm.getColumnByField('stg_kuerzel').component.updateDefinition({
|
||||
title: this.$p.t('admission', 'stg_kurz')
|
||||
});
|
||||
}
|
||||
}
|
||||
],
|
||||
@@ -382,7 +377,6 @@ export default {
|
||||
.then(result => {
|
||||
if(result.data)
|
||||
this.listPlacementTests = this.filteredPlacementTests = result.data;
|
||||
|
||||
})
|
||||
.catch(this.$fhcAlert.handleSystemError);
|
||||
|
||||
@@ -396,7 +390,7 @@ export default {
|
||||
template: `
|
||||
<div class="stv-details-admission-table h-100 pb-3">
|
||||
<h4>{{$p.t('admission', 'allgemein')}}</h4>
|
||||
|
||||
|
||||
<core-filter-cmpt
|
||||
ref="table"
|
||||
:tabulator-options="tabulatorOptions"
|
||||
|
||||
+2
-11
@@ -49,17 +49,8 @@ export default {
|
||||
.then(result => {
|
||||
this.listAufnahmetermine = result.data;
|
||||
|
||||
//TODO(Manu) check logic Fas STG
|
||||
const hasMatch = this.listAufnahmetermine
|
||||
.some(item => item.studiengangkurzbzlang === this.student.studiengang);
|
||||
if(!hasMatch){
|
||||
this.formData.rt_gesamtpunkte = 0;
|
||||
this.$fhcAlert.alertError("Studiengang nicht enthalten: " + this.student.studiengang);
|
||||
return;
|
||||
}
|
||||
|
||||
const listAufnahmetermineFiltered = this.listAufnahmetermine
|
||||
.filter(item => item.studiengangkurzbzlang == this.student.studiengang)
|
||||
.filter(item => item.studiengang_kz_ber == this.student.studiengang_kz)
|
||||
.sort((a, b) => this.parseSemester(b.studiensemester) - this.parseSemester(a.studiensemester));
|
||||
|
||||
let pointsSemStg = 0;
|
||||
@@ -114,7 +105,7 @@ export default {
|
||||
template: `
|
||||
<div class="stv-details-admission-header-placement h-100 pb-3">
|
||||
<h4>{{ $p.t('lehre', 'studiengang') }}</h4> {{student.studiengang}}
|
||||
|
||||
|
||||
<form-form class="mt-3" ref="formRtGesamtData" @submit.prevent>
|
||||
<div v-if="showAufnahmegruppen" class="row mb-3">
|
||||
<div class="col-1">
|
||||
|
||||
Reference in New Issue
Block a user