]> git.llucax.com Git - mecon/intranet.git/commitdiff
Agenda Terminada
authorMartín Marrese <marrese@gmail.com>
Wed, 13 Aug 2003 20:06:04 +0000 (20:06 +0000)
committerMartín Marrese <marrese@gmail.com>
Wed, 13 Aug 2003 20:06:04 +0000 (20:06 +0000)
doc/servicios/agenda/agenda.xmi
sistema/local_lib/Servicios/Agenda.php
sistema/www/servicios/agenda/agenda1.php
sistema/www/servicios/agenda/agenda2.php

index c67605677191c1faa2063122903c83027f8b973c..f4e23ee7dc9bab41dbea6d8e533098a719e79a09 100644 (file)
@@ -9,19 +9,40 @@
   <XMI.metamodel xmi.name="UML" href="UML.xml" xmi.version="1.3" />
  </XMI.header>
  <XMI.content>
-  <docsettings viewid="173" documentation="Familiares a cargo del agente" uniqueid="175" />
+  <docsettings viewid="173" documentation="Familiares a cargo del agente" uniqueid="186" />
   <umlobjects>
    <UML:Class stereotype="" package="" xmi.id="156" abstract="0" documentation="x2c:extern" name="DB" static="0" scope="200" />
    <UML:Class stereotype="" package="" xmi.id="174" abstract="0" documentation="Clase para el manejo de la agenda en la cual se muestran la informacion de los internos de los diferentes edificios." name="Servicios_Agenda" static="0" scope="200" >
     <UML:Operation stereotype="" package="" xmi.id="175" type="array ()" abstract="0" documentation="" name="getEdificios" static="1" scope="200" >
      <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="DB" abstract="0" documentation="Conexiona la base de datos" name="db" static="0" scope="200" />
     </UML:Operation>
+    <UML:Operation stereotype="" package="" xmi.id="176" type="void" abstract="0" documentation="Constructor" name="Servicios_Agenda" static="0" scope="200" >
+     <UML:Parameter stereotype="" package="" xmi.id="1" value="" type="&amp;DB" abstract="0" documentation="Conexion a la base de datos." name="db" static="0" scope="200" />
+    </UML:Operation>
+    <UML:Operation stereotype="" package="" xmi.id="186" type="array" abstract="0" documentation="Busca la informacion en la base. Devuelve un array de array o null." name="obtenerInfo" static="0" scope="200" />
+    <UML:Attribute stereotype="" package="" xmi.id="177" value="" type="DB" abstract="0" documentation="Conexion a la base de datos" name="db" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="178" value="null" type="int" abstract="0" documentation="Interno a buscar
+x2c:set" name="interno" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="179" value="null" type="string" abstract="0" documentation="Nombre a buscar
+x2c:set" name="nombre" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="180" value="null" type="string" abstract="0" documentation="Codep a buscar
+x2c:set" name="codep" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="181" value="null" type="string" abstract="0" documentation="Descripcion de la dependencia a buscar
+x2c:set" name="dependencia" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="182" value="null" type="int" abstract="0" documentation="Codigo de edificio a buscar
+x2c:set" name="edificio" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="183" value="null" type="int" abstract="0" documentation="Piso a buscar
+x2c:set" name="piso" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="184" value="null" type="string" abstract="0" documentation="Oficina a buscar
+x2c:set" name="oficina" static="0" scope="201" />
+    <UML:Attribute stereotype="" package="" xmi.id="185" value="null" type="string" abstract="0" documentation="Criterio para ordenar
+x2c:set" name="ordenar" static="0" scope="201" />
    </UML:Class>
   </umlobjects>
   <diagrams>
    <diagram snapgrid="1" showattsig="1" fillcolor="#ffffc0" showgrid="1" showopsig="1" usefillcolor="1" snapx="10" snapy="10" showatts="1" xmi.id="173" documentation="" type="402" showops="1" showpackage="0" name="Agenda" localid="30000" showstereotype="0" showscope="1" font="Courier [Adobe],12,-1,5,50,0,0,0,1,0" linecolor="#ff0000" >
     <widgets>
-     <UML:ConceptWidget usesdiagramfillcolour="0" width="354" showattsigs="601" usesdiagramusefillcolour="0" x="30" linecolour="#ff0000" y="120" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="42" usefillcolor="1" showattributes="1" xmi.id="174" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Courier [Adobe],12,-1,5,50,0,0,0,1,0" />
+     <UML:ConceptWidget usesdiagramfillcolour="0" width="364" showattsigs="601" usesdiagramusefillcolour="0" x="30" linecolour="#ff0000" y="120" showopsigs="601" usesdiagramlinecolour="0" fillcolour="#ffffc0" height="221" usefillcolor="1" showattributes="1" xmi.id="174" showoperations="1" showpackage="0" showscope="1" showstereotype="0" font="Courier [Adobe],12,-1,5,50,0,0,0,1,0" />
     </widgets>
     <messages/>
     <associations/>
   <listview>
    <listitem open="1" type="800" id="-1" label="Views" >
     <listitem open="1" type="801" id="-1" label="Logical View" >
