Пример #1
0
        private void ingresarRol_Click_1(object sender, EventArgs e)
        {
            UsuarioActual.Id_rol         = Convert.ToInt32(comboRol.SelectedValue);
            UsuarioActual.DescripcionRol = comboRol.Text;
            // string rol = comboRol.SelectedValue.ToString();


            MenuPpal menuPpal = new MenuPpal(UsuarioActual);

            menuPpal.Show(this);


            this.Hide();
        }
Пример #2
0
        private void button1_Click(object sender, EventArgs e)

        {
            //Verifico que se ingresen datos en los campos


            if (Usuario.TextLength > 0 && Contrasenia.TextLength > 0)
            {
                //Obtengo la conexion desde la clase "Conexion"
                SqlConnection conexionABase = Conexion.ObtenerConexion();

                //Instancio el objeto Stored Procedure
                SqlCommand cmdLogin = new SqlCommand("[ANOTHER_CAT].[LOGIN]", conexionABase);
                cmdLogin.CommandType = CommandType.StoredProcedure;

                //Le agrego los parametros
                cmdLogin.Parameters.AddWithValue("@auxnombre", Usuario.Text);

                //cmdLogin.Parameters.AddWithValue("@auxpass", Password.encriptarPassword(Contrasenia.Text).Trim());//encriptada
                cmdLogin.Parameters.AddWithValue("@auxpass", Contrasenia.Text.Trim().ToString());

                //Logica para el manejo de un parametro del tipo OUTPUT
                SqlParameter parametroRetorno = new SqlParameter();
                parametroRetorno.ParameterName = "@RETORNO";
                parametroRetorno.DbType        = DbType.Int32;
                parametroRetorno.Direction     = ParameterDirection.Output;
                //Agrego los parametros
                cmdLogin.Parameters.Add(parametroRetorno);

                //Logica para el manejo de un parametro del tipo OUTPUT idUsuario
                SqlParameter idUsuario = new SqlParameter();
                idUsuario.ParameterName = "@IDUSUARIO";
                idUsuario.DbType        = DbType.Int64;
                idUsuario.Direction     = ParameterDirection.Output;
                //Agrego los parametros
                cmdLogin.Parameters.Add(idUsuario);

                //Logica para el manejo de un parametro del tipo OUTPUT cantidadRoles
                SqlParameter cantRoles = new SqlParameter();
                cantRoles.ParameterName = "@CANTROLES";
                cantRoles.DbType        = DbType.Int32;
                cantRoles.Direction     = ParameterDirection.Output;

                //Agrego los parametros
                cmdLogin.Parameters.Add(cantRoles);



                //Ejecuto el comando SP
                SqlDataReader reader = cmdLogin.ExecuteReader();

                //Obtengo el valor del parametro de tipo OUTPUT del SP
                string resultadoEjecucion = cmdLogin.Parameters["@RETORNO"].Value.ToString();
                Int64  idUser             = Int64.Parse(cmdLogin.Parameters["@IDUSUARIO"].Value.ToString());
                Int32  cantRol            = Int32.Parse(cmdLogin.Parameters["@CANTROLES"].Value.ToString());

                //Cierro la conexion
                conexionABase.Close();

                //Evaluo el resultado de la ejecucion del SP e informo el resultado
                //Resultado = 0 ==> Login Correcto
                //Resultado = 1 ==> Contraseña incorrecta
                //Resultado = 2 ==> El Usuario está inhabilitado
                //Resultado = 3 ==> Ingresó mal la clave 3 veces. Se inhabilitó usuario
                switch (resultadoEjecucion)
                {
                case "0":
                    //Esta todo OK.
                    if (cantRol > 1)
                    {
                        SeleccionRol selecionRolview = new SeleccionRol(idUser);
                        this.Hide();
                        selecionRolview.Show(this);
                    }
                    else
                    {
                        Objetos.Usuario usuarioActual = new Objetos.Usuario();
                        usuarioActual.id_user = idUser;

                        conexionABase = Conexion.ObtenerConexion();
                        // string CMD = string.Format("SELECT  r.Nombre  from [ANOTHER_CAT].tl_Usuario_Rol as ur join [GD2C2016].[ANOTHER_CAT].tl_rol as R on ur.ID_Rol = r.ID_Rol where ur.ID_Usuario='{0}'", idUser);
                        string        CMD            = string.Format("SELECT  ID_Rol  from [ANOTHER_CAT].tl_Usuario_Rol where ID_Usuario='{0}'", idUser);
                        SqlCommand    comandoLlenado = new SqlCommand(CMD, conexionABase);
                        SqlDataReader ReadRol        = comandoLlenado.ExecuteReader();
                        ReadRol.Read();
                        // string rolUsuario = ReadRol[0].ToString();
                        usuarioActual.Id_rol = Int32.Parse(ReadRol[0].ToString());
                        conexionABase.Close();
                        MenuPpal menuPpal = new MenuPpal(usuarioActual);
                        this.Hide();
                        menuPpal.Show(this);
                    }


                    // this.Close();
                    break;

                case "1":
                    MessageBox.Show("Contraseña Incorrecta");
                    break;

                case "2":
                    MessageBox.Show("Su Usuario está inhabilitado. Contactar Administrador");
                    break;

                case "3":
                    MessageBox.Show("Usted ha sido inhabilitado. Ingresó mal la clave 3 veces");
                    break;
                }
            }
            else
            {
                MessageBox.Show("Complete todos los campos.", "Advertencia", MessageBoxButtons.OK);
                Usuario.Focus();
            }
        }