public void btn_cambiarContraseña(object sender, EventArgs e) {
     string passCifrado = GlobalSistema.seguridad.encriptar_informacion(this.txbxActual.Text);
     if (passCifrado.Equals(usuarioSesion.getPassword()))
     {
         if (txbxNueva.Text.Equals(txbxConfirmar.Text))
         {
             usuarioSesion.setPassword(GlobalSistema.seguridad.encriptar_informacion(this.txbxNueva.Text));
             usuarioSesion = GlobalSistema.sistema.actualizar_usuario_sistema(usuarioSesion);
             if (string.IsNullOrEmpty(usuarioSesion.getApellido()))
             {
                 lblMensaje.Text = usuarioSesion.getPassword();
             }
             else
             {
                 Session[GlobalSistema.usuarioSesionSistema] = usuarioSesion;
                 lblMensaje.Text = "cambio de contraseña exitoso";
             }
         }
         else {
             lblMensaje.Text = "Contraseña nueva y confirmación no corresponden";
         }
     }
     else {
         lblMensaje.Text = "No es la contraseña actual";
     }
 }
        public void btn_acceso_sistema(object sender, EventArgs e) {
            usuarioLogin = new UsuarioBean();
            usuarioLogin.setNumeroDocumento(this.txbxDocumento.Text);
            usuarioLogin.setPassword(GlobalSistema.seguridad.encriptar_informacion(this.txbxPassword.Text));
            usuarioLogin = GlobalSistema.sistema.login_usuario_acceso(usuarioLogin);
            if (string.IsNullOrEmpty(usuarioLogin.getNombres()))
            {
                this.mensajeError.Text = usuarioLogin.getPassword();
            }
            else if (usuarioLogin.getEstadoUsuario().Equals("A") 
                || usuarioLogin.getNumeroDocumento().Equals("1716166788"))
            {
                Session[GlobalSistema.usuarioSesionSistema] = usuarioLogin;
                usuarioLogin.setFechaUltimoAcceso(System.DateTime.Now);
                GlobalSistema.sistema.insertar_usuario_sistema(usuarioLogin, false);
                Response.Redirect("EdicionIngresoIncidente.aspx");
            }
            else if (usuarioLogin.getEstadoUsuario().Equals("E"))
            {
                this.mensajeError.Text = "Usuario no permitido el acceso, contactese con soporte";
            }
            else if (usuarioLogin.getEstadoUsuario().Equals("I"))
            {
                this.mensajeError.Text = "Usuario inabilitado, debe ser dado de alta por el administrador";
            }
            else {
                this.mensajeError.Text = "Estado desconocido";
            }

        }
        public UsuarioBean login_usuario_acceso(UsuarioBean acceso) {
            UsuarioBean usuario = new UsuarioBean();
            mibase.abrir_conexion_base();
            try
            {
                List<UsuarioBean> lsUsuario = mibase.obtenerUsurioByDocumento(acceso.getNumeroDocumento(),true);
                if (lsUsuario[0].getPassword().CompareTo(acceso.getPassword()) == 0)
                {
                    usuario = lsUsuario[0];
                }
                else
                {
                    usuario.setPassword("Contraseña incorrecta");
                }

            }
            catch (ExpObtenerRegistro ex)
            {
                usuario.setPassword(ex.Message);
            }
            catch (ArgumentOutOfRangeException ex)
            {
                string ms = ex.Message;
                usuario.setPassword("usuario no existe");
            }
            finally {
                mibase.cerrar_conexion_base();
            }
            return usuario;
        }
 public void insertar_usuario(UsuarioBean usuario)
 {
     SqlCommand cmd = new SqlCommand("insertar_usuario_sp", conn);
     cmd.CommandType = CommandType.StoredProcedure;
     cmd.Parameters.AddWithValue("@documento", usuario.getNumeroDocumento());
     cmd.Parameters.AddWithValue("@nombre", usuario.getNombres());
     cmd.Parameters.AddWithValue("@apellido", usuario.getApellido());
     cmd.Parameters.AddWithValue("@password", usuario.getPassword());
     cmd.Parameters.AddWithValue("@correo", usuario.getCorreo());
     try
     {
         int i = cmd.ExecuteNonQuery();
         if (i == 0)
         {
             throw new ExInsertarRegistro("Usuario "+usuario.getNumeroDocumento()+ ", No se inserto revise datos");
         }
     }
     catch (ArgumentException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExInsertarRegistro("Error en  procesos");
     }
     catch (InvalidOperationException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
     catch (SqlException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
     catch (Exception ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
 }
 public int insertarActualizarUsuario(UsuarioBean usuario, bool insertar)
 {
     SqlCommand cmd = null;
     string mensaje = "";
     if (insertar)
     {//True inseertar
         mensaje = "inserto";
         cmd = new SqlCommand("insertar_usuario_sp", conn);
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.Parameters.AddWithValue("@documento", usuario.getNumeroDocumento());
         cmd.Parameters.AddWithValue("@nombre", usuario.getNombres());
         cmd.Parameters.AddWithValue("@apellido", usuario.getApellido());
         cmd.Parameters.AddWithValue("@password", usuario.getPassword());
         cmd.Parameters.AddWithValue("@correo", usuario.getCorreo());
         
     }
     else { //false actuliza
         mensaje = "actualizo";
         cmd = new SqlCommand("actualizar_datos_usuario_sp", conn);
         cmd.CommandType = CommandType.StoredProcedure;
         cmd.Parameters.AddWithValue("@id_usuario", usuario.getCodigoUsuario());
         cmd.Parameters.AddWithValue("@documento", usuario.getNumeroDocumento());
         cmd.Parameters.AddWithValue("@nombre", usuario.getNombres());
         cmd.Parameters.AddWithValue("@apellido", usuario.getApellido());
         cmd.Parameters.AddWithValue("@password", usuario.getPassword());
         cmd.Parameters.AddWithValue("@correo", usuario.getCorreo());
         cmd.Parameters.AddWithValue("@estado", usuario.getEstadoUsuario());
         cmd.Parameters.AddWithValue("@fecha_ingreso", usuario.getFechaUltimoAcceso());
     }  
     
     try
     {
         int i = cmd.ExecuteNonQuery();
         if (i == 0)
         {
             
             throw new ExInsertarRegistro("Usuario " + usuario.getNumeroDocumento() + ", No se "+mensaje+" revise datos");
         }
         else {
             return i;
         }
         
     }
     catch (ArgumentException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExInsertarRegistro("Error en  procesos");
     }
     catch (InvalidOperationException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
     catch (SqlException ex)
     {
         logs.escritura_archivo_string_ex(ex);
         if (ex.Message.Contains("numero_documento_unique")) {
             throw new ExInsertarRegistro("Número de documento ya existe en el sistema");
         }
         throw new ExConexionBase(ex.Message);
     }
     catch (Exception ex)
     {
         logs.escritura_archivo_string_ex(ex);
         throw new ExConexionBase(ex.Message);
     }
 }