From 2fc4db529e70c3b58c9658b30c712c3e5ba2acda Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mart=C3=ADn=20Marrese?= Date: Wed, 13 Aug 2003 20:06:04 +0000 Subject: [PATCH] Agenda Terminada --- doc/servicios/agenda/agenda.xmi | 42 +++- sistema/local_lib/Servicios/Agenda.php | 240 ++++++++++++++++++++++- sistema/www/servicios/agenda/agenda1.php | 3 +- sistema/www/servicios/agenda/agenda2.php | 3 +- 4 files changed, 278 insertions(+), 10 deletions(-) diff --git a/doc/servicios/agenda/agenda.xmi b/doc/servicios/agenda/agenda.xmi index c676056..f4e23ee 100644 --- a/doc/servicios/agenda/agenda.xmi +++ b/doc/servicios/agenda/agenda.xmi @@ -9,19 +9,40 @@ - + + + + + + + + + + + + + + - + @@ -30,11 +51,22 @@ - - - + + + + + + + + + + + + + + diff --git a/sistema/local_lib/Servicios/Agenda.php b/sistema/local_lib/Servicios/Agenda.php index 5e03582..f2a4bb9 100644 --- a/sistema/local_lib/Servicios/Agenda.php +++ b/sistema/local_lib/Servicios/Agenda.php @@ -37,6 +37,182 @@ * @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 ?> diff --git a/sistema/www/servicios/agenda/agenda1.php b/sistema/www/servicios/agenda/agenda1.php index cbf9e4d..252b984 100644 --- a/sistema/www/servicios/agenda/agenda1.php +++ b/sistema/www/servicios/agenda/agenda1.php @@ -24,8 +24,7 @@ Autor: Martin Marrese $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'; diff --git a/sistema/www/servicios/agenda/agenda2.php b/sistema/www/servicios/agenda/agenda2.php index d5f5ced..b5d3b71 100644 --- a/sistema/www/servicios/agenda/agenda2.php +++ b/sistema/www/servicios/agenda/agenda2.php @@ -24,8 +24,7 @@ Autor: Martin Marrese $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'; -- 2.43.0