-     <listitem open="1" type="813" id="174" label="Servicios_Agenda" >
-      <listitem open="0" type="815" id="175" label="getEdificios" />
-     </listitem>
      <listitem open="1" type="807" id="173" label="Agenda" />
      <listitem open="1" type="813" id="156" label="DB" />
+     <listitem open="0" type="813" id="174" label="Servicios_Agenda" >
+      <listitem open="0" type="814" id="180" label="codep" />
+      <listitem open="0" type="814" id="177" label="db" />
+      <listitem open="0" type="814" id="181" label="dependencia" />
+      <listitem open="0" type="814" id="182" label="edificio" />
+      <listitem open="0" type="815" id="175" label="getEdificios" />
+      <listitem open="0" type="814" id="178" label="interno" />
+      <listitem open="0" type="814" id="179" label="nombre" />
+      <listitem open="0" type="815" id="186" label="obtenerInfo" />
+      <listitem open="0" type="814" id="184" label="oficina" />
+      <listitem open="0" type="814" id="185" label="ordenar" />
+      <listitem open="0" type="814" id="183" label="piso" />
+      <listitem open="0" type="815" id="176" label="Servicios_Agenda" />
+     </listitem>
     </listitem>
     <listitem open="1" type="802" id="-1" label="Use Case View" />
    </listitem>
