Ejemplo n.º 1
0
        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
        }
Ejemplo n.º 2
0
 private bool GestorExists(int id)
 {
     return(_gestor.SelectId(id) != null);
 }