first commit
This commit is contained in:
113
func_gutachter_entscheid.php
Executable file
113
func_gutachter_entscheid.php
Executable file
@ -0,0 +1,113 @@
|
||||
<?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,'');
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
Reference in New Issue
Block a user