113 lines
4.8 KiB
PHP
Executable File
113 lines
4.8 KiB
PHP
Executable File
<?php
|
|
require_once("func_verlauf.php");
|
|
function gutachter_entscheid($uid, $gid, $vid){
|
|
global $db;
|
|
# Berechnen, ob bereits entschieden ist, da die Mehrzahl der Stimmen bereits abgegeben wurde
|
|
/*
|
|
1) Prüfen, wie viele Ausschussmitglieder es gibt (gleich die Hälfte ermitteln)
|
|
2) Prüfen, wie viele Ausschussmitglieder mit ja zugestimmt haben
|
|
3) Prüfen, wie viele Ausschussmitglieder nicht abgestimmt haben und die Frist bereits verstrichen ist
|
|
4) 2 und 3 addieren
|
|
5) Wenn die Anzahl 4 > Hälfte der Ausschussmitglieder ist, dann wurde der Gutachter angenommen
|
|
Prüfen, ob für den Gutachter bereits ein Verlauf gesetzt wurde
|
|
Wenn nicht -> Verlauf setzen (angenommen)
|
|
6) Ist die Anzahl 4 < Hälfte der Ausschussmitglieder und Frist ist abgelaufen
|
|
Prüfen, ob für den Gutachter bereits ein Verlauf gesetzt wurde
|
|
Wenn nicht -> Verlauf setzen (abgelehnt)
|
|
*/
|
|
|
|
#1
|
|
$result_anz_aus = $db->query("SELECT count(*)/2 Anz
|
|
FROM imt_rollen_user_zuord
|
|
WHERE roid = '4'"); # 4 ist id RollenID des Ausschusses
|
|
$row_anz_aus = $result_anz_aus->fetch_array();
|
|
|
|
#2
|
|
$result_ja = $db->query("SELECT count(*) Anz
|
|
FROM imt_ausschuss_gutachter_erg
|
|
WHERE gid = '$gid'
|
|
AND ergebnis = 'Y'");
|
|
$row_ja = $result_ja->fetch_array();
|
|
|
|
|
|
#3
|
|
$result_frist = $db->query("SELECT count(*) Anz
|
|
FROM imt_gutachter a
|
|
WHERE a.gid = '$gid'
|
|
AND a.frist_datum < date_format( now( ) , '%Y-%m-%d' )
|
|
");
|
|
|
|
$row_frist = $result_frist->fetch_array();
|
|
|
|
if($row_frist[Anz] > 0){
|
|
# Wenn Frist schon abgelaufen ist, dann die Gutachter mitzählen, die versäumt haben eine Stimme abzugeben
|
|
$result_ja_vers = $db->query("SELECT count(*) Anz
|
|
FROM imt_rollen_user_zuord a
|
|
WHERE a.roid = '4'
|
|
AND a.imtuid NOT IN (SELECT imtuid FROM imt_ausschuss_gutachter_erg WHERE gid='$gid')
|
|
");
|
|
$row_ja_vers = $result_ja_vers->fetch_array();
|
|
$versaeumt = $row_ja_vers[Anz];
|
|
}else{
|
|
$versaeumt = 0;
|
|
}
|
|
|
|
#4
|
|
$anz_zugestimmt = $row_ja[Anz]+$versaeumt;
|
|
|
|
|
|
$result_name = $db->query("SELECT vorname, nachname
|
|
FROM imt_gutachter a, imt_user b
|
|
WHERE a.imtuid = b.imtuid
|
|
AND a.gid = '$gid'
|
|
");
|
|
|
|
$row_name = $result_name->fetch_array();
|
|
|
|
if($anz_zugestimmt > $row_anz_aus[Anz]){
|
|
#5
|
|
|
|
$text = "Ausschuss hat Gutachter $row_name[vorname] $row_name[nachname] zugestimmt";
|
|
|
|
$result_verlauf = $db->query("SELECT count(*) Anz
|
|
FROM imt_verlauf
|
|
WHERE vid = '$vid'
|
|
AND status = '105'
|
|
AND verlauf='$text'
|
|
");
|
|
|
|
$row_verlauf = $result_verlauf->fetch_array();
|
|
|
|
if($row_verlauf[Anz] == 0){
|
|
# Kein Eintrag in Verlauf, da Ausschuss nicht mehr über Gutachter abstimmt
|
|
# verlauf($uid, $vid, "$text", 105, '');
|
|
##ggf Mail an Henzel
|
|
}
|
|
|
|
}else{
|
|
#6
|
|
|
|
if($row_frist[Anz] > 0){ # Frist ist abgelaufen
|
|
$text = "Ausschuss hat Gutachter $row_name[vorname] $row_name[nachname] abgelehnt";
|
|
|
|
$result_verlauf = $db->query("SELECT count(*) Anz
|
|
FROM imt_verlauf
|
|
WHERE vid = '$vid'
|
|
AND status = '105'
|
|
AND verlauf='$text'
|
|
");
|
|
$row_verlauf = $result_verlauf->fetch_array();
|
|
|
|
if($row_verlauf[Anz] == 0){
|
|
$aend_dat = date("Y-m-d H:i:s");
|
|
$sql = $db->query("UPDATE imt_gutachter SET ablehn_dat='$edit_hinweis_eigen' WHERE gid='$gid'");
|
|
|
|
# Kein Eintrag in Verlauf, da Ausschuss nicht mehr über Gutachter abstimmt
|
|
# verlauf($uid, $vid, "$text", 105,'');
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
?>
|