protected function InicializarRoles($username) { $this->roles = array(); $db = new Conexion(); $db->abrirConexion(); $db->seleccion('roles', 'r.id_rol,r.descripcion', ' r inner join usuario u on r.id_rol = u.rol', 'u.id_usuario="' . $username . '"', 'r.id_rol asc', null); $resultado = $db->obtenerResultado(); foreach ($resultado as &$rol) { $this->roles[$rol["descripcion"]] = Roles::obtenerPermisosDelRol($rol["id_rol"]); } }
public static function obtenerPermisosDelRol($role_id) { $role = new Roles(); $db = new Conexion(); $db->abrirConexion(); $db->seleccion('relacion_rol_permiso', 'p.descripcion', ' r inner join permisos p on r.id_permiso = p.id_permiso', 'r.id_rol="' . $role_id . '" and r.estado="A"', 'p.id_permiso asc', null); $permisos = $db->obtenerResultado(); foreach ($permisos as &$permiso) { $role->permissions[$permiso['descripcion']] = true; } return $role; }
// print file_get_contents('php://input'); $data = json_decode(file_get_contents('php://input')); // var_dump($data); /* include('core.php'); $cn = new Conexion(); $cn->abrirConexion(); $cn->seleccion('usuario','*',NULL,'rol="1"','id_usuario DESC'); $res = $cn->obtenerResultadoJson(); print_r($res); */ if (isset($data) && isset($data->usuario) && $data->usuario != "" && isset($data->password) && $data->password != "") { include 'core.php'; $cn = new Conexion(); $cn->abrirConexion(); $cn->seleccion('usuario', 'id_usuario,usuario,rol', NULL, 'password="******" and usuario = "' . $data->usuario . '"', 'id_usuario DESC'); if ($cn->numeroRegistros() > 0) { $res = $cn->obtenerResultado(); $_SESSION['id_usuario'] = $res[0]['id_usuario']; $_SESSION['usuario'] = $res[0]['usuario']; $_SESSION['rol'] = $res[0]['rol']; $resArray['success'] = 'Se ha logueado correctamente'; print json_encode($resArray); } else { http_response_code(403); $resArray = array(); $resArray['error'] = 'Usuario o Password incorrecto, por favor introduzca los datos correctos.'; // var_dump($resArray); print json_encode($resArray); } } else {
function obtenerSelect($data) { if ($data->idTransaccion == '1') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('descripcion', 'id_descripcion,descripcion', null, 'estado="A" and tipo="' . $data->tipo . '" ', 'id_descripcion asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '2') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('medicamento', 'id_medicamento,descripcion', null, 'estado="A"', 'id_medicamento asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '3') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('presentacion_medicamento', 'id_presentacion,presentacion_medicamento.descripcion', "medicamento md on (md.id_presentacion_salida=presentacion_medicamento.id_presentacion)", "md.estado='A' and md.id_medicamento='" . $data->idBusqueda . "'", 'id_presentacion asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '4') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('presentacion_medicamento', 'id_presentacion,descripcion', null, 'estado="A"', 'id_presentacion asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '5') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', 'id_empleado,concat(nombre," ",paterno," ",materno) nombre,turno, area, departamento, nss', null, 'id_empleado="' . $data->idBusqueda . '" and estado="A"', 'id_empleado asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '6') { //select de los datos de la consulta para generar los eventos del calendario $db = new Conexion(); $db->abrirConexion(); $db->seleccion('consulta', 'c.id_consulta,c.id_empleado,e.nombre,e.paterno,e.materno,c.peso,c.talla,c.altura,c.frecuencia_respiratoria,c.frecuencia_cardiaca,c.temperatura,c.asistencia,c.fecha_inicio,c.fecha_fin', 'c inner join empleado e on c.id_empleado = e.id_empleado', 'c.fecha_inicio>="' . $data->fecha_inicio . '" and c.fecha_fin<="' . $data->fecha_fin . '"', 'c.fecha_inicio asc', null); ///print $db->obtenerSQL(); $consultas = $db->obtenerResultado(); foreach ($consultas as &$consulta) { $db->seleccion('medicamento', 'm.id_medicamento,m.descripcion', 'm inner join relacion_medicamento_tablas rmt on m.id_medicamento = rmt.id_medicamento', 'rmt.id_tabla="' . $consulta['id_consulta'] . '" and rmt.descripcion_tabla = "consulta"', null, null); $medicamentos = $db->obtenerResultado(); //var_dump($medicamentos); $consulta['medicamentos'] = $medicamentos; $consulta['title'] = $consulta['nombre'] . ' ' . $consulta['paterno'] . ' ' . $consulta['materno']; $consulta['start'] = $consulta['fecha_inicio']; $consulta['end'] = $consulta['fecha_fin']; } return $consultas; } else { if ($data->idTransaccion == '7') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('medicamento', 'm.id_medicamento,m.clave,m.descripcion,m.precio,m.cantidad,m.cantidad_minima,pm.descripcion presentacion,pm.cantidad cantidad_entrada', 'm inner join presentacion_medicamento pm on m.id_presentacion_entrada = pm.id_presentacion', 'm.estado="A" and m.clave like "%' . $data->clave . '%" and m.descripcion like "%' . $data->descripcion . '%"', 'm.id_medicamento asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '8') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('medicamento', 'm.id_medicamento,m.clave,m.descripcion,m.precio,m.cantidad,m.cantidad_minima,pm.descripcion presentacion,pm.cantidad cantidad_entrada', 'm inner join presentacion_medicamento pm on m.id_presentacion_entrada = pm.id_presentacion', 'm.estado="A" and m.clave like "%' . $data->clave . '%"', 'm.id_medicamento asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '9') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('medicamento', 'm.id_medicamento,m.clave,m.descripcion,m.precio,m.cantidad,m.cantidad_minima,pm.descripcion presentacion,pm.cantidad cantidad_entrada', 'm inner join presentacion_medicamento pm on m.id_presentacion_entrada = pm.id_presentacion', 'm.estado="A" and m.descripcion like "%' . $data->descripcion . '%"', 'id_medicamento asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '10') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('usuario', 'u.id_usuario,u.usuario,u.password,u.rol,r.descripcion', 'u inner join roles r on u.rol=r.id_rol', 'estado="A" and usuario like "%' . $data->usuario . '%"', 'id_usuario asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '11') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('roles', 'id_rol,descripcion', null, null, 'id_rol asc', null); $roles = $db->obtenerResultado(); foreach ($roles as &$rol) { $permisoDelRol = Roles::obtenerPermisosDelRol($rol["id_rol"]); $db->seleccion('permisos', 'id_permiso,descripcion', null, null, 'id_permiso asc', null); $permisos = $db->obtenerResultado(); foreach ($permisos as &$permiso) { if ($permisoDelRol->tienePermiso($permiso['descripcion'])) { $permiso['activo'] = true; } else { $permiso['activo'] = false; } } $rol['permisos'] = $permisos; } return $roles; } else { if ($data->idTransaccion == '12') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('roles', 'id_rol,descripcion', null, null, 'id_rol asc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '13') { //select de los datos de la consulta para generar los eventos del calendario $db = new Conexion(); $db->abrirConexion(); $db->seleccion('consulta', 'c.id_consulta,c.id_empleado,e.nombre,e.paterno,e.materno,c.peso,c.talla,c.altura,c.frecuencia_respiratoria,c.frecuencia_cardiaca,c.temperatura,c.asistencia,c.fecha_inicio,c.fecha_fin', 'c inner join empleado e on c.id_empleado = e.id_empleado', 'c.fecha_inicio>="' . $data->fecha_inicio . '" and c.fecha_fin<="' . $data->fecha_fin . '" and c.asistencia = "N"', 'c.fecha_inicio asc', null); ///print $db->obtenerSQL(); $consultas = $db->obtenerResultado(); foreach ($consultas as &$consulta) { $db->seleccion('medicamento', 'm.id_medicamento,m.descripcion', 'm inner join relacion_medicamento_tablas rmt on m.id_medicamento = rmt.id_medicamento', 'rmt.id_tabla="' . $consulta['id_consulta'] . '" and rmt.descripcion_tabla = "consulta"', null, null); $medicamentos = $db->obtenerResultado(); //var_dump($medicamentos); $consulta['medicamentos'] = $medicamentos; $consulta['title'] = $consulta['nombre'] . ' ' . $consulta['paterno'] . ' ' . $consulta['materno']; $consulta['start'] = $consulta['fecha_inicio']; $consulta['end'] = $consulta['fecha_fin']; } return $consultas; } else { if ($data->idTransaccion == '14') { //Select para traerse las visitas en un rango de fechas $db = new Conexion(); $db->abrirConexion(); $db->seleccion('visita', 'v.id_visita,v.fecha, v.id_empleado, v.id_usuario_creacion, v.id_diagnostico,' . 'upper(d.descripcion),upper(concat(e.nombre," ",e.paterno," ",e.materno)) nombre,' . 'e.turno,e.departamento, e.area,p.descripcion proceso ', 'v inner join descripcion d on v.id_diagnostico = d.id_descripcion ' . 'inner join empleado e on e.id_empleado = v.id_empleado ' . 'left join descripcion p on v.id_proceso = p.id_descripcion ', 'v.fecha>="' . $data->fecha_inicio . '" and v.fecha<="' . $data->fecha_fin . '"', 'v.fecha asc', null); ///print $db->obtenerSQL(); $visitas = $db->obtenerResultado(); foreach ($visitas as &$visita) { $db->seleccion('medicamento', 'm.id_medicamento,m.descripcion', 'm inner join relacion_medicamento_tablas rmt on m.id_medicamento = rmt.id_medicamento', 'rmt.id_tabla="' . $visita['id_visita'] . '" and rmt.descripcion_tabla = "visita"', null, null); $medicamentos = $db->obtenerResultado(); //var_dump($medicamentos); $visita['medicamentos'] = $medicamentos; /*$visita['title'] = $visita['nombre'].' '.$consulta['paterno'].' '.$consulta['materno']; $visita['start'] = $visita['fecha_inicio']; $visita['end'] = $visita['fecha_fin'];*/ } return $visitas; } else { if ($data->idTransaccion == '15') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('pase_salida', "ps.fecha_creacion as fecha,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,\n e.id_empleado,e.turno,e.departamento,ps.motivo as motivo", "ps inner join empleado e on (e.id_empleado = ps.id_empleado)", null, 'id_pase desc', '1'); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '17') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('pase_salida', "ps.fecha_creacion as fecha,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,\n e.id_empleado,e.turno,e.departamento,e.area,ps.motivo as motivo", "ps inner join empleado e on (e.id_empleado = ps.id_empleado)", null, 'ps.fecha_creacion desc', null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '16') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('relacion_medicamento_tablas', "m.descripcion,sum(rmt.cantidad) total", "rmt inner join medicamento m on rmt.id_medicamento = m.id_medicamento", ' rmt.fecha >= "' . $data->fecha_inicio . '" and rmt.fecha <= "' . $data->fecha_fin . '" group by m.descripcion', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '18') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "e.id_empleado,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,count(*) total", "e inner join consulta c on e.id_empleado = c.id_empleado", ' c.fecha >= "' . $data->fecha_inicio . '" and c.fecha <= "' . $data->fecha_fin . '" group by nombre_completo,e.id_empleado', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '19') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "e.id_empleado,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,count(*) total", "e inner join visita v on e.id_empleado = v.id_empleado", ' v.fecha >= "' . $data->fecha_inicio . '" and v.fecha <= "' . $data->fecha_fin . '" group by nombre_completo,e.id_empleado', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '20') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,e.id_empleado,d.descripcion solicita,m.semana,m.respetar,m.motivo,m.supervisor,m.fecha_creacion fecha", "e inner join memo m on e.id_empleado = m.id_empleado inner join descripcion d on d.id_descripcion = m.id_solicita", ' m.fecha_creacion >= "' . $data->fecha_inicio . ' 00:00:00" and m.fecha_creacion <= "' . $data->fecha_fin . ' 23:59:59"', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '22') { $db = new Conexion(); $db->abrirConexion(); $db->SQLLibre('' . " select 'CONSULTA' AS LUGAR,d.descripcion AS DESCRIPCION ,count(*) AS CANTIDAD from consulta c" . " inner join descripcion d on (d.id_descripcion = c.id_descripcion)" . " where" . " c.fecha>= '" . $data->fecha_inicio . "' and c.fecha<='" . $data->fecha_fin . "'" . " group by d.id_descripcion" . " union all" . " select 'EXPEDIENTE',d.descripcion,count(*) from expediente e" . " inner join descripcion d on (d.id_descripcion = e.diagnostico)" . " where" . " e.fecha>= '" . $data->fecha_inicio . "' and e.fecha<='" . $data->fecha_fin . "'" . " group by d.id_descripcion "); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '23') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "e.id_empleado,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,count(*) total", "e left join pase_salida c on e.id_empleado = c.id_empleado", ' c.fecha_creacion >= "' . $data->fecha_inicio . '" and c.fecha_creacion <= "' . $data->fecha_fin . '" group by nombre_completo,e.id_empleado', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '24') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "m.id_empleado,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,fecha,peso,talla,altura,frecuencia_respiratoria,\n frecuencia_cardiaca,temperatura,imc,interrogatorio,exploracion_fisica,tratamiento,m.diagnostico,d1.descripcion as ramo_seguro,\n d2.descripcion as otras_indicaciones, d3.descripcion as pase_imss,p.descripcion as proceso", "e inner join expediente m on (e.id_empleado = m.id_empleado)\n inner join descripcion d1 on (m.id_ramo_seguro=d1.id_descripcion) inner join descripcion d2 on (m.id_otras_indicaciones = d2.id_descripcion)\n inner join descripcion d3 on (m.id_pase_imss=d3.id_descripcion) " . 'left join descripcion p on m.id_proceso = p.id_descripcion ', ' m.fecha >= "' . $data->fecha_inicio . '" and m.fecha <= "' . $data->fecha_fin . '"', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '25') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "m.id_empleado,concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,fecha,peso,talla,altura,frecuencia_respiratoria,\n frecuencia_cardiaca,temperatura,imc,interrogatorio,exploracion_fisica,tratamiento,d.descripcion as diagnostico,d1.descripcion as ramo_seguro,\n d2.descripcion as otras_indicaciones, d3.descripcion as pase_imss", "e inner join expediente m on (e.id_empleado = m.id_empleado) inner join descripcion d on (d.id_descripcion= m.diagnostico)\n inner join descripcion d1 on (m.id_ramo_seguro=d1.id_descripcion) inner join descripcion d2 on (m.id_otras_indicaciones = d2.id_descripcion)\n inner join descripcion d3 on (m.id_pase_imss=d3.id_descripcion) ", ' m.fecha >= "' . $data->fecha_inicio . '" and m.fecha <= "' . $data->fecha_fin . '"', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '26') { //Select para traerse las visitas en un rango de fechas $db = new Conexion(); $db->abrirConexion(); $db->seleccion('consulta', 'c.id_consulta,c.fecha,c.id_empleado, c.id_usuario_creacion, c.id_diagnostico,' . 'upper(d.descripcion),upper(concat(e.nombre," ",e.paterno," ",e.materno)) nombre,' . 'e.turno,e.departamento, e.area, p.descripcion proceso', 'c inner join descripcion d on c.id_diagnostico = d.id_descripcion ' . 'inner join empleado e on e.id_empleado = c.id_empleado ' . 'left join descripcion p on c.id_proceso = p.id_descripcion ', 'c.fecha>="' . $data->fecha_inicio . '" and c.fecha<="' . $data->fecha_fin . '"', 'c.fecha asc', null); $consultas = $db->obtenerResultado(); foreach ($consultas as &$consulta) { $db->seleccion('medicamento', 'm.id_medicamento,m.descripcion', 'm inner join relacion_medicamento_tablas rmt on m.id_medicamento = rmt.id_medicamento', 'rmt.id_tabla="' . $consulta['id_consulta'] . '" and rmt.descripcion_tabla = "consulta"', null, null); $medicamentos = $db->obtenerResultado(); $consulta['medicamentos'] = $medicamentos; } return $consultas; } else { if ($data->idTransaccion == '27') { $db = new Conexion(); $db->abrirConexion(); $db->seleccion('empleado', "concat(e.nombre,' ',materno,' ',paterno) as nombre_completo,e.id_empleado,d.descripcion entrega,\n d2.descripcion clasificacion,d3.descripcion ramo_seguro,i.folio,i.inicio,i.fin,i.fecha_creacion fecha", "e inner join incapacidad i on e.id_empleado = i.id_empleado\n inner join descripcion d on d.id_descripcion = i.id_entrega\n inner join descripcion d2 on d2.id_descripcion = i.id_clasificacion\n inner join descripcion d3 on d3.id_descripcion = i.id_ramo_seguro", ' i.fecha_creacion >= "' . $data->fecha_inicio . '" and i.fecha_creacion <= "' . $data->fecha_fin . '"', null, null); return $db->obtenerResultado(); } else { if ($data->idTransaccion == '28') { //Select de los datos del empleado $db = new Conexion(); $db->abrirConexion(); $db->seleccion('medicamento', 'm.id_medicamento,m.clave,m.descripcion,m.precio,m.cantidad,pm.descripcion presentacion,pm.cantidad cantidad_entrada,cantidad_minima ', 'm inner join presentacion_medicamento pm on m.id_presentacion_entrada = pm.id_presentacion', 'm.estado="A"', 'm.id_medicamento asc', null); return $db->obtenerResultado(); } } } } } } } } } } } } } } } } } } } } } } } } } } } }
<?php include 'core.php'; $cn = new Conexion(); $cn->abrirConexion(); $cn->seleccion('usuario', '*', NULL, 'rol="1"', 'id_usuario DESC'); $res = $cn->obtenerResultadoJson(); print_r($res); ?> <!DOCTYPE html> <html lang="">s <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Title Page</title> <!-- Bootstrap CSS --> <link href="http://netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet"> <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> <![endif]--> </head> <body> <h1 class="text-center">Hello World</h1> <!-- jQuery -->