From d81b205c05da2de1bc95db20e17136df53295ab0 Mon Sep 17 00:00:00 2001 From: ma0068 Date: Mon, 18 Jul 2022 14:03:07 +0200 Subject: [PATCH] Adaptierung checkbisverwendung.php und lehrveranstaltungDBDML.php um Config DEFAULT_ECHTER_DIENSTVERTRAG --- content/lvplanung/lehrveranstaltungDBDML.php | 14 ++++++++++++-- vilesci/bis/checkverwendung.php | 9 ++++++++- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/content/lvplanung/lehrveranstaltungDBDML.php b/content/lvplanung/lehrveranstaltungDBDML.php index 9827dec4f..da64a6619 100644 --- a/content/lvplanung/lehrveranstaltungDBDML.php +++ b/content/lvplanung/lehrveranstaltungDBDML.php @@ -65,6 +65,13 @@ $data = ''; $error = false; $warnung = false; +//Default BA1Codes für echte Dienstverträge aus Config Laden +$arrEchterDV = [103]; +if (defined('DEFAULT_ECHTER_DIENSTVERTRAG') && DEFAULT_ECHTER_DIENSTVERTRAG != '') +{ + $arrEchterDV = DEFAULT_ECHTER_DIENSTVERTRAG; +} + loadVariables($user); //Berechtigungen laden @@ -560,10 +567,12 @@ if(!$error) { // Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz // geliefert da dies im Vertrag inkludiert ist. - if ($row_verwendung->ba1code == 103 && $row_verwendung->inkludierte_lehre == -1) + + if ((in_array($row_verwendung->ba1code, $arrEchterDV)) && $row_verwendung->inkludierte_lehre == -1) { $fixangestellt = true; $lem->stundensatz = ''; + break; } } @@ -1567,9 +1576,10 @@ if(!$error) foreach($bisverwendung->result as $row_verwendung) { + // Bei echten Dienstvertraegen mit voller inkludierter Lehre wird kein Stundensatz // geliefert da dies im Vertrag inkludiert ist. - if ($row_verwendung->ba1code == 103 && $row_verwendung->inkludierte_lehre == -1) + if ((in_array($row_verwendung->ba1code, $arrEchterDV)) && $row_verwendung->inkludierte_lehre == -1) { $data = ''; break; diff --git a/vilesci/bis/checkverwendung.php b/vilesci/bis/checkverwendung.php index 9c474ee50..0659dd01b 100644 --- a/vilesci/bis/checkverwendung.php +++ b/vilesci/bis/checkverwendung.php @@ -450,6 +450,13 @@ if($resultall = $db->db_query($qryall)) } //**** Echter Dienstvertrag ohne Vertragsstunden +$arrayEchterDV= array(103, 110); +if (defined('DEFAULT_ECHTER_DIENSTVERTRAG') && DEFAULT_ECHTER_DIENSTVERTRAG != '') +{ + $arrayEchterDV = DEFAULT_ECHTER_DIENSTVERTRAG; +} +$str_ba1codein = trim(array_reduce($arrayEchterDV, function($c, $i) { global $db; return $c .= $db->db_add_param($i, FHC_INTEGER) . ','; }), ','); + $qryall=" SELECT distinct mitarbeiter_uid as uid, vorname, nachname @@ -461,7 +468,7 @@ $qryall=" WHERE (beginn is null or beginn<".$db->db_add_param($bismeldedatum_ende).") and (ende is null or ende>=".$db->db_add_param($bismeldedatum_start).") - and ba1code=103 + and ba1code IN (" . $str_ba1codein . ") and vertragsstunden is null and beschausmasscode!=5 ORDER by nachname, vorname, mitarbeiter_uid;";