<%@page contentType="text/html"%> <%@page pageEncoding="UTF-8"%> <%@page import="conexion.*" import="java.sql.*" import="general.Config" %> Desplegar Usuarios del Sistema <% /****** Despliega la lista de usuarios del sistema filtrados por el texto de búsqueda de buscar_usuarios.jsp (no obligatorio)***********/ /********************************************creado por: L.I. Salvador Díaz Parra*******************************************************/ /*****************************************************modificado: FrOyAmEL**************************************************************/ out.println(""); %> <% 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"); String columna_ordenada = new String(""); String patron_busqueda = new String(""); String patron_enviar = new String(""); String desc = new String(""); String usuarios_encontrados = new String("no"); // Conexión a la base de datos try { if (!Config.getParametro("debug").equals("si")) debug = "no"; Conexion c=new Conexion(); 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; } // Intentando recuperar valor de columna ordenada try { columna_ordenada = request.getParameter("columna_ordenada").toString(); } catch (Exception e){ columna_ordenada = "nombre"; } // Intentando recuperar valor de patrón de búsqueda try { patron_busqueda = request.getParameter("patron_busqueda").toString(); patron_enviar = "&patron_busqueda="+request.getParameter("patron_busqueda").toString(); 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 usuarios.status='a' AND (nombre_real LIKE '%"+ patron_busqueda+"%' OR paterno LIKE '%"+patron_busqueda+"%' OR materno LIKE '%"+patron_busqueda+"%') OR nombre_usuario LIKE '%"+patron_busqueda+"%' " + "OR cat_perfiles.nombre LIKE '%"+patron_busqueda+"%' "; else patron_busqueda = "WHERE usuarios.status='a' AND (nombre_real LIKE '"+ patron_busqueda+"' OR paterno LIKE '"+patron_busqueda+"' OR materno LIKE '"+patron_busqueda+"') OR nombre_usuario LIKE '"+patron_busqueda+"' " + "OR cat_perfiles.nombre LIKE '"+patron_busqueda+"' "; } catch (Exception e){ patron_enviar = ""; patron_busqueda = " WHERE usuarios.status='a' "; } // Intentando recuperar valor de descendente try { desc = request.getParameter("desc").toString(); if (desc.equals("desc")) desc = " DESC"; else desc = " ASC"; } catch (Exception e){ desc = " ASC "; } if (lb_connection) { %>
Lista de Usuarios del Sistema <% try { if (!patron_enviar.substring(17).equalsIgnoreCase("")) out.println(" conteniendo '"+patron_enviar.substring(17)+"'"); } catch (Exception e){ emergent_error="Error desplegar patron de búsqueda "; if (debug.equals("si")) emergent_error+=e; } %>
<% //Obtención de los usuarios del sistema solicitados try{ ls_query="SELECT DISTINCT nombre_real as nombre, nombre_usuario, cat_perfiles.nombre as perfil, id_usuarios" + " FROM usuarios JOIN rel_usuarios_perfil USING (id_usuarios) JOIN rel_perfiles_modulos" + " USING (id_rel_perfiles_modulos) JOIN cat_perfiles USING (id_rel_perfiles_modulos)"+patron_busqueda+"ORDER BY "+columna_ordenada+desc+";"; lrs_res = lst_stm.executeQuery(ls_query); while (lrs_res.next()) { usuarios_encontrados = "si"; %> '" style="cursor: pointer;"> <% } } catch (Exception e){ emergent_error = "Error al recuperar lista de usuarios del sistema "; if (debug.equals("si")) emergent_error+=e+" Query actual: "+ls_query; %>
<%=emergent_error%>
<% } finally{ lst_stm.close(); lcnt_con.close(); } %>
class="ordenada" <%}%> onclick="javascript:window.location='desp_mostrar_usr_registro.jsp?columna_ordenada=nombre<%=patron_enviar%><%if (columna_ordenada.equals("nombre") && desc.equals(" ASC ")){%>&desc=desc'" title="Ordenar inverso<%} else {%>'" title="Ordenar<%}%> por Nombre Real del Usuario">Nombre Real del Usuario class="ordenada" <%}%> onclick="javascript:window.location='desp_mostrar_usr_registro.jsp?columna_ordenada=nombre_usuario<%=patron_enviar%><%if (columna_ordenada.equals("nombre_usuario") && desc.equals(" ASC ")){%>&desc=desc'" title="Ordenar inverso<%} else {%>'" title="Ordenar<%}%> por Nombre de Usuario">Nombre de Usuario class="ordenada" <%}%> onclick="javascript:window.location='desp_mostrar_usr_registro.jsp?columna_ordenada=perfil<%=patron_enviar%><%if (columna_ordenada.equals("perfil") && desc.equals(" ASC ")){%>&desc=desc'" title="Ordenar inverso<%} else {%>'" title="Ordenar<%}%> por Perfil">Perfil
<%=lrs_res.getString("nombre")%> <%=lrs_res.getString("nombre_usuario")%> <%=lrs_res.getString("perfil")%>
<% if (usuarios_encontrados.equals("no")) { %>
No se encontraron usuarios que contengan <%=patron_enviar.substring(17)%>
<% } } else { %>
<%=emergent_error%>
<% } //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 usuarios del sistema;"; else mensaje_log = "Usuario -"+session.getAttribute("username").toString()+"- realizó búsqueda de usuarios con patrón -"+patron_enviar.substring(17)+"-;"; Config.GuardarLog(Integer.parseInt(session.getAttribute("id_user").toString()), mensaje_log, 3); } catch(Exception e){ } %>