This commit is contained in:
Andreas Österreicher
2008-11-05 11:59:47 +00:00
parent 3234d3e6f8
commit 4ac27c9382
6 changed files with 104 additions and 25 deletions
@@ -55,50 +55,58 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
>
<treecols>
<treecol id="lehrveranstaltung-noten-tree-student_vorname" label="Vorname" flex="2" hidden="false"
<treecol id="lehrveranstaltung-noten-tree-student_vorname" label="Vorname" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_vorname" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_nachname" label="Nachname" flex="2" hidden="false"
<treecol id="lehrveranstaltung-noten-tree-student_nachname" label="Nachname" flex="2" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_nachname" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_bezeichnung" label="Lehrveranstaltung" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-note_bezeichnung" label="Note" flex="5" hidden="false"
<treecol id="lehrveranstaltung-noten-tree-note_bezeichnung" label="Note" flex="5" hidden="false" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note_bezeichnung"/>
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-uebernahmedatum" label="Uebernahmedatum" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-uebernahmedatum" label="Uebernahmedatum" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#uebernahmedatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum" label="Benotungsdatum" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-benotungsdatum-iso" label="BenotungsdatumISO" flex="2" hidden="true"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#benotungsdatum_iso" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-studiensemester_kurzbz" label="Studiensemester" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiensemester_kurzbz" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-note" label="Note" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-note" label="Note" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_uid" label="Uid" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-student_uid" label="Uid" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_uid" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true"
<treecol id="lehrveranstaltung-noten-tree-lehrveranstaltung_id" label="LehrveranstaltungID" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_id" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-studiengang" label="Studiengang" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang" />
<splitter class="tree-splitter"/>
<treecol id="lehrveranstaltung-noten-tree-student_semester" label="Semester" flex="2" hidden="true" persist="hidden, width, ordinal"
class="sortDirectionIndicator"
sort="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester" />
<splitter class="tree-splitter"/>
</treecols>
<template>
@@ -116,6 +124,8 @@ echo "<?xml-stylesheet href=\"".APP_ROOT."content/bindings.css\" type=\"text/css
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#note"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_uid"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#lehrveranstaltung_id"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#studiengang"/>
<treecell label="rdf:http://www.technikum-wien.at/zeugnisnote/rdf#student_semester"/>
</treerow>
</treeitem>
</treechildren>
+42 -7
View File
@@ -61,7 +61,7 @@ $result_student = $student->getStudents($studiengang_kz,$semester,null,null,null
//$lehrveranstaltung = new lehrveranstaltung($conn);
//$lehrveranstaltung->load_lva($studiengang_kz, $semester, null, null, true);
$qry = "SELECT
lehrveranstaltung_id, bezeichnung, studiengang_kz, semester
lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, ects
FROM
lehre.tbl_lehrveranstaltung
WHERE
@@ -81,7 +81,7 @@ $qry = "SELECT
AND studiengang_kz<>0
UNION
SELECT
lehrveranstaltung_id, bezeichnung, studiengang_kz, semester
lehrveranstaltung_id, bezeichnung, studiengang_kz, semester, ects
FROM
lehre.tbl_lehrveranstaltung JOIN lehre.tbl_zeugnisnote USING(lehrveranstaltung_id)
WHERE
@@ -157,7 +157,7 @@ if($typ=='xls')
while($row_lva = pg_fetch_object($result_lva))
{
$worksheet->write($zeile,++$spalte,$stg_arr[$row_lva->studiengang_kz].$row_lva->semester.' '.$row_lva->bezeichnung, $format_rotate);
$worksheet->write($zeile,++$spalte,$stg_arr[$row_lva->studiengang_kz].$row_lva->semester.' '.$row_lva->bezeichnung.' ('.$row_lva->ects.' ECTS)', $format_rotate);
$maxlength[$spalte]=3;
}
$worksheet->write($zeile,++$spalte,'Notendurchschnitt', $format_bold);
@@ -165,7 +165,8 @@ if($typ=='xls')
$anzahl_lv=array();
$summe_lv=array();
$summegewichtet=0;
$anzahlgewichtet=0;
foreach ($result_student as $row_student)
{
$zeile++;
@@ -188,6 +189,8 @@ if($typ=='xls')
$anzahl=0;
$summe=0;
$rowcount=0;
$summeects=0;
$gewichtetenote=0;
while($rowcount<pg_num_rows($result_lva))
{
$row_lva = pg_fetch_object($result_lva,$rowcount);
@@ -215,6 +218,11 @@ if($typ=='xls')
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten[$row_lva->lehrveranstaltung_id];
$anzahl_lv[$row_lva->lehrveranstaltung_id]++;
$summe+=$noten[$row_lva->lehrveranstaltung_id];
if(is_numeric($row_lva->ects))
{
$gewichtetenote += $noten[$row_lva->lehrveranstaltung_id]*$row_lva->ects;
$summeects+=$row_lva->ects;
}
$anzahl++;
}
}
@@ -235,7 +243,13 @@ if($typ=='xls')
else
$schnitt=0;
if($summeects!=0)
$gewichtetenote /= $summeects;
$worksheet->write($zeile,++$spalte,$schnitt, $format_number);
$worksheet->write($zeile,++$spalte,$gewichtetenote, $format_number);
$summegewichtet+=$gewichtetenote;
$anzahlgewichtet++;
}
$zeile++;
@@ -271,6 +285,9 @@ if($typ=='xls')
else
$schnitt=0;
$worksheet->write($zeile,++$spalte,$schnitt, $format_number);
if($anzahlgewichtet!=0)
$summegewichtet = $summegewichtet/$anzahlgewichtet;
$worksheet->write($zeile,++$spalte,$summegewichtet, $format_number);
//Die Breite der Spalten setzen
foreach($maxlength as $i=>$breite)
@@ -304,14 +321,16 @@ else
echo '<table class="liste" style="border: 1px solid black" cellspacing="0"><tr class="liste"><th>Nr</th><th>Name</th><th>Personenkennzeichen</th>';
while($row_lva = pg_fetch_object($result_lva))
{
echo "<th>".$stg_arr[$row_lva->studiengang_kz]."$row_lva->semester $row_lva->bezeichnung</th>";
echo "<th>".$stg_arr[$row_lva->studiengang_kz]."$row_lva->semester $row_lva->bezeichnung ($row_lva->ects ECTS)</th>";
}
echo '<th>Notendurchschnitt</td>';
echo '<th>Notendurchschnitt</th>';
echo '<th>Gewichteter Notendurchschnitt</th>';
echo '</tr>';
$i=0;
$anzahl_lv=array();
$summe_lv=array();
$summegewichtet=0;
$anzahlgewichtet=0;
foreach ($result_student as $row_student)
{
$i++;
@@ -326,6 +345,8 @@ else
$anzahl=0;
$summe=0;
$rowcount=0;
$summeects=0;
$gewichtetenote=0;
while($rowcount<pg_numrows($result_lva))
{
$row_lva = pg_fetch_object($result_lva, $rowcount);
@@ -349,6 +370,11 @@ else
$summe_lv[$row_lva->lehrveranstaltung_id] += $noten[$row_lva->lehrveranstaltung_id];
$anzahl_lv[$row_lva->lehrveranstaltung_id]++;
$summe+=$noten[$row_lva->lehrveranstaltung_id];
if(is_numeric($row_lva->ects))
{
$gewichtetenote += $noten[$row_lva->lehrveranstaltung_id]*$row_lva->ects;
$summeects+=$row_lva->ects;
}
$anzahl++;
}
}
@@ -361,7 +387,13 @@ else
$schnitt = $summe/$anzahl;
else
$schnitt=0;
if($summeects!=0)
$gewichtetenote /= $summeects;
echo "<td>".($schnitt==0?'&nbsp;':sprintf("%.2f", $schnitt))."</td>";
echo "<td>".($gewichtetenote==0?'&nbsp;':sprintf("%.2f", $gewichtetenote))."</td>";
$summegewichtet+=$gewichtetenote;
$anzahlgewichtet++;
echo '</tr>';
}
@@ -394,7 +426,10 @@ else
$schnitt = $summe_schnitt/$anzahl_schnitt;
else
$schnitt=0;
if($anzahlgewichtet!=0)
$summegewichtet = $summegewichtet/$anzahlgewichtet;
echo "<td>".($schnitt==0?'&nbsp;':sprintf("%.2f",$schnitt))."</td>";
echo "<td>".($summegewichtet==0?'&nbsp;':sprintf("%.2f",$summegewichtet))."</td>";
echo '</table>';
echo '</body>
+1 -1
View File
@@ -284,7 +284,7 @@ class lehrveranstaltung
}
/**
* Liefert alle Lehrveranstaltungen eines Studenten (alle SemesteR)
* Liefert alle Lehrveranstaltungen eines Studenten (alle Semester)
* @param $student_uid
* @return true wenn ok, false im Fehlerfall
*/
+29 -1
View File
@@ -490,7 +490,35 @@ class student extends benutzer
}
else
{
$this->errormsg = 'Fehler beim laden der Daten';
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
// ****************************************
// * Laedt die UID anhand der Matrikelnummer
// * @param matrikelnummer
// * @return uid wenn ok, false wenn Fehler
// ****************************************
function getUidFromMatrikelnummer($matrikelnummer)
{
$qry = "SELECT student_uid FROM public.tbl_student WHERE matrikelnummer='".addslashes($matrikelnummer)."'";
if($result = pg_query($this->conn, $qry))
{
if($row = pg_fetch_object($result))
{
return $row->student_uid;
}
else
{
$this->errormsg = 'Student nicht gefunden';
return false;
}
}
else
{
$this->errormsg = 'Fehler beim Laden der Daten';
return false;
}
}
+4
View File
@@ -627,6 +627,10 @@
<td class="tdwidth10" nowrap>&nbsp;</td>
<td class="tdwrap"><a class="Item" href="private/info/betriebsrat/dokumente.php" target="content"><img src="../skin/images/menu_item.gif" width="7" height="9">&nbsp;Dokumente</a></td>
</tr>
<tr>
<td class="tdwidth10" nowrap>&nbsp;</td>
<td class="tdwrap"><a class="Item" href="private/info/betriebsrat/betriebsratswahl.php" target="content"><img src="../skin/images/menu_item.gif" width="7" height="9">&nbsp;Betriebsratswahl</a></td>
</tr>
</table>
</td>
</tr>
+4 -2
View File
@@ -33,6 +33,7 @@ require_once('../include/zeugnisnote.class.php');
require_once('../include/datum.class.php');
require_once('../include/person.class.php');
require_once('../include/benutzer.class.php');
require_once('../include/student.class.php');
require_once('../include/studiengang.class.php');
require_once('../include/lehrveranstaltung.class.php');
@@ -82,7 +83,7 @@ echo '
$obj = new zeugnisnote($conn, null, null, null, true);
$obj->getZeugnisnoten($lehrveranstaltung_id, $uid, $studiensemester_kurzbz);
$benutzer = new benutzer($conn, null, null);
$benutzer = new student($conn, null, null);
foreach ($obj->result as $row)
{
@@ -107,7 +108,8 @@ foreach ($obj->result as $row)
<NOTE:lehrveranstaltung_kurzbz><![CDATA['.$lv_obj->kurzbz.']]></NOTE:lehrveranstaltung_kurzbz>
<NOTE:student_nachname><![CDATA['.$benutzer->nachname.']]></NOTE:student_nachname>
<NOTE:student_vorname><![CDATA['.$benutzer->vorname.']]></NOTE:student_vorname>
<NOTE:studiengang><![CDATA['.$stg_arr[$row->studiengang_kz].']]></NOTE:studiengang>
<NOTE:studiengang><![CDATA['.$stg_arr[$benutzer->studiengang_kz].']]></NOTE:studiengang>
<NOTE:student_semester><![CDATA['.$benutzer->semester.']]></NOTE:student_semester>
</RDF:Description>
</RDF:li>';
}