public void UpdateOrAddBooksToGroup(int groupId, IList <long> bookIds, PermissionDataContract data) { var permissionFlags = m_permissionConverter.GetFlags(data); //new SynchronizeRoleWork(m_permissionRepository, m_communicationProvider, roleId).Execute(); new UpdateOrAddProjectsToRoleWork(m_permissionRepository, groupId, bookIds, permissionFlags).Execute(); }
public void UpdateOrAddBookToGroup(int groupId, long bookId, [FromBody] PermissionDataContract data) { m_authorizationManager.AuthorizeBookOrPermission(bookId, PermissionFlag.AdminProject, PermissionNames.AssignPermissionsToRoles); m_permissionManager.UpdateOrAddBooksToGroup(groupId, new List <long> { bookId }, data); }
public void AddBookToGroup(int groupId, long bookId, PermissionDataContract data) { var dbPermission = m_permissionRepository.InvokeUnitOfWork(x => x.FindPermissionByBookAndGroup(bookId, groupId)); if (dbPermission != null) { throw new MainServiceException(MainServiceErrorCode.GroupAlreadyAssignedToProject, $"Group with ID={groupId} is already assigned to project with ID={bookId}"); } UpdateOrAddBooksToGroup(groupId, new List <long> { bookId }, data); }
public void UpdateOrAddBookToGroup(int groupId, long bookId, PermissionDataContract data) { try { m_client.Put <object>($"usergroup/{groupId}/book/{bookId}/permission", data); } catch (HttpRequestException e) { if (m_logger.IsErrorEnabled()) { m_logger.LogError("{0} failed with {1}", m_client.GetCurrentMethod(), e); } throw; } }
public void AddBookToSingleUserGroup(long projectId, string userGroupCode, PermissionDataContract permissions) { var dbUserGroup = m_permissionRepository.InvokeUnitOfWork(x => x.FindSingleUserGroupByName(userGroupCode)); if (dbUserGroup == null) { throw new MainServiceException(MainServiceErrorCode.GroupNotFound, $"Group with specified code {userGroupCode} was not found"); } var dbPermission = m_permissionRepository.InvokeUnitOfWork(x => x.FindPermissionByBookAndGroup(projectId, dbUserGroup.Id)); if (dbPermission != null) { throw new MainServiceException(MainServiceErrorCode.UserAlreadyAssignedToProject, $"Group with ID={dbUserGroup.Id} is already assigned to project with ID={projectId}"); } var permissionFlags = m_permissionConverter.GetFlags(permissions); new UpdateOrAddProjectsToRoleWork(m_permissionRepository, dbUserGroup.Id, new List <long> { projectId }, permissionFlags).Execute(); }
public PermissionFlag GetFlags(PermissionDataContract data) { var flags = PermissionFlag.None; if (data.ShowPublished) { flags |= PermissionFlag.ShowPublished; } if (data.ReadProject) { flags |= PermissionFlag.ReadProject; } if (data.EditProject) { flags |= PermissionFlag.EditProject; } if (data.AdminProject) { flags |= PermissionFlag.AdminProject; } return(flags); }
public int DeletePermission(PermissionDataContract permission) => Channel.DeletePermission(permission);
public PermissionDataContract UpdatePermission(PermissionDataContract permission) => Channel.UpdatePermission(permission);
public PermissionDataContract InsertPermission(PermissionDataContract permission) => Channel.InsertPermission(permission);