From 5a2ddbe2b267e3a54484cd3557b8ad3f0ec61982 Mon Sep 17 00:00:00 2001 From: Harald Bamberger Date: Fri, 12 Jan 2024 14:44:26 +0100 Subject: [PATCH 1/2] use new hr tables depending on config DIENSTVERHAELTNIS_SUPPORT --- cis/private/profile/index.php | 48 ++++++++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 7 deletions(-) diff --git a/cis/private/profile/index.php b/cis/private/profile/index.php index ed3295287..0bb751a0c 100644 --- a/cis/private/profile/index.php +++ b/cis/private/profile/index.php @@ -276,12 +276,19 @@ if (!$ansicht) { if ($type === 'mitarbeiter') { - $verwendung = new bisverwendung(); - if($verwendung->getLastVerwendung($uid)) + if(defined('DIENSTVERHAELTNIS_SUPPORT') && DIENSTVERHAELTNIS_SUPPORT) { - if (!$verwendung->hauptberuflich) + // TODO Hauptberuf wieder anzeigen sobald verfuegbar + } + else + { + $verwendung = new bisverwendung(); + if($verwendung->getLastVerwendung($uid)) { - echo 'Hauptberuf: '. $verwendung->hauptberuf; + if (!$verwendung->hauptberuflich) + { + echo 'Hauptberuf: '. $verwendung->hauptberuf; + } } } echo "

"; @@ -606,9 +613,36 @@ function printFunctionsTable($query, $headingphrase, $tableid, $showVertragsstun if ($showVertragsstunden === true && $adminOrOwnUser) { $vertragsstunden = 0.00; - $qry = "SELECT sum(vertragsstunden) AS vertragsstdsumme from bis.tbl_bisverwendung - WHERE mitarbeiter_uid = ".$db->db_add_param($uid)." - AND (ende > now() OR ende IS NULL)"; + if(defined('DIENSTVERHAELTNIS_SUPPORT') && DIENSTVERHAELTNIS_SUPPORT) + { + $qry = "SELECT + sum(wochenstunden) AS vertragsstdsumme + FROM + hr.tbl_vertragsbestandteil_stunden vbs + JOIN + hr.tbl_vertragsbestandteil vb USING(vertragsbestandteil_id) + JOIN + hr.tbl_dienstverhaeltnis dv USING(dienstverhaeltnis_id) + WHERE + dv.mitarbeiter_uid = ".$db->db_add_param($uid)." + AND NOW() BETWEEN COALESCE(vb.von, '1970-01-01'::date) AND COALESCE(vb.bis, '2170-12-31'::date)) + AND NOT EXISTS ( + SELECT + 1 + FROM + hr.tbl_vertragsbestandteil + WHERE + dienstverhaeltnis_id = dv.dienstverhaeltnis_id + AND vertragsbestandteiltyp_kurzbz = 'karenz' + AND NOW() BETWEEN COALESCE(von, '1970-01-01'::date) AND COALESCE(bis, '2170-12-31'::date) + )"; + } + else + { + $qry = "SELECT sum(vertragsstunden) AS vertragsstdsumme from bis.tbl_bisverwendung + WHERE mitarbeiter_uid = ".$db->db_add_param($uid)." + AND (ende > now() OR ende IS NULL)"; + } if ($result_vertragsstd = $db->db_query($qry)) { From a49394f456167ed3726390d243cfc3ab662cb5f3 Mon Sep 17 00:00:00 2001 From: Harald Bamberger Date: Fri, 12 Jan 2024 14:47:40 +0100 Subject: [PATCH 2/2] fix sql --- cis/private/profile/index.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cis/private/profile/index.php b/cis/private/profile/index.php index 0bb751a0c..26312d5be 100644 --- a/cis/private/profile/index.php +++ b/cis/private/profile/index.php @@ -290,8 +290,8 @@ if (!$ansicht) echo 'Hauptberuf: '. $verwendung->hauptberuf; } } - } - echo "

"; + echo "

"; + } } } @@ -625,7 +625,7 @@ function printFunctionsTable($query, $headingphrase, $tableid, $showVertragsstun hr.tbl_dienstverhaeltnis dv USING(dienstverhaeltnis_id) WHERE dv.mitarbeiter_uid = ".$db->db_add_param($uid)." - AND NOW() BETWEEN COALESCE(vb.von, '1970-01-01'::date) AND COALESCE(vb.bis, '2170-12-31'::date)) + AND NOW() BETWEEN COALESCE(vb.von, '1970-01-01'::date) AND COALESCE(vb.bis, '2170-12-31'::date) AND NOT EXISTS ( SELECT 1