public async Task <IActionResult> Create([FromBody] GrupoMovimentacoes grupo) { try { var usuarioExists = await context.Usuario.AnyAsync(u => u.Id.Equals(grupo.UsuarioId)); if (usuarioExists) { var nomeExists = await context.GrupoMovimentacoes.AnyAsync(g => g.Nome.Equals(grupo.Nome) && g.UsuarioId.Equals(grupo.UsuarioId)); if (!nomeExists) { context.GrupoMovimentacoes.Add(grupo); await context.SaveChangesAsync(); return(CreatedAtAction("Create", grupo)); } else { ModelState.AddModelError("Nome", "Esse nome de grupo de movimentações já esta sendo utilizado"); return(BadRequest(ModelState.Values.SelectMany(e => e.Errors))); } } else { ModelState.AddModelError("Usuario", "Usuário não cadastrado no sistema."); return(NotFound(ModelState.Values.SelectMany(e => e.Errors))); } } catch (Exception e) { return(BadRequest(e.Message)); } }
public async Task <IActionResult> Edit([FromRoute] int id, [FromBody] GrupoMovimentacoes grupo) { try { var grupoExists = await context.GrupoMovimentacoes.AnyAsync(c => c.Id.Equals(id)); if (grupoExists) { var usuarioExists = await context.Usuario.AnyAsync(u => u.Id.Equals(grupo.UsuarioId)); if (usuarioExists) { context.GrupoMovimentacoes.Update(grupo); await context.SaveChangesAsync(); return(Ok(grupo)); } else { ModelState.AddModelError("Usuario", "Usuário não cadastrado no sistema."); return(NotFound(ModelState.Values.SelectMany(e => e.Errors))); } } else { ModelState.AddModelError("Grupo", "Grupo de movimentações não encontrado"); return(NotFound(ModelState.Values.SelectMany(v => v.Errors))); } } catch (Exception e) { return(BadRequest(e.Message)); } }