private UsuarioTbl autenticarUsuario(UsuarioTbl login) { var usuario = context.UsuarioTbl.Include(u => u.UsuarioTipo).FirstOrDefault(user => user.UsuarioEmail == login.UsuarioEmail && user.UsuarioSenha == login.UsuarioSenha); return(usuario); }
public async Task <ActionResult <UsuarioTbl> > Put(int id, UsuarioTbl usuario) { var usuarioAlterado = await repositorio.Get(id); if (id != usuario.UsuarioId) { return(BadRequest("Ids divergentes.")); } if (usuarioAlterado == null) { return(NotFound("Usuário não encontrado.")); } try { return(await repositorio.Put(usuario)); } catch (System.ArgumentException) { return(BadRequest(new { mensagem = "Verifique os campos em nulo." })); throw; } // if(id != usuario.UsuarioId){ // return BadRequest("Id inválida"); // } // var arquivo = Request.Form.Files[0]; // usuario.UsuarioId = usuarioAlterado.UsuarioId; // usuario.UsuarioImagem = upload.Upload(arquivo, "images"); // usuario.UsuarioNome = Request.Form["UsuarioNome"]; // if(usuario.UsuarioNome == null){ // throw new System.ArgumentNullException("Campo Nome é obrigatório."); // } // // usuario.UsuarioEmail = Request.Form["UsuarioEmail"]; // if(usuario.UsuarioEmail == null){ // throw new System.ArgumentNullException("Campo E-mail é obrigatório."); // } // usuario.UsuarioComunidade = Request.Form["UsuarioComunidade"]; // if(usuario.UsuarioComunidade == null){ // throw new System.ArgumentNullException("Digite o nome da comunidade."); // } // usuario.UsuarioTipoId = int.Parse(Request.Form["UsuarioTipoId"]); // usuario.UsuarioSenha = Request.Form["UsuarioSenha"]; // return await repositorio.Put(usuario); }
public async Task <ActionResult <UsuarioTbl> > Put([FromForm] UsuarioTbl usuario) { var usuarioAlterado = await repositorio.Get(usuario.UsuarioId); if (usuarioAlterado == null) { return(NotFound("Usuário não encontrado.")); } if (usuarioAlterado.UsuarioId != usuario.UsuarioId) { return(BadRequest("Id inválida")); } // var arquivo = Request.Form.Files[0]; usuario.UsuarioId = usuarioAlterado.UsuarioId; // usuario.UsuarioImagem = upload.Upload(arquivo, "images"); usuario.UsuarioNome = Request.Form["UsuarioNome"]; if (usuario.UsuarioNome == null) { throw new System.ArgumentNullException("Campo Nome é obrigatório."); } usuario.UsuarioEmail = Request.Form["UsuarioEmail"]; if (usuario.UsuarioEmail == null) { throw new System.ArgumentNullException("Campo E-mail é obrigatório."); } usuario.UsuarioComunidade = Request.Form["UsuarioComunidade"]; if (usuario.UsuarioComunidade == null) { throw new System.ArgumentNullException("Digite o nome da comunidade."); } usuario.UsuarioTipoId = int.Parse(Request.Form["UsuarioTipoId"]); if (usuario.UsuarioTipoId == null) { throw new System.ArgumentNullException("O campo tipo é obrigatório"); } usuario.UsuarioSenha = Request.Form["UsuarioSenha"]; if (usuario.UsuarioSenha == null) { throw new System.ArgumentNullException("O campo Senha é obrigatório"); } else if (usuario.UsuarioSenha.Length < 8) { throw new System.ArgumentException("A senha possui menos de 8 caracteres"); } else if (usuarioAlterado.UsuarioSenha == usuario.UsuarioSenha) { throw new System.ArgumentException("A senha digitada é igual a senha atual."); } return(await repositorio.Put(usuario)); }
public async Task <ActionResult <UsuarioTbl> > Post([FromForm] UsuarioTbl usuario) { if (await repositorio.ValidaEmail(usuario)) { return(BadRequest("Esse E-mail já foi cadastrado")); } if (!usuario.UsuarioEmail.Contains('@') || !usuario.UsuarioEmail.Contains('.')) { throw new System.ArgumentException("E-mail inválido."); } if (usuario.UsuarioSenha.Length < 8) { throw new System.ArgumentException("A senha possui menos de 8 caracteres"); } // try // { // await repositorio.Post(usuario); // return Ok("Usuário cadastrado!"); // } // catch (System.Exception) // { // return BadRequest(new { mensagem = "Verifique os campos em nulo."}); // throw; // } // var arquivo = Request.Form.Files[0]; // usuario.UsuarioImagem = upload.Upload(arquivo, "images"); usuario.UsuarioNome = Request.Form["UsuarioNome"]; if (usuario.UsuarioNome == null) { throw new System.ArgumentNullException("Campo Nome é obrigatório."); } usuario.UsuarioEmail = Request.Form["UsuarioEmail"]; if (usuario.UsuarioEmail == null) { throw new System.ArgumentNullException("Campo E-mail é obrigatório."); } usuario.UsuarioComunidade = Request.Form["UsuarioComunidade"]; usuario.UsuarioSenha = Request.Form["UsuarioSenha"]; if (usuario.UsuarioSenha == null) { throw new System.ArgumentNullException("Campo Senha é obrigatório."); } usuario.UsuarioTipoId = int.Parse(Request.Form["UsuarioTipoId"]); await repositorio.Post(usuario); return(Ok("Usuário cadastrado")); }
public async Task <ActionResult <UsuarioTbl> > Delete(int id) { UsuarioTbl usuarioDeletado = await repositorio.Delete(id); if (usuarioDeletado == null) { return(NotFound("Usuário não encontrado!")); } return(usuarioDeletado); }
public async Task <UsuarioTbl> Post(UsuarioTbl usuario) { UsuarioTbl usuarioCadastrado = usuario; // usuarioCadastrado.UsuarioNome = usuario.UsuarioNome.ToLower(); await context.UsuarioTbl.AddAsync(usuarioCadastrado); await context.SaveChangesAsync(); return(usuarioCadastrado); }
public async Task <bool> ValidaEmail(UsuarioTbl usuario) { UsuarioTbl usuarioExiste = await context.UsuarioTbl.FirstOrDefaultAsync(u => u.UsuarioEmail == usuario.UsuarioEmail); if (usuarioExiste == null) { return(false); } return(true); }
public async Task <ActionResult <UsuarioTbl> > Get(int id) { UsuarioTbl usuario = await repositorio.Get(id); if (usuario == null) { return(NotFound("Usuário não encontrado.")); } return(usuario); }
public IActionResult Login(UsuarioTbl login) { IActionResult resposta = Unauthorized("Login não autorizado."); var usuario = autenticarUsuario(login); if (usuario != null) { var tokenString = gerarJsonWebToken(usuario); resposta = Ok(new { token = tokenString }); } return(resposta); }
public async Task <UsuarioTbl> Delete(int id) { UsuarioTbl usuario = await context.UsuarioTbl.FindAsync(id); if (usuario == null) { return(null); } context.UsuarioTbl.Remove(usuario); await context.SaveChangesAsync(); return(usuario); }
public async Task <UsuarioTbl> Put(UsuarioTbl usuario) { UsuarioTbl usuarioModificado = await context.UsuarioTbl.FindAsync(usuario.UsuarioId); // usuarioModificado.UsuarioId = usuario.UsuarioId; usuarioModificado.UsuarioNome = usuario.UsuarioNome; usuarioModificado.UsuarioEmail = usuario.UsuarioEmail; usuarioModificado.UsuarioComunidade = usuario.UsuarioComunidade; usuarioModificado.UsuarioSenha = usuario.UsuarioSenha; usuarioModificado.UsuarioTipoId = usuario.UsuarioTipoId; // context.Entry(usuario).State = EntityState.Modified; await context.SaveChangesAsync(); return(usuario); }
public async Task <ActionResult <UsuarioTbl> > Get(int id) { UsuarioTbl usuario = await repositorio.Get(id); if (usuario == null) { return(NotFound("Usuário não encontrado.")); } var arquivo = Request.Form.Files[0]; usuario.UsuarioImagem = upload.Upload(arquivo, "images/UsuarioTbl"); if (usuario.UsuarioImagem == null) { throw new System.ArgumentException("Imagem Obrigatória"); } return(usuario); }
private string gerarJsonWebToken(UsuarioTbl infousuario) { var chaveDeSegurança = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(config["Jwt:Key"])); var credencial = new SigningCredentials(chaveDeSegurança, SecurityAlgorithms.HmacSha256); var claims = new[] { new Claim(JwtRegisteredClaimNames.NameId, infousuario.UsuarioNome), new Claim(JwtRegisteredClaimNames.Email, infousuario.UsuarioEmail), new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()), new Claim(ClaimTypes.Role, infousuario.UsuarioTipo.TipoNome), }; var token = new JwtSecurityToken(config["Jwt:Issuer"], config["Jwt:Issuer"], claims, expires: DateTime.Now.AddMinutes(120), signingCredentials: credencial ); return(new JwtSecurityTokenHandler().WriteToken(token)); }