mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-07-21 17:02:19 +00:00
Merge branch 'feature-60973/komponente_fuer_lehrfaecherverteilung' into feature-61232/Studierendenverwaltung_Karteireiter_Projektarbeit_portieren
This commit is contained in:
@@ -402,20 +402,6 @@ class Mitarbeiter_model extends DB_Model
|
||||
return $this->execQuery($qry, $parametersArray);
|
||||
}
|
||||
|
||||
public function isLehrauftragFirma($mitarbeiter_uid)
|
||||
{
|
||||
$this->addSelect('firma_id');
|
||||
$this->addJoin('public.tbl_benutzer', 'uid = mitarbeiter_uid');
|
||||
$this->addJoin('public.tbl_person', 'person_id');
|
||||
$this->addJoin('public.tbl_adresse', 'person_id', 'LEFT');
|
||||
$this->addOrder('zustelladresse', 'DESC');
|
||||
$this->addOrder('firma_id');
|
||||
$this->addLimit(1);
|
||||
$firma_result = $this->loadWhere(array('mitarbeiter_uid' => $mitarbeiter_uid));
|
||||
$firma = getData($firma_result)[0]->firma_id;
|
||||
return !is_null($firma);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Lektoren by studiengang_kz
|
||||
*
|
||||
@@ -444,4 +430,18 @@ class Mitarbeiter_model extends DB_Model
|
||||
|
||||
return $this->execQuery($qry, $parametersArray);
|
||||
}
|
||||
|
||||
public function isLehrauftragFirma($mitarbeiter_uid)
|
||||
{
|
||||
$this->addSelect('firma_id');
|
||||
$this->addJoin('public.tbl_benutzer', 'uid = mitarbeiter_uid');
|
||||
$this->addJoin('public.tbl_person', 'person_id');
|
||||
$this->addJoin('public.tbl_adresse', 'person_id', 'LEFT');
|
||||
$this->addOrder('zustelladresse', 'DESC');
|
||||
$this->addOrder('firma_id');
|
||||
$this->addLimit(1);
|
||||
$firma_result = $this->loadWhere(array('mitarbeiter_uid' => $mitarbeiter_uid));
|
||||
$firma = getData($firma_result)[0]->firma_id;
|
||||
return !is_null($firma);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ class Reservierung_model extends DB_Model
|
||||
public function getReservierungen($start_date, $end_date, $ort_kurzbz = null)
|
||||
{
|
||||
|
||||
$stundenplan_reservierungen_query="SELECT r.* , stund.beginn, stund.ende,
|
||||
$lvplan_reservierungen_query="SELECT r.* , stund.beginn, stund.ende,
|
||||
CASE
|
||||
WHEN r.gruppe_kurzbz IS NOT NULL THEN r.gruppe_kurzbz
|
||||
ELSE CONCAT(UPPER(studg.typ),UPPER(studg.kurzbz),'-',COALESCE(CAST(r.semester AS varchar),'/'),COALESCE(CAST(r.verband AS varchar),'/'))
|
||||
@@ -46,7 +46,7 @@ class Reservierung_model extends DB_Model
|
||||
JOIN lehre.tbl_stunde ON lehre.tbl_stunde.stunde = res.stunde
|
||||
WHERE res.ort_kurzbz = ? AND datum >= ? AND datum <= ?";
|
||||
|
||||
$subquery = is_null($ort_kurzbz)? $stundenplan_reservierungen_query:$raum_reservierungen_query;
|
||||
$subquery = is_null($ort_kurzbz)? $lvplan_reservierungen_query:$raum_reservierungen_query;
|
||||
|
||||
$query_result= $this->execReadOnlyQuery("
|
||||
SELECT
|
||||
@@ -89,7 +89,7 @@ class Reservierung_model extends DB_Model
|
||||
JOIN lehre.tbl_stunde ON lehre.tbl_stunde.stunde = res.stunde
|
||||
WHERE res.uid = ? AND datum >= ? AND datum <= ?";
|
||||
|
||||
// $subquery = is_null($ort_kurzbz)? $stundenplan_reservierungen_query:$raum_reservierungen_query;
|
||||
// $subquery = is_null($ort_kurzbz)? $lvplan_reservierungen_query:$raum_reservierungen_query;
|
||||
$subquery = $raum_reservierungen_query;
|
||||
|
||||
|
||||
|
||||
@@ -11,4 +11,19 @@ class Stunde_model extends DB_Model
|
||||
$this->dbTable = 'lehre.tbl_stunde';
|
||||
$this->pk = 'stunde';
|
||||
}
|
||||
|
||||
/**
|
||||
* $time needs to be of PGSQL TIME format
|
||||
*/
|
||||
public function getStundeForTime($time) {
|
||||
$query = "
|
||||
SELECT min(stunde) as stunde FROM (
|
||||
SELECT stunde, extract(epoch from (beginn-?)) AS delta FROM lehre.tbl_stunde
|
||||
UNION
|
||||
SELECT stunde, extract(epoch from (ende-?)) AS delta FROM lehre.tbl_stunde
|
||||
) foo WHERE delta>=0
|
||||
";
|
||||
|
||||
return $this->execReadOnlyQuery($query, [$time, $time]);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -177,7 +177,7 @@ class Stundenplan_model extends DB_Model
|
||||
|
||||
) as subquery
|
||||
|
||||
GROUP BY unr, datum, beginn, ende, ort_kurzbz, titel, lehrform, lehrfach, lehrfach_bez, organisationseinheit, farbe, lehrveranstaltung_id
|
||||
GROUP BY unr, datum, beginn, ende, titel, lehrform, lehrfach, lehrfach_bez, organisationseinheit, farbe, lehrveranstaltung_id
|
||||
|
||||
ORDER BY datum, beginn
|
||||
");
|
||||
@@ -327,7 +327,7 @@ class Stundenplan_model extends DB_Model
|
||||
|
||||
) as subquery
|
||||
|
||||
GROUP BY unr, datum, beginn, ende, ort_kurzbz, titel, lehrform, lehrfach, lehrfach_bez, organisationseinheit, farbe, lehrveranstaltung_id
|
||||
GROUP BY unr, datum, beginn, ende, titel, lehrform, lehrfach, lehrfach_bez, organisationseinheit, farbe, lehrveranstaltung_id
|
||||
|
||||
ORDER BY datum, beginn
|
||||
", [$start_date, $end_date, $lv_id]);
|
||||
@@ -384,7 +384,7 @@ class Stundenplan_model extends DB_Model
|
||||
|
||||
) as subquery
|
||||
|
||||
GROUP BY unr, datum, beginn, ende, ort_kurzbz, titel, lehrform, lehrfach, lehrfach_bez, organisationseinheit, farbe, lehrveranstaltung_id
|
||||
GROUP BY unr, datum, beginn, ende, titel, lehrform, lehrfach, lehrfach_bez, organisationseinheit, farbe, lehrveranstaltung_id
|
||||
|
||||
ORDER BY datum, beginn", [$start_date, $end_date, $ma_uid]);
|
||||
}
|
||||
|
||||
@@ -223,13 +223,14 @@ class Stundenplandev_model extends DB_Model
|
||||
|
||||
public function deleteLektorPlanning($lehreinheit_id, $mitarbeiter_uid)
|
||||
{
|
||||
$this->addDistinct('mitarbeiter_uid');
|
||||
//TODO (david) prüfen ob der check notwendig ist
|
||||
/*$this->addDistinct('mitarbeiter_uid');
|
||||
$this->addSelect('mitarbeiter_uid');
|
||||
$stundenplan_result = $this->loadWhere(array('lehreinheit_id' => $lehreinheit_id));
|
||||
$stundenplan_array = hasData($stundenplan_result) ? (getData($stundenplan_result)) : array();
|
||||
|
||||
if (sizeof($stundenplan_array) <= 1)
|
||||
return error('Diese/r LektorIn kann nicht aus dem LVPlan entfernt werden da dies der/die letzte verplante LektorIn ist');
|
||||
return error('Diese/r LektorIn kann nicht aus dem LVPlan entfernt werden da dies der/die letzte verplante LektorIn ist');*/
|
||||
|
||||
$this->addJoin('lehre.tbl_stundenplan_betriebsmittel', 'stundenplandev_id');
|
||||
$betriebsmittel_result = $this->loadWhere(array('lehreinheit_id' => $lehreinheit_id, 'tbl_stundenplandev.mitarbeiter_uid' => $mitarbeiter_uid));
|
||||
|
||||
Reference in New Issue
Block a user