X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/5abe7ef1ec5663faf09616fd23709c2e46a61d26..42d6a1b132be5d398f30320b6b20162f978f8aa0:/lib/MECON/NovedadesDia.php diff --git a/lib/MECON/NovedadesDia.php b/lib/MECON/NovedadesDia.php index 8b92056..b5a6195 100644 --- a/lib/MECON/NovedadesDia.php +++ b/lib/MECON/NovedadesDia.php @@ -39,17 +39,16 @@ class MECON_NovedadesDia { var $_db = null; - function MECON_NovedadesDia($agente, $fecha) { + function MECON_NovedadesDia(&$db, $agente, $fecha) { #validar el tipo de $fecha $this->agente = $agente; $this->fecha = $fecha; #Ver de donde sacar esto bonito... - $dsn = "mysql://intranet:intranet@intranet-db/novedades"; - $this->_db = DB::connect( $dsn , true); + $this->_db = $db; if(DB::isError($this->_db)) - die($this->_db->getMessage()); + trigger_error($this->_db->getMessage(), E_USER_ERROR); #Carga las novedades del agente/fecha en la lista de novedades $this->BuscarLicencia(); @@ -86,10 +85,25 @@ class MECON_NovedadesDia { function debioVenir() { $ret = true; foreach($this->novedades as $novedad) { - if(!($novedad->codigo == 'Adde' - or $novedad->codigo == 'Aden' - or $novedad->codigo == 'Ato' - or $novedad->codigo == 'Atp')) + if(!($novedad->codigo == 'adde' + or $novedad->codigo == 'aden' + or $novedad->codigo == 'adden' + or $novedad->codigo == 'ahp' + or $novedad->codigo == 'anul' + or $novedad->codigo == 'ato' + or $novedad->codigo == 'atp' + or $novedad->codigo == 'interr/13a' + or $novedad->codigo == 'interr/9' + or $novedad->codigo == 'interrup' + or $novedad->codigo == 'lta' + or $novedad->codigo == 'sinnov' + or $novedad->codigo == 'tsj' + or $novedad->codigo == '10a/c' + or $novedad->codigo == '10b' + or $novedad->codigo == '10e' + or $novedad->codigo == '15a' + or $novedad->codigo == '15b' + )) $ret = false; } return $ret; @@ -105,17 +119,19 @@ class MECON_NovedadesDia { function BuscarLicencia() { $fecha = $this->fecha->format("%Y%m%d"); - $query = "SELECT codnov - FROM web018 + $query = "SELECT codnov,descripcion + FROM web018,webnov WHERE docagente = $this->agente AND diadesde <= $fecha - AND diahasta >= $fecha"; + AND diahasta >= $fecha + AND codnov = codigo"; $result = $this->_db->query($query); if(DB::isError($result)) - die($result->getMessage()); + trigger_error($result->getMessage(), E_USER_ERROR); while($r = $result->fetchRow()) { $novedad = new MECON_Novedad(); $novedad->codigo = $r[0]; + $novedad->descripcion = $r[1]; array_push($this->novedades, $novedad); } } @@ -124,16 +140,18 @@ class MECON_NovedadesDia { $fecha = $this->fecha->getYear()."-". $this->fecha->getMonth()."-". $this->fecha->getDay(); - $query = "SELECT novedad, desde, hasta - FROM parciales + $query = "SELECT novedad, desde, hasta, descripcion + FROM parciales,webnov WHERE fecha = '$fecha' - AND nrodoc = $this->agente"; + AND nrodoc = $this->agente + AND novedad = codigo"; $result = $this->_db->query($query); if(DB::isError($result)) - die($result->getMessage()); + trigger_error($result->getMessage(), E_USER_ERROR); while($r = $result->fetchRow()) { $novedad = new MECON_Novedad(); $novedad->codigo = $r[0]; + $novedad->descripcion = $r[3]; $novedad->intervalo = new MECON_Tiempo_Intervalo(new MECON_Tiempo_Hora($r[1]), new MECON_Tiempo_Hora($r[2])); array_push($this->novedades, $novedad); } @@ -145,17 +163,22 @@ class MECON_NovedadesDia { $dia = $this->fecha->getDay() + 0; //el +0 hace que tome al dia como numero //y no le agregue un 0 si es < que 10 $ano = $this->fecha->getYear(); - $query = "SELECT novedad - FROM web020 + $query = "SELECT novedad,descripcion + FROM web020,webnov WHERE anio = $ano AND mes = $mes AND nrodoc = $this->agente - AND dia$dia = 1"; + AND dia$dia = 1 + AND novedad = codigo"; $result = $this->_db->query($query); + if(DB::isError($result)) + trigger_error($result->getMessage(), E_USER_ERROR); if($c = $result->fetchRow()) { $codigo = $c[0]; + $descripcion = $c[1]; $novedad = new MECON_Novedad(); $novedad->codigo = $codigo; + $novedad->descripcion = $descripcion; array_push($this->novedades, $novedad); } }