示例#1
0
        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);
        }
示例#2
0
 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));
 }
示例#3
0
        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);
        }