mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-04 05:39:28 +00:00
Anpassungen damit Script über Cronjob ausgeführt werden kann
This commit is contained in:
@@ -27,14 +27,14 @@
|
||||
// * - Studenten ohne Prestudent_id werden korrigiert
|
||||
// * - Inkonsistenzen der Tabellen tbl_studentlehrverband, tbl_student werden korrigiert
|
||||
// **********************************
|
||||
require_once('../config/vilesci.config.inc.php');
|
||||
require_once('../include/studiensemester.class.php');
|
||||
require_once('../include/person.class.php');
|
||||
require_once('../include/benutzer.class.php');
|
||||
require_once('../include/student.class.php');
|
||||
require_once('../include/prestudent.class.php');
|
||||
require_once('../include/lehrverband.class.php');
|
||||
require_once('../include/mail.class.php');
|
||||
require_once(dirname(__FILE__).'/../config/vilesci.config.inc.php');
|
||||
require_once(dirname(__FILE__).'/../include/studiensemester.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/person.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/benutzer.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/student.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/prestudent.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/lehrverband.class.php');
|
||||
require_once(dirname(__FILE__).'/../include/mail.class.php');
|
||||
|
||||
$db = new basis_db();
|
||||
|
||||
@@ -54,24 +54,24 @@ $qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE prestud
|
||||
if($result = $db->db_query($qry))
|
||||
{
|
||||
$text.="Suche Studenten mit fehlender Prestudent_id ...\n\n";
|
||||
|
||||
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid='".addslashes($row->student_uid)."' AND tbl_prestudent.studiengang_kz='$row->studiengang_kz'";
|
||||
$qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid=".$db->db_add_param($row->student_uid)." AND tbl_prestudent.studiengang_kz=".$db->db_add_param($row->studiengang_kz);
|
||||
if($result_id = $db->db_query($qry_id))
|
||||
{
|
||||
if($db->db_num_rows($result_id)==1)
|
||||
{
|
||||
if($row_id = $db->db_fetch_object($result_id))
|
||||
{
|
||||
$qry_upd = "UPDATE public.tbl_student SET prestudent_id='$row_id->prestudent_id' WHERE student_uid='".addslashes($row->student_uid)."'";
|
||||
$qry_upd = "UPDATE public.tbl_student SET prestudent_id=".$db->db_add_param($row_id->prestudent_id)." WHERE student_uid=".$db->db_add_param($row->student_uid);
|
||||
if($db->db_query($qry_upd))
|
||||
{
|
||||
$text .= "Prestudent_id von $row->student_uid wurde auf $row_id->prestudent_id gesetzt\n";
|
||||
$anzahl_neue_prestudent_id++;
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$text .= "unbekannter Fehler\n";
|
||||
$anzahl_fehler_prestudent++;
|
||||
@@ -88,7 +88,7 @@ if($result = $db->db_query($qry))
|
||||
$anzahl_fehler_prestudent++;
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$text.="Fehler bei Abfrage:".$db->db_last_error()."\n";
|
||||
$anzahl_fehler_prestudent++;
|
||||
@@ -104,7 +104,7 @@ if($result = $db->db_query($qry))
|
||||
$text.="\n\nKorrigiere Gruppenzuteilungen von Ab-/Unterbrechern\n";
|
||||
|
||||
//Alle Ab-/Unterbrecher holen die nicht im 0. Semester sind
|
||||
$qry = "SELECT
|
||||
$qry = "SELECT
|
||||
student_uid,
|
||||
tbl_student.studiengang_kz,
|
||||
tbl_prestudent.prestudent_id,
|
||||
@@ -118,17 +118,17 @@ $qry = "SELECT
|
||||
tbl_student.prestudent_id=tbl_prestudent.prestudent_id AND
|
||||
tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND
|
||||
(
|
||||
tbl_prestudentstatus.status_kurzbz='Unterbrecher' OR
|
||||
tbl_prestudentstatus.status_kurzbz='Unterbrecher' OR
|
||||
tbl_prestudentstatus.status_kurzbz='Abbrecher'
|
||||
)
|
||||
AND
|
||||
EXISTS (SELECT
|
||||
*
|
||||
FROM
|
||||
public.tbl_studentlehrverband
|
||||
WHERE
|
||||
student_uid=tbl_student.student_uid AND
|
||||
studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz AND
|
||||
EXISTS (SELECT
|
||||
*
|
||||
FROM
|
||||
public.tbl_studentlehrverband
|
||||
WHERE
|
||||
student_uid=tbl_student.student_uid AND
|
||||
studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz AND
|
||||
semester<>0
|
||||
)
|
||||
";
|
||||
@@ -140,20 +140,20 @@ if($result = $db->db_query($qry))
|
||||
//Eintrag nur korrigieren wenn der Abbrecher/Unterbrecher Status der letzte in diesem Studiensemester ist
|
||||
$prestd = new prestudent();
|
||||
$prestd->getLastStatus($row->prestudent_id, $row->studiensemester_kurzbz);
|
||||
|
||||
|
||||
if($prestd->status_kurzbz=='Unterbrecher' || $prestd->status_kurzbz=='Abbrecher')
|
||||
{
|
||||
//Studentlehrverbandeintrag aktualisieren
|
||||
$student = new student();
|
||||
if($student->studentlehrverband_exists($row->student_uid, $row->studiensemester_kurzbz))
|
||||
$student->new = false;
|
||||
else
|
||||
else
|
||||
{
|
||||
$student->new = true;
|
||||
$student->insertamum = date('Y-m-d H:i:s');
|
||||
$student->insertvon = 'chkstudentlvb';
|
||||
}
|
||||
|
||||
|
||||
$student->uid = $row->student_uid;
|
||||
$student->studiensemester_kurzbz=$row->studiensemester_kurzbz;
|
||||
$student->studiengang_kz = $row->studiengang_kz;
|
||||
@@ -162,7 +162,7 @@ if($result = $db->db_query($qry))
|
||||
$student->gruppe = ' ';
|
||||
$student->updateamum = date('Y-m-d H:i:s');
|
||||
$student->updatevon = 'chkstudentlvb';
|
||||
|
||||
|
||||
//Pruefen ob der Lehrverband exisitert, wenn nicht dann wird er angelegt
|
||||
$lehrverband = new lehrverband();
|
||||
if(!$lehrverband->exists($student->studiengang_kz, $student->semester, $student->verband, $student->gruppe))
|
||||
@@ -172,16 +172,16 @@ if($result = $db->db_query($qry))
|
||||
$lehrverband->verband = $student->verband;
|
||||
$lehrverband->gruppe = $student->gruppe;
|
||||
$lehrverband->bezeichnung = ($student->verband=='A'?'Abbrecher':'Unterbrecher');
|
||||
|
||||
$lehrverband->save(true);
|
||||
|
||||
$lehrverband->save(true);
|
||||
}
|
||||
|
||||
|
||||
if($student->save_studentlehrverband())
|
||||
{
|
||||
$text.="Student $student->uid wurde im $row->studiensemester_kurzbz in die Gruppe $student->semester$student->verband verschoben\n";
|
||||
$abunterbrecher_verschoben++;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$text.="Fehler biem Speichern des Lehrverbandeintrages bei $student->student_uid:".$student->errormsg."\n";
|
||||
$abunterbrecher_verschoben_error++;
|
||||
@@ -200,20 +200,20 @@ $stsem = $stsem->getNearest();
|
||||
|
||||
$text.="\n\nKorrigiere Inkonsitenzen in den Tabellen tbl_studentlehrverband, tbl_student (Verwendetes Studiensemester: $stsem)\n\n";
|
||||
|
||||
$qry = "SELECT
|
||||
$qry = "SELECT
|
||||
tbl_student.studiengang_kz as studiengang_kz_old,
|
||||
tbl_student.semester as semester_old,
|
||||
tbl_student.verband as verband_old,
|
||||
tbl_student.gruppe as gruppe_old,
|
||||
tbl_studentlehrverband.student_uid,
|
||||
tbl_student.gruppe as gruppe_old,
|
||||
tbl_studentlehrverband.student_uid,
|
||||
tbl_studentlehrverband.studiengang_kz,
|
||||
tbl_studentlehrverband.semester,
|
||||
tbl_studentlehrverband.verband,
|
||||
tbl_studentlehrverband.gruppe
|
||||
FROM
|
||||
tbl_studentlehrverband.gruppe
|
||||
FROM
|
||||
public.tbl_student JOIN public.tbl_studentlehrverband USING(student_uid)
|
||||
WHERE
|
||||
tbl_studentlehrverband.studiensemester_kurzbz='$stsem' AND
|
||||
WHERE
|
||||
tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND
|
||||
(
|
||||
tbl_student.studiengang_kz<>tbl_studentlehrverband.studiengang_kz OR
|
||||
tbl_student.semester<>tbl_studentlehrverband.semester OR
|
||||
@@ -225,20 +225,20 @@ if($result = $db->db_query($qry))
|
||||
{
|
||||
while($row = $db->db_fetch_object($result))
|
||||
{
|
||||
$qry = "UPDATE public.tbl_student SET studiengang_kz='$row->studiengang_kz', semester='$row->semester', verband='$row->verband', gruppe='$row->gruppe' WHERE student_uid='$row->student_uid'";
|
||||
$qry = "UPDATE public.tbl_student SET studiengang_kz=".$db->db_add_param($row->studiengang_kz).", semester=".$db->db_add_param($row->semester).", verband=".$db->db_add_param($row->verband).", gruppe=".$db->db_add_param($row->gruppe)." WHERE student_uid=".$db->db_add_param($row->student_uid);
|
||||
if($db->db_query($qry))
|
||||
{
|
||||
$text .= "Bei Student $row->student_uid wurde die Gruppenzuordnung von $row->studiengang_kz_old/$row->semester_old/$row->verband_old/$row->gruppe_old auf $row->studiengang_kz/$row->semester/$row->verband/$row->gruppe geaendert\n";
|
||||
$anzahl_gruppenaenderung++;
|
||||
}
|
||||
else
|
||||
else
|
||||
{
|
||||
$text.="Fehler beim Aendern der Gruppe: ".$db->db_last_error()."\n";
|
||||
$anzahl_gruppenaenderung_fehler++;
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
else
|
||||
$text.="Fehler bei Abfrage".$db->db_last_error();
|
||||
|
||||
$statistik .= "Prestudent_id wurde bei $anzahl_neue_prestudent_id Studenten korrigiert\n";
|
||||
@@ -252,9 +252,9 @@ $statistik .= "\n\n";
|
||||
$mail = new mail(MAIL_ADMIN, 'vilesci@'.DOMAIN, 'CHECK Studentlehrverband', $statistik.$text);
|
||||
if($mail->send())
|
||||
echo 'Mail an '.MAIL_ADMIN.' wurde versandt';
|
||||
else
|
||||
else
|
||||
echo 'Fehler beim Versenden des Mails an '.MAIL_ADMIN;
|
||||
|
||||
echo nl2br("\n\n".$statistik.$text);
|
||||
|
||||
?>
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user