/// <summary> /// Guardar modificación de usuario si la cuenta dispone de permisos /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnGuardar_Click(object sender, EventArgs e) { try { EUsuario mod = new EUsuario(); mod.LoginUsuario = sesion.Login; mod.Login = txtbLogin.Text; mod.IdPerfil = Convert.ToInt16(cmbPerfil.SelectedValue); mod.NombrePerfil = cmbPerfil.SelectedText; mod.IdSede = Convert.ToInt16(cmbSede.SelectedValue); mod.Nombre = txtbNombre.Text; mod.Activo = RdSi.Checked; if (mod.DatosValidosModificacion()) { new UsuarioNeg().ModificarUsuario(mod); MessageBox.Show("El usuario '" + mod.Login + "' se modificó " + "exitosamente.", "Éxito"); // Actualizar si el usuario cambió sus detalles MainForm.EstablecerSesion(); this.Close(); } else { MessageBox.Show("No se pudo completar la operación.", "Error"); } } catch (Exception ex) { MainForm.NotificarExcepcion("CU CON009", ex); } }
/// <summary> /// Registrar un usuario si el login dispone de permisos /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnRegistrar_Click(object sender, EventArgs e) { try { if (sesion.permisos.RegistrarUsuario) { EUsuario nuevo = new EUsuario(); nuevo.LoginUsuario = sesion.Login; nuevo.IdSede = Convert.ToInt16(cmbSede.SelectedValue); nuevo.Login = txtbLogin.Text; nuevo.Contrasena = txtbContrasena.Text; nuevo.IdPerfil = Convert.ToInt16(cmbPerfil.SelectedValue); nuevo.NombrePerfil = cmbPerfil.SelectedText; nuevo.Nombre = txtbNombre.Text; nuevo.Activo = RdSi.Checked; if (nuevo.DatosValidos()) { new UsuarioNeg().RegistrarUsuario(nuevo); MessageBox.Show("El usuario '" + nuevo.Login + "' se registró exitosamente.", "Éxito"); this.Close(); } else { MessageBox.Show("No se pudo completar el registro.", "Error"); } } } catch (Exception ex) { MainForm.NotificarExcepcion("CU CON008", ex); } }
// Consultar usuarios public DataTable ConsultarUsuarios(EUsuario usuario) { SqlCommand comando = CrearComandoProc("CON_UsuarioConsultar"); comando.Parameters.AddWithValue("@Login", usuario.Login); comando.Parameters.AddWithValue("@Nombre", usuario.Nombre); comando.Parameters.AddWithValue("@Perfil", usuario.NombrePerfil); return EjecutarComandoDataTable(comando); }
// Modificar o actualizar usuario existente public int ModificarUsuario(EUsuario usuario) { SqlCommand comando = CrearComandoProc("CON_UsuarioModificar"); comando.Parameters.AddWithValue("@Login", usuario.Login); comando.Parameters.AddWithValue("@IdPerfil", usuario.IdPerfil); comando.Parameters.AddWithValue("@IdSede", usuario.IdSede); comando.Parameters.AddWithValue("@Nombre", usuario.Nombre); comando.Parameters.AddWithValue("@Activo", usuario.Activo); return EjecutarComando(comando); }
// Consulta los usuarios desde la base de datos public DataView ConsultarUsuarios(EUsuario usuario) { DataTable tabla = userDAL.ConsultarUsuarios(usuario); return tabla.AsDataView(); }
// Registrar un nuevo usuario desde la lógica de negocio public bool RegistrarUsuario(EUsuario usuario) { try { usuario.Contrasena = new Encriptacion().EncriptarSHA512(usuario.Contrasena); if (userDAL.RegistrarUsuario(usuario) != 0) { EBitacora entrada = new EBitacora(); entrada.LoginUsuario = usuario.LoginUsuario; entrada.Accion = "Registrar usuario"; entrada.TipoEvento = "Registrar"; entrada.Descripcion = "Se ha registrado el usuario '" + usuario.Nombre + "' con la siguiente información: " + "Login = '******', " + "Perfil = '" + usuario.NombrePerfil + "', " + "Nombre = '" + usuario.Nombre + "'."; entrada.Entidad = usuario.Login; new ReporteNeg().RegistrarBitacora(entrada); return true; } else { return false; } } catch { return false; } }
// Modificar un nuevo usuario desde la logica de negocio public bool ModificarUsuario(EUsuario usuario) { try { if (userDAL.ModificarUsuario(usuario) != 0) { EBitacora entrada = new EBitacora(); entrada.LoginUsuario = usuario.LoginUsuario; entrada.Accion = "Registrar usuario"; entrada.TipoEvento = "Registrar"; entrada.Descripcion = "Se ha modificado el usuario '" + usuario.Nombre + "' con la siguiente información: " + "Login = '******', " + "Perfil = '" + usuario.NombrePerfil + "', " + "Nombre = '" + usuario.Nombre + "', " + "Activo = '" + BoolToWord(usuario.Activo) + "'."; entrada.Entidad = usuario.Login; new ReporteNeg().RegistrarBitacora(entrada); return true; } else { return false; } } catch { return false; } }
public void setUsuario(EUsuario usuario) { _usuario = usuario; }
private void CargarTablaUsuarios(string Login, string Nombre, string Perfil) { try { // Guardar dataTable como DataSource del grid GridUsuario.DataSource = null; GridUsuario.Rows.Clear(); GridUsuario.Refresh(); EUsuario consulta = new EUsuario(); consulta.Login = txtbLogin.Text; consulta.Nombre = txtbNombre.Text; consulta.NombrePerfil = txtbPerfil.Text; DataView infoUsuarios = new UsuarioNeg().ConsultarUsuarios(consulta); GridUsuario.DataSource = infoUsuarios; // Configurar alineación o apariencia de columnas especiales GridUsuario.Columns[4].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; // Mostrar subrayado si el usuario dispone del permiso Ver Detalles if (sesion.permisos.VerDetallesUsuario) GridUsuario.Columns[1].DefaultCellStyle.Font = new Font(Font, FontStyle.Underline); } catch (Exception ex) { MainForm.NotificarExcepcion("CU CON006", ex); } }