]> git.llucax.com Git - mecon/meconlib.git/blob - lib/MECON/Agente.php
Bugfixes.
[mecon/meconlib.git] / lib / MECON / Agente.php
1 <?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
2 -------------------------------------------------------------------------------
3                              Ministerio de Economía
4                                     meconlib
5 -------------------------------------------------------------------------------
6 This file is part of meconlib.
7  
8 meconlib is free software; you can redistribute it and/or modify it under
9 the terms of the GNU General Public License as published by the Free
10 Software Foundation; either version 2 of the License, or (at your option)
11 any later version.
12  
13 meconlib is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16  
17 You should have received a copy of the GNU General Public License; if not,
18 write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
19 Boston, MA  02111-1307  USA
20 -------------------------------------------------------------------------------
21 Creado: Thu Jun 19 15:17:11 2003
22 Autor:  Gonzalo Merayo <gmeray@mecon.gov.ar>
23 -------------------------------------------------------------------------------
24 $Id$
25 -----------------------------------------------------------------------------*/
26
27 require_once 'DB.php';
28 require_once 'MECON/Tiempo/Hora.php';
29
30 /**
31  * @access public
32  */
33 class MECON_Agente {
34
35     /**
36      * Documento del agente.
37      */
38     var $agente;
39
40     /**
41      * Datos del agente
42      */
43     var $datos;
44
45     /**
46      * @return string
47      */
48     function getDependencia()
49     {
50         return $this->datos['codep'];//TODO esta no es la columna correcta
51     }
52
53     /**
54      * @return void
55      * @access public
56      */
57     function getTipo()
58     {
59         if(!in_array('tipo_agente',array_keys($this->datos)))
60             return 'CON '.$this->datos['marco_legal'];
61         else
62             return $this->datos['tipo_agente'];
63
64     }
65
66     /**
67      * @param  int $agente 
68      *
69      * @return void
70      * @access public
71      */
72     // FIXME function MECON_Agente($db, $agente)
73     function MECON_Agente($agente)
74     {
75         // FIXME - $this->_db = $db;
76         $this->_db = DB::connect('mysql://intranet:intranet@intranet-db.mecon.ar/novedades');
77         if(! is_null($agente)) {
78             $this->buscarAgente($agente);
79         }
80     }
81
82     /**
83      * @return void
84      * @access public
85      */
86     function getNombre()
87     {
88         return $this->datos['nombre'];
89     }
90
91     /**
92      * @return void
93      * @access public
94      */
95     function getHoraDesde()
96     {
97         if(is_null($this->datos['hentra']))
98             return new MECON_Tiempo_Hora($this->datos['hora_desde']);
99         else
100             return new MECON_Tiempo_Hora($this->datos['hentra']);
101     }
102
103     /**
104      * @return void
105      * @access public
106      */
107     function getHoraHasta()
108     {
109         if(is_null($this->datos['hsale']))
110             return new MECON_Tiempo_Hora($this->datos['hora_hasta']);
111         else
112             return new MECON_Tiempo_Hora($this->datos['hsale']);
113     }
114
115     /**
116      * @return void
117      * @access public
118      */
119     function getCuil()
120     {
121         $aux = $this->datos['cuil'];
122         $aux = preg_replace('/(\d{2})(\d*)(\d{1})/','$1-$2-$3',$aux);
123         return $aux;
124     }
125
126     /**
127      * @return void
128      * @access public
129      */
130     function getOtrosDatos()
131     {
132         if(!is_null($this->datos['tipo_agente'])) {
133             $aux['tipo_doc'] = $this->datos['tipodoc'];
134             $aux['fecha_nac'] = $this->datos['fecha_nac'];
135             $aux['edad'] = $this->datos['edad'];
136             $aux['estado_civil'] = $this->datos['estado_civil'];
137             $aux['domicilio'] = $this->datos['domicilio'];
138             $aux['puerta'] = $this->datos['num_puerta'];
139             $aux['piso'] = $this->datos['piso'];
140             $aux['depto'] = $this->datos['depto'];
141             $aux['localidad'] = $this->datos['localidad'];
142             $aux['provincia'] = $this->datos['provincia'];
143             $aux['calle1'] = $this->datos['calle1'];
144             $aux['calle2'] = $this->datos['calle2'];
145             $aux['cp'] = $this->datos['cp'];
146             $aux['telefono'] = $this->datos['telefono'];
147             $aux['cargo'] = $this->datos['cargo'];
148             $aux['nivel'] = $this->datos['nivel'];
149             $aux['grado'] = $this->datos['grado'];
150             $aux['func_ejec'] = $this->datos['func_ejec'];
151             $aux['obra_social'] = $this->datos['obra_social'];
152             $aux['afiliado'] = $this->datos['afiliado'];
153             $aux['conyuge'] = $this->datos['conyuge'];
154             $aux['fecha_nac_conyuge'] = $this->datos['fecha_nac_cony'];
155             $aux['tipo_doc_conyuge'] = $this->datos['tipodoc_cony'];
156             $aux['nro_doc_cony'] = $this->datos['nrodoc_cony'];
157             return $aux;
158         } else {
159             return false;
160         }
161     }
162
163     /**
164      * @param  int $agente 
165      *
166      * @return void
167      * @access public
168      */
169     function buscarAgente($agente)
170     {
171         $this->agente = $agente;
172         $sql = "SELECT *
173                FROM novedades.web003
174                WHERE nrodoc = $agente";
175         $result = $this->_db->query($sql);
176         if(DB::isError($result))
177             trigger_error($result->getMessage("query mal hecho"), E_USER_ERROR);
178         if($result->numRows() > 0) {
179             $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
180         } else {
181             $sql = "SELECT *
182                    FROM Contratados.Contratados
183                    WHERE nrodoc = $agente";
184             $result = $this->_db->query($sql);
185             if(DB::isError($result)) {
186                 trigger_error($result->getMessage("query mal hecho"), E_USER_ERROR);
187             }
188             if($result->numRows() > 0) {
189                 $this->datos = $result->fetchRow(DB_FETCHMODE_ASSOC);
190             } else {
191                 return false;
192             }
193         }
194         return true;
195     }
196
197 }
198 ?>