el caso es que ahora si necesito :/
la logica del progama es:
Existen tareas que tienen que ser evaluadas por 2 personas, y dependiendo de su evaluacion se genera una evaluacion final
A - B - RESULT
1 - 1 - 1
1 - 0 - 0
0 - 1 - 0
0 - 0 - 0
null - 1 - 1
1 - null - 1
null - 0 - 0
0 - null - 0
A = Evaluador a
B = Evaluador b
Result = resultado de comparacion de evaluaciones
Tengo hecho codigo en donde el evaluador a va a calificar una tarea y el evaluador b califica la misma tarea y se hace el resultado final.
El problema radica en que puede haber uno de los dos usuarios que se le olvide o que drechamente no evalue la tarea, por lo que no tengo la 2º interaccion con el usuario
es por eso que cada noche, no se a las 23:59 , corra un script para preguntar si las tareas que estan en evaluaciones tienen las dos evaluaciones hechas o no
y en caso de que haya una que no tenga datos, la evalue solo con la que tenga datos
eso se haría, porque cada evaluador tiene 2 dias para evaluar la tarea como maximo, en caso de exceder ese tiempo quedaria como nula la evaluacion de esa tarea por parte de uno de los evaluadores
no se como hacer la tarea automatica
he buscado info pero ningun tutorial sale con manzanas para explicar a modo facil :/
ALGO DE CODIGO
Código PHP:
<?php
if (isset($_GET['task_status'])&& isset($_GET['task_id'])) {
$tasks_id = $_GET['task_id'];
$status_pcg = $_GET['task_status'];
$hoy = date('Y-m-d H:i:s', time());
//PREGUNTA SI EXISTE O NO LA TAREA EN LA TABLA task_tmp PARA SU POSTERIOR INSERCIÓN O ACTUALIZACIÓN EN CASO DE QUE NO EXISTIERA
$query = mysql_query(('SELECT task_id FROM task_tmp WHERE task_id = '. $tasks_id),$dbh);
if ($array = mysql_fetch_assoc($query)) {
//ALGORITMO PARA CALIFICAR TAREA CON ESTADO FINAL...
//OBTIENE ESTADO PROPORCIONADO POR EL RC PARA LA MISMA TAREA
$query2 = mysql_query("SELECT task_tmp_rc FROM task_tmp WHERE task_id ='$tasks_id'");
$status_rc_tmp = mysql_fetch_assoc($query2);
$status_rc = $status_rc_tmp['task_tmp_rc'];
//OBTIENE FECHA TERMINO DE TAREA
$q_tasks = mysql_query ("SELECT task_end_date FROM tasks WHERE task_id = '$task_id'");
$date_task = mysql_fetch_assoc($q_tasks);
$end_date = $date_Task['task_end_date'];
//OBTIENE FECHA INGRESO DE ULTIMO LOG DE TAREA
$q_log = mysql_query ("SELECT task_log_date FROM task_log WHERE task_log_task = '$task_id'
ORDER BY(task_log_date) DESC");
$row_log = mysql_fetch_assoc($q_log);
$fecha_log = $row_log['task_log_date'];
//echo $row['task_log_date']; //ultima fecha de log de la tarea de id task_id
//CALIFICACION DE TAREAS
if($status_pcg == 'aceptado_pcg' && $status_rc == 'aceptado_rc'){
//ESTABLECIMIENTO DEL ESTADO FINAL
if($end_date >= $fecha_log){
echo"TERMINÓ LA TAREA EN EL TIEMPO CORRECTO";
//$rf = ; // TERMINÓ LA TAREA EN EL TIEMPO CORRECTO
}else{
echo"TERMINÓ LA TAREA ATRASADA";
//$rf = ; // TERMINÓ LA TAREA ATRASADA
}
}
else if($status_pcg == 'rechazado_rc' || $status_rc == 'rechazado_pcg'){
//ESTABLECIMIENTO DEL ESTADO FINAL RECHAZADO
if($end_date >= $fecha_log){
//$rf = ; // TAREA RECHAZADA EN TIEMPO CORRECTO (PROGRESO?)
}else{
//$rf = ; // TAREA RECHAZADA EN TIEMPO ATRASADO (PROGRESO, ATRASADO?)
}
}
//ACTUALIZA DATOS DE pcg EN task_tmp
$actualizacion = " UPDATE task_tmp SET
task_tmp_pcg = '$status_pcg',
task_tmp_pcgdate = '$hoy',
task_tmp_result = '$rf'
WHERE task_id ='$tasks_id'";
mysql_query($actualizacion, $dbh) or die ("problema con query2");
echo "Actualización Correcta";
}
else{
// INSERTA DATOS DE LA EVALUACIÓN DE pcg EN task_tmp
$insercion = " INSERT INTO task_tmp (task_id, task_tmp_pcg, task_tmp_pcgdate)
VALUES ('$tasks_id','$status_pcg','$hoy')";
mysql_query($insercion, $dbh) or die ("problema con query");
echo "Inserción Correcta";
}
}
?>
gracias de ante mano