public void RealizaLoginAdmDefault() { UsuarioService ServicoUsuario = new UsuarioService(new DefRepositorioUsuario(this.DbContext)); Usuario AdmDefault = PadraoUsuario.Admin; LoginUsuarioRequest RequestLogin = new LoginUsuarioRequest() { Login = AdmDefault.Login, Senha = "D26m04a03" }; LoginUsuarioRespost retorno = ServicoUsuario.AutenticaUsuario(RequestLogin); SessaoUsuario SessaoAtiva = (from sessao in DbContext.SessaoUsuario where sessao.Ativo == true && sessao.UsuarioID == AdmDefault.Id select new SessaoUsuario() { Id = sessao.Id, Ativo = sessao.Ativo, InicioSessao = sessao.DataInicioSessao.DateTime, UsuarioId = sessao.UsuarioID }).FirstOrDefault(); Assert.False(SessaoAtiva == null); retorno = ServicoUsuario.AutenticaUsuario(RequestLogin); List <MapSessaoUsuario> SessoesAtivas = (from sessao in DbContext.SessaoUsuario where sessao.Ativo == true && sessao.UsuarioID == AdmDefault.Id select sessao).ToList(); Assert.False(SessoesAtivas == null); Assert.Single(SessoesAtivas); }
public IActionResult Login(LoginUsuarioRequest LoginData) { try { LoginUsuarioRespost resultLogin = _Service.AutenticaUsuario(LoginData); return(new JsonResult(resultLogin)); } catch (Exception Erro) { ServicoLog.AddLogAsync(Erro.Message); } return(new JsonResult(MensagensEntidades.ErroInesperado)); }
public LoginUsuarioRespost AutenticaUsuario(LoginUsuarioRequest Usuario) { LoginUsuarioRespost ret = new LoginUsuarioRespost() { SessaoId = Guid.Empty.ToString() }; try { MapUsuario result = (from usuario in DBContext.Usuarios where usuario.Ativo == true && Usuario.Login.Equals(usuario.Login) && usuario.Senha.ToUpper().Equals(Util.HashSHA256(Usuario.Senha)) select usuario).FirstOrDefault(); if (result == null) { ret.Menssagem = MensagensEntidades.LoginIncorreto; } else { MapSessaoUsuario Sessao = new MapSessaoUsuario() { DataInicioSessao = DateTime.Now, Ativo = true, UsuarioID = result.Id, Id = Guid.NewGuid() }; this.InativaSessoesUsuario(result.Id); DBContext.SessaoUsuario.Add(Sessao); DBContext.SaveChanges(); ret.SessaoId = Sessao.Id.ToString(); } } catch (Exception Erro) { ret.ErrorMessage = MensagensEntidades.ErroInesperado; Task.Run(() => { new LogService().AddLog(Erro.Message); }); } return(ret); }