mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-01 12:19:28 +00:00
Direkte Zuordnung von Studierenden zu Lehreinheiten
* Direkte Zuordnung im FAS * neues Boolean markiert direkte Gruppen * Gruppen werden nicht vorgerückt * Direkte Gruppen werden nicht bei der Lehreinheit und im Lehrverbandsbaum angezeigt
This commit is contained in:
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+713
-698
File diff suppressed because it is too large
Load Diff
+468
-422
@@ -1,422 +1,468 @@
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class lehreinheitgruppe extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $lehreinheitgruppe = array(); // lehreinheitgruppe Objekt
|
||||
|
||||
//Tabellenspalten
|
||||
public $lehreinheitgruppe_id; //integer
|
||||
public $lehreinheit_id; // integer
|
||||
public $studiengang_kz; // integer
|
||||
public $semester; // smalint
|
||||
public $verband; // char(1)
|
||||
public $gruppe; // char(1)
|
||||
public $gruppe_kurzbz; // varchar(16)
|
||||
public $ext_id; // bigint
|
||||
public $updateamum; // timestamp
|
||||
public $updatevon; // varchar(16)
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(16)
|
||||
|
||||
/**
|
||||
* Konstruktor - Laedt optional eine LEGruppe
|
||||
* @param $lehreinheitgruppe_id
|
||||
*/
|
||||
public function __construct($lehreinheitgruppe_id=null)
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if(!is_null($lehreinheitgruppe_id))
|
||||
$this->load($lehreinheitgruppe_id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die LEGruppe
|
||||
* @param lehreinheit_id
|
||||
*/
|
||||
function load($lehreinheitgruppe_id)
|
||||
{
|
||||
if(!is_numeric($lehreinheitgruppe_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheitgruppe_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$this->db_add_param($lehreinheitgruppe_id, FHC_INTEGER).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$this->lehreinheitgruppe_id = $row->lehreinheitgruppe_id;
|
||||
$this->lehreinheit_id = $row->lehreinheit_id;
|
||||
$this->studiengang_kz = $row->studiengang_kz;
|
||||
$this->semester = $row->semester;
|
||||
$this->verband = $row->verband;
|
||||
$this->gruppe = $row->gruppe;
|
||||
$this->gruppe_kurzbz = $row->gruppe_kurzbz;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->ext_id = $row->ext_id;
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Es existiert kein Eintrag mit dieser ID';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft die Variablen vor dem Speichern
|
||||
* auf Gueltigkeit.
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
protected function validate()
|
||||
{
|
||||
if(!is_numeric($this->lehreinheit_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheit_id muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if(!is_numeric($this->studiengang_kz))
|
||||
{
|
||||
$this->errormsg = 'Studiengang_kz muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if($this->semester!='' && !is_numeric($this->semester))
|
||||
{
|
||||
$this->errormsg = 'Semester muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->verband)>1)
|
||||
{
|
||||
$this->verband = 'Verband darf nicht laenger als 1 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->gruppe)>1)
|
||||
{
|
||||
$this->gruppe = 'Gruppe darf nicht laenger als 1 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->gruppe_kurzbz)>32)
|
||||
{
|
||||
$this->errormsg = 'Gruppe_kurzbz darf nicht laenger als 32 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert GruppeLE in die Datenbank
|
||||
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz
|
||||
* angelegt, ansonsten der Datensatz upgedated
|
||||
* @return true wenn erfolgreich, false im Fehlerfall
|
||||
*/
|
||||
public function save($new=null)
|
||||
{
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
//Variablen auf Gueltigkeit pruefen
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($new)
|
||||
{
|
||||
$qry = 'INSERT INTO lehre.tbl_lehreinheitgruppe (lehreinheit_id, studiengang_kz, semester, verband, gruppe, gruppe_kurzbz, insertamum, insertvon)
|
||||
VALUES('.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->studiengang_kz, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->semester, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->verband).','.
|
||||
$this->db_add_param($this->gruppe).','.
|
||||
$this->db_add_param($this->gruppe_kurzbz).','.
|
||||
$this->db_add_param($this->insertamum).','.
|
||||
$this->db_add_param($this->insertvon).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = 'UPDATE lehre.tbl_lehreinheitgruppe SET'.
|
||||
' lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).','.
|
||||
' studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER).','.
|
||||
' semester='.$this->db_add_param($this->semester, FHC_INTEGER).','.
|
||||
' verband='.$this->db_add_param($this->verband).','.
|
||||
' gruppe='.$this->db_add_param($this->gruppe).','.
|
||||
' gruppe_kurzbz='.$this->db_add_param($this->gruppe_kurzbz).','.
|
||||
' updateamum='.$this->db_add_param($this->updateamum).','.
|
||||
' updatevon='.$this->db_add_param($this->updatevon).
|
||||
" WHERE lehreinheitgruppe_id=".$this->db_add_param($this->lehreinheitgruppe_id, FHC_INTEGER).";";
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
//Log schreiben
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der GruppeLE';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sieht nach ob Gruppe schon zu dieser Lehreinheit
|
||||
* zugeordnet ist.
|
||||
* @param lehreinheit_id
|
||||
* studiengang_kz
|
||||
* semester
|
||||
* verband
|
||||
* gruppe
|
||||
* gruppe_kurzbz
|
||||
* @return true wenn vorhanden, false wenn nicht
|
||||
*/
|
||||
public function exists($lehreinheit_id, $studiengang_kz, $semester, $verband, $gruppe, $gruppe_kurzbz)
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$this->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
if($gruppe_kurzbz!='')
|
||||
{
|
||||
$qry .= " AND gruppe_kurzbz=".$this->db_add_param($gruppe_kurzbz);
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry .= " AND semester=".$this->db_add_param($semester, FHC_INTEGER);
|
||||
if($verband!='')
|
||||
$qry .= " AND verband=".$this->db_add_param($verband);
|
||||
if($gruppe!='')
|
||||
$qry .= " AND gruppe=".$this->db_add_param($gruppe);
|
||||
}
|
||||
$qry.=';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($this->db_num_rows()>0)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Lesen der Lehreinheitgruppen';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert alle Gruppenzuordnungen zu einer
|
||||
* Lehreinheit.
|
||||
* @param lehreinheit_id Lehreinheit zu der
|
||||
* die Gruppen geladen werden sollen
|
||||
* @return true wenn ok, false im fehlerfall
|
||||
*/
|
||||
public function getLehreinheitgruppe($lehreinheit_id)
|
||||
{
|
||||
if(!is_numeric($lehreinheit_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheit_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$this->db_add_param($lehreinheit_id, FHC_INTEGER).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$leg_obj = new lehreinheitgruppe();
|
||||
|
||||
$leg_obj->lehreinheitgruppe_id = $row->lehreinheitgruppe_id;
|
||||
$leg_obj->lehreinheit_id = $row->lehreinheit_id;
|
||||
$leg_obj->studiengang_kz = $row->studiengang_kz;
|
||||
$leg_obj->semester = $row->semester;
|
||||
$leg_obj->verband = $row->verband;
|
||||
$leg_obj->gruppe = $row->gruppe;
|
||||
$leg_obj->gruppe_kurzbz = $row->gruppe_kurzbz;
|
||||
$leg_obj->updateamum = $row->updateamum;
|
||||
$leg_obj->updatevon = $row->updatevon;
|
||||
$leg_obj->insertamum = $row->insertamum;
|
||||
$leg_obj->insertvon = $row->insertvon;
|
||||
$leg_obj->ext_id = $row->ext_id;
|
||||
|
||||
$this->lehreinheitgruppe[] = $leg_obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loescht die Zuornung Gruppe-Lehreinheit
|
||||
* @param lehreinheigruppe_id ID des zu loeschenden Datensatzes
|
||||
* @return true wenn ok, false im fehlerfall
|
||||
*/
|
||||
public function delete($lehreinheitgruppe_id)
|
||||
{
|
||||
if(!is_numeric($lehreinheitgruppe_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheitgruppe_id muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
$qry_del = "DELETE FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$this->db_add_param($lehreinheitgruppe_id, FHC_INTEGER).';';
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$this->db_add_param($lehreinheitgruppe_id, FHC_INTEGER).';';
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$sql_undo = "INSERT INTO lehre.tbl_lehreinheitgruppe ".
|
||||
"(lehreinheitgruppe_id, lehreinheit_id, studiengang_kz, semester, ".
|
||||
"verband, gruppe, gruppe_kurzbz, updateamum, updatevon, insertamum, insertvon) ".
|
||||
"VALUES(".$this->db_add_param($row->lehreinheitgruppe_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->lehreinheit_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->studiengang_kz, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->semester, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->verband).','.
|
||||
$this->db_add_param($row->gruppe).','.
|
||||
$this->db_add_param($row->gruppe_kurzbz).','.
|
||||
$this->db_add_param($row->updateamum).','.
|
||||
$this->db_add_param($row->updatevon).','.
|
||||
$this->db_add_param($row->insertamum).','.
|
||||
$this->db_add_param($row->insertvon).');';
|
||||
|
||||
$log = new log();
|
||||
$log->sql = $qry_del;
|
||||
$log->sqlundo = $sql_undo;
|
||||
$log->mitarbeiter_uid = get_uid();
|
||||
if($row->gruppe_kurzbz!='')
|
||||
$grp = $row->gruppe_kurzbz;
|
||||
else
|
||||
{
|
||||
$qry_stg = "SELECT UPPER(typ::varchar(1) || kurzbz) as kuerzel FROM public.tbl_studiengang WHERE studiengang_kz=".$this->db_add_param($row->studiengang_kz, FHC_INTEGER).';';
|
||||
$this->db_query($qry_stg);
|
||||
$row_stg = $this->db_fetch_object();
|
||||
$grp = $row_stg->kuerzel.$row->semester.$row->verband.$row->gruppe;
|
||||
}
|
||||
$log->beschreibung = "Gruppenzuteilung loeschen $grp - $row->lehreinheit_id";
|
||||
$this->db_query('BEGIN;');
|
||||
|
||||
if($log->save(true))
|
||||
{
|
||||
if($this->db_query($qry_del))
|
||||
{
|
||||
$this->db_query('COMMIT;');
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->db_query('ROLLBACK;');
|
||||
$this->errormsg = 'Fehler beim Loeschen';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->db_query('ROLLBACK;');
|
||||
$this->errormsg = 'Fehler beim Speichern des Log-Eintrages';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Datensatz wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Lesen aus der Datenbank';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob die Gruppe schon dieser Lehreinheit zugeordnet ist
|
||||
*/
|
||||
public function checkVorhanden()
|
||||
{
|
||||
$qry = "SELECT
|
||||
count(*) as anzahl
|
||||
FROM
|
||||
lehre.tbl_lehreinheitgruppe
|
||||
WHERE
|
||||
lehreinheit_id=".$this->db_add_param($this->lehreinheit_id, FHC_INTEGER)." AND
|
||||
studiengang_kz=".$this->db_add_param($this->studiengang_kz, FHC_INTEGER);
|
||||
if($this->semester!='')
|
||||
$qry.=" AND semester=".$this->db_add_param($this->semester, FHC_INTEGER);
|
||||
else
|
||||
$qry.=" AND (semester='' OR semester is null)";
|
||||
|
||||
if($this->verband!='')
|
||||
$qry.=" AND trim(verband)=".$this->db_add_param($this->verband);
|
||||
else
|
||||
$qry.=" AND (trim(verband)='' OR verband is null)";
|
||||
|
||||
if($this->gruppe!='')
|
||||
$qry.=" AND trim(gruppe)=".$this->db_add_param($this->gruppe);
|
||||
else
|
||||
$qry.=" AND (trim(gruppe)='' OR gruppe is null)";
|
||||
|
||||
if($this->gruppe_kurzbz!='')
|
||||
$qry.=" AND trim(gruppe_kurzbz)=".$this->db_add_param($this->gruppe_kurzbz);
|
||||
else
|
||||
$qry.= " AND (trim(gruppe_kurzbz)='' OR gruppe_kurzbz is null)";
|
||||
|
||||
$qry.=';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
if($row->anzahl>0)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Interner Fehler';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler bei einer Abfrage';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<?php
|
||||
/* Copyright (C) 2006 Technikum-Wien
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Christian Paminger <christian.paminger@technikum-wien.at>,
|
||||
* Andreas Oesterreicher <andreas.oesterreicher@technikum-wien.at> and
|
||||
* Rudolf Hangl <rudolf.hangl@technikum-wien.at>.
|
||||
*/
|
||||
require_once(dirname(__FILE__).'/basis_db.class.php');
|
||||
|
||||
class lehreinheitgruppe extends basis_db
|
||||
{
|
||||
public $new; // boolean
|
||||
public $lehreinheitgruppe = array(); // lehreinheitgruppe Objekt
|
||||
|
||||
//Tabellenspalten
|
||||
public $lehreinheitgruppe_id; //integer
|
||||
public $lehreinheit_id; // integer
|
||||
public $studiengang_kz; // integer
|
||||
public $semester; // smalint
|
||||
public $verband; // char(1)
|
||||
public $gruppe; // char(1)
|
||||
public $gruppe_kurzbz; // varchar(16)
|
||||
public $ext_id; // bigint
|
||||
public $updateamum; // timestamp
|
||||
public $updatevon; // varchar(16)
|
||||
public $insertamum; // timestamp
|
||||
public $insertvon; // varchar(16)
|
||||
|
||||
/**
|
||||
* Konstruktor - Laedt optional eine LEGruppe
|
||||
* @param $lehreinheitgruppe_id
|
||||
*/
|
||||
public function __construct($lehreinheitgruppe_id=null)
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
if(!is_null($lehreinheitgruppe_id))
|
||||
$this->load($lehreinheitgruppe_id);
|
||||
}
|
||||
|
||||
/**
|
||||
* Laedt die LEGruppe
|
||||
* @param lehreinheit_id
|
||||
*/
|
||||
function load($lehreinheitgruppe_id)
|
||||
{
|
||||
if(!is_numeric($lehreinheitgruppe_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheitgruppe_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$this->db_add_param($lehreinheitgruppe_id, FHC_INTEGER).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$this->lehreinheitgruppe_id = $row->lehreinheitgruppe_id;
|
||||
$this->lehreinheit_id = $row->lehreinheit_id;
|
||||
$this->studiengang_kz = $row->studiengang_kz;
|
||||
$this->semester = $row->semester;
|
||||
$this->verband = $row->verband;
|
||||
$this->gruppe = $row->gruppe;
|
||||
$this->gruppe_kurzbz = $row->gruppe_kurzbz;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->ext_id = $row->ext_id;
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Es existiert kein Eintrag mit dieser ID';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft die Variablen vor dem Speichern
|
||||
* auf Gueltigkeit.
|
||||
* @return true wenn ok, false im Fehlerfall
|
||||
*/
|
||||
protected function validate()
|
||||
{
|
||||
if(!is_numeric($this->lehreinheit_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheit_id muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if(!is_numeric($this->studiengang_kz))
|
||||
{
|
||||
$this->errormsg = 'Studiengang_kz muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if($this->semester!='' && !is_numeric($this->semester))
|
||||
{
|
||||
$this->errormsg = 'Semester muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->verband)>1)
|
||||
{
|
||||
$this->verband = 'Verband darf nicht laenger als 1 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->gruppe)>1)
|
||||
{
|
||||
$this->gruppe = 'Gruppe darf nicht laenger als 1 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
if(mb_strlen($this->gruppe_kurzbz)>32)
|
||||
{
|
||||
$this->errormsg = 'Gruppe_kurzbz darf nicht laenger als 32 Zeichen sein';
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Speichert GruppeLE in die Datenbank
|
||||
* Wenn $new auf true gesetzt ist wird ein neuer Datensatz
|
||||
* angelegt, ansonsten der Datensatz upgedated
|
||||
* @return true wenn erfolgreich, false im Fehlerfall
|
||||
*/
|
||||
public function save($new=null)
|
||||
{
|
||||
if(is_null($new))
|
||||
$new = $this->new;
|
||||
|
||||
//Variablen auf Gueltigkeit pruefen
|
||||
if(!$this->validate())
|
||||
return false;
|
||||
|
||||
if($new)
|
||||
{
|
||||
$qry = 'INSERT INTO lehre.tbl_lehreinheitgruppe (lehreinheit_id, studiengang_kz, semester, verband, gruppe, gruppe_kurzbz, insertamum, insertvon)
|
||||
VALUES('.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->studiengang_kz, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->semester, FHC_INTEGER).','.
|
||||
$this->db_add_param($this->verband).','.
|
||||
$this->db_add_param($this->gruppe).','.
|
||||
$this->db_add_param($this->gruppe_kurzbz).','.
|
||||
$this->db_add_param($this->insertamum).','.
|
||||
$this->db_add_param($this->insertvon).');';
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = 'UPDATE lehre.tbl_lehreinheitgruppe SET'.
|
||||
' lehreinheit_id='.$this->db_add_param($this->lehreinheit_id, FHC_INTEGER).','.
|
||||
' studiengang_kz='.$this->db_add_param($this->studiengang_kz, FHC_INTEGER).','.
|
||||
' semester='.$this->db_add_param($this->semester, FHC_INTEGER).','.
|
||||
' verband='.$this->db_add_param($this->verband).','.
|
||||
' gruppe='.$this->db_add_param($this->gruppe).','.
|
||||
' gruppe_kurzbz='.$this->db_add_param($this->gruppe_kurzbz).','.
|
||||
' updateamum='.$this->db_add_param($this->updateamum).','.
|
||||
' updatevon='.$this->db_add_param($this->updatevon).
|
||||
" WHERE lehreinheitgruppe_id=".$this->db_add_param($this->lehreinheitgruppe_id, FHC_INTEGER).";";
|
||||
}
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
//Log schreiben
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Speichern der GruppeLE';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sieht nach ob Gruppe schon zu dieser Lehreinheit
|
||||
* zugeordnet ist.
|
||||
* @param lehreinheit_id
|
||||
* studiengang_kz
|
||||
* semester
|
||||
* verband
|
||||
* gruppe
|
||||
* gruppe_kurzbz
|
||||
* @return true wenn vorhanden, false wenn nicht
|
||||
*/
|
||||
public function exists($lehreinheit_id, $studiengang_kz, $semester, $verband, $gruppe, $gruppe_kurzbz)
|
||||
{
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$this->db_add_param($lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
if($gruppe_kurzbz!='')
|
||||
{
|
||||
$qry .= " AND gruppe_kurzbz=".$this->db_add_param($gruppe_kurzbz);
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry .= " AND semester=".$this->db_add_param($semester, FHC_INTEGER);
|
||||
if($verband!='')
|
||||
$qry .= " AND verband=".$this->db_add_param($verband);
|
||||
if($gruppe!='')
|
||||
$qry .= " AND gruppe=".$this->db_add_param($gruppe);
|
||||
}
|
||||
$qry.=';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($this->db_num_rows()>0)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Lesen der Lehreinheitgruppen';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Liefert alle Gruppenzuordnungen zu einer
|
||||
* Lehreinheit.
|
||||
* @param lehreinheit_id Lehreinheit zu der
|
||||
* die Gruppen geladen werden sollen
|
||||
* @return true wenn ok, false im fehlerfall
|
||||
*/
|
||||
public function getLehreinheitgruppe($lehreinheit_id)
|
||||
{
|
||||
if(!is_numeric($lehreinheit_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheit_id ist ungueltig';
|
||||
return false;
|
||||
}
|
||||
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheit_id=".$this->db_add_param($lehreinheit_id, FHC_INTEGER).';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
while($row = $this->db_fetch_object())
|
||||
{
|
||||
$leg_obj = new lehreinheitgruppe();
|
||||
|
||||
$leg_obj->lehreinheitgruppe_id = $row->lehreinheitgruppe_id;
|
||||
$leg_obj->lehreinheit_id = $row->lehreinheit_id;
|
||||
$leg_obj->studiengang_kz = $row->studiengang_kz;
|
||||
$leg_obj->semester = $row->semester;
|
||||
$leg_obj->verband = $row->verband;
|
||||
$leg_obj->gruppe = $row->gruppe;
|
||||
$leg_obj->gruppe_kurzbz = $row->gruppe_kurzbz;
|
||||
$leg_obj->updateamum = $row->updateamum;
|
||||
$leg_obj->updatevon = $row->updatevon;
|
||||
$leg_obj->insertamum = $row->insertamum;
|
||||
$leg_obj->insertvon = $row->insertvon;
|
||||
$leg_obj->ext_id = $row->ext_id;
|
||||
|
||||
$this->lehreinheitgruppe[] = $leg_obj;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Loescht die Zuornung Gruppe-Lehreinheit
|
||||
* @param lehreinheigruppe_id ID des zu loeschenden Datensatzes
|
||||
* @return true wenn ok, false im fehlerfall
|
||||
*/
|
||||
public function delete($lehreinheitgruppe_id)
|
||||
{
|
||||
if(!is_numeric($lehreinheitgruppe_id))
|
||||
{
|
||||
$this->errormsg = 'Lehreinheitgruppe_id muss eine gueltige Zahl sein';
|
||||
return false;
|
||||
}
|
||||
$qry_del = "DELETE FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$this->db_add_param($lehreinheitgruppe_id, FHC_INTEGER).';';
|
||||
$qry = "SELECT * FROM lehre.tbl_lehreinheitgruppe WHERE lehreinheitgruppe_id=".$this->db_add_param($lehreinheitgruppe_id, FHC_INTEGER).';';
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
$sql_undo = "INSERT INTO lehre.tbl_lehreinheitgruppe ".
|
||||
"(lehreinheitgruppe_id, lehreinheit_id, studiengang_kz, semester, ".
|
||||
"verband, gruppe, gruppe_kurzbz, updateamum, updatevon, insertamum, insertvon) ".
|
||||
"VALUES(".$this->db_add_param($row->lehreinheitgruppe_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->lehreinheit_id, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->studiengang_kz, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->semester, FHC_INTEGER).','.
|
||||
$this->db_add_param($row->verband).','.
|
||||
$this->db_add_param($row->gruppe).','.
|
||||
$this->db_add_param($row->gruppe_kurzbz).','.
|
||||
$this->db_add_param($row->updateamum).','.
|
||||
$this->db_add_param($row->updatevon).','.
|
||||
$this->db_add_param($row->insertamum).','.
|
||||
$this->db_add_param($row->insertvon).');';
|
||||
|
||||
$log = new log();
|
||||
$log->sql = $qry_del;
|
||||
$log->sqlundo = $sql_undo;
|
||||
$log->mitarbeiter_uid = get_uid();
|
||||
if($row->gruppe_kurzbz!='')
|
||||
$grp = $row->gruppe_kurzbz;
|
||||
else
|
||||
{
|
||||
$qry_stg = "SELECT UPPER(typ::varchar(1) || kurzbz) as kuerzel FROM public.tbl_studiengang WHERE studiengang_kz=".$this->db_add_param($row->studiengang_kz, FHC_INTEGER).';';
|
||||
$this->db_query($qry_stg);
|
||||
$row_stg = $this->db_fetch_object();
|
||||
$grp = $row_stg->kuerzel.$row->semester.$row->verband.$row->gruppe;
|
||||
}
|
||||
$log->beschreibung = "Gruppenzuteilung loeschen $grp - $row->lehreinheit_id";
|
||||
$this->db_query('BEGIN;');
|
||||
|
||||
if($log->save(true))
|
||||
{
|
||||
if($this->db_query($qry_del))
|
||||
{
|
||||
$this->db_query('COMMIT;');
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->db_query('ROLLBACK;');
|
||||
$this->errormsg = 'Fehler beim Loeschen';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->db_query('ROLLBACK;');
|
||||
$this->errormsg = 'Fehler beim Speichern des Log-Eintrages';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Datensatz wurde nicht gefunden';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Lesen aus der Datenbank';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob die Gruppe schon dieser Lehreinheit zugeordnet ist
|
||||
*/
|
||||
public function checkVorhanden()
|
||||
{
|
||||
$qry = "SELECT
|
||||
count(*) as anzahl
|
||||
FROM
|
||||
lehre.tbl_lehreinheitgruppe
|
||||
WHERE
|
||||
lehreinheit_id=".$this->db_add_param($this->lehreinheit_id, FHC_INTEGER)." AND
|
||||
studiengang_kz=".$this->db_add_param($this->studiengang_kz, FHC_INTEGER);
|
||||
if($this->semester!='')
|
||||
$qry.=" AND semester=".$this->db_add_param($this->semester, FHC_INTEGER);
|
||||
else
|
||||
$qry.=" AND (semester='' OR semester is null)";
|
||||
|
||||
if($this->verband!='')
|
||||
$qry.=" AND trim(verband)=".$this->db_add_param($this->verband);
|
||||
else
|
||||
$qry.=" AND (trim(verband)='' OR verband is null)";
|
||||
|
||||
if($this->gruppe!='')
|
||||
$qry.=" AND trim(gruppe)=".$this->db_add_param($this->gruppe);
|
||||
else
|
||||
$qry.=" AND (trim(gruppe)='' OR gruppe is null)";
|
||||
|
||||
if($this->gruppe_kurzbz!='')
|
||||
$qry.=" AND trim(gruppe_kurzbz)=".$this->db_add_param($this->gruppe_kurzbz);
|
||||
else
|
||||
$qry.= " AND (trim(gruppe_kurzbz)='' OR gruppe_kurzbz is null)";
|
||||
|
||||
$qry.=';';
|
||||
|
||||
if($this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object())
|
||||
{
|
||||
if($row->anzahl>0)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Interner Fehler';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg='Fehler bei einer Abfrage';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prueft ob zu der Lehreinheit bereits eine direkte Gruppe zugeordnet ist
|
||||
* @param $lehreinheit_id ID der lehreinheit
|
||||
* @return true und objekt mit Gruppe falls vorhanden oder false im fehlerfall
|
||||
*/
|
||||
public function getDirectGroup($lehreinheit_id)
|
||||
{
|
||||
$qry = "
|
||||
SELECT
|
||||
tbl_lehreinheitgruppe.*
|
||||
FROM
|
||||
lehre.tbl_lehreinheitgruppe
|
||||
JOIN public.tbl_gruppe USING(gruppe_kurzbz)
|
||||
WHERE
|
||||
tbl_gruppe.direktinskription
|
||||
AND tbl_lehreinheitgruppe.lehreinheit_id=".$this->db_add_param($lehreinheit_id);
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($row = $this->db_fetch_object($result))
|
||||
{
|
||||
$this->lehreinheitgruppe_id = $row->lehreinheitgruppe_id;
|
||||
$this->lehreinheit_id = $row->lehreinheit_id;
|
||||
$this->studiengang_kz = $row->studiengang_kz;
|
||||
$this->semester = $row->semester;
|
||||
$this->verband = $row->verband;
|
||||
$this->gruppe = $row->gruppe;
|
||||
$this->gruppe_kurzbz = $row->gruppe_kurzbz;
|
||||
$this->updateamum = $row->updateamum;
|
||||
$this->updatevon = $row->updatevon;
|
||||
$this->insertamum = $row->insertamum;
|
||||
$this->insertvon = $row->insertvon;
|
||||
$this->ext_id = $row->ext_id;
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->errormsg = 'Fehler beim Laden der Daten';
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
|
||||
@@ -619,7 +619,7 @@ class student extends benutzer
|
||||
nachname, vorname, vornamen, gebdatum, gebort, gebzeit, anmerkung, homepage, svnr,
|
||||
ersatzkennzeichen, familienstand, geschlecht, anzahlkinder, tbl_person.aktiv, kurzbeschreibung,
|
||||
tbl_benutzer.aktiv as bnaktiv, tbl_student.studiengang_kz, tbl_student.semester, tbl_student.verband,
|
||||
tbl_student.gruppe, tbl_student.prestudent_id
|
||||
tbl_student.gruppe, tbl_student.prestudent_id, tbl_benutzer.uid
|
||||
FROM
|
||||
public.tbl_person
|
||||
JOIN public.tbl_benutzer USING(person_id)
|
||||
@@ -671,6 +671,7 @@ class student extends benutzer
|
||||
$l->verband = $row->verband;
|
||||
$l->gruppe = $row->gruppe;
|
||||
$l->prestudent_id = $row->prestudent_id;
|
||||
$l->uid = $row->uid;
|
||||
$this->result[]=$l;
|
||||
}
|
||||
}
|
||||
@@ -823,7 +824,7 @@ class student extends benutzer
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Checkt, ob ein Student schon BIS-Gemeldet wurde.
|
||||
*
|
||||
@@ -846,13 +847,13 @@ class student extends benutzer
|
||||
$datumNovemberVorjahr = date('Y', strtotime("-1 year")).'-11-15';
|
||||
$datumApril = date('Y').'-04-15';
|
||||
$datumNovember = date('Y').'-11-15';
|
||||
|
||||
|
||||
$timestampNovemberVorjahr = strtotime(date('Y', strtotime("-1 year")).'-11-15');
|
||||
$timestampApril = strtotime(date('Y').'-04-15');
|
||||
$timestampNovember = strtotime(date('Y').'-11-15');
|
||||
|
||||
$heute = time();
|
||||
|
||||
|
||||
if ($heute - $timestampNovemberVorjahr >= $heute - $timestampApril &&
|
||||
$heute - $timestampApril < 0)
|
||||
$datumLetzteMeldung = $datumNovemberVorjahr;
|
||||
@@ -861,7 +862,7 @@ class student extends benutzer
|
||||
$datumLetzteMeldung = $datumApril;
|
||||
else
|
||||
$datumLetzteMeldung = $datumNovember;
|
||||
|
||||
|
||||
if($result = $this->db_query($qry))
|
||||
{
|
||||
if($this->db_num_rows($result) > 0)
|
||||
@@ -871,7 +872,7 @@ class student extends benutzer
|
||||
// Wenn der Studentenstatus kleiner oder gleich dem Datum der letzten Meldung ist, wurde der Student gemeldet
|
||||
if (strtotime($row->datum) <= strtotime($datumLetzteMeldung))
|
||||
return true;
|
||||
else
|
||||
else
|
||||
return false;
|
||||
}
|
||||
else
|
||||
@@ -880,7 +881,7 @@ class student extends benutzer
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
return null;
|
||||
}
|
||||
else
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
<?php
|
||||
/* Copyright (C) 2019 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <oesi@technikum-wien.at>
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/rdf.class.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if(!$rechte->isBerechtigt('lehre/lehrveranstaltung'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$oRdf = new rdf('BENUTZER','http://www.technikum-wien.at/benutzer');
|
||||
|
||||
$filter = filter_input(INPUT_GET,'filter');
|
||||
|
||||
if (mb_strlen($filter) < 3)
|
||||
die('Filter muss mindestens 3 Zeichen lang sein');
|
||||
|
||||
$benutzer = new student();
|
||||
$benutzer->getTab($filter);
|
||||
|
||||
$studiengang = new studiengang();
|
||||
$studiengang->getAll(null, false);
|
||||
|
||||
$oRdf->sendHeader();
|
||||
$db = new basis_db();
|
||||
|
||||
$i=0;
|
||||
foreach($benutzer->result as $row)
|
||||
{
|
||||
if(isset($studiengang->kuerzel_arr[$row->studiengang_kz]))
|
||||
$stg = $studiengang->kuerzel_arr[$row->studiengang_kz];
|
||||
else
|
||||
$stg = '';
|
||||
|
||||
$i=$oRdf->newObjekt($i);
|
||||
$oRdf->obj[$i]->setAttribut('uid',$row->uid,true);
|
||||
$oRdf->obj[$i]->setAttribut('vorname',$row->vorname,true);
|
||||
$oRdf->obj[$i]->setAttribut('nachname',$row->nachname,true);
|
||||
$oRdf->obj[$i]->setAttribut('studiengang',$stg,true);
|
||||
$oRdf->obj[$i]->setAttribut('semester',$row->semester,true);
|
||||
$oRdf->addSequence($i);
|
||||
$i++;
|
||||
}
|
||||
$oRdf->sendRdfText();
|
||||
?>
|
||||
@@ -0,0 +1,76 @@
|
||||
<?php
|
||||
/* Copyright (C) 2019 fhcomplete.org
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation; either version 2 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.
|
||||
*
|
||||
* Authors: Andreas Oesterreicher <oesi@technikum-wien.at>
|
||||
*/
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/rdf.class.php');
|
||||
require_once('../include/basis_db.class.php');
|
||||
require_once('../include/functions.inc.php');
|
||||
require_once('../include/benutzerberechtigung.class.php');
|
||||
|
||||
$user = get_uid();
|
||||
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
if (!$rechte->isBerechtigt('lehre/lehrveranstaltung'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$datum_obj = new datum();
|
||||
|
||||
$oRdf = new rdf('LEHREINHEITDIREKT','http://www.technikum-wien.at/lehreinheitdirekt');
|
||||
|
||||
$lehreinheit_id = filter_input(INPUT_GET,'lehreinheit_id');
|
||||
|
||||
if ($lehreinheit_id == '' || !is_numeric($lehreinheit_id))
|
||||
{
|
||||
die('LehreinheitID ungueltig');
|
||||
}
|
||||
|
||||
$oRdf->sendHeader();
|
||||
$db = new basis_db();
|
||||
|
||||
$qry = "
|
||||
SELECT
|
||||
uid, vorname, nachname, gruppe_kurzbz
|
||||
FROM
|
||||
lehre.tbl_lehreinheitgruppe
|
||||
JOIN public.tbl_gruppe USING(gruppe_kurzbz)
|
||||
JOIN public.tbl_benutzergruppe USING(gruppe_kurzbz)
|
||||
JOIN public.tbl_benutzer USING(uid)
|
||||
JOIN public.tbl_person USING(person_id)
|
||||
WHERE
|
||||
tbl_lehreinheitgruppe.lehreinheit_id=".$db->db_add_param($lehreinheit_id, FHC_INTEGER)."
|
||||
AND tbl_gruppe.direktinskription
|
||||
ORDER BY vorname, nachname";
|
||||
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
$i = 0;
|
||||
while ($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$i = $oRdf->newObjekt($i);
|
||||
$oRdf->obj[$i]->setAttribut('uid', $row->uid,true);
|
||||
$oRdf->obj[$i]->setAttribut('vorname', $row->vorname,true);
|
||||
$oRdf->obj[$i]->setAttribut('nachname', $row->nachname,true);
|
||||
$oRdf->obj[$i]->setAttribut('gruppe_kurzbz', $row->gruppe_kurzbz,true);
|
||||
$oRdf->addSequence($i);
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
$oRdf->sendRdfText();
|
||||
?>
|
||||
@@ -70,6 +70,11 @@ foreach ($DAO_obj->lehreinheitgruppe as $row)
|
||||
$bezeichnung = $row->gruppe_kurzbz;
|
||||
$gruppe = new gruppe();
|
||||
$gruppe->load($row->gruppe_kurzbz);
|
||||
|
||||
// Direkte Gruppen werden uebersprungen
|
||||
if($gruppe->direktinskription)
|
||||
continue;
|
||||
|
||||
$beschreibung = $gruppe->bezeichnung;
|
||||
|
||||
$qry_verplant = "SELECT 1 FROM lehre.tbl_stundenplandev
|
||||
|
||||
@@ -355,7 +355,16 @@ $oRdf->sendHeader();
|
||||
$row_lf = $db->db_fetch_object($result_lf);
|
||||
|
||||
//Gruppen holen
|
||||
$qry = "SELECT upper(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kuerzel, * FROM lehre.tbl_lehreinheitgruppe LEFT JOIN public.tbl_studiengang USING(studiengang_kz) WHERE lehreinheit_id='$row_le->lehreinheit_id'";
|
||||
$qry = "SELECT
|
||||
upper(tbl_studiengang.typ::varchar(1) || tbl_studiengang.kurzbz) as kuerzel,
|
||||
tbl_lehreinheitgruppe.*,
|
||||
tbl_gruppe.direktinskription
|
||||
FROM
|
||||
lehre.tbl_lehreinheitgruppe
|
||||
LEFT JOIN public.tbl_studiengang USING(studiengang_kz)
|
||||
LEFT JOIN public.tbl_gruppe USING(gruppe_kurzbz)
|
||||
WHERE lehreinheit_id=".$db->db_add_param($row_le->lehreinheit_id);
|
||||
|
||||
$result_grp = $db->db_query($qry);
|
||||
$grp='';
|
||||
while($row_grp = $db->db_fetch_object($result_grp))
|
||||
@@ -363,7 +372,11 @@ $oRdf->sendHeader();
|
||||
if($row_grp->gruppe_kurzbz=='')
|
||||
$grp.=' '.$row_grp->kuerzel.trim($row_grp->semester).trim($row_grp->verband).trim($row_grp->gruppe);
|
||||
else
|
||||
$grp.=' '.$row_grp->gruppe_kurzbz;
|
||||
{
|
||||
// Direkte Gruppen werden nicht angezeigt
|
||||
if(!$db->db_parse_bool($row_grp->direktinskription))
|
||||
$grp.=' '.$row_grp->gruppe_kurzbz;
|
||||
}
|
||||
}
|
||||
//Lektoren und Stunden holen
|
||||
$qry = "SELECT kurzbz, semesterstunden, planstunden FROM lehre.tbl_lehreinheitmitarbeiter JOIN public.tbl_mitarbeiter USING(mitarbeiter_uid) WHERE lehreinheit_id='$row_le->lehreinheit_id'";
|
||||
@@ -377,7 +390,17 @@ $oRdf->sendHeader();
|
||||
$semesterstunden.=$row_lkt->semesterstunden.' ';
|
||||
$planstunden.=$row_lkt->planstunden.' ';
|
||||
}
|
||||
$qry = "SELECT tbl_fachbereich.bezeichnung FROM public.tbl_fachbereich, lehre.tbl_lehrveranstaltung as lehrfach, lehre.tbl_lehreinheit WHERE tbl_fachbereich.oe_kurzbz=lehrfach.oe_kurzbz AND lehrfach.lehrveranstaltung_id=tbl_lehreinheit.lehrfach_id AND tbl_lehreinheit.lehreinheit_id=".$db->db_add_param($row_le->lehreinheit_id, FHC_INTEGER);
|
||||
$qry = "SELECT
|
||||
tbl_organisationseinheit.bezeichnung
|
||||
FROM
|
||||
public.tbl_organisationseinheit,
|
||||
lehre.tbl_lehrveranstaltung as lehrfach,
|
||||
lehre.tbl_lehreinheit
|
||||
WHERE
|
||||
tbl_organisationseinheit.oe_kurzbz = lehrfach.oe_kurzbz
|
||||
AND lehrfach.lehrveranstaltung_id = tbl_lehreinheit.lehrfach_id
|
||||
AND tbl_lehreinheit.lehreinheit_id = ".$db->db_add_param($row_le->lehreinheit_id, FHC_INTEGER);
|
||||
|
||||
$fachbereich='';
|
||||
if($result_fb = $db->db_query($qry))
|
||||
if($row_fb = $db->db_fetch_object($result_fb))
|
||||
|
||||
+866
-858
File diff suppressed because it is too large
Load Diff
@@ -116,7 +116,7 @@ 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[$benutzer->studiengang_kz].']]></NOTE:studiengang>
|
||||
<NOTE:studiengang><![CDATA['.(isset($stg_arr[$benutzer->studiengang_kz])?$stg_arr[$benutzer->studiengang_kz]:'').']]></NOTE:studiengang>
|
||||
<NOTE:studiengang_kz><![CDATA['.$benutzer->studiengang_kz.']]></NOTE:studiengang_kz>
|
||||
<NOTE:studiengang_lv><![CDATA['.$stg_arr[$lv_obj->studiengang_kz].']]></NOTE:studiengang_lv>
|
||||
<NOTE:semester_lv><![CDATA['.$lv_obj->semester.']]></NOTE:semester_lv>
|
||||
|
||||
+13
-1
@@ -2513,6 +2513,18 @@ if($result = $db->db_query("SELECT 1 FROM system.tbl_app WHERE app='reihungstest
|
||||
}
|
||||
}
|
||||
|
||||
// Spalte direktinskription fuer public.tbl_gruppe
|
||||
if(!$result = @$db->db_query("SELECT direktinskription FROM public.tbl_gruppe LIMIT 1"))
|
||||
{
|
||||
$qry = "ALTER TABLE public.tbl_gruppe ADD COLUMN direktinskription boolean NOT NULL DEFAULT FALSE;
|
||||
COMMENT ON COLUMN public.tbl_gruppe.direktinskription IS 'Verwendung fuer direkte Zuweisung zu Lehreinheit'";
|
||||
|
||||
if(!$db->db_query($qry))
|
||||
echo '<strong>public.tbl_gruppe: '.$db->db_last_error().'</strong><br>';
|
||||
else
|
||||
echo '<br>public.tbl_gruppe: Spalte direktinskription hinzugefuegt';
|
||||
}
|
||||
|
||||
// *** Pruefung und hinzufuegen der neuen Attribute und Tabellen
|
||||
echo '<H2>Pruefe Tabellen und Attribute!</H2>';
|
||||
|
||||
@@ -2687,7 +2699,7 @@ $tabellen=array(
|
||||
"public.tbl_fotostatus" => array("fotostatus_kurzbz","beschreibung"),
|
||||
"public.tbl_funktion" => array("funktion_kurzbz","beschreibung","aktiv","fachbereich","semester"),
|
||||
"public.tbl_geschaeftsjahr" => array("geschaeftsjahr_kurzbz","start","ende","bezeichnung"),
|
||||
"public.tbl_gruppe" => array("gruppe_kurzbz","studiengang_kz","semester","bezeichnung","beschreibung","sichtbar","lehre","aktiv","sort","mailgrp","generiert","updateamum","updatevon","insertamum","insertvon","ext_id","orgform_kurzbz","gid","content_visible","gesperrt","zutrittssystem","aufnahmegruppe"),
|
||||
"public.tbl_gruppe" => array("gruppe_kurzbz","studiengang_kz","semester","bezeichnung","beschreibung","sichtbar","lehre","aktiv","sort","mailgrp","generiert","updateamum","updatevon","insertamum","insertvon","ext_id","orgform_kurzbz","gid","content_visible","gesperrt","zutrittssystem","aufnahmegruppe","direktinskription"),
|
||||
"public.tbl_kontakt" => array("kontakt_id","person_id","kontakttyp","anmerkung","kontakt","zustellung","updateamum","updatevon","insertamum","insertvon","ext_id","standort_id"),
|
||||
"public.tbl_kontaktmedium" => array("kontaktmedium_kurzbz","beschreibung"),
|
||||
"public.tbl_kontakttyp" => array("kontakttyp","beschreibung","bezeichnung_mehrsprachig"),
|
||||
|
||||
@@ -31,6 +31,7 @@ require_once('../../include/lehreinheitmitarbeiter.class.php');
|
||||
require_once('../../include/lehreinheitgruppe.class.php');
|
||||
require_once('../../include/benutzerberechtigung.class.php');
|
||||
require_once('../../include/mitarbeiter.class.php');
|
||||
require_once('../../include/gruppe.class.php');
|
||||
|
||||
if (!$db = new basis_db())
|
||||
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
|
||||
@@ -39,7 +40,7 @@ $user = get_uid();
|
||||
$rechte = new benutzerberechtigung();
|
||||
$rechte->getBerechtigungen($user);
|
||||
|
||||
if(!$rechte->isBerechtigt('lehre/vorrueckung', null, 'suid'))
|
||||
if (!$rechte->isBerechtigt('lehre/vorrueckung', null, 'suid'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
$stg_obj = new studiengang();
|
||||
@@ -56,34 +57,33 @@ $studiengang_kz = (isset($_GET['studiengang_kz'])?$_GET['studiengang_kz']:'');
|
||||
$semester = (isset($_GET['semester'])?$_GET['semester']:'');
|
||||
$stsem_von = (isset($_GET['stsem_von'])?$_GET['stsem_von']:'');
|
||||
$stsem_nach = (isset($_GET['stsem_nach'])?$_GET['stsem_nach']:'');
|
||||
$text='';
|
||||
$anzahl_lehreinheiten=0;
|
||||
$anzahl_lehreinheitmitarbeiter=0;
|
||||
$anzahl_lehreinheitgruppe=0;
|
||||
$error_lehreinheit=0;
|
||||
$error_lehreinheitmitarbeiter=0;
|
||||
$error_lehreinheitgruppe=0;
|
||||
$text = '';
|
||||
$anzahl_lehreinheiten = 0;
|
||||
$anzahl_lehreinheitmitarbeiter = 0;
|
||||
$anzahl_lehreinheitgruppe = 0;
|
||||
$error_lehreinheit = 0;
|
||||
$error_lehreinheitmitarbeiter = 0;
|
||||
$error_lehreinheitgruppe = 0;
|
||||
|
||||
if($stsem_von=='')
|
||||
if ($stsem_von == '')
|
||||
{
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_von = $stsem_obj->getPrevious();
|
||||
}
|
||||
|
||||
if($stsem_nach=='')
|
||||
if ($stsem_nach == '')
|
||||
{
|
||||
$stsem_obj = new studiensemester();
|
||||
$stsem_obj->getNextStudiensemester();
|
||||
$stsem_nach = $stsem_obj->studiensemester_kurzbz;
|
||||
}
|
||||
|
||||
echo '
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||||
echo '<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<title>Lehreinheit Vorrueckung</title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
<title>Lehreinheit Vorrueckung</title>
|
||||
<meta charset="UTF-8">
|
||||
<link rel="stylesheet" href="../../skin/vilesci.css" type="text/css">
|
||||
</head>
|
||||
<body style="background-color:#eeeeee;">
|
||||
<h2>Lehreinheiten Vorrückung</h2>
|
||||
@@ -93,10 +93,10 @@ echo 'Studiengang: <SELECT name="studiengang_kz">';
|
||||
echo '<OPTION value="">---Stg auswählen---</OPTION>';
|
||||
foreach($stg_obj->result as $stg)
|
||||
{
|
||||
if($studiengang_kz==$stg->studiengang_kz)
|
||||
$selected='selected';
|
||||
if ($studiengang_kz == $stg->studiengang_kz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected='';
|
||||
$selected = '';
|
||||
|
||||
echo '<OPTION value="'.$stg->studiengang_kz.'" '.$selected.'>'.$stg->kuerzel.' ('.$stg->kurzbzlang.')</OPTION>';
|
||||
}
|
||||
@@ -104,12 +104,12 @@ echo '</SELECT>';
|
||||
|
||||
echo ' Semester: <SELECT name="semester">';
|
||||
echo '<OPTION value="">-- Alle --</OPTION>';
|
||||
for($i=1;$i<=8;$i++)
|
||||
for ($i = 1;$i <= 8;$i++)
|
||||
{
|
||||
if($semester==$i)
|
||||
$selected='selected';
|
||||
if ($semester == $i)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected='';
|
||||
$selected = '';
|
||||
|
||||
echo '<OPTION value="'.$i.'" '.$selected.'>'.$i.'</OPTION>';
|
||||
}
|
||||
@@ -121,7 +121,7 @@ $stsem_obj->getAll();
|
||||
|
||||
foreach ($stsem_obj->studiensemester as $stsem)
|
||||
{
|
||||
if($stsem_von == $stsem->studiensemester_kurzbz)
|
||||
if ($stsem_von == $stsem->studiensemester_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
@@ -134,7 +134,7 @@ echo ' Nach: <SELECT name="stsem_nach">';
|
||||
|
||||
foreach ($stsem_obj->studiensemester as $stsem)
|
||||
{
|
||||
if($stsem_nach == $stsem->studiensemester_kurzbz)
|
||||
if ($stsem_nach == $stsem->studiensemester_kurzbz)
|
||||
$selected = 'selected';
|
||||
else
|
||||
$selected = '';
|
||||
@@ -146,22 +146,38 @@ echo '</SELECT>';
|
||||
|
||||
echo ' <input type="submit" value="Vorrücken"><br>';
|
||||
|
||||
if (defined('VILESCI_STUNDENSATZ_VORRUECKUNG') && VILESCI_STUNDENSATZ_VORRUECKUNG != '' && is_numeric(VILESCI_STUNDENSATZ_VORRUECKUNG))
|
||||
echo '<br><span style="color: blue">Alle Lehraufträge werden mit dem Stundensatz "'.VILESCI_STUNDENSATZ_VORRUECKUNG.'" vorgerückt</span>';
|
||||
elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG') && VILESCI_STUNDENSATZ_VORRUECKUNG != '' && VILESCI_STUNDENSATZ_VORRUECKUNG == 'default')
|
||||
echo '<br><span style="color: blue">Alle Lehraufträge werden mit dem aktuell hinterlegten Standard-Stundensatz der/des Lehrenden vorgerückt</span>';
|
||||
if (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
|
||||
&& VILESCI_STUNDENSATZ_VORRUECKUNG != ''
|
||||
&& is_numeric(VILESCI_STUNDENSATZ_VORRUECKUNG))
|
||||
{
|
||||
echo '<br><span style="color: blue">
|
||||
Alle Lehraufträge werden mit dem Stundensatz "'.VILESCI_STUNDENSATZ_VORRUECKUNG.'" vorgerückt
|
||||
</span>';
|
||||
}
|
||||
elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
|
||||
&& VILESCI_STUNDENSATZ_VORRUECKUNG != ''
|
||||
&& VILESCI_STUNDENSATZ_VORRUECKUNG == 'default')
|
||||
{
|
||||
echo '<br><span style="color: blue">
|
||||
Alle Lehraufträge werden mit dem aktuell hinterlegten Standard-Stundensatz der/des Lehrenden vorgerückt
|
||||
</span>';
|
||||
}
|
||||
else
|
||||
echo '<br><span style="color: blue">Alle Lehraufträge werden mit dem Stundensatz des Vorjahres vorgerückt</span>';
|
||||
{
|
||||
echo '<br><span style="color: blue">
|
||||
Alle Lehraufträge werden mit dem Stundensatz des Vorjahres vorgerückt
|
||||
</span>';
|
||||
}
|
||||
|
||||
echo '</form>';
|
||||
|
||||
if($studiengang_kz!='' && $stsem_von!='' && $stsem_nach!='')
|
||||
if ($studiengang_kz != '' && $stsem_von != '' && $stsem_nach != '')
|
||||
{
|
||||
$stg_obj = new studiengang();
|
||||
if(!$stg_obj->load($studiengang_kz))
|
||||
if (!$stg_obj->load($studiengang_kz))
|
||||
die('Studiengang kann nicht geladen werden');
|
||||
|
||||
if(!$rechte->isBerechtigt('lehre/vorrueckung', $stg_obj->oe_kurzbz, 'suid'))
|
||||
if (!$rechte->isBerechtigt('lehre/vorrueckung', $stg_obj->oe_kurzbz, 'suid'))
|
||||
die($rechte->errormsg);
|
||||
|
||||
echo '<br>Starte Vorrückung '.$stg_arr[$studiengang_kz]." $semester von $stsem_von nach $stsem_nach ...";
|
||||
@@ -172,10 +188,10 @@ if($studiengang_kz!='' && $stsem_von!='' && $stsem_nach!='')
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem_von);
|
||||
if($semester!='')
|
||||
if ($semester != '')
|
||||
$qry .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
$anzahl_von = $db->db_num_rows($result);
|
||||
}
|
||||
@@ -186,92 +202,114 @@ if($studiengang_kz!='' && $stsem_von!='' && $stsem_nach!='')
|
||||
WHERE
|
||||
tbl_lehrveranstaltung.studiengang_kz=".$db->db_add_param($studiengang_kz)." AND
|
||||
tbl_lehreinheit.studiensemester_kurzbz=".$db->db_add_param($stsem_nach);
|
||||
if($semester!='')
|
||||
if ($semester != '')
|
||||
$qry_nach .= " AND tbl_lehrveranstaltung.semester=".$db->db_add_param($semester);
|
||||
|
||||
if($result = $db->db_query($qry_nach))
|
||||
if ($result = $db->db_query($qry_nach))
|
||||
{
|
||||
$anzahl_nach = $db->db_num_rows($result);
|
||||
$baseurl = basename($_SERVER['REQUEST_URI']);
|
||||
if ($anzahl_nach >= $anzahl_von && !isset($_GET['continue']))
|
||||
{
|
||||
echo '<br><br><span style="color:red">Es sind schon Lehreinheiten fuer das '.$stsem_nach.' in '.$stg_arr[$studiengang_kz].' '.$semester.' vorhanden. Trotzdem fortsetzen?</span><br><br>
|
||||
echo '<br><br><span style="color:red">Es sind schon Lehreinheiten fuer das
|
||||
'.$stsem_nach.' in '.$stg_arr[$studiengang_kz].' '.$semester.' vorhanden.
|
||||
Trotzdem fortsetzen?</span><br><br>
|
||||
<form action="'.$baseurl.'&continue" method="POST"><input type="submit" value="Fortsetzen"></form>';
|
||||
die ();
|
||||
}
|
||||
}
|
||||
|
||||
if($result = $db->db_query($qry))
|
||||
if ($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$text.="<br>Lehreinheit $row->lehreinheit_id wird vorgerueckt";
|
||||
$text .= "<br>Lehreinheit $row->lehreinheit_id wird vorgerueckt";
|
||||
$le_obj = new lehreinheit();
|
||||
//Lehreinheit Neu Anlegen
|
||||
if($le_obj->load($row->lehreinheit_id))
|
||||
if ($le_obj->load($row->lehreinheit_id))
|
||||
{
|
||||
$le_obj->new=true;
|
||||
$le_obj->studiensemester_kurzbz=$stsem_nach;
|
||||
$le_obj->insertamum=date('Y-m-d H:i:s');
|
||||
$le_obj->insertvon='Vorrueckung_'.$user;
|
||||
$le_obj->ext_id='';
|
||||
$le_obj->unr='';
|
||||
$le_obj->new = true;
|
||||
$le_obj->studiensemester_kurzbz = $stsem_nach;
|
||||
$le_obj->insertamum = date('Y-m-d H:i:s');
|
||||
$le_obj->insertvon = 'Vorrueckung_'.$user;
|
||||
$le_obj->ext_id = '';
|
||||
$le_obj->unr = '';
|
||||
|
||||
if($le_obj->save())
|
||||
if ($le_obj->save())
|
||||
{
|
||||
$anzahl_lehreinheiten++;
|
||||
|
||||
//LehreinheitMitarbeiter Eintrag neu Anlengen
|
||||
$qry_lem="SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter
|
||||
$qry_lem = "SELECT mitarbeiter_uid FROM lehre.tbl_lehreinheitmitarbeiter
|
||||
WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id);
|
||||
if($result_lem = $db->db_query($qry_lem))
|
||||
|
||||
if ($result_lem = $db->db_query($qry_lem))
|
||||
{
|
||||
while($row_lem = $db->db_fetch_object($result_lem))
|
||||
while ($row_lem = $db->db_fetch_object($result_lem))
|
||||
{
|
||||
$lem_obj = new lehreinheitmitarbeiter();
|
||||
if($lem_obj->load($row->lehreinheit_id, $row_lem->mitarbeiter_uid))
|
||||
if ($lem_obj->load($row->lehreinheit_id, $row_lem->mitarbeiter_uid))
|
||||
{
|
||||
// Pruefen ob der Lektor ueber die im Config festgelegte Stundengrenze
|
||||
// kommt und Meldung ausgeben
|
||||
$qry_stundengrenze="SELECT mitarbeiter_uid,fixangestellt,SUM(semesterstunden) AS summe,
|
||||
aktiv FROM lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING (lehreinheit_id)
|
||||
JOIN public.tbl_mitarbeiter USING (mitarbeiter_uid)
|
||||
JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
|
||||
WHERE mitarbeiter_uid=".$db->db_add_param($row_lem->mitarbeiter_uid)."
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($stsem_von)."
|
||||
GROUP BY mitarbeiter_uid,fixangestellt,aktiv";
|
||||
//echo '<br>UNION<br>'.$qry_stundengrenze;
|
||||
if($result_stundengrenze = $db->db_query($qry_stundengrenze))
|
||||
$qry_stundengrenze="
|
||||
SELECT
|
||||
mitarbeiter_uid,fixangestellt,SUM(semesterstunden) AS summe, aktiv
|
||||
FROM
|
||||
lehre.tbl_lehreinheitmitarbeiter
|
||||
JOIN lehre.tbl_lehreinheit USING (lehreinheit_id)
|
||||
JOIN public.tbl_mitarbeiter USING (mitarbeiter_uid)
|
||||
JOIN public.tbl_benutzer ON (uid=mitarbeiter_uid)
|
||||
WHERE
|
||||
mitarbeiter_uid=".$db->db_add_param($row_lem->mitarbeiter_uid)."
|
||||
AND studiensemester_kurzbz=".$db->db_add_param($stsem_von)."
|
||||
GROUP BY
|
||||
mitarbeiter_uid, fixangestellt, aktiv";
|
||||
|
||||
if ($result_stundengrenze = $db->db_query($qry_stundengrenze))
|
||||
{
|
||||
if($row_stundengrenze = $db->db_fetch_object($result_stundengrenze))
|
||||
if ($row_stundengrenze = $db->db_fetch_object($result_stundengrenze))
|
||||
{
|
||||
if ($row_stundengrenze->fixangestellt=='f' && $row_stundengrenze->summe>WARN_SEMESTERSTD_FREI)
|
||||
if (!$db->db_parse_bool($row_stundengrenze->fixangestellt)
|
||||
&& $row_stundengrenze->summe > WARN_SEMESTERSTD_FREI)
|
||||
{
|
||||
$text.=" <span style='color:red'>Stundengrenze ".WARN_SEMESTERSTD_FREI." Stunden ueberschritten von $row_lem->mitarbeiter_uid</span>";
|
||||
$text .= " <span style='color:red'>
|
||||
Stundengrenze ".WARN_SEMESTERSTD_FREI." Stunden ueberschritten
|
||||
von $row_lem->mitarbeiter_uid</span>";
|
||||
}
|
||||
elseif ($row_stundengrenze->fixangestellt=='t' && $row_stundengrenze->summe>WARN_SEMESTERSTD_FIX)
|
||||
elseif ($db->db_parse_bool($row_stundengrenze->fixangestellt)
|
||||
&& $row_stundengrenze->summe > WARN_SEMESTERSTD_FIX)
|
||||
{
|
||||
$text.=" <span style='color:red'>Stundengrenze ".WARN_SEMESTERSTD_FIX." Stunden ueberschritten von $row_lem->mitarbeiter_uid</span>";
|
||||
$text .= " <span style='color:red'>
|
||||
Stundengrenze ".WARN_SEMESTERSTD_FIX." Stunden ueberschritten
|
||||
von $row_lem->mitarbeiter_uid</span>";
|
||||
}
|
||||
|
||||
// Meldung, wenn Benutzer inaktiv
|
||||
if ($row_stundengrenze->aktiv == 'f')
|
||||
if ($db->db_parse_bool($row_stundengrenze->aktiv) == false)
|
||||
{
|
||||
$text.="; <span style='color:orange'>Achtung! MitarbeiterIn <b>$row_lem->mitarbeiter_uid</b> ist nicht aktiv</span>";
|
||||
$text .= "; <span style='color:orange'>Achtung! MitarbeiterIn
|
||||
<b>$row_lem->mitarbeiter_uid</b> ist nicht aktiv</span>";
|
||||
}
|
||||
}
|
||||
}
|
||||
$lem_obj->lehreinheit_id=$le_obj->lehreinheit_id;
|
||||
$lem_obj->lehreinheit_id = $le_obj->lehreinheit_id;
|
||||
$lem_obj->new = true;
|
||||
// Wenn VILESCI_STUNDENSATZ_VORRUECKUNG definiert ist, wird nicht der Stundensatz des Vorjahres verwendet
|
||||
// Wenn VILESCI_STUNDENSATZ_VORRUECKUNG numerisch ist, wird dieser Wert fuer den Stundensatz verwendet
|
||||
if (defined('VILESCI_STUNDENSATZ_VORRUECKUNG') && VILESCI_STUNDENSATZ_VORRUECKUNG != '' && is_numeric(VILESCI_STUNDENSATZ_VORRUECKUNG))
|
||||
// Wenn VILESCI_STUNDENSATZ_VORRUECKUNG definiert ist,
|
||||
// wird nicht der Stundensatz des Vorjahres verwendet
|
||||
// Wenn VILESCI_STUNDENSATZ_VORRUECKUNG numerisch ist,
|
||||
// wird dieser Wert fuer den Stundensatz verwendet
|
||||
if (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
|
||||
&& VILESCI_STUNDENSATZ_VORRUECKUNG != ''
|
||||
&& is_numeric(VILESCI_STUNDENSATZ_VORRUECKUNG))
|
||||
{
|
||||
$lem_obj->stundensatz = VILESCI_STUNDENSATZ_VORRUECKUNG;
|
||||
}
|
||||
// Wenn VILESCI_STUNDENSATZ_VORRUECKUNG default ist, wird der Standard-Stundensatz des jeweiligen Lektors geladen und gespeichert
|
||||
elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG') && VILESCI_STUNDENSATZ_VORRUECKUNG != '' && VILESCI_STUNDENSATZ_VORRUECKUNG == 'default')
|
||||
// Wenn VILESCI_STUNDENSATZ_VORRUECKUNG default ist,
|
||||
//wird der Standard-Stundensatz des jeweiligen Lektors geladen und gespeichert
|
||||
elseif (defined('VILESCI_STUNDENSATZ_VORRUECKUNG')
|
||||
&& VILESCI_STUNDENSATZ_VORRUECKUNG != ''
|
||||
&& VILESCI_STUNDENSATZ_VORRUECKUNG == 'default')
|
||||
{
|
||||
$stundensatz = new mitarbeiter($row_lem->mitarbeiter_uid);
|
||||
$lem_obj->stundensatz = $stundensatz->stundensatz;
|
||||
@@ -279,83 +317,99 @@ if($studiengang_kz!='' && $stsem_von!='' && $stsem_nach!='')
|
||||
$lem_obj->insertamum = date('Y-m-d H:i:s');
|
||||
$lem_obj->insertvon = 'Vorrueckung_'.$user;
|
||||
$lem_obj->ext_id = '';
|
||||
$lem_obj->vertrag_id='';
|
||||
$lem_obj->vertrag_id = '';
|
||||
|
||||
if(!$lem_obj->save())
|
||||
if (!$lem_obj->save())
|
||||
{
|
||||
$error_lehreinheitmitarbeiter++;
|
||||
$text.='Fehler beim Anlegen des Lehreinheitmitarbeiter Eintrages: '.$lem_obj->errormsg;
|
||||
$text .= 'Fehler beim Anlegen des Lehreinheitmitarbeiter
|
||||
Eintrages: '.$lem_obj->errormsg;
|
||||
}
|
||||
else
|
||||
$anzahl_lehreinheitmitarbeiter++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Laden der Mitarbeiter';
|
||||
$text .= 'Fehler beim Laden der Mitarbeiter';
|
||||
$error_lehreinheitmitarbeiter++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Laden der Mitarbeiter '.$db->db_last_error();
|
||||
$text .= 'Fehler beim Laden der Mitarbeiter '.$db->db_last_error();
|
||||
$error_lehreinheitmitarbeiter++;
|
||||
}
|
||||
|
||||
//LehreinheitGruppe Eintrag neu Anlegen
|
||||
$qry_leg="SELECT lehreinheitgruppe_id FROM lehre.tbl_lehreinheitgruppe
|
||||
WHERE lehreinheit_id=".$db->db_add_param($row->lehreinheit_id)."
|
||||
$qry_leg = "
|
||||
SELECT
|
||||
lehreinheitgruppe_id
|
||||
FROM
|
||||
lehre.tbl_lehreinheitgruppe
|
||||
WHERE
|
||||
lehreinheit_id=".$db->db_add_param($row->lehreinheit_id)."
|
||||
AND NOT (tbl_lehreinheitgruppe.semester='0' AND tbl_lehreinheitgruppe.verband='I')";
|
||||
if($result_leg = $db->db_query($qry_leg))
|
||||
|
||||
if ($result_leg = $db->db_query($qry_leg))
|
||||
{
|
||||
while($row_leg = $db->db_fetch_object($result_leg))
|
||||
{
|
||||
$leg_obj = new lehreinheitgruppe();
|
||||
if($leg_obj->load($row_leg->lehreinheitgruppe_id))
|
||||
if ($leg_obj->load($row_leg->lehreinheitgruppe_id))
|
||||
{
|
||||
$leg_obj->lehreinheit_id=$le_obj->lehreinheit_id;
|
||||
// Direktinskriptionsgruppen werden nicht vorgerückt
|
||||
if ($leg_obj->gruppe_kurzbz != '')
|
||||
{
|
||||
$grp = new gruppe();
|
||||
$grp->load($leg_obj->gruppe_kurzbz);
|
||||
if ($grp->direktinskription)
|
||||
continue;
|
||||
}
|
||||
|
||||
$leg_obj->lehreinheit_id = $le_obj->lehreinheit_id;
|
||||
$leg_obj->new = true;
|
||||
$leg_obj->insertamum = date('Y-m-d H:i:s');
|
||||
$leg_obj->insertvon = 'Vorrueckung_'.$user;
|
||||
$leg_obj->ext_id = '';
|
||||
|
||||
if(!$leg_obj->save())
|
||||
if (!$leg_obj->save())
|
||||
{
|
||||
$error_lehreinheitgruppe++;
|
||||
$text.='Fehler beim Anlegen des Lehreinheitgruppe Eintrages: '.$leg_obj->errormsg;
|
||||
$text .= 'Fehler beim Anlegen des Lehreinheitgruppe Eintrages: '.$leg_obj->errormsg;
|
||||
}
|
||||
else
|
||||
$anzahl_lehreinheitgruppe++;
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Laden der Gruppe '.$leg_obj->errormsg.' '.$db->db_last_error();
|
||||
$text .= 'Fehler beim Laden der Gruppe '.$leg_obj->errormsg.' '.$db->db_last_error();
|
||||
$error_lehreinheitgruppe++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Auslesen der Gruppen';
|
||||
$text .= 'Fehler beim Auslesen der Gruppen';
|
||||
$error_lehreinheitgruppe++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_lehreinheit++;
|
||||
$text.='Fehler beim Speichern der Lehreinheit '.$le_obj->errormsg;
|
||||
$text .= 'Fehler beim Speichern der Lehreinheit '.$le_obj->errormsg;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$error_lehreinheit++;
|
||||
$text.='Fehler beim Laden der Lehreinheit '.$le_obj->errormsg;
|
||||
$text .= 'Fehler beim Laden der Lehreinheit '.$le_obj->errormsg;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$text.='Fehler beim Laden der Lehreinheiten '.$db->db_last_error();
|
||||
$text .= 'Fehler beim Laden der Lehreinheiten '.$db->db_last_error();
|
||||
$error_lehreinheit++;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user