X-Git-Url: https://git.llucax.com/mecon/yatta.git/blobdiff_plain/763af8f8638f2e6c8833c1faf01f0dfa76259774..855e52d23917114954f97ad0066f51c89ff7aa1a:/lib/YATTA/Proceso.php diff --git a/lib/YATTA/Proceso.php b/lib/YATTA/Proceso.php index df7310c..c193787 100644 --- a/lib/YATTA/Proceso.php +++ b/lib/YATTA/Proceso.php @@ -105,10 +105,9 @@ class YATTA_Proceso extends MECON_DBO { * Estado del proceso. * 0 = En Espera * 1 = Procesando - * 2 = Finalizado sin copiar el resultado al tacho - * 3 = Finalizado - * 4 = Error - * 5 = Abortado + * 2 = Finalizado + * 3 = Error + * 4 = Abortado * * @var int $status * @access public @@ -164,6 +163,14 @@ class YATTA_Proceso extends MECON_DBO { */ var $resultado = null; + /** + * Nombre del archivo en el tacho + * + * @var string $archivo + * @access public + */ + var $archivo = null; + /** * Nota explicativa sobre el error producido o el motivo por el cual se * aborto el proceso. @@ -202,10 +209,8 @@ class YATTA_Proceso extends MECON_DBO { elseif (!$res) { return false; } - $this->id = $res['id']; - $fecha =& new Date ($res['fecha'].' 00:00:00'); - $this->fecha = $fecha; + $this->fecha = $res['fecha']; $this->script = $res['script']; $this->id_sistema = $res['id_sistema']; $this->nombre_sistema = $res['nombre_sistema']; @@ -219,6 +224,7 @@ class YATTA_Proceso extends MECON_DBO { $this->scheduling = $res['scheduling']; $this->notificar = $res['notificar']; $this->resultado = $res['resultado']; + $this->archivo = $res['archivo']; $this->nota = $res['nota']; $this->icono = $res['icono']; return true; @@ -337,13 +343,15 @@ class YATTA_Proceso extends MECON_DBO { $orden = ''; } - return $db->query("SELECT p.id AS id, p.fecha AS fecha, p.script AS + return $db->query("SELECT p.id AS id, + DATE_FORMAT(p.fecha, '%d-%m-%Y') AS fecha, + p.script AS script, p.id_sistema AS id_sistema, s.nombre_sistema AS nombre_sistema, p.descripcion AS descripcion, p.pid AS pid, p.server AS server, p.status AS status, p.owner AS owner, p.destinos AS destinos, p.prioridad AS prioridad, p.scheduling AS scheduling, p.notificar AS notificar, p.resultado AS - resultado, p.nota AS nota,". + resultado, p.nota AS nota, p.archivo AS archivo, ". "IF (p.status = 0, 'El proceso esta en cola. Aun no se ejecuto.". "', ". "IF(p.status = 1, 'El proceso se esta ejecutando en este momento.". @@ -366,14 +374,33 @@ class YATTA_Proceso extends MECON_DBO { } /** + * Guarda los datos en la base. + * * @param DB $db Conexion a la base de datos. * @param bool $nuevo Indica si se trata de un nuevo registro en la base. * * @return mixed * @access public */ - function guardar($db = null, $nuevo = false) + function guardar($db = null, $nuevo = true) { +/* + //@TODO PASAR ESTO A UNA CLASE SERVIDOR + //Busco el servidor + $res = $db->query('SELECT id, escala * procesos AS ponderacion + FROM yatta.servidores + ORDER BY ponderacion, escala'); + $res = $res->fetchRow(DB_FETCHMODE_ASSOC); + // Si hay error lo devuelve. + if (DB::isError($res)) { + return $res; + } + $this->server = $res['id']; + //Asigno la fecha + if (@is_null($this->fecha)) { + $this->fecha = date ('Y-m-d'); + } + if ($nuevo) { $datos = array ( 'fecha' => $this->fecha, @@ -389,6 +416,7 @@ class YATTA_Proceso extends MECON_DBO { 'scheduling' => $this->scheduling, 'notificar' => $this->notificar, 'resultado' => $this->resultado, + 'archivo' => $this->archivo, 'nota' => $this->nota ); @@ -410,6 +438,7 @@ class YATTA_Proceso extends MECON_DBO { 'scheduling' => $this->scheduling, 'notificar' => $this->notificar, 'resultado' => $this->resultado, + 'archivo' => $this->archivo, 'nota' => $this->nota ); @@ -417,7 +446,16 @@ class YATTA_Proceso extends MECON_DBO { DB_AUTOQUERY_UPDATE, 'id = '.$this->id); } - return $res; + + if (DB::isError($res)) { + return $res; + } + + return $db->query(' + UPDATE yatta.servidores + SET procesos = procesos + 1 + WHERE id = '. $this->server); +*/ } /** @@ -442,8 +480,28 @@ class YATTA_Proceso extends MECON_DBO { $this->scheduling = null; $this->notificar = null; $this->resultado = null; + $this->archivo = null; $this->nota = null; $this->icono = null; } + + /** + * Devuelve un array asociativo con los valores del proceso. + * + * @return array + * @access public + */ + function obtenerDatos() { + return array ( + 'script' => $this->script, + 'id_sistema' => $this->id_sistema, + 'descripcion' => $this->descripcion, + 'owner' => $this->owner, + 'destinos' => $this->destinos, + 'prioridad' => $this->prioridad, + 'scheduling' => $this->scheduling, + 'notificar' => $this->notificar, + ); + } } ?> \ No newline at end of file