From ccbff2b349fa7eff1aedfc3a21eaabbe125d2a5d Mon Sep 17 00:00:00 2001 From: oesi Date: Wed, 27 Apr 2016 14:49:05 +0200 Subject: [PATCH] =?UTF-8?q?Status,=20Standort,=20ECTS,=20PflichSWS=20und?= =?UTF-8?q?=20PflichtLVS=20k=C3=B6nnen=20jetzt=20auch=20=C3=BCber=20Vilesc?= =?UTF-8?q?i=20GUI=20editiert=20werden?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- include/studienordnung.class.php | 151 +++++++++++++++++---------- vilesci/lehre/saveStudienordnung.php | 22 ++-- vilesci/lehre/studienordnung.inc.php | 73 +++++++++++-- vilesci/lehre/studienordnung.js | 34 +++--- 4 files changed, 190 insertions(+), 90 deletions(-) diff --git a/include/studienordnung.class.php b/include/studienordnung.class.php index 7a203568f..73c05709b 100644 --- a/include/studienordnung.class.php +++ b/include/studienordnung.class.php @@ -115,7 +115,7 @@ class studienordnung extends basis_db $this->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch; $this->studiengangkurzbzlang = $row->studiengangkurzbzlang; $this->akadgrad_id = $row->akadgrad_id; - $this->status_kurzbz = $row->status_kurzbz; + $this->status_kurzbz = $row->status_kurzbz; $this->standort_id = $row->standort_id; $this->updateamum = $row->updateamum; $this->updatevon = $row->updatevon; @@ -150,7 +150,7 @@ class studienordnung extends basis_db if(is_null($studiensemester_kurzbz)) { $qry = 'SELECT sto.*, s.bezeichnung as status_bezeichnung FROM lehre.tbl_studienordnung sto - JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) + LEFT JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) WHERE studiengang_kz='.$this->db_add_param($studiengang_kz, FHC_INTEGER, false); } else @@ -316,17 +316,17 @@ class studienordnung extends basis_db ' version='.$this->db_add_param($this->version).', '. ' bezeichnung='.$this->db_add_param($this->bezeichnung).', '. ' ects='.$this->db_add_param($this->ects).', '. - ' gueltigvon='.$this->db_add_param($this->gueltigvon).', '. - ' gueltigbis='.$this->db_add_param($this->gueltigbis).', '. - ' studiengangbezeichnung='.$this->db_add_param($this->studiengangbezeichnung).', '. - ' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '. - ' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','. - ' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '. + ' gueltigvon='.$this->db_add_param($this->gueltigvon).', '. + ' gueltigbis='.$this->db_add_param($this->gueltigbis).', '. + ' studiengangbezeichnung='.$this->db_add_param($this->studiengangbezeichnung).', '. + ' studiengangbezeichnung_englisch='.$this->db_add_param($this->studiengangbezeichnung_englisch).', '. + ' studiengangkurzbzlang='.$this->db_add_param($this->studiengangkurzbzlang).','. + ' akadgrad_id='.$this->db_add_param($this->akadgrad_id, FHC_INTEGER).', '. ' standort_id='.$this->db_add_param($this->standort_id, FHC_INTEGER).', '. ' status_kurzbz='.$this->db_add_param($this->status_kurzbz).', '. - ' updateamum= now(), '. - ' updatevon='.$this->db_add_param($this->updatevon).' '. - ' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';'; + ' updateamum= now(), '. + ' updatevon='.$this->db_add_param($this->updatevon).' '. + ' WHERE studienordnung_id='.$this->db_add_param($this->studienordnung_id, FHC_INTEGER, false).';'; } if($this->db_query($qry)) @@ -829,61 +829,100 @@ class studienordnung extends basis_db return true; } + /** + * Laedt die Studienordnungen eines Studiengangs inklusive Status + * @param $studiengang_kz Kennzahl des Studiengangs + * @param $status_kurzbz Status + * @return boolean true wenn ok, false im Fehlerfall + */ public function loadStudienordnungWithStatus($studiengang_kz, $status_kurzbz) { - $qry = "SELECT sto.*, s.bezeichnung as status_bezeichnung " - . "FROM lehre.tbl_studienordnung sto " - . "JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) " - . "WHERE status_kurzbz=" . $this->db_add_param($status_kurzbz, FHC_STRING) . "" - . " AND studiengang_kz=" . $this->db_add_param($studiengang_kz, FHC_INTEGER) . ";"; + $qry = "SELECT sto.*, s.bezeichnung as status_bezeichnung " + . "FROM lehre.tbl_studienordnung sto " + . "JOIN lehre.tbl_studienordnungstatus s USING(status_kurzbz) " + . "WHERE status_kurzbz=" . $this->db_add_param($status_kurzbz, FHC_STRING) . "" + . " AND studiengang_kz=" . $this->db_add_param($studiengang_kz, FHC_INTEGER) . ";"; - if (!$this->db_query($qry)) - { - $this->errormsg = 'Fehler bei einer Datenbankabfrage'; - return false; + if (!$this->db_query($qry)) + { + $this->errormsg = 'Fehler bei einer Datenbankabfrage'; + return false; + } + + while ($row = $this->db_fetch_object()) + { + $obj = new studienordnung(); + + $obj->studienordnung_id = $row->studienordnung_id; + $obj->studiengang_kz = $row->studiengang_kz; + $obj->version = $row->version; + $obj->bezeichnung = $row->bezeichnung; + $obj->ects = $row->ects; + $obj->gueltigvon = $row->gueltigvon; + $obj->gueltigbis = $row->gueltigbis; + $obj->studiengangbezeichnung = $row->studiengangbezeichnung; + $obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch; + $obj->studiengangkurzbzlang = $row->studiengangkurzbzlang; + $obj->akadgrad_id = $row->akadgrad_id; + $obj->status_kurzbz = $row->status_kurzbz; + $obj->status_bezeichnung = $row->status_bezeichnung; + $obj->begruendung = json_decode($row->begruendung); + $obj->studiengangsart = $row->studiengangsart; + $obj->standort_id = $row->standort_id; + $obj->updateamum = $row->updateamum; + $obj->updatevon = $row->updatevon; + $obj->insertamum = $row->insertamum; + $obj->insertvon = $row->insertvon; + $obj->new = false; + $this->result[] = $obj; + } + return true; } - while ($row = $this->db_fetch_object()) + /** + * Aendert den Status einer Studienordnung + * @param $studienordnung_id ID der Studienordnung + * @param $status_kurzbz Kurzbezeichnung des Status + * @return boolean true wenn erfolgreich, false im Fehlerfall + */ + public function changeState($studienordnung_id, $status_kurzbz) { - $obj = new studienordnung(); + $qry = "UPDATE lehre.tbl_studienordnung SET status_kurzbz=" . $this->db_add_param($status_kurzbz) + . " WHERE studienordnung_id=" . $this->db_add_param($studienordnung_id) . ";"; - $obj->studienordnung_id = $row->studienordnung_id; - $obj->studiengang_kz = $row->studiengang_kz; - $obj->version = $row->version; - $obj->bezeichnung = $row->bezeichnung; - $obj->ects = $row->ects; - $obj->gueltigvon = $row->gueltigvon; - $obj->gueltigbis = $row->gueltigbis; - $obj->studiengangbezeichnung = $row->studiengangbezeichnung; - $obj->studiengangbezeichnung_englisch = $row->studiengangbezeichnung_englisch; - $obj->studiengangkurzbzlang = $row->studiengangkurzbzlang; - $obj->akadgrad_id = $row->akadgrad_id; - $obj->status_kurzbz = $row->status_kurzbz; - $obj->status_bezeichnung = $row->status_bezeichnung; - $obj->begruendung = json_decode($row->begruendung); - $obj->studiengangsart = $row->studiengangsart; - $obj->standort_id = $row->standort_id; - $obj->updateamum = $row->updateamum; - $obj->updatevon = $row->updatevon; - $obj->insertamum = $row->insertamum; - $obj->insertvon = $row->insertvon; - $obj->new = false; - $this->result[] = $obj; + if (!$this->db_query($qry)) + { + $this->errormsg = "Status konnte nicht geändert werden."; + return false; + } + return true; } - return true; - } - public function changeState($studienordnung_id, $status_kurzbz) - { - $qry = "UPDATE lehre.tbl_studienordnung SET status_kurzbz=" . $this->db_add_param($status_kurzbz) - . " WHERE studienordnung_id=" . $this->db_add_param($studienordnung_id) . ";"; - - if (!$this->db_query($qry)) + /** + * Laedt alle vorhandenen Studienordnungsstatus Einträge + * @return boolean true wenn ok, false im Fehlerfall + */ + public function getStatus() { - $this->errormsg = "Status konnte nicht geändert werden."; - return false; + $qry = "SELECT * FROM lehre.tbl_studienordnungstatus order by reihenfolge"; + + if($result = $this->db_query($qry)) + { + while($row = $this->db_fetch_object($result)) + { + $obj = new stdClass(); + $obj->status_kurzbz = $row->status_kurzbz; + $obj->bezeichnung = $row->bezeichnung; + $obj->reihenfolge = $row->reihenfolge; + $this->result[] = $obj; + } + return true; + } + else + { + $this->errormsg = 'Fehler beim Laden der Daten'; + return false; + } } - return true; - } } ?> diff --git a/vilesci/lehre/saveStudienordnung.php b/vilesci/lehre/saveStudienordnung.php index d8fa1ecdd..dcf901528 100644 --- a/vilesci/lehre/saveStudienordnung.php +++ b/vilesci/lehre/saveStudienordnung.php @@ -1,22 +1,22 @@ */ @@ -51,7 +51,7 @@ for($i=0;$i<100;$i++) $parameter[]=null; else $parameter[]=$_REQUEST['parameter_'.$i]; - } + } else break; } @@ -100,13 +100,13 @@ if(mb_stristr($method,'save')) $studienordnung = new studienordnung(); if($studienordnung->isAktiv($loaddata["parameter_0"])) die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.'); - + } } } - - - + + + if(isset($loaddata['method'])) { if(!$wsrecht->isUserAuthorized($uid, $loaddata['method'])) @@ -158,7 +158,7 @@ elseif(mb_stristr($method,'delete')) $studienplan->loadStudienplanLehrveranstaltung($_REQUEST['parameter_0']); $studienordnung = new studienordnung(); $studienordnung->getStudienordnungFromStudienplan($studienplan->studienplan_id); - + if($studienordnung->isAktiv($studienordnung->studienordnung_id)) die('Sie haben keine Berechtigung fuer diesen Vorgang. Studienordnung ist aktiv.'); } diff --git a/vilesci/lehre/studienordnung.inc.php b/vilesci/lehre/studienordnung.inc.php index d89569b09..f8b9b779d 100644 --- a/vilesci/lehre/studienordnung.inc.php +++ b/vilesci/lehre/studienordnung.inc.php @@ -1,22 +1,22 @@ */ @@ -31,6 +31,7 @@ require_once('../../include/organisationsform.class.php'); require_once('../../include/sprache.class.php'); require_once('../../include/akadgrad.class.php'); require_once('../../include/lvregel.class.php'); +require_once('../../include/standort.class.php'); $uid = get_uid(); $db = new basis_db(); @@ -65,7 +66,7 @@ switch($method) } else $new=true; - + echo ' @@ -143,6 +144,44 @@ switch($method) echo ' + + + + + + + + + @@ -173,7 +212,7 @@ switch($method) } else $new=true; - + echo '
Status:
Standort +
@@ -244,6 +283,18 @@ switch($method) echo ' + + + + + + + + + + + + @@ -256,7 +307,7 @@ switch($method) $studienordnung_id = $_GET["studienordnung_id"]; // $studiensemester_kurzbz = isset($_GET["studiensemester_kurzbz"]) ? $_GET["studiensemester_kurzbz"] : ""; // $semester = isset($_GET["semester"]) ? $_GET["semester"] : ""; - + $studienordnung = new studienordnung(); $studienordnung->loadStudienordnung($studienordnung_id); @@ -268,12 +319,12 @@ switch($method) $obj->ausbildungssemester = $studienordnung->loadAusbildungsemesterFromStudiensemester($studienordnung_id, $studienSem); $ausbildungssemesterResult[] = $obj; } - + $studiengang = new studiengang(); $studiengang->load($studienordnung->studiengang_kz); // $ausbildungssemester = $studiengang->getSemesterFromStudiengang($studienordnung->studiengang_kz) $ausbildungssemester = $studiengang->max_semester; - + $studiensemester = new studiensemester(); $studiensemester->getAll(); echo ' @@ -290,7 +341,7 @@ switch($method) echo ''; - + if($studienSemesterResult != null) { foreach($ausbildungssemesterResult as $row) diff --git a/vilesci/lehre/studienordnung.js b/vilesci/lehre/studienordnung.js index d40ee817a..39c28dcd0 100755 --- a/vilesci/lehre/studienordnung.js +++ b/vilesci/lehre/studienordnung.js @@ -1264,16 +1264,18 @@ function deleteLehrveranstaltungFromStudienplan(lehrveranstaltung_studienplan_id */ function saveStudienordnung() { - bezeichnung = $("#bezeichnung").val(); - version = $("#version").val(); - gueltigvon = $("#gueltigvon option:selected").val(); - gueltigbis = $("#gueltigbis option:selected").val(); - ects = $("#ects").val(); - studiengangbezeichnung = $("#studiengangbezeichnung").val(); - studiengangbezeichnungenglisch = $("#studiengangbezeichnungenglisch").val(); - studiengangkurzbzlang = $("#studiengangkurzbzlang").val(); - mystudienordnung_id = $("#studienordnung_id").val(); - akadgrad_id = $("#akadgrad_id").val(); + var bezeichnung = $("#bezeichnung").val(); + var version = $("#version").val(); + var gueltigvon = $("#gueltigvon option:selected").val(); + var gueltigbis = $("#gueltigbis option:selected").val(); + var ects = $("#ects").val(); + var studiengangbezeichnung = $("#studiengangbezeichnung").val(); + var studiengangbezeichnungenglisch = $("#studiengangbezeichnungenglisch").val(); + var studiengangkurzbzlang = $("#studiengangkurzbzlang").val(); + var mystudienordnung_id = $("#studienordnung_id").val(); + var akadgrad_id = $("#akadgrad_id").val(); + var status_kurzbz = $("#studienordnung_status").val(); + var standort_id = $("#standort_id").val(); if(mystudienordnung_id!='') { @@ -1295,7 +1297,9 @@ function saveStudienordnung() "studiengangbezeichnung_englisch":studiengangbezeichnungenglisch, "studiengangkurzbzlang":studiengangkurzbzlang, "akadgrad_id":akadgrad_id, - "studiengang_kz":global_studiengang_kz + "studiengang_kz":global_studiengang_kz, + "status_kurzbz":status_kurzbz, + "standort_id":standort_id }; @@ -1339,6 +1343,9 @@ function saveStudienplan() testtool_sprachwahl = $("#testtool_sprachwahl").prop("checked"); aktiv = $("#aktiv").prop("checked"); var studienplan_id = $("#studienplan_id").val(); + var pflicht_sws = $("#pflicht_sws").val(); + var pflicht_lvs = $("#pflicht_lvs").val(); + var ects_stpl = $("#ects_stpl").val(); if(studienplan_id!='') { @@ -1359,7 +1366,10 @@ function saveStudienplan() "semesterwochen":semesterwochen, "testtool_sprachwahl":testtool_sprachwahl, "aktiv":aktiv, - "studienordnung_id":global_studienordnung_id + "studienordnung_id":global_studienordnung_id, + "ects_stpl":ects_stpl, + "pflicht_sws":pflicht_sws, + "pflicht_lvs":pflicht_lvs };
ECTS gesamt
Pflicht SWS
Pflicht LVS