// GET: Usuario public ActionResult Index() { var usuario = _usuarioService.RetornLoggedUser((ClaimsIdentity)User.Identity); var orgsUsuario = _usuarioOrganizacaoService.GetByIdUsuario(usuario.UsuarioModel.Id).Select((o) => o.OrganizacaoId).ToList(); var usuarios = _usuarioService.GetAllByIdsOrganizacao(orgsUsuario).GroupBy(u => u.Id).ToList(); List <UsuarioAuxModel> lista = new List <UsuarioAuxModel>(); usuarios.ForEach(s => lista.Add(new UsuarioAuxModel { UsuarioModel = s.FirstOrDefault(), TipoUsuarioModel = _tipoUsuarioService.GetById(s.FirstOrDefault().TipoUsuarioId), OrganizacaoModels = _organizacaoService.GetByIdUsuario(s.FirstOrDefault().Id) })); return(View(lista)); }
public ActionResult Get(int id) { try { var tipo = _service.GetById(id); if (tipo == null) { return(NotFound("Tipo de Usuário não encontrado na base de dados.")); } return(Ok(tipo)); } catch (ServiceException e) { return(StatusCode(500, e.Message)); } }
public async Task <IActionResult> Authenticate(LoginViewModel loginViewModel) { if (ModelState.IsValid) { if (ValidaCpf(loginViewModel.Login)) { // Obtendo o usuario baseado nas informações passadas. var user = _usuarioService.GetByLoginAndPass(Methods.CleanString(loginViewModel.Login), Criptography.GeneratePasswordHash(loginViewModel.Senha)); if (user != null) { var claims = new List <Claim> { new Claim(ClaimTypes.SerialNumber, user.Id.ToString()), new Claim(ClaimTypes.UserData, user.Cpf), new Claim(ClaimTypes.NameIdentifier, user.Nome), new Claim(ClaimTypes.DateOfBirth, user.DataNascimento.ToString()), new Claim(ClaimTypes.Role, _tipoUsuarioService.GetById(user.TipoUsuarioId).Descricao) }; // Adicionando uma identidade as claims. var identity = new ClaimsIdentity(claims, "login"); // Propriedades da autenticação. var claimProperty = new AuthenticationProperties { ExpiresUtc = DateTimeOffset.UtcNow.AddDays(1) // Expira em 1 dia }; // Logando efetivamente. await HttpContext.SignInAsync(new ClaimsPrincipal(identity), claimProperty); // Redirecionando, com usuario logado. return(RedirectToAction("Index", "Home")); } } } // usuario invalido. return(RedirectToAction("Index", "Login", new { msg = "error" })); }