public async Task <IActionResult> AlterarStatus(int Id, [FromServices] IUsuarioGestorRepository usuarioGestorRepository) { var claims = (ClaimsIdentity)User.Identity; var modulo = await _modulo.SelectId(Id); var usuarioGestor = await usuarioGestorRepository.SelectId(modulo.ID_USUARIO_GESTOR); var Idsetor = Convert.ToInt32(claims.Claims.ToList().Find(id => id.Type == ClaimTypes.GroupSid).Value); var idGestor = Convert.ToInt32(claims.Claims.ToList().Find(id => id.Type == ClaimTypes.PrimaryGroupSid).Value); modulo.USUARIO_ALTERACAO = User.Identity.Name; modulo.DATA_ALTERACAO = DateTime.Now; if (usuarioGestor.ID_SETOR != Idsetor) { var setorModulo = new SetorModulo { ID_MODULO = modulo.ID, ID_SETOR = Convert.ToInt32(claims.Claims.ToList().Find(id => id.Type == ClaimTypes.GroupSid).Value), }; setorModulo = await _setorModuloRepository.BuscarSetorModulo(setorModulo); setorModulo.STATUS = !setorModulo.STATUS; await _setorModuloRepository.Update(setorModulo); } else if (modulo.ID_USUARIO_GESTOR == idGestor) { modulo.STATUS = !modulo.STATUS; await _modulo.Update(modulo); } else { return(BadRequest()); } return(StatusCode(202)); //--> 202 aceito }
private bool GestorExists(int id) { return(_gestor.SelectId(id) != null); }