Ejemplo n.º 1
0
        public async Task <IActionResult> RemoveRolFromUser([FromBody] RolManagementDTO model)
        {
            try
            {
                var role = await _roleManager.FindByIdAsync(model.RolId.ToString());

                if (role == null)
                {
                    return(StatusCode(404, "Rol Does not exist"));
                }

                var user = await _userManager.FindByIdAsync(model.UserId.ToString());

                if (user == null)
                {
                    return(StatusCode(404, "User does not exist."));
                }

                if (!await _userManager.IsInRoleAsync(user, role.Name))
                {
                    return(StatusCode(400, String.Format("User: {0} does not belong to this role", user)));
                }

                var result = await _userManager.RemoveFromRoleAsync(user, role.Name);

                if (!result.Succeeded)
                {
                    return(StatusCode(400, String.Format("User: {0} could not be removed from this role", user)));
                }

                return(StatusCode(204, "User Removed"));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> AddRolToUser([FromBody] RolManagementDTO model)
        {
            try
            {
                var role = await _roleManager.FindByIdAsync(model.RolId.ToString());

                if (role == null)
                {
                    return(StatusCode(404, "Rol Does not exist"));
                }

                var user = await _userManager.FindByIdAsync(model.UserId.ToString());

                if (user == null)
                {
                    return(StatusCode(404, "User does not exist."));
                }

                if (await _userManager.IsInRoleAsync(user, role.Name))
                {
                    return(StatusCode(400, String.Format("User: {0} is already in this role", user)));
                }

                var result = await _userManager.AddToRoleAsync(user, role.Name);

                if (!result.Succeeded)
                {
                    return(StatusCode(400, String.Format("User: {0} could not be added to role", user)));
                }

                return(StatusCode(204, "User Enrolled"));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));
            }
        }