]> git.llucax.com Git - mecon/yatta.git/blobdiff - lib/YATTA/Proceso.php
Modificaciones para la seccion procesos
[mecon/yatta.git] / lib / YATTA / Proceso.php
index 0f7c963e2dc1964b583bd3ff14d96b1965738b7c..df7310ca550cc5a60b2cc28b6705ea27156de6fa 100644 (file)
@@ -172,6 +172,14 @@ class YATTA_Proceso extends MECON_DBO {
      * @access public
      */
     var $nota = null;
      * @access public
      */
     var $nota = null;
+
+    /**
+     * Descripcion del estado.
+     *
+     * @var    string $icono
+     * @access public
+     */
+    var $icono = null;
     
     /**
      * Carga el objeto con los datos que se pasan por parametro.
     
     /**
      * Carga el objeto con los datos que se pasan por parametro.
@@ -185,6 +193,7 @@ class YATTA_Proceso extends MECON_DBO {
     {
         // Si es un resultado, obtengo los elemento.
         if (is_a($db, 'db_result')) {
     {
         // Si es un resultado, obtengo los elemento.
         if (is_a($db, 'db_result')) {
+            $this->predefinirAtributos();
             $res = $db->fetchRow(DB_FETCHMODE_ASSOC);
             // Si hay error lo devuelve.
             if (DB::isError($res)) {
             $res = $db->fetchRow(DB_FETCHMODE_ASSOC);
             // Si hay error lo devuelve.
             if (DB::isError($res)) {
@@ -193,27 +202,28 @@ class YATTA_Proceso extends MECON_DBO {
             elseif (!$res) {
                 return false;
             }
             elseif (!$res) {
                 return false;
             }
+
+            $this->id               = $res['id'];
+            $fecha                  =& new Date ($res['fecha'].' 00:00:00');
+            $this->fecha            = $fecha; 
+            $this->script           = $res['script'];
+            $this->id_sistema       = $res['id_sistema'];
+            $this->nombre_sistema   = $res['nombre_sistema'];
+            $this->descripcion      = $res['descripcion'];
+            $this->pid              = $res['pid'];
+            $this->server           = $res['server'];
+            $this->status           = $res['status'];
+            $this->owner            = $res['owner'];
+            $this->destinos         = split(',', $res['destinos']);
+            $this->prioridad        = $res['prioridad'];
+            $this->scheduling       = $res['scheduling'];
+            $this->notificar        = $res['notificar'];
+            $this->resultado        = $res['resultado'];
+            $this->nota             = $res['nota'];
+            $this->icono            = $res['icono'];
+            return true;
         }
         }
-        
-        $this->id               = $res['id'];
-        $fecha                  =& new Date ($res['fecha'].' 00:00:00');
-        $this->fecha            = $fecha; 
-        $this->script           = $res['script'];
-        $this->id_sistema       = $res['id_sistema'];
-        $this->nombre_sistema   = $res['nombre_sistema'];
-        $this->descripcion      = $res['descripcion'];
-        $this->pid              = $res['pid'];
-        $this->server           = $res['server'];
-        $this->status           = $res['status'];
-        $this->owner            = $res['owner'];
-        $this->destinos         = split(',', $res['destinos']);
-        $this->prioridad        = $res['prioridad'];
-        $this->scheduling       = $res['scheduling'];
-        $this->notificar        = $res['notificar'];
-        $this->resultado        = $res['resultado'];
-        $this->nota             = $res['nota'];
-   
-        return true;
+        return false; 
     }
 
     /**
     }
 
     /**
@@ -242,6 +252,9 @@ class YATTA_Proceso extends MECON_DBO {
     function buscar($db = null, $operador = MECON_DBO_OR, $orden = null) 
     {
         // Armo el WHERE.
     function buscar($db = null, $operador = MECON_DBO_OR, $orden = null) 
     {
         // Armo el WHERE.
+        if (is_null($this->owner)) {
+            return new PEAR_Error ('Debe definirse el Owner del proceso.');
+        }
         $where = array();
         if (!is_null($this->id)) {
             $where[] = 'p.id = '.$this->id;
         $where = array();
         if (!is_null($this->id)) {
             $where[] = 'p.id = '.$this->id;
@@ -257,16 +270,16 @@ class YATTA_Proceso extends MECON_DBO {
             $where[] = 'p.fecha = '. $db->quote("$fecha");
         }
         if (!is_null($this->script)) {
             $where[] = 'p.fecha = '. $db->quote("$fecha");
         }
         if (!is_null($this->script)) {
-            $where[] = 'p.script LIKE'. $db->quote("%$this->script%");
+            $where[] = 'p.script LIKE '. $db->quote("%$this->script%");
         }
         if (!is_null($this->id_sistema)) {
             $where[] = 'p.id_sistema = '. $this->id_sistema; 
         }
         if (!is_null($this->nombre_sistema)) {
         }
         if (!is_null($this->id_sistema)) {
             $where[] = 'p.id_sistema = '. $this->id_sistema; 
         }
         if (!is_null($this->nombre_sistema)) {
-            $where[] = 's.nombre_sistema LIKE'. $db->quote("%$this->nombre_sistema%");
+            $where[] = 's.nombre_sistema LIKE '. $db->quote("%$this->nombre_sistema%");
         }
         if (!is_null($this->descripcion)) {
         }
         if (!is_null($this->descripcion)) {
-            $where[] = 'p.descripcion LIKE'. $db->quote("%$this->descripcion%");
+            $where[] = 'p.descripcion LIKE '. $db->quote("%$this->descripcion%");
         }
         if (!is_null($this->pid)) {
             $where[] = 'p.pid = '.$this->pid;
         }
         if (!is_null($this->pid)) {
             $where[] = 'p.pid = '.$this->pid;
@@ -277,40 +290,39 @@ class YATTA_Proceso extends MECON_DBO {
         if (!is_null($this->status)) {
             $where[] = 'p.status = '.$this->status;
         }
         if (!is_null($this->status)) {
             $where[] = 'p.status = '.$this->status;
         }
-        if (!is_null($this->owner)) {
-            $where[] = 'p.owner LIKE'. $db->quote("%$this->owner%");
-        }
         if (!is_null($this->destinos)) {
             if (is_array($this->destinos)) {
                 foreach ($this->destinos as $destino) {
         if (!is_null($this->destinos)) {
             if (is_array($this->destinos)) {
                 foreach ($this->destinos as $destino) {
-                    $where[] = 'p.destinos LIKE'. $db->quote("%$destino");
+                    $where[] = 'p.destinos LIKE '. $db->quote("%$destino");
                 }
             }
             else {
                 }
             }
             else {
-                $where[] = 'p.destinos LIKE'. $db->quote("%$this->destinos%");
+                $where[] = 'p.destinos LIKE '. $db->quote("%$this->destinos%");
             }
         }
         if (!is_null($this->prioridad)) {
             $where[] = 'p.prioridad = '.$this->prioridad;
         }
         if (!is_null($this->scheduling)) {
             }
         }
         if (!is_null($this->prioridad)) {
             $where[] = 'p.prioridad = '.$this->prioridad;
         }
         if (!is_null($this->scheduling)) {
-            $where[] = 'p.scheduling LIKE'. $db->quote("%$this->scheduling%");
+            $where[] = 'p.scheduling LIKE '. $db->quote("%$this->scheduling%");
         } 
         if (!is_null($this->notificar)) {
             $where[] = 'p.notificar ='. $this->notificar;
         } 
         if (!is_null($this->resultado)) {
         } 
         if (!is_null($this->notificar)) {
             $where[] = 'p.notificar ='. $this->notificar;
         } 
         if (!is_null($this->resultado)) {
-            $where[] = 'p.resultado LIKE'. $db->quote("%$this->resultado%");
+            $where[] = 'p.resultado LIKE '. $db->quote("%$this->resultado%");
         } 
         if (!is_null($this->nota)) {
         } 
         if (!is_null($this->nota)) {
-            $where[] = 'p.nota LIKE'. $db->quote("%$this->nota%");
+            $where[] = 'p.nota LIKE '. $db->quote("%$this->nota%");
         } 
         if ($where) {
         } 
         if ($where) {
-            $where = 'WHERE p.id_sistema = s.id_sistema AND ('. join ("$operador
+            $where = 'WHERE p.owner = '. $db->quote("$this->owner").
+                'AND p.id_sistema = s.id_sistema AND ('. join ("$operador
                         ", $where).')';
         } 
         else {
                         ", $where).')';
         } 
         else {
-            $where = '';
+            $where = 'WHERE p.owner = '. $db->quote("$this->owner").
+                'AND p.id_sistema = s.id_sistema';
         }
         // Armo el ORDER BY.
         if (is_string($orden))
         }
         // Armo el ORDER BY.
         if (is_string($orden))
@@ -331,7 +343,23 @@ class YATTA_Proceso extends MECON_DBO {
                 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 
                 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,".
+                "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.".
+                "',".
+                "IF(p.status = 2, 'El proceso ha finalizado. ".
+                "',".
+                "IF(p.status = 3, 'Se produjo un error durante la ejecucion".
+                " del proceso.".
+                "',".
+                "'El proceso fue detenido por alguna persona (el responsable o".
+                " el administrador).".
+                "'".
+                ")".
+                ")".
+                ")".
+                ") AS icono               
                 FROM yatta.procesos AS p, samurai.sistema AS s
                 $where
                 $orden");
                 FROM yatta.procesos AS p, samurai.sistema AS s
                 $where
                 $orden");
@@ -415,6 +443,7 @@ class YATTA_Proceso extends MECON_DBO {
         $this->notificar = null;
         $this->resultado = null;
         $this->nota = null;
         $this->notificar = null;
         $this->resultado = null;
         $this->nota = null;
+        $this->icono = null;
     }
 }
 ?>
\ No newline at end of file
     }
 }
 ?>
\ No newline at end of file