示例#1
0
        public IActionResult Login(LoginUserView model)
        {
            if (ModelState.IsValid)
            {
                PasswordHasher <User> Hasher = new PasswordHasher <User>();

                User CurrentUser = _context.Users.SingleOrDefault(user => user.Email == model.Email);

                if (CurrentUser == null)
                {
                    ModelState.AddModelError("Email", "Email address not found.");
                    return(View(model));
                }
                else if (0 == Hasher.VerifyHashedPassword(CurrentUser, CurrentUser.Password, model.Password))
                {
                    ModelState.AddModelError("Password", "Password is incorrect.");
                    return(View(model));
                }

                HttpContext.Session.SetString("CurrentUserFirstName", CurrentUser.FirstName);
                HttpContext.Session.SetInt32("CurrentUserId", CurrentUser.id);

                ViewBag.CurrentUserFirstName = CurrentUser.FirstName;

                return(RedirectToAction("Dashboard", "ShoppingList"));
            }
            else
            {
                return(View(model));
            }
        }
示例#2
0
 public UsuarioCore(LoginUserView Usuario, IMapper Mapper)
 {
     _mapper  = Mapper;
     _usuario = _mapper.Map <LoginUserView, Usuario>(Usuario);
     _arm     = Arquivo.Recuperar(_arm);
     _arm     = _arm ?? new Armazenamento();
 }
        public ActionResult Login(LoginUserView model)
        {
            //this cecks the model state
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            // Check if the user is valid

            bool isValid = false;

            using (DBLayer db = new DBLayer())
            {
                if (db.Users.Any(x => x.Username.Equals(model.Username) && x.Password.Equals(model.Password)))
                {
                    isValid = true;
                }
            }

            if (!isValid)
            {
                ModelState.AddModelError("", "Invalid username or password.");
                return(View(model));
            }
            else
            {
                FormsAuthentication.SetAuthCookie(model.Username, model.RememberMe);
                return(Redirect(FormsAuthentication.GetRedirectUrl(model.Username, model.RememberMe)));
            }
        }
示例#4
0
        protected string SetLoginToken(SysUserEntity user, List <int> roleIds)
        {
            var sessionUser = new LoginUserView
            {
                //OrgId = user.OrgId,
                UserName = user.UserName,
                //UserCode = user.UserCode,
                UserId  = user.UserId,
                RoleIds = roleIds
            };

            //HttpContext.Session.SetString(LoginSessionKey, sessionUser.JsonSerialize());     //存入缓存

            //建议用redis存取加密密钥,和用户登录状态
            //DES加密用户信息给出Token
            return(CryptogramHelper.DESEncrypt(sessionUser.JsonSerialize(), DateTime.Now.ToString("yyyyMMdd")));
        }
示例#5
0
        public async Task <HttpResponseMessage> LoginUser(LoginUserView request)
        {
            var responseView = new ResponseView();

            if (request == null || !ModelState.IsValid)
            {
                responseView.Success = false;
                responseView.Errors  = Errors;
                return(Request.CreateResponse(HttpStatusCode.OK, responseView));
            }

            var response = await _userService.LoginUser(request.EmailAddress, request.Password);

            responseView.Success = response.Success;
            responseView.Errors  = response.Errors;
            return(Request.CreateResponse(HttpStatusCode.OK, response));
        }
示例#6
0
        public ActionResult LoginPage(LoginUserView model)
        {
            BusinessLayerResult <User> businessLayerResult = _loginService.LoginControl(model.Username, model.Password);
            List <UsersRoleses>        usersRoles          = _loginService.GetRoles(businessLayerResult.Result);

            if (ModelState.IsValid)
            {
                if (businessLayerResult.Error.Count > 0)
                {
                    businessLayerResult.Error.ForEach(x => ModelState.AddModelError("", x.Messages));
                    return(View(model));
                }
                Session["user"] = businessLayerResult.Result;

                Session["id"] = businessLayerResult.Result.Id;
                AuthenticationHelper.createCookie(businessLayerResult.Result.Id, businessLayerResult.Result.Username, businessLayerResult.Result.Email, DateTime.Now.AddDays(5), usersRoles, false, businessLayerResult.Result.Name, businessLayerResult.Result.Lastname);
                return(RedirectToAction("Index", "Home"));
            }
            return(View(model));
        }
示例#7
0
        public async Task <IActionResult> Logar([FromBody] LoginUserView usuario)
        {
            var Core = new UsuarioCore(usuario, _mapper).LogarUsuario();

            return(Core.Status ? Ok(Core) : (IActionResult)BadRequest(Core));
        }