/** * Create a copy of the provided template assignment, replacing the project with the given project */ public static ProjectAssignment createProjectAssignment(ProjectAssignment templateAssignment, Project project) { ProjectAssignment assignment = createProjectAssignment(templateAssignment); assignment.setProject(project); return assignment; }
/** * Create a copy of the provided template assignment, replacing the user with the given user */ public static ProjectAssignment createProjectAssignment(ProjectAssignment templateAssignment, User user) { ProjectAssignment assignment = createProjectAssignment(templateAssignment); assignment.setUser(user); return assignment; }
@Override @Transactional @Auditable(actionType = AuditActionType.CREATE) public void assignUsersToProjects(List<User> users, ProjectAssignment assignmentTemplate) { for (User user : users) { ProjectAssignment assignment = ProjectAssignment.createProjectAssignment(assignmentTemplate, user); persistNewProjectAssignment(assignment); } }
@Transactional @Auditable(actionType = AuditActionType.CREATE) public void assignAllUsersToProject(Project project) { List<User> users = UserUtil.filterUserOnRole(userDAO.findActiveUsers(), UserRole.USER); for (User user : users) { ProjectAssignment assignment = ProjectAssignment.createProjectAssignment(project, user); if (!isAlreadyAssigned(assignment, user.getProjectAssignments())) { LOGGER.debug("Assigning user " + user + " to " + project); persistNewProjectAssignment(assignment); } } }
/** * Assign user to default projects */ @Transactional @Auditable(actionType = AuditActionType.UPDATE) public User assignUserToDefaultProjects(User user) { List<Project> defaultProjects = projectDao.findDefaultProjects(); for (Project project : defaultProjects) { ProjectAssignment assignment = ProjectAssignment.createProjectAssignment(project, user); if (!isAlreadyAssigned(assignment, user.getProjectAssignments())) { LOGGER.debug("Assigning user " + user.getUserId() + " to default project " + project.getName()); user.addProjectAssignment(assignment); persistNewProjectAssignment(assignment); } } return user; }