Added getMitarbeiterBISMeldung()

getMitarbeiterBISMeldung:
Gibt alle Mitarbeiter zurück, die im BIS Meldungszeitraum bisgemeldet
sind
This commit is contained in:
Cris
2020-03-05 14:31:20 +01:00
committed by hainberg
parent 3d663cdbd7
commit afb5cc3205
+51
View File
@@ -1539,5 +1539,56 @@ class mitarbeiter extends benutzer
}
}
/**
* Gibt alle Mitarbeiter zurück, die im BIS Meldungszeitraum bisgemeldet sind
* @param String $stichtag BIS Meldung Stichtag
* @return boolean
*/
public function getMitarbeiterBISMeldung($stichtag)
{
$datetime = new DateTime($stichtag);
$bismeldung_jahr = $datetime->format('Y');
$qry = '
SELECT DISTINCT ON (UID) *,
transform_geschlecht(tbl_person.geschlecht, tbl_person.gebdatum) as geschlecht_imputiert
FROM
public.tbl_mitarbeiter
JOIN public.tbl_benutzer ON(mitarbeiter_uid=uid)
JOIN public.tbl_person USING(person_id)
JOIN bis.tbl_bisverwendung USING(mitarbeiter_uid)
JOIN bis.tbl_beschaeftigungsausmass USING(beschausmasscode)
WHERE
bismelden
AND personalnummer > 0
AND (beginn <= make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 12, 31) OR beginn is null)
AND (tbl_bisverwendung.ende is NULL OR tbl_bisverwendung.ende >= make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 1, 1))
ORDER BY uid, nachname, vorname
';
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$obj = new StdClass();
$obj->uid = $row->uid;
$obj->vorname = $row->vorname;
$obj->vornamen = $row->vornamen;
$obj->nachname = $row->nachname;
$obj->gebdatum = $row->gebdatum;
$obj->geschlecht = $row->geschlecht;
$obj->geschlechtX = $row->geschlecht_imputiert;
$obj->staatsbuergerschaft = $row->staatsbuergerschaft;
$obj->personalnummer = $row->personalnummer;
$obj->ausbildungcode = $row->ausbildungcode;
$this->result []= $obj;
}
return true;
}
return false;
}
}
?>