diff --git a/vilesci/stammdaten/personen_wartung.php b/vilesci/stammdaten/personen_wartung.php index 05c72abfe..8153707e0 100644 --- a/vilesci/stammdaten/personen_wartung.php +++ b/vilesci/stammdaten/personen_wartung.php @@ -159,6 +159,14 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p $error = true; } + // Wenn beide Personen ein BPK haben, abbrechen + if ($personToDelete_obj->bpk != '' && $personToKeep_obj->bpk != '' && $personToDelete_obj->bpk != $personToKeep_obj->bpk) + { + $msg_error[] = 'Beide Personen haben unterschiedliche BPK und können nicht zusammengelegt werden.
+ Bitte wenden Sie sich an einen Administrator.'; + $error = true; + } + // Wenn zwei gleiche rt_person Einträge vorhanden sind, wird ein Fehler ausgegeben und abgebrochen $reihungstest_personToKeep = new reihungstest(); $reihungstest_personToKeep->getReihungstestPerson($personToKeep); @@ -276,6 +284,16 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p $matr_nr = $personToKeep_obj->matr_nr; if ($personToKeep_obj->matr_nr == '' && $personToDelete_obj->matr_nr != '') $matr_nr = $personToDelete_obj->matr_nr; + else + $matr_nr = $personToKeep_obj->matr_nr; + + $bpk = ''; + if ($personToDelete_obj->bpk == '' && $personToKeep_obj->bpk != '') + $bpk = $personToKeep_obj->bpk; + if ($personToKeep_obj->bpk == '' && $personToDelete_obj->bpk != '') + $bpk = $personToDelete_obj->bpk; + else + $bpk = $personToKeep_obj->bpk; // Letztbenutzten Zugangscode abfragen und übernehmen $zugangscode = ''; @@ -339,6 +357,9 @@ if (isset($personToDelete) && isset($personToKeep) && $personToDelete >= 0 && $p // Matr_nr erst setzen, wenn nur mehr eine Person vorhanden ist $sql_query_upd1 .= "UPDATE public.tbl_person SET matr_nr=" . $db->db_add_param($matr_nr, FHC_STRING) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";"; + // BPK erst setzen, wenn nur mehr eine Person vorhanden ist + $sql_query_upd1 .= "UPDATE public.tbl_person SET bpk=" . $db->db_add_param($bpk, FHC_STRING) . " WHERE person_id=" . $db->db_add_param($personToKeep, FHC_INTEGER) . ";"; + if ($db->db_query($sql_query_upd1)) { $msg_info[] = "Update Query:";