This commit is contained in:
kindlm
2015-11-06 14:22:24 +01:00
12 changed files with 121 additions and 15 deletions
+1
View File
@@ -715,6 +715,7 @@ class mitarbeiter extends benutzer
WHERE person_id=tbl_benutzer.person_id
AND NOT EXISTS(SELECT 1 FROM lehre.tbl_vertrag_vertragsstatus WHERE vertrag_id=tbl_vertrag.vertrag_id AND vertragsstatus_kurzbz='gedruckt')
AND NOT EXISTS(SELECT 1 FROM lehre.tbl_vertrag_vertragsstatus WHERE vertrag_id=tbl_vertrag.vertrag_id AND vertragsstatus_kurzbz='abgerechnet')
AND EXISTS(SELECT 1 FROM lehre.tbl_lehreinheitmitarbeiter WHERE vertrag_id=tbl_vertrag.vertrag_id)
)";
}
+50
View File
@@ -437,6 +437,56 @@ class zeitaufzeichnung extends basis_db
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
/**
* Holt alle ZA-Einträge Typ LehreIntern und LehreExtern eines Users
* für das laufende Studienjahr und gibt die Summen in einem Array zurück
* @param string $user
* @return Array mit Keay: LehreIntern, LehreExtern, LehreAuftraege, LehreInkludiert
*/
public function getLehreForUser($user,$sem)
{
$where = "uid=".$this->db_add_param($user);
$where_sem = "studiensemester_kurzbz=".$this->db_add_param($sem);
$lehre_arr = array("LehreIntern"=>0, "LehreExtern"=>0, "LehreAuftraege"=>0);
$qry = "
select sum(extract(epoch from ende-start))/3600 as lehre, aktivitaet_kurzbz from campus.tbl_zeitaufzeichnung where $where and aktivitaet_kurzbz in ('LehreIntern', 'LehreExtern') and start > (select start from public.tbl_studiensemester where $where_sem) group by aktivitaet_kurzbz
";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$lehre_arr[$row->aktivitaet_kurzbz] = round($row->lehre,2);
}
}
else
{
return false;
}
$where = "mitarbeiter_uid=".$this->db_add_param($user);
$where_sem = "l.studiensemester_kurzbz=".$this->db_add_param($sem);
$qry = "
select sum(m.semesterstunden) from lehre.tbl_lehreinheitmitarbeiter m, lehre.tbl_lehreinheit l where $where and $where_sem and l.lehreinheit_id = m.lehreinheit_id
";
if($result = $this->db_query($qry))
{
while($row = $this->db_fetch_object($result))
{
$lehre_arr["LehreAuftraege"] = round($row->sum);
}
}
else
{
return false;
}
return $lehre_arr;
}
}
?>
+1 -1
View File
@@ -482,7 +482,7 @@ class zeitsperre extends basis_db
$qry = "select datum::date, freigabevon, zeitsperretyp_kurzbz
from (SELECT generate_series(vondatum::timestamp, bisdatum::timestamp, '1 day') as datum, freigabevon, mitarbeiter_uid, zeitsperretyp_kurzbz FROM campus.tbl_zeitsperre where vonstunde is null and bisstunde is null) a
where a.mitarbeiter_uid = ".$this->db_add_param($uid)." and datum>(now() - interval '50 Days') and zeitsperretyp_kurzbz in ('Krank','Urlaub', 'ZA', 'DienstV','PflegeU')";
where a.mitarbeiter_uid = ".$this->db_add_param($uid)." and datum>(now() - interval '".$anz_tage." Days') and zeitsperretyp_kurzbz in ('Krank','Urlaub', 'ZA', 'DienstV','PflegeU')";