コード例 #1
0
 public function eliminarAreas($numeroDocumento)
 {
     $connection = parent::initDB();
     $query = "DELETE FROM usuario_area WHERE usuario = '{$numeroDocumento}'";
     mysql_query($query);
     if (mysql_affected_rows() == 0) {
         throw new Exception('No se pudo eliminar el area');
     }
     parent::closeDB($connection);
 }
コード例 #2
0
 public function getNivel($idNivel)
 {
     $connection = parent::initDB();
     $query = "SELECT idNivel, nombre, descripcion FROM nivel " . "WHERE idNivel = " . $idNivel;
     $result = mysql_query($query);
     if (mysql_num_rows($result) == 0) {
         throw new Exception('No se pudo obtener el nivel');
     }
     $row = mysql_fetch_array($result);
     $nivel = new Nivel();
     $nivel->setIdNivel($row['idNivel']);
     $nivel->setNombre($row['nombre']);
     $nivel->setDescripcion($row['descripcion']);
     parent::closeDB($connection);
     return $nivel;
 }
コード例 #3
0
 public function existeSuperposicion($semanaEspecial)
 {
     $connection = parent::initDB();
     $query = "SELECT * " . "FROM semana_especial " . "WHERE str_to_date('" . $semanaEspecial->imprimirInicio() . "', '%d-%m-%Y') < fin AND " . "      inicio < str_to_date('" . $semanaEspecial->imprimirFin() . "', '%d-%m-%Y') AND " . "      periodo = " . $semanaEspecial->getPeriodo()->getIdPeriodo();
     $result = mysql_query($query);
     if (mysql_num_rows($result) == 0) {
         parent::closeDB($connection);
         return false;
     } else {
         parent::closeDB($connection);
         return true;
     }
 }
コード例 #4
0
 public function reporteFaltasDelDia($dia, $area)
 {
     $connection = parent::initDB();
     if ($area == 0) {
         $query = "SELECT nombre, apellido, numeroDocumento, area, ingreso, egreso " . "FROM (SELECT idHorario AS horario, usuario, area, ingreso, egreso " . "      FROM horario_asignado " . "      WHERE dia = dayofweek(str_to_date('{$dia}', '%d-%m-%Y'))) AS horariosDelDia " . "      LEFT OUTER JOIN " . "      (SELECT idTurno AS turno, horario, fecha " . "      FROM turno_usuario_area " . "      WHERE fecha = str_to_date('{$dia}', '%d-%m-%Y')) AS turnosDelDia " . "      ON horariosDelDia.horario = turnosDelDia.horario, usuario " . "WHERE turno IS NULL AND " . "      usuario.numeroDocumento =  horariosDelDia.usuario ";
     } else {
         $query = "SELECT nombre, apellido, numeroDocumento, area, ingreso, egreso " . "FROM (SELECT idHorario AS horario, usuario, area, ingreso, egreso " . "      FROM horario_asignado " . "      WHERE dia = dayofweek(str_to_date('{$dia}', '%d-%m-%Y'))) AS horariosDelDia " . "      LEFT OUTER JOIN " . "      (SELECT idTurno AS turno, horario, fecha " . "      FROM turno_usuario_area " . "      WHERE fecha = str_to_date('{$dia}', '%d-%m-%Y')) AS turnosDelDia " . "      ON horariosDelDia.horario = turnosDelDia.horario, usuario " . "WHERE turno IS NULL AND " . "      usuario.numeroDocumento =  horariosDelDia.usuario AND " . "      area = {$area} ";
     }
     $result = mysql_query($query);
     $filas = array();
     while ($row = mysql_fetch_array($result)) {
         $fila = new FilaReporteFaltas();
         $fila->setNombre($row['nombre']);
         $fila->setApellido($row['apellido']);
         $fila->setNumeroDocumento($row['numeroDocumento']);
         $fila->setArea($this->areaDAO->getArea($row['area']));
         $fila->setIngreso($row['ingreso']);
         $fila->setEgreso($row['egreso']);
         array_push($filas, $fila);
     }
     parent::closeDB($connection);
     return $filas;
 }
