diff --git a/include/vertragsbestandteil.class.php b/include/vertragsbestandteil.class.php index 2f6263f84..b48cf6e64 100644 --- a/include/vertragsbestandteil.class.php +++ b/include/vertragsbestandteil.class.php @@ -309,7 +309,7 @@ class vertragsbestandteil extends basis_db } /** - * Prueft ob MitarbeiterIn im Monat des uebergebenen $datums AZG-relevant ist. + * Prueft ob MitarbeiterIn am Tag des uebergebenen $datums Homeoffice aktiv gesetzt hat. * Wenn kein Datum übergeben wird, wird das heutige Datum gesetzt. * * @param $mitarbeiter_uid @@ -332,10 +332,13 @@ class vertragsbestandteil extends basis_db WHERE dv.mitarbeiter_uid = '. $this->db_add_param($mitarbeiter_uid). ' -- Homeoffice... AND homeoffice = TRUE - -- ...im aktuellen Monat (default) oder im Monat des übergebenen $datums - AND ((date_trunc(\'month\', '. $timestamp. ')::date < vbt.bis AND (date_trunc(\'month\', '. $timestamp. ') + interval \'1 month - 1 day\')::date > vbt.von) OR (vbt.bis IS NULL AND (date_trunc(\'month\', '. $timestamp. ') + interval \'1 month - 1 day\')::date > vbt.von)) - -- Vorerst nur check, ob zumindest eine aufrechte Zeitaufzeichnungspflicht. Später Unterscheidung nach Dienstverhältnis. - ORDER BY vbt.von DESC --aktuellster + -- ...am aktuellen Tag (default) oder am Tag des übergebenen $datums + AND ( + (' . $timestamp . '::date BETWEEN vbt.von AND vbt.bis) + OR + (vbt.bis IS NULL AND ' . $timestamp . '::date > vbt.von) + ) + ORDER BY vbt.von DESC -- Zur Sicherheit: aktuellster LIMIT 1'; if ($result = $this->db_query($qry))