Merge branch 'master' into feature-10267/Zeiterfassung_Zeitaufzeichnungspflichtig

This commit is contained in:
Andreas Österreicher
2021-07-28 12:10:28 +02:00
108 changed files with 5271 additions and 1719 deletions
+1 -1
View File
@@ -54,7 +54,7 @@ $data = array
'rolle_kurzbz' => 'admin',
'berechtigung' => array
(
'admin', 'assistenz', 'basis/addon', 'basis/ampel', 'basis/ampeluebersicht', 'basis/benutzer', 'basis/berechtigung', 'basis/betriebsmittel', 'basis/cms', 'basis/cms_review', 'basis/cms_sperrfreigabe', 'basis/cronjob', 'basis/dms', 'basis/fas', 'basis/ferien', 'basis/fhausweis','basis/firma', 'basis/infoscreen', 'basis/moodle', 'basis/moodle','basis/news', 'basis/notiz', 'basis/organisationseinheit', 'basis/ort', 'basis/orgform', 'basis/person', 'basis/planner', 'basis/service', 'basis/statistik', 'basis/studiengang', 'basis/tempus', 'basis/testtool', 'basis/variable', 'basis/vilesci', 'buchung/typen', 'buchung/mitarbeiter', 'inout/incoming', 'inout/outgoing', 'inout/uebersicht', 'lehre', 'lehre/abgabetool', 'lehre/freifach', 'lehre/lehrfach', 'lehre/lehrveranstaltung', 'lehre/lvplan', 'lehre/lvinfo', 'lehre/pruefungsanmeldungAdmin', 'lehre/pruefungsbeurteilung', 'lehre/pruefungsbeurteilungAdmin', 'lehre/pruefungsterminAdmin', 'lehre/pruefungsfenster', 'lehre/reihungstest', 'lehre/reservierung', 'lehre/studienordnung', 'lehre/studienordnungInaktiv', 'lehre/studienplan', 'lehre/vorrueckung', 'lv-plan', 'lv-plan/gruppenentfernen', 'lv-plan/lektorentfernen', 'mitarbeiter', 'mitarbeiter/bankdaten', 'mitarbeiter/personalnummer', 'mitarbeiter/stammdaten', 'mitarbeiter/urlaube', 'mitarbeiter/zeitsperre', 'news', 'planner', 'preinteressent', 'raumres', 'reihungstest', 'sdTools', 'soap/lv', 'soap/lvplan', 'soap/mitarbeiter', 'soap/ort', 'soap/pruefungsfenster', 'soap/student', 'soap/studienordnung', 'soap/benutzer', 'soap/buchungen', 'student/bankdaten', 'student/anrechnung', 'student/anwesenheit', 'student/dokumente', 'student/noten', 'system/phrase', 'system/vorlage', 'system/vorlagestudiengang', 'student/stammdaten', 'student/vorrueckung', 'system/developer', 'system/loginasuser', 'user', 'veranstaltung', 'vertrag/mitarbeiter', 'vertrag/typen', 'wawi/berichte', 'wawi/bestellung', 'wawi/bestellung_advanced', 'wawi/budget', 'wawi/delete_advanced', 'wawi/firma', 'wawi/freigabe', 'wawi/freigabe_advanced', 'wawi/inventar', 'wawi/konto', 'wawi/kostenstelle', 'wawi/rechnung', 'wawi/rechnung_freigeben', 'wawi/rechnung_transfer', 'wawi/storno'
'admin', 'assistenz', 'basis/addon', 'basis/ampel', 'basis/ampeluebersicht', 'basis/benutzer', 'basis/berechtigung', 'basis/betriebsmittel', 'basis/cms', 'basis/cms_review', 'basis/cms_sperrfreigabe', 'basis/cronjob', 'basis/dms', 'basis/fas', 'basis/ferien', 'basis/fhausweis','basis/firma', 'basis/infoscreen', 'basis/moodle', 'basis/moodle','basis/news', 'basis/notiz', 'basis/organisationseinheit', 'basis/ort', 'basis/orgform', 'basis/person', 'basis/planner', 'basis/service', 'basis/statistik', 'basis/studiengang', 'basis/tempus', 'basis/testtool', 'basis/variable', 'basis/vilesci', 'buchung/typen', 'buchung/mitarbeiter', 'inout/incoming', 'inout/outgoing', 'inout/uebersicht', 'lehre', 'lehre/abgabetool', 'lehre/freifach', 'lehre/lehrfach', 'lehre/lehrveranstaltung', 'lehre/lvplan', 'lehre/lvinfo', 'lehre/pruefungsanmeldungAdmin', 'lehre/pruefungsbeurteilung', 'lehre/pruefungsbeurteilungAdmin', 'lehre/pruefungsterminAdmin', 'lehre/pruefungsfenster', 'lehre/reihungstest', 'lehre/reservierung', 'lehre/studienordnung', 'lehre/studienordnungInaktiv', 'lehre/studienplan', 'lehre/vorrueckung', 'lv-plan', 'lv-plan/gruppenentfernen', 'lv-plan/lektorentfernen', 'mitarbeiter', 'mitarbeiter/bankdaten', 'mitarbeiter/personalnummer', 'mitarbeiter/stammdaten', 'mitarbeiter/urlaube', 'mitarbeiter/zeitsperre', 'mitarbeiter/zeitwuensche', 'news', 'planner', 'preinteressent', 'raumres', 'reihungstest', 'sdTools', 'soap/lv', 'soap/lvplan', 'soap/mitarbeiter', 'soap/ort', 'soap/pruefungsfenster', 'soap/student', 'soap/studienordnung', 'soap/benutzer', 'soap/buchungen', 'student/bankdaten', 'student/anrechnung', 'student/anwesenheit', 'student/dokumente', 'student/noten', 'system/phrase', 'system/vorlage', 'system/vorlagestudiengang', 'student/stammdaten', 'student/vorrueckung', 'system/developer', 'system/loginasuser', 'user', 'veranstaltung', 'vertrag/mitarbeiter', 'vertrag/typen', 'wawi/berichte', 'wawi/bestellung', 'wawi/bestellung_advanced', 'wawi/budget', 'wawi/delete_advanced', 'wawi/firma', 'wawi/freigabe', 'wawi/freigabe_advanced', 'wawi/inventar', 'wawi/konto', 'wawi/kostenstelle', 'wawi/rechnung', 'wawi/rechnung_freigeben', 'wawi/rechnung_transfer', 'wawi/storno'
)
)
);
+1
View File
@@ -171,6 +171,7 @@ $berechtigungen = array(
array('mitarbeiter/stammdaten','Stammdaten der Mitarbeiter'),
array('mitarbeiter/urlaube','Mit diesem Recht werden im CIS die Urlaube von allen Mitarbeiter sichtbar'),
array('mitarbeiter/zeitsperre','Zeitsperren- und Urlaubsverwaltung'),
array('mitarbeiter/zeitwuensche','Berechtigung um Zeitwünsche zu editieren'),
array('news','News eintragen'),
array('planner','Planner Verwaltung'),
array('preinteressent','Verwaltung der Preinteressenten'),
+80 -14
View File
@@ -4480,6 +4480,73 @@ if(!$result = @$db->db_query("SELECT azgrelevant FROM bis.tbl_bisverwendung LIMI
echo '<br>bis.tbl_bisverwendung Spalte azgrelevant hinzugefügt.';
}
// Add new funktion type kstzuordnung for cost center assignment in public.tbl_funktion
if ($result = @$db->db_query("SELECT 1 FROM public.tbl_funktion WHERE funktion_kurzbz = 'kstzuordnung';"))
{
if ($db->db_num_rows($result) == 0)
{
$qry = "INSERT INTO public.tbl_funktion(funktion_kurzbz, beschreibung, aktiv, fachbereich, semester) VALUES('kstzuordnung','Standardkostenstelle Zuordnung',true,false,false);";
if (!$db->db_query($qry))
echo '<strong>public.tbl_funktion '.$db->db_last_error().'</strong><br>';
else
echo '<br>public.tbl_funktion: Added funktion kstzuordnung<br>';
}
}
// Add column zugangstoken to tbl_projektbetreuer
if(!$result = @$db->db_query("SELECT zugangstoken FROM lehre.tbl_projektbetreuer LIMIT 1"))
{
$qry = "ALTER TABLE lehre.tbl_projektbetreuer ADD COLUMN zugangstoken VARCHAR(32);
COMMENT ON COLUMN lehre.tbl_projektbetreuer.zugangstoken IS 'Zugangstoken zur Projektarbeitsbewertung fuer externe Betreuer';
ALTER TABLE lehre.tbl_projektbetreuer ADD CONSTRAINT uk_tbl_projektbetreuer_zugangstoken UNIQUE (zugangstoken);";
if(!$db->db_query($qry))
echo '<strong>lehre.tbl_projektbetreuer: '.$db->db_last_error().'</strong><br>';
else
echo '<br>lehre.tbl_projektbetreuer: Spalte zugangstoken hinzugefuegt';
}
// Add column zugangstoken_gueltigbis to tbl_projektbetreuer
if(!$result = @$db->db_query("SELECT zugangstoken_gueltigbis FROM lehre.tbl_projektbetreuer LIMIT 1"))
{
$qry = "ALTER table lehre.tbl_projektbetreuer ADD COLUMN zugangstoken_gueltigbis date;
COMMENT ON COLUMN lehre.tbl_projektbetreuer.zugangstoken_gueltigbis IS 'Gueligkeitsdatum fuer Zugangstoken zur Projektarbeitsbewertung fuer externe Betreuer';";
if(!$db->db_query($qry))
echo '<strong>lehre.tbl_projektbetreuer: '.$db->db_last_error().'</strong><br>';
else
echo '<br>lehre.tbl_projektbetreuer: Spalte zugangstoken_gueltigbis hinzugefuegt';
}
// App 'projektarbeitsbeurteilung' hinzufügen
if($result = $db->db_query("SELECT 1 FROM system.tbl_app WHERE app='projektarbeitsbeurteilung'"))
{
if($db->db_num_rows($result)==0)
{
$qry = "INSERT INTO system.tbl_app(app) VALUES('projektarbeitsbeurteilung');";
if(!$db->db_query($qry))
echo '<strong>App: '.$db->db_last_error().'</strong><br>';
else
echo '<br>Neue App projektarbeitsbeurteilung in system.tbl_app hinzugefügt';
}
}
// UPDATE Berechtigung für lehre.tbl_projektbetreuer für web user hinzufügen
if($result = @$db->db_query("SELECT * FROM information_schema.role_table_grants WHERE table_name='tbl_projektbetreuer' AND table_schema='lehre' AND grantee='web' AND privilege_type='UPDATE'"))
{
if($db->db_num_rows($result)==0)
{
$qry = "GRANT UPDATE ON lehre.tbl_projektbetreuer TO web;";
if(!$db->db_query($qry))
echo '<strong>Projektbetreuer Berechtigungen: '.$db->db_last_error().'</strong><br>';
else
echo '<br>Web User: update fuer lehre.tbl_projektbetreuer berechtigt';
}
}
// Add column dms_id, studiensemester_kurzbz, anmerkung_student und empfehlung_anrechnung
// Change genehmigt_von and begruendung_id to be NULLABLE
if(!$result = @$db->db_query("SELECT dms_id FROM lehre.tbl_anrechnung"))
@@ -4497,8 +4564,8 @@ if(!$result = @$db->db_query("SELECT dms_id FROM lehre.tbl_anrechnung"))
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN begruendung_id DROP NOT NULL;
ALTER TABLE lehre.tbl_anrechnung ALTER COLUMN insertamum SET DEFAULT NOW();
";
if(!$db->db_query($qry))
echo '<strong>lehre.tbl_anrechnung: '.$db->db_last_error().'</strong><br>';
else
@@ -4715,19 +4782,18 @@ if($result = @$db->db_query("SELECT 1 FROM system.tbl_berechtigung WHERE berecht
}
}
// ADD COLUMN azgrelevant in bis.tbl_bisverwendung
if(!$result = @$db->db_query("SELECT azgrelevant FROM bis.tbl_bisverwendung LIMIT 1"))
// Add index to system.tbl_log
if ($result = $db->db_query("SELECT * FROM pg_class WHERE relname='idx_tbl_pruefung_student_uid'"))
{
$qry = "
ALTER TABLE bis.tbl_bisverwendung ADD COLUMN azgrelevant boolean;
UPDATE bis.tbl_bisverwendung SET azgrelevant = zeitaufzeichnungspflichtig;
UPDATE bis.tbl_bisverwendung SET zeitaufzeichnungspflichtig = true WHERE ba1code=103;
";
if ($db->db_num_rows($result) == 0)
{
$qry = "CREATE INDEX idx_tbl_pruefung_student_uid ON lehre.tbl_pruefung USING btree (student_uid)";
if(!$db->db_query($qry))
echo '<strong>bis.tbl_bisverwendung: '.$db->db_last_error().'</strong><br>';
else
echo '<br>bis.tbl_bisverwendung Spalte azgrelevant hinzugefügt.';
if (! $db->db_query($qry))
echo '<strong>Indizes: ' . $db->db_last_error() . '</strong><br>';
else
echo 'Index fuer lehre.pruefung.student_uid hinzugefuegt<br>';
}
}
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
@@ -4858,7 +4924,7 @@ $tabellen=array(
"lehre.tbl_notenschluesselzuordnung" => array("notenschluesselzuordnung_id","notenschluessel_kurzbz","lehrveranstaltung_id","studienplan_id","oe_kurzbz","studiensemester_kurzbz"),
"lehre.tbl_note" => array("note","bezeichnung","anmerkung","farbe","positiv","notenwert","aktiv","lehre","offiziell","bezeichnung_mehrsprachig","lkt_ueberschreibbar"),
"lehre.tbl_projektarbeit" => array("projektarbeit_id","projekttyp_kurzbz","titel","lehreinheit_id","student_uid","firma_id","note","punkte","beginn","ende","faktor","freigegeben","gesperrtbis","stundensatz","gesamtstunden","themenbereich","anmerkung","updateamum","updatevon","insertamum","insertvon","ext_id","titel_english","seitenanzahl","abgabedatum","kontrollschlagwoerter","schlagwoerter","schlagwoerter_en","abstract", "abstract_en", "sprache","final"),
"lehre.tbl_projektbetreuer" => array("person_id","projektarbeit_id","betreuerart_kurzbz","note","faktor","name","punkte","stunden","stundensatz","updateamum","updatevon","insertamum","insertvon","ext_id","vertrag_id"),
"lehre.tbl_projektbetreuer" => array("person_id","projektarbeit_id","betreuerart_kurzbz","note","faktor","name","punkte","stunden","stundensatz","updateamum","updatevon","insertamum","insertvon","ext_id","vertrag_id", "zugangstoken", "zugangstoken_gueltigbis"),
"lehre.tbl_projekttyp" => array("projekttyp_kurzbz","bezeichnung","aktiv"),
"lehre.tbl_pruefung" => array("pruefung_id","lehreinheit_id","student_uid","mitarbeiter_uid","note","pruefungstyp_kurzbz","datum","anmerkung","insertamum","insertvon","updateamum","updatevon","ext_id","pruefungsanmeldung_id","vertrag_id", "punkte"),
"lehre.tbl_pruefungstyp" => array("pruefungstyp_kurzbz","beschreibung","abschluss","sort"),
File diff suppressed because it is too large Load Diff
+35 -3
View File
@@ -463,7 +463,17 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Current Semester of Study</text:p>
<xsl:choose>
<xsl:when test = "abbrecher='true'">
<text:p text:style-name="P4">Semester resigned from Study</text:p>
</xsl:when>
<xsl:otherwise>
<text:p text:style-name="P4">Current Semester of Study</text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P2">
@@ -482,7 +492,17 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Current Semester in Degree Program</text:p>
<xsl:choose>
<xsl:when test = "abbrecher='true'">
<text:p text:style-name="P4">Resignation Semester in Degree Program</text:p>
</xsl:when>
<xsl:otherwise>
<text:p text:style-name="P4">Current Semester in Degree Program</text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P2">
@@ -516,6 +536,7 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</text:span></text:p>
</table:table-cell>
</table:table-row>
<xsl:if test="abbrecher='false'">
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Expected Final Semester of Study</text:p>
@@ -535,9 +556,20 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</text:span></text:p>
</table:table-cell>
</table:table-row>
</xsl:if>
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Expected Date of Graduation</text:p>
<xsl:choose>
<xsl:when test="abbrecher='true'">
<text:p text:style-name="P4">Resignation Date</text:p>
</xsl:when>
<xsl:otherwise>
<text:p text:style-name="P4">Expected Date of Graduation</text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P15"><xsl:value-of select="voraussichtlichLetztesStudiensemester_datum"/></text:p>
+36 -3
View File
@@ -426,7 +426,16 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Aktuelles Studiensemester</text:p>
<xsl:choose>
<xsl:when test = "abbrecher='true'">
<text:p text:style-name="P4">Abgemeldet im Studiensemester</text:p>
</xsl:when>
<xsl:otherwise>
<text:p text:style-name="P4">Aktuelles Studiensemester</text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P2">
@@ -435,7 +444,17 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
</table:table-row>
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Aktuelles Ausbildungssemester</text:p>
<xsl:choose>
<xsl:when test = "abbrecher='true'">
<text:p text:style-name="P4">Abgemeldet im Ausbildungssemester</text:p>
</xsl:when>
<xsl:otherwise>
<text:p text:style-name="P4">Aktuelles Ausbildungssemester</text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P2">
@@ -451,6 +470,9 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:span text:style-name="T4"><xsl:value-of select="studierendenstatus_aktuell"/></text:span></text:p>
</table:table-cell>
</table:table-row>
<xsl:if test="abbrecher='false'">
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Voraussichtlich letztes Studiensemester</text:p>
@@ -460,9 +482,20 @@ xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn
<text:span text:style-name="T4"><xsl:value-of select="voraussichtlichLetztesStudiensemester"/></text:span></text:p>
</table:table-cell>
</table:table-row>
</xsl:if>
<table:table-row table:style-name="Tabelle3.1">
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P4">Voraussichtliches Abschlussdatum</text:p>
<xsl:choose>
<xsl:when test="abbrecher='true'">
<text:p text:style-name="P4">Abgemeldet am</text:p>
</xsl:when>
<xsl:otherwise>
<text:p text:style-name="P4">Voraussichtliches Abschlussdatum</text:p>
</xsl:otherwise>
</xsl:choose>
</table:table-cell>
<table:table-cell table:style-name="Tabelle3.A1" office:value-type="string">
<text:p text:style-name="P15"><xsl:value-of select="voraussichtlichLetztesStudiensemester_datum"/></text:p>