示例#1
0
        public Login getLogin(String usuario, String pass)
        {
            Login          l          = null;
            DataBaseHelper helper     = new DataBaseHelper();
            SqlCommand     comando    = new SqlCommand("select idlogin,usuario,passwd,ultimoAcceso,empleado from login where usuario=@usuario and passwd=CONVERT(NVARCHAR(30),HASHBYTES('MD5',@passwd),2)");
            SqlParameter   parametro1 = new SqlParameter("@usuario", usuario);
            SqlParameter   parametro2 = new SqlParameter("@passwd", pass);

            parametro2.SqlDbType = SqlDbType.VarChar;
            comando.Parameters.Add(parametro1);
            comando.Parameters.Add(parametro2);
            EmpleadoDal   empleadoHelper   = new EmpleadoDal();
            PrivilegioDal privilegioHelper = new PrivilegioDal();
            DataTable     datos            = new DataTable();

            try
            {
                datos = helper.getDatos(comando);
                Debug.WriteLine(datos.Rows.Count);
            }
            catch (SqlException ex)
            {
                throw ex;
            }
            catch (InvalidOperationException ex)
            {
                throw ex;
            }
            foreach (DataRow row in datos.Rows)
            {
                Empleado e = empleadoHelper.getEmpleadoPorId(Convert.ToInt32(row[4]));
                Debug.WriteLine(e.NombreEmp);
                SqlCommand   comandoPriv = new SqlCommand("select idPrivilegio from login_privilegios where idlogin=@login");
                SqlParameter paramPriv   = new SqlParameter("@login", Convert.ToInt32(row[0]));
                Debug.WriteLine("login " + Convert.ToInt32(row[0]));
                comandoPriv.Parameters.Add(paramPriv);
                DataTable         privs            = helper.getDatos(comandoPriv);
                List <Privilegio> listaPrivilegios = new List <Privilegio>();
                foreach (DataRow rowPriv in privs.Rows)
                {
                    Privilegio privilegio = privilegioHelper.getPrivilegioPorId(Convert.ToInt32(rowPriv[0]));
                    listaPrivilegios.Add(privilegio);
                    Debug.WriteLine(privilegio.NombrePriv);
                }
                l = new Login(Convert.ToInt32(row[0]), row[1].ToString(), row[2].ToString(), Convert.ToDateTime(row[3]), e);

                l.Privilegios = listaPrivilegios;
            }

            return(l);
        }
示例#2
0
        /// <summary>
        /// Obtiene un listado de todos los logins de la bbdd. Quiza no se use pero por si acaso.
        /// </summary>
        /// <returns></returns>
        public List <Login> getListaLogins()
        {
            List <Login>   listado          = new List <Login>();
            DataBaseHelper helper           = new DataBaseHelper();
            SqlCommand     comando          = new SqlCommand("select idlogin,usuario,passwd,ultimoAcceso,empleado from login");
            EmpleadoDal    empleadoHelper   = new EmpleadoDal();
            PrivilegioDal  privilegioHelper = new PrivilegioDal();
            DataTable      datos            = new DataTable();

            try
            {
                datos = helper.getDatos(comando);
            }
            catch (SqlException ex)
            {
                throw ex;
            }
            foreach (DataRow row in datos.Rows)
            {
                Empleado     e           = empleadoHelper.getEmpleadoPorId(Convert.ToInt32(row[4]));
                SqlCommand   comandoPriv = new SqlCommand("select idPrivilegio from login_privilegios where idlogin=@login");
                SqlParameter paramPriv   = new SqlParameter("@login", Convert.ToInt32(row[0]));
                comandoPriv.Parameters.Add(paramPriv);
                DataTable         privs            = helper.getDatos(comandoPriv);
                List <Privilegio> listaPrivilegios = new List <Privilegio>();
                foreach (DataRow rowPriv in privs.Rows)
                {
                    Privilegio privilegio = privilegioHelper.getPrivilegioPorId(Convert.ToInt32(rowPriv[0]));
                    listaPrivilegios.Add(privilegio);
                }

                Login l = new Login(Convert.ToInt32(row[0]), row[1].ToString(), row[2].ToString(), Convert.ToDateTime(row[3]), e);
                l.Privilegios = listaPrivilegios;
                listado.Add(l);
            }

            return(listado);
        }