Bugfix, Plausibilitätsprüfung in Prüfungsverwaltung

This commit is contained in:
Stefan Puraner
2014-04-30 11:45:56 +00:00
parent 1ddf4b205e
commit 364ce97565
10 changed files with 304 additions and 111 deletions
+5 -3
View File
@@ -481,12 +481,14 @@ class lehrveranstaltung extends basis_db
* @param $student_uid
* @return true wenn ok, false im Fehlerfall
*/
public function load_lva_student($student_uid)
public function load_lva_student($student_uid, $studiensemester_kurzbz=NULL)
{
$qry = "SELECT * FROM lehre.tbl_lehrveranstaltung
WHERE lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM campus.vw_student_lehrveranstaltung
WHERE uid=" . $this->db_add_param($student_uid) . ")
OR lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM lehre.tbl_zeugnisnote WHERE student_uid=" . $this->db_add_param($student_uid) . ")
WHERE uid=" . $this->db_add_param($student_uid);
if($studiensemester_kurzbz !== NULL)
$qry .= " AND studiensemester_kurzbz=".$this->db_add_param($studiensemester_kurzbz);
$qry .= ") OR lehrveranstaltung_id IN(SELECT lehrveranstaltung_id FROM lehre.tbl_zeugnisnote WHERE student_uid=" . $this->db_add_param($student_uid) . ")
ORDER BY semester, bezeichnung";
//Datensaetze laden
+9 -3
View File
@@ -43,6 +43,7 @@ class pruefungCis extends basis_db
public $insertamum; //timestamp without timezone
public $updatevon; //varcahr(32)
public $updateamum; //timestamp without timezone
public $pruefungsintervall; //smallint
public $lehrveranstaltungen = array(); //Lehrveranstaltungen zur Prüfung
public $termine = array(); //Termine zur Prüfung
@@ -145,7 +146,7 @@ class pruefungCis extends basis_db
}
else if($new)
{
$qry = 'BEGIN; INSERT INTO campus.tbl_pruefung (mitarbeiter_uid, studiensemester_kurzbz, pruefungsfenster_id, pruefungstyp_kurzbz, titel, beschreibung, methode, einzeln, storniert, insertvon, insertamum) '
$qry = 'BEGIN; INSERT INTO campus.tbl_pruefung (mitarbeiter_uid, studiensemester_kurzbz, pruefungsfenster_id, pruefungstyp_kurzbz, titel, beschreibung, methode, einzeln, storniert, insertvon, insertamum, pruefungsintervall) '
. 'VALUES ('.$this->db_add_param($this->mitarbeiter_uid).', '
. $this->db_add_param($this->studiensemester_kurzbz).', '
. $this->db_add_param($this->pruefungsfenster_id).', '
@@ -156,7 +157,8 @@ class pruefungCis extends basis_db
. $this->db_add_param($this->einzeln, FHC_BOOLEAN).', '
. $this->db_add_param($this->storniert, FHC_BOOLEAN).', '
. $this->db_add_param($this->insertvon).', '
. 'now()'
. 'now(), '
. $this->db_add_param($this->pruefungsintervall).''
. ');';
}
else
@@ -172,7 +174,8 @@ class pruefungCis extends basis_db
. 'einzeln='.$this->db_add_param($this->einzeln,FHC_BOOLEAN).', '
. 'storniert='.$this->db_add_param($this->storniert,FHC_BOOLEAN).', '
. 'updatevon='.$this->db_add_param($this->updatevon).', '
. 'updateamum=now() '
. 'updateamum=now(), '
. 'pruefungsintervall='.$this->db_add_param($this->pruefungsintervall).' '
. 'WHERE pruefung_id='.$this->db_add_param($this->pruefung_id).';';
}
@@ -291,6 +294,7 @@ class pruefungCis extends basis_db
$this->methode = $row->methode;
$this->einzeln = $this->db_parse_bool($row->einzeln);
$this->storniert = $this->db_parse_bool($row->storniert);
$this->pruefungsintervall = $row->pruefungsintervall;
}
return true;
}
@@ -337,6 +341,7 @@ class pruefungCis extends basis_db
$obj->methode = $row->methode;
$obj->einzeln = $this->db_parse_bool($row->einzeln);
$obj->storniert = $this->db_parse_bool($row->storniert);
$this->pruefungsintervall = $row->pruefungsintervall;
$this->result[] = $obj;
}
return true;
@@ -678,6 +683,7 @@ class pruefungCis extends basis_db
$obj->methode = $row->methode;
$obj->einzeln = $this->db_parse_bool($row->einzeln);
$obj->storniert = $this->db_parse_bool($row->storniert);
$this->pruefungsintervall = $row->pruefungsintervall;
$this->result[] = $obj;
}
return true;
+14 -3
View File
@@ -35,7 +35,9 @@ class pruefungsanmeldung extends basis_db {
public $status_kurzbz; //varchar(32)
public $wuensche; //text
public $reihung; //smallint
public $kommentar; //text
public $kommentar; //text
public $statusupdatevon; //varchar(32)
public $statusupdateamum; //timestamp
/**
* Konstruktor
@@ -154,6 +156,8 @@ class pruefungsanmeldung extends basis_db {
$this->wuensche = $row->wuensche;
$this->reihung = $row->reihung;
$this->kommentar = $row->kommentar;
$this->statusupdateamum = $row->statusupdateamum;
$this->statusupdatevon = $row->statusupdatevon;
}
return true;
}
@@ -195,6 +199,8 @@ class pruefungsanmeldung extends basis_db {
$anmeldung->reihung = $row->reihung;
$anmeldung->wuensche = $row->wuensche;
$anmeldung->kommentar = $row->kommentar;
$anmeldung->statusupdateamum = $row->statusupdateamum;
$anmeldung->statusupdatevon = $row->statusupdatevon;
array_push($anmeldungen, $anmeldung);
}
return $anmeldungen;
@@ -245,6 +251,8 @@ class pruefungsanmeldung extends basis_db {
$anmeldung->reihung = $row->reihung;
$anmeldung->wuensche = $row->wuensche;
$anmeldung->kommentar = $row->kommentar;
$anmeldung->statusupdateamum = $row->statusupdateamum;
$anmeldung->statusupdatevon = $row->statusupdatevon;
array_push($anmeldungen, $anmeldung);
}
return $anmeldungen;
@@ -324,9 +332,12 @@ class pruefungsanmeldung extends basis_db {
* @param type $status Status auf den geändert werden soll
* @return boolean true, wenn ok; false, im Fehlerfall
*/
public function changeState($pruefungsanmeldung_id, $status)
public function changeState($pruefungsanmeldung_id, $status, $user)
{
$qry = 'UPDATE campus.tbl_pruefungsanmeldung SET status_kurzbz='.$this->db_add_param($status).''
$qry = 'UPDATE campus.tbl_pruefungsanmeldung SET '
. 'status_kurzbz='.$this->db_add_param($status).', '
. 'statusupdatevon='.$this->db_add_param($user).', '
. 'statusupdateamum=NOW() '
. ' WHERE pruefungsanmeldung_id='.$this->db_add_param($pruefungsanmeldung_id).';';
if(!$this->db_query($qry))