index 5e03582dfd59a1db243cd0e56111d166049f1a9d..f2a4bb9fb78052c156b13c98a6fcc6336caac29a 100644 (file)
  * @access public
  */
 class Servicios_Agenda {
+    /**
+     * Conexion a la base de datos
+     *
+     * @var    DB $db
+     * @access private
+     */
+    var $_db;
+
+    /**
+     * Interno a buscar
+     *
+     * @var    int $interno
+     * @access private
+     */
+    var $_interno = null;
+
+    /**
+     * Nombre a buscar
+     *
+     * @var    string $nombre
+     * @access private
+     */
+    var $_nombre = null;
+
+    /**
+     * Codep a buscar
+     *
+     * @var    string $codep
+     * @access private
+     */
+    var $_codep = null;
+
+    /**
+     * Descripcion de la dependencia a buscar
+     *
+     * @var    string $dependencia
+     * @access private
+     */
+    var $_dependencia = null;
+
+    /**
+     * Codigo de edificio a buscar
+     *
+     * @var    int $edificio
+     * @access private
+     */
+    var $_edificio = null;
+
+    /**
+     * Piso a buscar
+     *
+     * @var    int $piso
+     * @access private
+     */
+    var $_piso = null;
+
+    /**
+     * Oficina a buscar
+     *
+     * @var    string $oficina
+     * @access private
+     */
+    var $_oficina = null;
+
+    /**
+     * Criterio para ordenar
+     *
+     * @var    string $ordenar
+     * @access private
+     */
+    var $_ordenar = null;
+
+    /**
+     * Sets Interno.
+     *
+     * @param  int $interno Interno.
+     *
+     * @return void
+     * @access public
+     */
+    function setInterno($interno)
+    {
+        $this->_interno = $interno;
+    }
+
+    /**
+     * Sets Nombre.
+     *
+     * @param  string $nombre Nombre.
+     *
+     * @return void
+     * @access public
+     */
+    function setNombre($nombre)
+    {
+        $this->_nombre = $nombre;
+    }
+
+    /**
+     * Sets Codep.
+     *
+     * @param  string $codep Codep.
+     *
+     * @return void
+     * @access public
+     */
+    function setCodep($codep)
+    {
+        $this->_codep = $codep;
+    }
+
+    /**
+     * Sets Dependencia.
+     *
+     * @param  string $dependencia Dependencia.
+     *
+     * @return void
+     * @access public
+     */
+    function setDependencia($dependencia)
+    {
+        $this->_dependencia = $dependencia;
+    }
+
+    /**
+     * Sets Edificio.
+     *
+     * @param  int $edificio Edificio.
+     *
+     * @return void
+     * @access public
+     */
+    function setEdificio($edificio)
+    {
+        $this->_edificio = $edificio;
+    }
+
+    /**
+     * Sets Piso.
+     *
+     * @param  int $piso Piso.
+     *
+     * @return void
+     * @access public
+     */
+    function setPiso($piso)
+    {
+        $this->_piso = $piso;
+    }
+
+    /**
+     * Sets Oficina.
+     *
+     * @param  string $oficina Oficina.
+     *
+     * @return void
+     * @access public
+     */
+    function setOficina($oficina)
+    {
+        $this->_oficina = $oficina;
+    }
+
+    /**
+     * Sets Ordenar.
+     *
+     * @param  string $ordenar Ordenar.
+     *
+     * @return void
+     * @access public
+     */
+    function setOrdenar($ordenar)
+    {
+        $this->_ordenar = $ordenar;
+    }
+
     // ~X2C
 
     // +X2C Operation 175
@@ -50,7 +226,7 @@ class Servicios_Agenda {
     function getEdificios($db) // ~X2C
     {
         $rta['-'] = '-';
-        $consulta = 'select cod_edificio, desc_edificio from edificios where cod_edificio <> 13 order by desc_edificio';
+        $consulta = 'select cod_edificio, desc_edificio from agenda.edificios where cod_edificio <> 13 order by desc_edificio';
         $dbh = $db->prepare($consulta);
         $res = $db->execute($dbh);
         while ($re = $res->fetchrow(DB_FETCHMODE_ASSOC)) {
@@ -61,5 +237,67 @@ class Servicios_Agenda {
     }
     // -X2C
 
+    // +X2C Operation 176
+    /**
+     * Constructor
+     *
+     * @param  DB &$db Conexion a la base de datos.
+     *
+     * @return void
+     * @access public
+     */
+    function Servicios_Agenda(&$db) // ~X2C
+    {
+        $this->_db = $db;
+    }
+    // -X2C
+
+    // +X2C Operation 186
+    /**
+     * Busca la informacion en la base. Devuelve un array de array o null.
+     *
+     * @return array
+     * @access public
+     */
+    function obtenerInfo() // ~X2C
+    {
+        $sql = 'SELECT interno, nombre, internos.codep, dependencia, desc_edificio as edificio, piso, oficina 
+                FROM   agenda.internos, agenda.dependencias, agenda.edificios
+                WHERE  dependencias.codep=internos.codep AND
+                       edificios.cod_edificio=internos.cod_edif ';
+        
+        $sql.=($this->_interno)  ? ' AND interno = '.$this->_interno:''; 
+        $sql.=($this->_codep)    ? ' AND internos.codep = '.$this->_codep:''; 
+        $sql.=($this->_edificio) ? ' AND internos.cod_edif = '.$this->_edificio:''; 
+        $sql.=($this->_piso)     ? ' AND piso = '.$this->_piso:''; 
+        $sql.=($this->_oficina)  ? ' AND oficina = '.$this->_oficina:''; 
+        
+        if ($this->_nombre) {
+            $nom = split('/ /',$this->_nombre);
+            foreach ($nom as $n) {
+               $sql.= " AND nombre LIKE '%$n%'";
+            }
+        }
+        if ($this->_dependencia && $this->_dependencia != '--Ingrese una palabra clave--') {
+            $dep = split('/ /',$this->_dependencia);
+            foreach ($dep as $d) {
+                $sql.= " AND dependencia LIKE '%$d%'";
+            }
+        }
+        
+        $sql.=($this->_ordenar)  ? ' order by '.$this->_ordenar :''; 
+
+        $dbh = $this->_db->prepare($sql);
+        $res = $this->_db->execute($dbh);
+
+        $rta = null;
+        while ($re  = $res->fetchRow()) {
+            $rta[]= $re;
+        }
+        
+        return $rta;
+    }
+    // -X2C
+
 } // -X2C Class :Servicios_Agenda
 ?>
index cbf9e4dac60f0401ee47eb8d9ec11265c7742cbc..252b984355d4a5506330822d0878dc1b5a403652 100644 (file)
@@ -24,8 +24,7 @@ Autor:  Martin Marrese <mmarre@mecon.gov.ar>
 $Id$
 -----------------------------------------------------------------------------*/
 //REQUIRE ONCE {{{
-require_once '/home/mmarrese/public_html/intranet/sistema/local_lib/Servicios/Agenda.php';
-//require_once '../../../local_lib/Servicios/Agenda.php';
+require_once '../../../local_lib/Servicios/Agenda.php';
 require_once 'HTML/Table.php';
 require_once '../../../local_lib/HTML_DietMarco.php';
 require_once 'MECON/HTML/QuickForm.php';
index d5f5ced74512add1955014645a3caa5ee54a6628..b5d3b715ff3d2d0faef15a4ed2437220393ceef5 100644 (file)
@@ -24,8 +24,7 @@ Autor:  Martin Marrese <mmarre@mecon.gov.ar>
 $Id$
 -----------------------------------------------------------------------------*/
 //REQUIRE ONCE {{{
-require_once '/home/mmarrese/public_html/intranet/sistema/local_lib/Servicios/Agenda.php';
-//require_once '../../../local_lib/Servicios/Agenda.php';
+require_once '../../../local_lib/Servicios/Agenda.php';
 require_once 'HTML/Table.php';
 require_once '../../../local_lib/HTML_DietMarco.php';
 require_once 'HTML/Image.php';