Beträge am Lehrauftrag werden Abhängig von der Vertragsart angezeigt und nicht mehr

anhand der Inkludierten Lehre
This commit is contained in:
Andreas Österreicher
2023-11-21 11:20:05 +01:00
parent 5263ffbb7b
commit d67d71abd5
3 changed files with 88 additions and 15 deletions
@@ -35,6 +35,7 @@ class LehrauftragAkzeptieren extends Auth_Controller
$this->load->model('ressource/Mitarbeiter_model', 'MitarbeiterModel');
$this->load->model('codex/Bisverwendung_model', 'BisverwendungModel');
$this->load->model('person/Benutzer_model', 'BenutzerModel');
$this->load->model('vertragsbestandteil/Dienstverhaeltnis_model', 'DienstverhaeltnisModel');
// Load libraries
$this->load->library('WidgetLib');
@@ -207,6 +208,31 @@ class LehrauftragAkzeptieren extends Auth_Controller
*/
public function checkInkludierteLehre()
{
if(defined('DIENSTVERHAELTNIS_SUPPORT') && DIENSTVERHAELTNIS_SUPPORT)
{
// Bei neuer Vertragsstruktur wird nur anhand des echten DVs entschieden ob eine Anzeige
// des Stundensatzes erfolgt oder nicht.
$result = $this->DienstverhaeltnisModel->getDVByPersonUID($this->_uid, null, date('Y-m-d'));
if (hasData($result))
{
$data = getData($result);
foreach($data as $row)
{
if($row->vertragsart_kurzbz == 'echterdv')
$this->outputJsonSuccess(true);
else
$this->outputJsonSuccess(false);
}
}
else
{
$this->outputJsonError(getError($result));
}
}
else
{
// DEPRECATED
$result = $this->BisverwendungModel->getLast($this->_uid, false);
if (hasData($result))
@@ -218,6 +244,7 @@ class LehrauftragAkzeptieren extends Auth_Controller
$this->outputJsonError(getError($result));
}
}
}
// -----------------------------------------------------------------------------------------------------------------
// Private methods
+26 -4
View File
@@ -242,9 +242,31 @@ function drawLehrauftrag($uid)
$name_gesamt = trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost);
$zuhanden='';
}
// Lädt die letzte (aktuellste) Verwendungen eines Mitarbeiters um die inkludierte Lehre auslesen zu können
$bis = new bisverwendung();
$bis->getLastAktVerwendung($uid);
$show_betrag = true;
if (defined('DIENSTVERHAELTNIS_SUPPORT') && DIENSTVERHAELTNIS_SUPPORT)
{
$qry = "
SELECT
1
FROM
hr.tbl_dienstverhaeltnis
WHERE
mitarbeiter_uid=".$db->db_add_param($uid)."
AND vertragsart_kurzbz = 'echterdv'
AND von <= (SELECT ende FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=".$db->db_add_param($ss).")
AND COALESCE(bis,'2999-12-31') >= (SELECT start FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=".$db->db_add_param($ss).")
";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
$show_betrag = false;
}
}
}
$xml .= '
<mitarbeiter>
@@ -259,7 +281,7 @@ function drawLehrauftrag($uid)
<ort><![CDATA['.$ort.']]></ort>
<svnr><![CDATA['.$row->svnr.']]></svnr>
<personalnummer><![CDATA['.$row->personalnummer.']]></personalnummer>
<inkludierte_lehre><![CDATA['.$bis->inkludierte_lehre.']]></inkludierte_lehre>
<show_betrag><![CDATA['.($show_betrag?'true':'false').']]></show_betrag>
</mitarbeiter>';
}
}
+28 -4
View File
@@ -24,6 +24,7 @@
* Erstellt ein XML File fuer den Lehrauftrag
*/
require_once('../config/vilesci.config.inc.php');
require_once('../config/global.config.inc.php');
require_once('../include/functions.inc.php');
require_once('../include/benutzerberechtigung.class.php');
require_once('../include/studiengang.class.php');
@@ -246,9 +247,32 @@ function drawLehrauftrag($uid)
$name_gesamt = trim($row->titelpre.' '.$row->vorname.' '.$row->nachname.' '.$row->titelpost);
$zuhanden='';
}
// Lädt die letzte (aktuellste) Verwendungen eines Mitarbeiters um die inkludierte Lehre auslesen zu können
$bis = new bisverwendung();
$bis->getLastAktVerwendung($uid);
$show_betrag = true;
if (defined('DIENSTVERHAELTNIS_SUPPORT') && DIENSTVERHAELTNIS_SUPPORT)
{
$qry = "
SELECT
1
FROM
hr.tbl_dienstverhaeltnis
WHERE
mitarbeiter_uid=".$db->db_add_param($uid)."
AND vertragsart_kurzbz = 'echterdv'
AND von <= (SELECT ende FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=".$db->db_add_param($ss).")
AND COALESCE(bis,'2999-12-31') >= (SELECT start FROM public.tbl_studiensemester WHERE studiensemester_kurzbz=".$db->db_add_param($ss).")
";
if($result = $db->db_query($qry))
{
if($db->db_num_rows($result)>0)
{
$show_betrag = false;
}
}
}
$xml .= '
<mitarbeiter>
@@ -263,7 +287,7 @@ function drawLehrauftrag($uid)
<ort><![CDATA['.$ort.']]></ort>
<svnr><![CDATA['.$row->svnr.']]></svnr>
<personalnummer><![CDATA['.$row->personalnummer.']]></personalnummer>
<inkludierte_lehre><![CDATA['.$bis->inkludierte_lehre.']]></inkludierte_lehre>
<show_betrag><![CDATA['.($show_betrag?'true':'false').']]></show_betrag>
</mitarbeiter>';
}
}