neu cis displaying wahlname

This commit is contained in:
adisposkofh
2026-10-08 15:02:12 +02:00
parent 0c4d102850
commit cad122bef6
12 changed files with 55 additions and 13 deletions
+44 -4
View File
@@ -26,6 +26,10 @@ $config['person'] = [
'comparison' => 'similar',
'field' => 'nachname'
],
'wahlname' => [
'comparison' => 'similar',
'field' => 'wahlname'
],
'name' => [
'comparison' => 'similar',
'field' => "(vorname || ' ' || nachname)"
@@ -68,7 +72,7 @@ $config['person'] = [
'resultfields' => [
"ARRAY( SELECT uid FROM public.tbl_benutzer WHERE person_id = p.person_id ) AS uids",
"p.person_id",
"(p.vorname || ' ' || p.nachname) AS name",
"CASE WHEN p.wahlname IS NOT NULL THEN (p.wahlname || ' ' || p.nachname) ELSE (p.vorname || ' ' || p.nachname) END AS name",
"ARRAY( SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp = 'email' AND person_id=p.person_id ) AS email",
"CASE
WHEN p.foto IS NOT NULL THEN 'data:image/jpeg' || CONVERT_FROM(DECODE('3b','hex'), 'UTF8') || 'base64,' || p.foto
@@ -117,6 +121,20 @@ $config['student'] = [
]
]
],
'wahlname' => [
'comparison' => 'similar',
'field' => 'wahlname',
'join' => [
[
'table' => "public.tbl_prestudent",
'using' => "prestudent_id"
],
[
'table' => "public.tbl_person",
'using' => "person_id"
]
]
],
'name' => [
'comparison' => 'similar',
'field' => "(vorname || ' ' || nachname)",
@@ -196,7 +214,7 @@ $config['student'] = [
"s.student_uid AS uid",
"s.matrikelnr",
"p.person_id",
"(p.vorname || ' ' || p.nachname) AS name",
"CASE WHEN p.wahlname IS NOT NULL THEN (p.wahlname || ' ' || p.nachname) ELSE (p.vorname || ' ' || p.nachname) END AS name",
"(s.student_uid || '@" . DOMAIN . "') || ARRAY( SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp = 'email' AND person_id=p.person_id ) AS email",
"CASE
WHEN p.foto IS NOT NULL THEN 'data:image/jpeg' || CONVERT_FROM(DECODE('3b','hex'), 'UTF8') || 'base64,' || p.foto
@@ -257,6 +275,14 @@ $config['prestudent'] = [
'using' => "person_id"
]
],
'wahlname' => [
'comparison' => 'similar',
'field' => 'wahlname',
'join' => [
'table' => "public.tbl_person",
'using' => "person_id"
]
],
'name' => [
'comparison' => 'similar',
'field' => "(vorname || ' ' || nachname)",
@@ -314,7 +340,7 @@ $config['prestudent'] = [
"s.matrikelnr",
"p.person_id",
"b.uid",
"(p.vorname || ' ' || p.nachname) AS name",
"CASE WHEN p.wahlname IS NOT NULL THEN (p.wahlname || ' ' || p.nachname) ELSE (p.vorname || ' ' || p.nachname) END AS name",
"(b.uid || '@" . DOMAIN . "') || ARRAY( SELECT kontakt FROM public.tbl_kontakt WHERE kontakttyp = 'email' AND person_id=p.person_id ) AS email",
"CASE
WHEN p.foto IS NOT NULL THEN 'data:image/jpeg' || CONVERT_FROM(DECODE('3b','hex'), 'UTF8') || 'base64,' || p.foto
@@ -390,6 +416,20 @@ $config['employee'] = [
]
]
],
'wahlname' => [
'comparison' => 'similar',
'field' => "wahlname",
'join' => [
[
'table' => "public.tbl_benutzer",
'on' => "uid = mitarbeiter_uid"
],
[
'table' => "public.tbl_person",
'using' => "person_id"
]
]
],
'name' => [
'comparison' => 'similar',
'field' => "(vorname || ' ' || nachname)",
@@ -472,7 +512,7 @@ $config['employee'] = [
'resultfields' => [
"b.uid",
"p.person_id",
"(p.vorname || ' ' || p.nachname) AS name",
"CASE WHEN p.wahlname IS NOT NULL THEN (p.wahlname || ' ' || p.nachname) ELSE (p.vorname || ' ' || p.nachname) END AS name",
"ARRAY(
SELECT
'[' || ot.bezeichnung || '] ' || o.bezeichnung AS bezeichnung
+1 -1
View File
@@ -25,7 +25,7 @@ $config['student']['resultfields'] = [
"s.matrikelnr AS personenkennzeichen",
"p.person_id",
"p.matr_nr AS matrikelnummer",
"(p.vorname || ' ' || p.nachname) AS name",
"CASE WHEN p.wahlname IS NOT NULL THEN (p.wahlname || ' ' || p.nachname) ELSE (p.vorname || ' ' || p.nachname) END AS name",
"ARRAY[s.student_uid || '@' || '" . DOMAIN . "'] AS email",
"CASE
WHEN (p.foto_sperre = false AND p.foto IS NOT NULL) THEN 'data:image/jpeg' || CONVERT_FROM(DECODE('3b','hex'), 'UTF8') || 'base64,' || p.foto
@@ -50,6 +50,7 @@ class Cis4FhcApi extends FHCAPI_Controller
$viewData = array(
'uid' => getAuthUID(),
'name' => $personData->vorname,
'wahlname' => $personData->wahlname,
'person_id' => $personData->person_id,
'timezone' => $this->config->item('timezone'),
);
@@ -62,6 +62,7 @@ class OtherLvPlan extends FHCAPI_Controller
"foto" => $profileData->data->foto,
"vorname" => $profileData->data->vorname,
"nachname" => $profileData->data->nachname,
"wahlname" => $profileData->data->wahlname,
"titel" => $profileData->data->titel,
"postnomen" => $profileData->data->postnomen,
],
+1 -1
View File
@@ -329,7 +329,7 @@ class ProfilLib{
private function getPersonInfo($uid, $geburtsInfo = null)
{
$this->ci->load->model("person/Benutzer_model","BenutzerModel");
$selectClause = ["foto", "foto_sperre", "anrede", "titelpost as postnomen", "titelpre as titel", "vorname", "nachname"];
$selectClause = ["foto", "foto_sperre", "anrede", "titelpost as postnomen", "titelpre as titel", "vorname", "nachname", "wahlname"];
/** @param integer $geburtsInfo */
if ($geburtsInfo) {
array_push($selectClause, "gebort");
+1 -1
View File
@@ -245,7 +245,7 @@ class Person_model extends DB_Model
*/
public function getByUid($uid)
{
$this->addSelect('vorname, nachname, gebdatum, person_id, bpk, matr_nr, foto');
$this->addSelect('vorname, nachname, wahlname, gebdatum, person_id, bpk, matr_nr, foto');
$this->addJoin('tbl_benutzer', 'person_id');
return $this->loadWhere(array('uid' => $uid));
@@ -213,7 +213,7 @@ export default {
this.isOtherPersonStudent = !!viewData?.user_data?.is_student;
let fullNameWithTitleFragments = [
viewData?.user_data?.titel,
viewData?.user_data?.vorname,
viewData?.user_data?.wahlname ?? viewData?.user_data?.vorname,
viewData?.user_data?.nachname,
viewData?.user_data?.postnomen,
];
@@ -274,7 +274,7 @@ export default {
}
return {
Vorname: this.data.vorname,
Vorname: this.data.wahlname ?? this.data.vorname,
Nachname: this.data.nachname,
Username: this.data.username,
Anrede: this.data.anrede,
@@ -160,7 +160,7 @@ export default {
}
return {
Vorname: this.data.vorname,
Vorname: this.data.wahlname ?? this.data.vorname,
Nachname: this.data.nachname,
Username: this.data.username,
Anrede: this.data.anrede,
@@ -204,7 +204,7 @@ export default {
}
return {
Vorname: this.data.vorname,
Vorname: this.data.wahlname ?? this.data.vorname,
Nachname: this.data.nachname,
Username: this.data.username,
Anrede: this.data.anrede,
@@ -33,7 +33,7 @@ export default {
}
return {
Vorname: this.data.vorname,
Vorname: this.data.wahlname ?? this.data.vorname,
Nachname: this.data.nachname,
Username: this.data.username,
Anrede: this.data.anrede,
+1 -1
View File
@@ -184,7 +184,7 @@ export default {
let viewDataResult = await this.$api.call(ApiDashboard.getViewData());
const viewData = viewDataResult.data;
this.timezone = viewData?.timezone;
this.userFirstName = viewData?.name;
this.userFirstName = viewData?.wahlname ?? viewData?.name;
}
},
async created() {