public async Task <IHttpActionResult> AssignMembers(int groupId, AssignScope scope, string search = null) { SearchFieldValidator.Validate(search); if (scope == null || scope.IsEmpty()) { throw new BadRequestException(ErrorMessages.AssignMemberScopeEmpty, ErrorCodes.BadRequest); } await _privilegesManager.Demand(Session.UserId, InstanceAdminPrivileges.ManageGroups); var result = await _groupRepository.AssignMembers(groupId, scope, search); return(Ok(new AssignResult() { TotalAssigned = result })); }
public async Task <IHttpActionResult> RemoveMembersFromGroup(int groupId, [FromBody] AssignScope scope) { if (scope == null) { throw new BadRequestException(ErrorMessages.InvalidGroupMembersParameters, ErrorCodes.BadRequest); } if (scope.IsEmpty()) { return(Ok(DeleteResult.Empty)); } await _privilegesManager.Demand(Session.UserId, InstanceAdminPrivileges.ManageGroups); var result = await _groupRepository.DeleteMembersFromGroupAsync(groupId, scope); return(Ok(new DeleteResult { TotalDeleted = result })); }