mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-28 17:39:28 +00:00
Added getVerwendungenBISMeldung() + isHabilitiert()
. getVerwendungenBISMeldung: Holt alle Verwendungen eines Mitarbeiters innerhalb des BIS Meldungszeitraums . isHabilitiert: Prueft, ob Mitarbeiter habilitiert ist
This commit is contained in:
@@ -587,5 +587,96 @@ class bisverwendung extends basis_db
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft, ob Mitarbeiter habilitiert ist
|
||||
* @param $uid UID des Mitarbeiters
|
||||
* @return bool
|
||||
*/
|
||||
public function isHabilitiert($uid)
|
||||
{
|
||||
$qry = '
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
bis.tbl_bisverwendung
|
||||
WHERE
|
||||
mitarbeiter_uid = '. $this->db_add_param($uid). '
|
||||
AND
|
||||
habilitation = true;
|
||||
';
|
||||
|
||||
if ($this->db_query($qry))
|
||||
{
|
||||
return $this->db_num_rows() > 0;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Holt alle Verwendungen eines Mitarbeiters innerhalb des BIS Meldungszeitraums
|
||||
* @param $uid UID des Mitarbeiters
|
||||
* @param $stichtag
|
||||
* @return bool
|
||||
*/
|
||||
public function getVerwendungenBISMeldung($uid, $stichtag)
|
||||
{
|
||||
$datetime = new DateTime($stichtag);
|
||||
$stichtag = $datetime->format('Y-m-d');
|
||||
$bismeldung_jahr = $datetime->format('Y');
|
||||
|
||||
$qry = '
|
||||
SELECT
|
||||
*,
|
||||
CASE
|
||||
WHEN (beginn is null OR beginn < make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 1, 1))
|
||||
THEN make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 1, 1)
|
||||
ELSE beginn
|
||||
END as beginn_imBISMeldungsJahr,
|
||||
CASE
|
||||
WHEN (ende is null OR ende > make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 12, 31))
|
||||
THEN make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 12, 31)
|
||||
ELSE ende
|
||||
END as ende_imBISMeldungsJahr
|
||||
FROM
|
||||
bis.tbl_bisverwendung
|
||||
WHERE
|
||||
mitarbeiter_uid = '. $this->db_add_param($uid).'
|
||||
AND (beginn <= '. $this->db_add_param($stichtag).' OR beginn is null)
|
||||
AND (ende >= make_date('. $this->db_add_param($bismeldung_jahr). '::INTEGER, 1, 1) OR ende is null)
|
||||
ORDER BY ende
|
||||
';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$obj = new StdClass();
|
||||
|
||||
$obj->bisverwendung_id = $row->bisverwendung_id;
|
||||
$obj->mitarbeiter_uid = $row->mitarbeiter_uid;
|
||||
$obj->vertragsstunden = $row->vertragsstunden;
|
||||
$obj->ba1code = $row->ba1code;
|
||||
$obj->ba2code = $row->ba2code;
|
||||
$obj->verwendung_code = $row->verwendung_code;
|
||||
$obj->beschausmasscode = $row->beschausmasscode;
|
||||
$obj->hauptberufcode = $row->hauptberufcode;
|
||||
$obj->hauptberuflich = $this->db_parse_bool($row->hauptberuflich);
|
||||
$obj->beginn = $row->beginn;
|
||||
$obj->ende = $row->ende;
|
||||
$obj->beginn_imBISMeldungsJahr = $row->beginn_imbismeldungsjahr;
|
||||
$obj->ende_imBISMeldungsJahr = $row->ende_imbismeldungsjahr;
|
||||
|
||||
|
||||
|
||||
$this->result[] = $obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler bei der Datenbankabfrage';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user