%--
Document : desp_muestra_monitores
Created on : 22/11/2011, 09:50:25 AM
Author : psoto
--%>
<%@page contentType="text/html"%>
<%@page pageEncoding="UTF-8"%>
<%@page
import = "conexion.*"
import = "java.sql.*"
import = "general.Config"
import = "general.Permisos"
import = "own.codec.*"
import = "java.text.NumberFormat"
%>
Desplegar Monitores del Sistema
<%
/****** Despliega la lista de cines del sistema filtrados por el texto de búsqueda de buscar_cines.jsp (no obligatorio)***********/
/********************************************creado por: L.I. Salvador Díaz Parra*******************************************************/
out.println("");
String nompag[] = request.getRequestURI().split("/");
%>
<%
ConexionEquipos c = null;
Connection lcnt_con = null;
ResultSet lrs_res = null;
Statement lst_stm = null;
String ls_query = new String("");
String emergent_error = new String("");
boolean lb_connection = false;
String debug = new String("si");
boolean elementos_encontrados = false;
String patron_busqueda = new String("");
String patron_enviar = new String("");
String tipo_enviar = new String("");
String tipo_busqueda = new String("");
String lower_limit = new String("0");
String upper_limit = new String("1");
String total_telefonia = new String("0");
boolean permiso_agregar = false;
boolean permiso_editar = false;
boolean permiso_eliminar = false;
boolean permiso_historico = false;
// Conexión a la base de datos
try {
if (!Config.getParametro("debug").equals("si")) {
debug = "no";
}
c = new ConexionEquipos();
lcnt_con = c.getConnection();
lst_stm = lcnt_con.createStatement();
lb_connection = true;
} catch (Exception e) {
emergent_error = "Error al conectarse a la base de datos ";
if (debug.equals("si")) {
emergent_error += e;
}
lb_connection = false;
}
//********* Validación fundamental para evitar ejecución de código sin privilegios suficientes **********//
try {
if (!Permisos.PermisoModulo(nompag[nompag.length - 1].toString(), Integer.parseInt(session.getAttribute("id_user").toString()))) {
if (lb_connection) {
lst_stm.close();
lcnt_con.close();
}
emergent_error += " Privilegios insuficientes. ";
lb_connection = false;
}
} catch (Exception e) {
emergent_error += " Privilegios insuficientes. ";
if (debug.equals("si")) {
emergent_error += "Trace: " + e.toString();
}
lb_connection = false;
}
//*******************************************************************************************************//
if (lb_connection) {
try {
// Intentando recuperar valor de patrón de búsqueda
try {
tipo_busqueda = " id_monitor > 0 AND m.status=true ";
if (request.getParameter("tipo_busqueda") != null) {
if (request.getParameter("tipo_busqueda").equals("1")) {
tipo_busqueda = " m.status=true AND id_monitor > 0 ";
tipo_enviar += "tipo_busqueda=1&";
} else if (request.getParameter("tipo_busqueda").equals("2")) {
tipo_busqueda = " m.status=false AND id_monitor > 0 ";
tipo_enviar += "tipo_busqueda=2&";
} else if (request.getParameter("tipo_busqueda").equals("3")) {
tipo_busqueda = " id_monitor > 0 AND (m.status= true or m.status= false ) ";
tipo_enviar += "tipo_busqueda=3&";
}
}
patron_busqueda = request.getParameter("patron_busqueda").replace('\'', '"');
if (patron_busqueda.equals("buscar...")) {
patron_busqueda = "";
}
patron_enviar = "&patron_busqueda=" + patron_busqueda;
patron_enviar = patron_enviar.replace('á', 'a').replace('é', 'e').replace('í', 'i').replace('ó', 'o').replace('ú', 'u').replace('Á', 'A').replace('É', 'E').replace('Í', 'I').replace('Ó', 'O').replace('Ú', 'U');
if (!patron_busqueda.contains("%") || !patron_busqueda.contains("?")) {
patron_busqueda = " WHERE " + tipo_busqueda + " AND (m.CI LIKE '%" + patron_busqueda + "%' OR cg.nombre LIKE '%" + patron_busqueda + "%' OR cg.apellido_paterno LIKE '%" + patron_busqueda + "%' OR cg.apellido_materno LIKE '%" + patron_busqueda + "%' )";
} else {
patron_busqueda = " WHERE " + tipo_busqueda + " AND (m.CI LIKE '%" + patron_busqueda + "%' OR cg.nombre LIKE '%" + patron_busqueda + "%' OR cg.apellido_paterno LIKE '%" + patron_busqueda + "%' OR cg.apellido_materno LIKE '%" + patron_busqueda + "%' )";
}
} catch (Exception e) {
patron_enviar = "";
tipo_enviar = "";
patron_busqueda = " WHERE " + tipo_busqueda;
}
ls_query="SELECT "
+ " COUNT( id_monitor) as total_telefonia "
+ "FROM monitores m "
+ "LEFT JOIN usuarios_cargos cg USING(id_usuarios_cargos) "
+ "LEFT JOIN cat_areas ca USING(id_area) "
+ " "+patron_busqueda
+ " ORDER BY id_monitor;";
lrs_res = lst_stm.executeQuery(ls_query);
if (lrs_res.next()) {
total_telefonia = lrs_res.getString("total_telefonia");
} else {
total_telefonia = "0";
}
// para la paginacion
try {
lower_limit = (request.getParameter("lower").toString()== null?"0":request.getParameter("lower").toString());
upper_limit = String.valueOf(Integer.valueOf(request.getParameter("lower").toString()== null?"0":request.getParameter("lower").toString()) + 50);
upper_limit = "50";
} catch (Exception e) {
lower_limit = "0";
upper_limit = "50";
}
permiso_agregar = Permisos.PermisoModulo("frm_agregar_monitor.jsp", Integer.parseInt(session.getAttribute("id_user").toString()));
permiso_editar = Permisos.PermisoModulo("frm_modificar_monitor.jsp", Integer.parseInt(session.getAttribute("id_user").toString()));
permiso_eliminar = Permisos.PermisoModulo("desp_desactivar_monitor.jsp", Integer.parseInt(session.getAttribute("id_user").toString()));
permiso_historico = Permisos.PermisoModulo("desp_historico_monitor.jsp", Integer.parseInt(session.getAttribute("id_user").toString()));
%>
Monitores
<%
//Intentando recuperar variable de sesión para mensajes pendientes
try{
String mensaje_pendiente = session.getAttribute("mensaje_pendiente").toString();
%>
<%=mensaje_pendiente%>
<%
session.removeAttribute("mensaje_pendiente");
}
catch (Exception e){
}
%>
<%
} catch (Exception e) {
emergent_error += "Error: " + e.toString() + " Ultimo query: " + ls_query;
%>
<%=emergent_error%>
<%
} finally {
lst_stm.close();
}
} else {
%>
<%=emergent_error%>
<%
}
if (!elementos_encontrados) {
%>
<%=(patron_enviar == "" ? "No hay Monitores registrados" : "No se encontraron Monitores que coincidan con los criterios de búsqueda. ")%>
<%
}
//Registrar en la bitácora
try {
String mensaje_log = new String("");
if (patron_enviar.equals("")) {
mensaje_log = "Usuario -" + session.getAttribute("username").toString() + "- desplegó lista de Monitores del sistema;";
} else {
mensaje_log = "Usuario -" + session.getAttribute("username").toString() + "- realizó búsqueda de Monitores con patrón -" + patron_enviar.substring(17) + "-;";
}
Config.GuardarLog(Integer.parseInt(session.getAttribute("id_user").toString()), mensaje_log, 3);
} catch (Exception e) {
}
%>