From ca1df4460d1591e9b8aab842df4ef14effd6ddbf Mon Sep 17 00:00:00 2001 From: Werner Masik Date: Wed, 13 May 2026 10:55:53 +0200 Subject: [PATCH] db init for kollectivvertrag --- system/dbupdate_3.4.php | 1 + .../dbupdate_3.4/76781_kollektivvertrag.php | 116 ++++++++++++++---- 2 files changed, 92 insertions(+), 25 deletions(-) diff --git a/system/dbupdate_3.4.php b/system/dbupdate_3.4.php index 8b6af9f2d..26c3cf466 100644 --- a/system/dbupdate_3.4.php +++ b/system/dbupdate_3.4.php @@ -94,6 +94,7 @@ require_once('dbupdate_3.4/71399_dashboard_update_widget_paths.php'); require_once('dbupdate_3.4/71645_studvw_messagetab_ladezeit.php'); require_once('dbupdate_3.4/71566_studienordnungsdokument_neuer_organisationseinheitstyp_programm.php'); require_once('dbupdate_3.4/70376_lohnguide.php'); +require_once('dbupdate_3.4/76781_kollektivvertrag.php'); // *** Pruefung und hinzufuegen der neuen Attribute und Tabellen echo '

Pruefe Tabellen und Attribute!

