Example #1
0
    protected void B_iniciarSession_Click(object sender, EventArgs e)
    {
        
        //asigno esos valores para despues mandarlos a la funcion loggin_usuario
        string user = TB_inicio_usuario.Text.ToString();
        string clave = TB_inicio_clave.Text.ToString();

        //encapsulamos campos
        E_loggin_user datos_loggin = new E_loggin_user();
        datos_loggin.User = user;
        datos_loggin.Clave = clave;

        //mandamos parametros para validar usuario
        L_inicio_sesion abrir = new L_inicio_sesion();
        E_usuario datos1 = new E_usuario();
        datos1 = abrir.open_session(datos_loggin);

        //llenamos session
        Session["rolID"] = datos1.IdUser;
        Session["nomUser"] = datos1.Nombre;
        Session["docUser"] = datos1.Documento;
        Session["user"] = datos1.UserName;
        Session["dinero"] = datos1.Dinero;
        Session["rolUser"] = datos1.IdRol;

        //confirmamos y redireccionamos
        Response.Write(datos1.Mensajes);

    }
        //----------------------------------------------------------------------
        public DataTable loggin_user(E_loggin_user datos_loggin)
        {
            DataTable usuarios = new DataTable();
            //NpgsqlConnection conection = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["MyConexion"].ConnectionString);
            SqlConnection conection = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConexion2"].ConnectionString);

            try
            {
                //NpgsqlDataAdapter dataAdapter = new NpgsqlDataAdapter("sp_loggin_usuario", conection);
                SqlDataAdapter dataAdapter = new SqlDataAdapter("sp_loggin_usuario", conection);
                dataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure;
                //dataAdapter.SelectCommand.Parameters.Add("_user", NpgsqlDbType.Varchar, 30).Value = datos_loggin.User;
                //dataAdapter.SelectCommand.Parameters.Add("_password", NpgsqlDbType.Varchar, 30).Value = datos_loggin.Clave;
                dataAdapter.SelectCommand.Parameters.Add("@user", SqlDbType.VarChar, 50).Value     = datos_loggin.User;
                dataAdapter.SelectCommand.Parameters.Add("@password", SqlDbType.VarChar, 50).Value = datos_loggin.Clave;

                conection.Open();
                dataAdapter.Fill(usuarios);
            }
            catch (Exception Ex)
            {
                throw Ex;
            }
            finally
            {
                if (conection != null)
                {
                    conection.Close();
                }
            }
            return(usuarios);
        }
        //----- iniciar sesion .....
        public E_usuario open_session(E_loggin_user datos_loggin)
        {
            //Dao_loggin_user operacion = new Dao_loggin_user();
            //DataTable informacion = operacion.loggin_user(datos_loggin);

            List <sp_loggin_usuario_Result> datos = operacion_n.sp_loggin_usuario(datos_loggin.User, datos_loggin.Clave).ToList <sp_loggin_usuario_Result>();
            DataTable informacion = ToDataTable(datos);

            E_usuario datos1 = new E_usuario();

            //verificamos si la consulta trajo parametros
            if (informacion.Rows.Count == 0)
            {//datos no validos
                datos1.Mensajes = "<script type='text/javascript'>alert('Usuario o ContraseƱa incorrectos');window.location=\"inicio_sesion.aspx\"</script>";
            }
            else
            {
                /*
                 * //insertamos la ip y la mac
                 * datos_loggin.IdUser = informacion.Rows[0]["id_usuario"].ToString();
                 * string ipAddress = HttpContext.Current.Request.UserHostAddress;
                 * datos_loggin.Ip = ipAddress;
                 * datos_loggin.Mac = Utilidades.Mac.GetMAC(ref ipAddress);
                 * datos_loggin.UserCambio = informacion.Rows[0]["id_usuario"].ToString();
                 *
                 * Insertar datos_user_loggin = new Insertar();
                 */

                try
                {
                    //datos_user_loggin.insertar_ip_mac(datos_loggin);

                    datos1.IdUser    = informacion.Rows[0]["id_usuario"].ToString();
                    datos1.Nombre    = informacion.Rows[0]["nombre_user"].ToString() + " " + informacion.Rows[0]["apellido_user"].ToString();
                    datos1.Documento = informacion.Rows[0]["documento_user"].ToString();
                    datos1.UserName  = informacion.Rows[0]["usuario"].ToString();
                    datos1.Dinero    = informacion.Rows[0]["dinero_user"].ToString();
                    datos1.IdRol     = informacion.Rows[0]["id_rol"].ToString();

                    datos1.Mensajes = "<script type='text/javascript'>alert('Bienvenido a Aula Web');window.location=\"inicio.aspx\"</script>";
                }
                catch (Exception exc)
                {
                    throw exc;
                }
            }

            return(datos1);
        }
        //------------------------------------------------------------------------
        //en este caso mandamos un objeto de tipo user que contiene los datos para la clase Encapsular
        public void insertar_ip_mac(E_loggin_user datos_loggin)
        {
            DataTable usuarios = new DataTable();
            //NpgsqlConnection conection = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["MyConexion"].ConnectionString);
            SqlConnection conection = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConexion2"].ConnectionString);

            try
            {
                //conexion y mandamos los parametros
                //NpgsqlDataAdapter dataAdapter = new NpgsqlDataAdapter("sp_insertar_ip_mac", conection);
                SqlDataAdapter dataAdapter = new SqlDataAdapter("sp_insertar_ip_mac", conection);
                dataAdapter.SelectCommand.CommandType = CommandType.StoredProcedure;
                //dataAdapter.SelectCommand.Parameters.Add("_id", NpgsqlDbType.Integer).Value = datos_loggin.IdUser;
                //dataAdapter.SelectCommand.Parameters.Add("_ip", NpgsqlDbType.Varchar, 50).Value = datos_loggin.Ip;
                //dataAdapter.SelectCommand.Parameters.Add("_mac", NpgsqlDbType.Varchar, 50).Value = datos_loggin.Mac;
                //dataAdapter.SelectCommand.Parameters.Add("_user_cambio", NpgsqlDbType.Integer).Value = datos_loggin.UserCambio;
                dataAdapter.SelectCommand.Parameters.Add("@id", SqlDbType.Int).Value          = datos_loggin.IdUser;
                dataAdapter.SelectCommand.Parameters.Add("@ip", SqlDbType.VarChar, 50).Value  = datos_loggin.Ip;
                dataAdapter.SelectCommand.Parameters.Add("@mac", SqlDbType.VarChar, 50).Value = datos_loggin.Mac;
                dataAdapter.SelectCommand.Parameters.Add("@user_cambio", SqlDbType.Int).Value = datos_loggin.UserCambio;


                conection.Open();
                dataAdapter.Fill(usuarios);
            }
            catch (Exception Ex)
            {
                throw Ex;
            }
            finally
            {
                if (conection != null)
                {
                    conection.Close();
                }
            }
            //return usuarios;
        }