diff --git a/include/mitarbeiter.class.php b/include/mitarbeiter.class.php
index 00c131f35..ac67c1ce5 100644
--- a/include/mitarbeiter.class.php
+++ b/include/mitarbeiter.class.php
@@ -1657,23 +1657,21 @@ class mitarbeiter extends benutzer
/**
- * Generiert mitarbeiter_uid anhand sequence tbl_mitarbeiter_personalnummer_seq
- * @return string $mitarbeiter_uid im Formate maXXXX (zum Bsp. ma0207)
+ * Generiert nächste freie Personalnummer anhand der sequence tbl_mitarbeiter_personalnummer_seq
+ * @return string $personalnummer
*/
- public function getMitarbeiterMaNr()
+ public function getNextPersonalnummer()
{
- $qry = "SELECT last_value FROM tbl_mitarbeiter_personalnummer_seq";
+ $qry = "SELECT nextval('tbl_mitarbeiter_personalnummer_seq') ";
if ($result = $this->db_query($qry))
{
while ($row = $this->db_fetch_object())
{
- if ($row->last_value != '')
+ if ($row->nextval != '')
{
- $maNr = $row->last_value;
- $maNr = $maNr - 9999;
- $maNr = 'ma'. $maNr;
- return $maNr;
+ $personalnummer = $row->nextval;
+ return $personalnummer;
}
else
{
diff --git a/include/tw/generateuid.inc.php b/include/tw/generateuid.inc.php
index 9205633cc..8c0a1ab80 100644
--- a/include/tw/generateuid.inc.php
+++ b/include/tw/generateuid.inc.php
@@ -23,7 +23,6 @@
* Funktionen zum Generieren der UIDs
*/
require_once(dirname(__FILE__).'/../addon.class.php');
-require_once(dirname(__FILE__).'/../mitarbeiter.class.php');
// die aktiven Addons werden durchsucht, ob eines davon eine eigene UID Generierung vorsieht
// falls ja, wird die Version des Addons genommen, ansonsten die Default Generierung
@@ -74,7 +73,7 @@ if(!$generateuid_addon_found)
// ****
// * Gerneriert die Mitarbeiter UID
// ****
- function generateMitarbeiterUID($vorname, $nachname, $lektor, $fixangestellt=true)
+ function generateMitarbeiterUID($vorname, $nachname, $lektor, $fixangestellt=true, $personalnummer=null)
{
$bn = new benutzer();
$reserviert = array();
@@ -110,18 +109,6 @@ if(!$generateuid_addon_found)
return $uid;
}
}
-
- /**
- * Neue Logik Generierung Mitarbeiter UID
- * fortlaufende ma_number a la ma0200;
- * @return string $maNr maNr im Format maXXXX
- **/
- function generateMaNumberUID()
- {
- $mitarbeiter = new mitarbeiter();
- $maNr = $mitarbeiter->getMitarbeiterMaNr();
-
- return $maNr;
- }
}
+
?>
diff --git a/system/dbupdate_3.3.php b/system/dbupdate_3.3.php
index fae594851..0f28e544a 100644
--- a/system/dbupdate_3.3.php
+++ b/system/dbupdate_3.3.php
@@ -5979,36 +5979,6 @@ if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_webservic
}
}
-//ALTER Sequence tbl_mitarbeiter_personalnummer_seq
-if ($result = @$db->db_query("SELECT last_value FROM tbl_mitarbeiter_personalnummer_seq"))
-{
- $json = $db->db_getResultJSON($result);
- $last = json_decode($json);
- $last = $last[0]->{'last_value'};
-
- if ($last <= 10000)
- {
- $count = @$db->db_query("
- SELECT personalnummer FROM public.tbl_mitarbeiter
- order by personalnummer DESC
- Limit 1
- ");
-
- $count = $db->db_getResultJSON($count);
- $count = json_decode($count);
- $count = $count[0]->{'personalnummer'} + 1;
- $qry = 'ALTER SEQUENCE tbl_mitarbeiter_personalnummer_seq restart with ';
- $qry .= $count;
- if (!$db->db_query($qry))
- {
- echo ' tbl_mitarbeiter_personalnummer_seq '.$db->db_last_error().'
';
- }
- else
- {
- echo '
tbl_mitarbeiter_personalnummer_seq auf neuen Startwert '. $count . ' geändert.';
- }
- }
-}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
echo '