'; diff --git a/system/dbupdate_3.4/76781_kollektivvertrag.php b/system/dbupdate_3.4/76781_kollektivvertrag.php index 6fe687b2f..093e83163 100644 --- a/system/dbupdate_3.4/76781_kollektivvertrag.php +++ b/system/dbupdate_3.4/76781_kollektivvertrag.php @@ -1,13 +1,14 @@ db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_kv_gruppe' AND table_schema='hr'")) +if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_kollektivvertrag' AND table_schema='hr'")) { if ($db->db_num_rows($result) == 0) { $qry = " -CREATE TABLE IF NOT EXISTS hr.tbl_kv_gruppe ( - kv_gruppe_kurzbz character varying(32) NOT NULL, + +CREATE TABLE IF NOT EXISTS hr.tbl_kollektivvertrag ( + kollektivvertrag_kurzbz character varying(32) NOT NULL, bezeichnung varchar(64) NOT NULL, aktiv boolean DEFAULT FALSE, sort smallint, @@ -15,50 +16,86 @@ CREATE TABLE IF NOT EXISTS hr.tbl_kv_gruppe ( insertamum timestamp without time zone DEFAULT now() NOT NULL, updatevon character varying(32), updateamum timestamp without time zone, - CONSTRAINT tbl_kv_gruppe_pkey PRIMARY KEY (kv_gruppe_kurzbz) + CONSTRAINT tbl_kollektivvertrag_pkey PRIMARY KEY (kollektivvertrag_kurzbz) ); -GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE hr.tbl_kv_gruppe TO vilesci; +GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE hr.tbl_kollektivvertrag TO vilesci; -INSERT INTO hr.tbl_kv_gruppe(kv_gruppe_kurzbz, bezeichnung,aktiv, sort, insertvon, insertamum) VALUES -('VG1','VG 1',true,1,'system',NOW()), -('VG2','VG 2',true,2,'system',NOW()), -('VG3','VG 3',true,3,'system',NOW()), -('VG4','VG 4',true,4,'system',NOW()), -('VG5','VG 5',true,5,'system',NOW()), -('VG6','VG 6',true,6,'system',NOW()) -ON CONFLICT (kv_gruppe_kurzbz) DO NOTHING; +INSERT INTO hr.tbl_kollektivvertrag(kollektivvertrag_kurzbz, bezeichnung, aktiv, sort, insertvon, insertamum) VALUES('IT','KV IT',true,1,'system',NOW()); + "; + + + if (! $db->db_query($qry)) + echo 'Kollektivvertrag: ' . $db->db_last_error() . '
'; + else + echo 'hr.tbl_kollektivvertrag_verwendungsgruppe wurde neu erstellt
'; + + } + +} + + + +if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_kollektivvertrag_verwendungsgruppe' AND table_schema='hr'")) +{ + if ($db->db_num_rows($result) == 0) + { + $qry = " + +CREATE TABLE IF NOT EXISTS hr.tbl_kollektivvertrag_verwendungsgruppe ( + verwendungsgruppe_kurzbz character varying(32) NOT NULL, + kollektivvertrag_kurzbz character varying(32) NOT NULL, + bezeichnung varchar(64) NOT NULL, + aktiv boolean DEFAULT FALSE, + sort smallint, + insertvon character varying(32) NOT NULL, + insertamum timestamp without time zone DEFAULT now() NOT NULL, + updatevon character varying(32), + updateamum timestamp without time zone, + CONSTRAINT tbl_kollektivvertrag_verwendungsgruppe_pkey PRIMARY KEY (verwendungsgruppe_kurzbz), + CONSTRAINT tbl_kollektivvertrag_kollektivvertrag_kurzbz_fk FOREIGN KEY (kollektivvertrag_kurzbz) REFERENCES hr.tbl_kollektivvertrag (kollektivvertrag_kurzbz) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE +); + +GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE hr.tbl_kollektivvertrag_verwendungsgruppe TO vilesci; + +INSERT INTO hr.tbl_kollektivvertrag_verwendungsgruppe(verwendungsgruppe_kurzbz, kollektivvertrag_kurzbz, bezeichnung,aktiv, sort, insertvon, insertamum) VALUES +('VG1','IT','VG 1',true,1,'system',NOW()), +('VG2','IT','VG 2',true,2,'system',NOW()), +('VG3','IT','VG 3',true,3,'system',NOW()), +('VG4','IT','VG 4',true,4,'system',NOW()), +('VG5','IT','VG 5',true,5,'system',NOW()), +('VG6','IT','VG 6',true,6,'system',NOW()) +ON CONFLICT (verwendungsgruppe_kurzbz) DO NOTHING; "; if (! $db->db_query($qry)) echo 'KV Gruppe: ' . $db->db_last_error() . '
'; else - echo 'hr.tbl_kv_gruppe wurde neu erstellt
'; + echo 'hr.tbl_kollektivvertrag_verwendungsgruppe wurde neu erstellt
'; } } -if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_kv_stufe' AND table_schema='hr'")) +if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_kollektivvertrag_verwendungsgruppenjahre' AND table_schema='hr'")) { if ($db->db_num_rows($result) == 0) { $qry = " -CREATE TABLE IF NOT EXISTS hr.tbl_kv_jahre ( +CREATE TABLE IF NOT EXISTS hr.tbl_kollektivvertrag_verwendungsgruppenjahre ( kv_jahre integer NOT NULL, bezeichnung varchar(64) NOT NULL, - kv_gruppe_kurzbz character varying(32) NOT NULL, + verwendungsgruppe_kurzbz character varying(32) NOT NULL, aktiv boolean DEFAULT FALSE, - sort smallint, insertvon character varying(32) NOT NULL, insertamum timestamp without time zone DEFAULT now() NOT NULL, updatevon character varying(32), updateamum timestamp without time zone, - CONSTRAINT tbl_kv_jahre_pkey PRIMARY KEY (kv_jahre), - CONSTRAINT tbl_kv_jahre_kv_gruppe_kurzbz_fk FOREIGN KEY (kv_gruppe_kurzbz) REFERENCES hr.tbl_kv_jahre (kv_gruppe_kurzbz) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE + CONSTRAINT tbl_kollektivvertrag_verwendungsgruppenjahre_pkey PRIMARY KEY (kv_jahre), + CONSTRAINT tbl_kollektivvertrag_verwendungsgruppenjahre_vg_kurzbz_fk FOREIGN KEY (verwendungsgruppe_kurzbz) REFERENCES hr.tbl_kollektivvertrag_verwendungsgruppe (verwendungsgruppe_kurzbz) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE ); -GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE hr.tbl_kv_jahre TO vilesci; +GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE hr.tbl_kollektivvertrag_verwendungsgruppenjahre TO vilesci; -INSERT INTO hr.tbl_kv_jahre(kv_jahre, bezeichnung, kv_gruppe_kurzbz, aktiv, insertvon, insertamum) VALUES +INSERT INTO hr.tbl_kollektivvertrag_verwendungsgruppenjahre(kv_jahre, bezeichnung, verwendungsgruppe_kurzbz, aktiv, insertvon, insertamum) VALUES ('0','nach 0','VG1',true, 'system',NOW()), ('2','nach 2','VG1',true, 'system',NOW()), ('4','nach 4','VG1',true, 'system',NOW()), @@ -87,7 +124,7 @@ INSERT INTO hr.tbl_kv_jahre(kv_jahre, bezeichnung, kv_gruppe_kurzbz, aktiv, inse ('0','nach 0','VG6',true,'system',NOW()), ('2','nach 2','VG6',true,'system',NOW()), ('4','nach 4','VG6',true,'system',NOW()), -('5','nach 5','VG6',true,'system',NOW()), +('5','nach 5','VG6',true,'system',NOW()) ON CONFLICT (kv_jahre) DO NOTHING; @@ -96,8 +133,37 @@ ON CONFLICT (kv_jahre) DO NOTHING; if (! $db->db_query($qry)) echo 'KV-Stufe: ' . $db->db_last_error() . '
'; else - echo 'hr.tbl_kv_jahre wurde neu erstellt
'; + echo 'hr.tbl_kollektivvertrag_verwendungsgruppenjahre wurde neu erstellt
'; } } - \ No newline at end of file + +if ($result = $db->db_query("SELECT * FROM information_schema.tables WHERE table_name='tbl_vertragsbestandteil_kollektivvertrag' AND table_schema='hr'")) +{ + if ($db->db_num_rows($result) == 0) + { + $qry = " +CREATE TABLE IF NOT EXISTS hr.tbl_vertragsbestandteil_kollektivvertrag ( + vertragsbestandteil_id integer NOT NULL, + verwendungsgruppe_kurzbz character varying(32) NOT NULL, + kv_jahre integer NOT NULL, + kommentar varchar(255), + CONSTRAINT tbl_vertragsbestandteil_kollektivvertrag_pk PRIMARY KEY (vertragsbestandteil_id), + CONSTRAINT tbl_vertragsbestandteil_fk FOREIGN KEY (vertragsbestandteil_id) REFERENCES hr.tbl_vertragsbestandteil (vertragsbestandteil_id) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT tbl_vertragsbestandteil_kollektivvertrag_vg_kurzbz_fk FOREIGN KEY (verwendungsgruppe_kurzbz) REFERENCES hr.tbl_kollektivvertrag_verwendungsgruppe (verwendungsgruppe_kurzbz) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE, + CONSTRAINT tbl_vertragsbestandteil_kollektivvertrag_kv_jahre_fk FOREIGN KEY (kv_jahre) REFERENCES hr.tbl_kollektivvertrag_verwendungsgruppenjahre (kv_jahre) MATCH FULL ON DELETE RESTRICT ON UPDATE CASCADE +); + +COMMENT ON TABLE hr.tbl_vertragsbestandteil_kollektivvertrag IS E'Zuordnung zur Einstufung im Kollektivvertrag'; + +GRANT SELECT,INSERT,DELETE,UPDATE ON TABLE hr.tbl_vertragsbestandteil_kollektivvertrag TO vilesci; + + + "; + + if (! $db->db_query($qry)) + echo 'Vertragsbestandteil Lohnguide: ' . $db->db_last_error() . '
'; + else + echo 'hr.tbl_vertragsbestandteil_kollektivvertrag wurde neu erstellt
'; + } +} \ No newline at end of file