public ActionResult Login(string cpf, string senha) { cpf = Shared.RetirarCaracteres(cpf); Usuario user = _db.Int_RH_Usuarios.Where(a => a.CPF.Equals(cpf)).FirstOrDefault(); if (user != null) { ViewBag.User = user; if (user.Ativo == 1) { senha = senha.Replace(",", "").Replace(".", "").Replace("'", "").Replace(".", "").Trim(); bool senha_comparacao = Criptografia .VerifyMd5Hash(senha.Replace(",", "").Replace(".", "").Replace("'", "").Trim(), user.Senha); if (senha_comparacao) { Log log = new Log(); try { int loja = _db.Int_RH_Usuarios.Where(a => a.Id == user.Id).Select(s => s.Loja.Id).FirstOrDefault(); user.Loja = _db.Int_RH_Lojas.Find(loja); HttpContext.Session.SetInt32("ID", user.Id); HttpContext.Session.SetInt32("Nivel", user.Nivel); //1: Administrador, 2: Usuario Comum, 3: Suporte HttpContext.Session.SetInt32("Loja", user.Loja.Id); HttpContext.Session.SetString("Nome", user.Nome); HttpContext.Session.SetString("CPF", user.CPF); HttpContext.Session.SetString("UltimoAcesso", Globalization.DataHoraExtensoBR(user.UltimoAcesso)); user.UltimoAcesso = Globalization.HoraAtualBR(); _db.SaveChanges(); log.LogIn(user.Id); return RedirectToAction("Inicio"); } catch (Exception exp) { string mensagem = exp.Message; TempData["MensagemErroIndex"] = "Ocorreu um erro ao tentar efetuar o login"; log.LogIn_Erro(user.Id, exp); return RedirectToAction("Index"); } finally { _db.Int_RH_Logs.Add(log); _db.SaveChanges(); } } else { TempData["MensagemErroIndex"] = "Senha Incorreta!"; return RedirectToAction("Index"); } } else { TempData["MensagemErroIndex"] = "Usuário não está ativo"; return RedirectToAction("Index"); } } else { TempData["MensagemErroIndex"] = "Usuário não encontrado!"; return RedirectToAction("Index"); } }