コード例 #5
0
 public function reporteNotificacionesFaltasConReemplazoEntreLosDias($fechaInicio, $fechaFin, $area)
 {
     $connection = parent::initDB();
     if ($area == 0) {
         $query = "SELECT usuarioFalta.numeroDocumento AS numeroDocumento, usuarioFalta.nombre AS nombre,\n                   usuarioFalta.apellido AS apellido, area, fechaFalta, horaFalta,\n                   usuarioRecupera.numeroDocumento AS numeroDocumentoRecupera,\n                   usuarioRecupera.nombre AS nombreRecupera,\n                   usuarioRecupera.apellido AS apellidoRecupera,\n                   fechaRecupera, horaRecupera, fechaRegistro\n        FROM usuario AS usuarioFalta, notificacion_falta_usuarios, usuario AS usuarioRecupera\n        WHERE usuarioRecupera != usuarioFalta AND\n                  notificacion_falta_usuarios.usuarioFalta = usuarioFalta.numeroDocumento AND\n                  notificacion_falta_usuarios.usuarioRecupera = usuarioRecupera.numeroDocumento AND\n                  fechaFalta BETWEEN str_to_date('{$fechaInicio}', '%d-%m-%Y') AND str_to_date('{$fechaFin}', '%d-%m-%Y')";
     } else {
         $query = "SELECT usuarioFalta.numeroDocumento AS numeroDocumento, usuarioFalta.nombre AS nombre,\n                   usuarioFalta.apellido AS apellido, area, fechaFalta, horaFalta,\n                   usuarioRecupera.numeroDocumento AS numeroDocumentoRecupera,\n                   usuarioRecupera.nombre AS nombreRecupera,\n                   usuarioRecupera.apellido AS apellidoRecupera,\n                   fechaRecupera, horaRecupera, fechaRegistro\n        FROM usuario AS usuarioFalta, notificacion_falta_usuarios, usuario AS usuarioRecupera\n        WHERE usuarioRecupera != usuarioFalta AND\n                  notificacion_falta_usuarios.usuarioFalta = usuarioFalta.numeroDocumento AND\n                  notificacion_falta_usuarios.usuarioRecupera = usuarioRecupera.numeroDocumento AND\n                  fechaFalta BETWEEN str_to_date('{$fechaInicio}', '%d-%m-%Y') AND str_to_date('{$fechaFin}', '%d-%m-%Y') AND area = {$area}";
     }
     $result = mysql_query($query);
     $filas = array();
     while ($row = mysql_fetch_array($result)) {
         $fila = new FilaReporteNotificacionesFaltasConReemplazo();
         $fila->setApellido($row['apellido']);
         $fila->setNombre($row['nombre']);
         $fila->setNumeroDocumento($row['numeroDocumento']);
         $fila->setArea($this->areaDAO->getArea($row['area']));
         if (!empty($row['fechaFalta'])) {
             $fila->setFechaFaltaISO($row['fechaFalta']);
         }
         if (!empty($row['horaFalta'])) {
             $fila->setHoraFalta($row['horaFalta']);
         }
         if (!empty($row['nombreRecupera'])) {
             $fila->setNombreRecupera($row['nombreRecupera']);
         }
         if (!empty($row['apellidoRecupera'])) {
             $fila->setApellidoRecupera($row['apellidoRecupera']);
         }
         if (!empty($row['numeroDocumentoRecupera'])) {
             $fila->setNumeroDocumentoRecupera($row['numeroDocumentoRecupera']);
         }
         if (!empty($row['fechaRecupera'])) {
             $fila->setFechaRecuperaISO($row['fechaRecupera']);
         }
         if (!empty($row['horaRecupera'])) {
             $fila->setHoraRecupera($row['horaRecupera']);
         }
         if (!empty($row['fechaRegistro'])) {
             $fila->setFechaRegistro($row['fechaRegistro']);
         }
         array_push($filas, $fila);
     }
     parent::closeDB($connection);
     return $filas;
 }