コード例 #1
0
        public bool IsValid(string _Nname, string _Password)
        {
            PLMCryptographyComponent.CryptographyComponent _criptography = new PLMCryptographyComponent.CryptographyComponent();

            _Password = _criptography.encrypt(_Password);

            var usr = db.Users.Where(x => x.NickName == _Nname && x.Password == _Password).ToList();

            if (usr.LongCount() > 0)
            {
                Users.Active    = usr[0].Active;
                Users.CountryId = usr[0].CountryId;
                Users.Email     = usr[0].Email;
                Users.LastName  = usr[0].LastName;
                Users.Name      = usr[0].Name;
                Users.NickName  = usr[0].NickName;
                Users.Password  = usr[0].Password;
                Users.UserId    = usr[0].UserId;

                var Hashkey = System.Configuration.ConfigurationManager.AppSettings["HashKey"];

                var apl = db.Applications.Where(x => x.HashKey == Hashkey).ToList();

                if (apl.LongCount() > 0)
                {
                    Applications.Active        = apl[0].Active;
                    Applications.ApplicationId = apl[0].ApplicationId;
                    Applications.Description   = apl[0].Description;
                    Applications.HashKey       = apl[0].HashKey;

                    var applusr = db.ApplicationUsers.Where(x => x.ApplicationId == Applications.ApplicationId && x.UserId == Users.UserId).ToList();

                    if (applusr.LongCount() > 0)
                    {
                        ApplicationUsers.ApplicationId = applusr[0].ApplicationId;
                        ApplicationUsers.RoleId        = applusr[0].RoleId;
                        ApplicationUsers.UserId        = applusr[0].UserId;

                        var rls = db.Roles.Where(x => x.RoleId == ApplicationUsers.RoleId).ToList();

                        if (rls.LongCount() > 0)
                        {
                            RolesUser.Active      = rls[0].Active;
                            RolesUser.Description = rls[0].Description;
                            RolesUser.RoleId      = rls[0].RoleId;

                            var cu = db.CountriesUser.Where(x => x.CountryId == Users.CountryId).ToList();

                            if (cu.LongCount() > 0)
                            {
                                var c = db.UserCountries.Where(x => x.UserId == Users.UserId).ToList();

                                foreach (UserCountries _c in c)
                                {
                                    UserCountries1 = new UserCountries();

                                    UserCountries1.CountryId = c[0].CountryId;
                                    UserCountries1.UserId    = c[0].UserId;
                                }

                                return(true);
                            }
                            else
                            {
                                return(false);
                            }
                        }
                        else
                        {
                            return(false);
                        }
                    }
                    else
                    {
                        return(false);
                    }
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                return(false);
            }
        }
コード例 #2
0
        public ActionResult Login(Models.Users _user)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    _user.Password = cryptography.encrypt(_user.Password);
                    string _nickName    = _user.NickName;
                    string _password    = _user.Password;
                    var    _hashkey     = System.Configuration.ConfigurationManager.AppSettings["HashKey"];
                    var    _roWloginApp = db.Database.SqlQuery <plm_spLoginApplications_Result>("plm_spLoginApplications @User = '******', @Password ='******', @HashKey = '" + _hashkey + "'").ToList();

                    _roWusers.UserId    = _roWloginApp[0].UsrUserId;
                    _roWusers.Active    = _roWloginApp[0].UserActive;
                    _roWusers.CountryId = _roWloginApp[0].UserCountryId;
                    _roWusers.Email     = _roWloginApp[0].UserEmail;
                    _roWusers.LastName  = _roWloginApp[0].UserLastName;
                    _roWusers.Name      = _roWloginApp[0].UserName;
                    _roWusers.NickName  = _roWloginApp[0].UserNickName;
                    _roWusers.Password  = _roWloginApp[0].UserPassword;

                    _roWApplicationusers.ApplicationId = _roWloginApp[0].UserApplicationId;
                    _roWApplicationusers.RoleId        = _roWloginApp[0].UserRoleId;
                    _roWApplicationusers.UserId        = _roWloginApp[0].UserUserId;

                    _roWrolesUsers.Active      = _roWloginApp[0].RoleActive;
                    _roWrolesUsers.Description = _roWloginApp[0].RoleDescription;
                    _roWrolesUsers.RoleId      = _roWloginApp[0].RoleId;

                    _roWApplications.ApplicationId = _roWloginApp[0].ApplicationsApplicationId;
                    _roWApplications.Active        = _roWloginApp[0].ApplicationsActive;
                    _roWApplications.Description   = _roWloginApp[0].ApplicationsDescription;
                    _roWApplications.HashKey       = _roWloginApp[0].ApplicationsHashKey;

                    FormsAuthentication.SetAuthCookie(_roWusers.NickName, _roWusers.Active = true);
                    if (_roWApplicationusers.UserId == _roWusers.UserId)
                    {
                        if (_roWApplicationusers.RoleId == _roWrolesUsers.RoleId)
                        {
                            UserCont(_roWusers, _roWApplicationusers);
                            if (_roWrolesUsers.Description == "Administrador")
                            {
                                Functions.ActivitySesions(_roWusers, _roWApplicationusers);
                                return(RedirectToAction("Index", "Analytics"));
                                //return RedirectToAction("RedirectToAction", "Login");
                            }
                            if (_roWrolesUsers.Description == "Vendedor")
                            {
                                Functions.ActivitySesions(_roWusers, _roWApplicationusers);
                                return(RedirectToAction("Index", "Analytics"));
                            }
                            if (_roWrolesUsers.Description == "Diagramador")
                            {
                                Functions.ActivitySesions(_roWusers, _roWApplicationusers);
                                return(RedirectToAction("Index", "Analytics"));
                            }
                            if (_roWrolesUsers.Description == "Laboratorio de Información")
                            {
                                Functions.ActivitySesions(_roWusers, _roWApplicationusers);
                                return(RedirectToAction("Index", "Analytics"));
                            }
                        }
                    }
                }
            }
            catch (Exception _msgException)
            {
                if (_msgException.Message == "_errorAccess")
                {
                    ViewData["Error"] = "No tiene acceso al sistema.";
                }
                else if (_msgException.Message == "_errorapplication")
                {
                    ViewData["Error"] = "Hay un problema con la aplicación.";
                }
                else if (_msgException.Message == "_errorUser")
                {
                    ViewData["Error"] = "Ingrese sus credenciales correctamente.";
                }
                else
                {
                    ViewData["Error"] = "Ocurrio un problema al accesar a los servidores, disculpe los inconvenientes.";
                }
            }
            return(View(_user));
        }