private void addWorkers() { ResourceType type; ArrayList<Resource> users = null; ArrayList<Project> projects = null; Random random = new Random(1l); try { type = resourceTypeDAO.getResourceTypeByResourceTypeName("human"); users = resourceDAO.getResourcesByResourceType(type); projects = projectDAO.getAllProjects(); } catch (Exception e) { e.printStackTrace(); } for (Project project : projects) { int workers = random.nextInt(11) + 5; Resource user = users.get(random.nextInt(users.size())); try { resourceDAO.insertUserTask(user.getResourceID(), project.getProjectID(), true); } catch (UserWorkOnThisProjectException e) { e.printStackTrace(); } for (int i = 0; i < workers; ++i) { user = users.get(random.nextInt(users.size())); try { resourceDAO.insertUserTask( user.getResourceID(), project.getProjectID(), (random.nextInt(5) == 0)); } catch (UserWorkOnThisProjectException e) { System.out.println( "User already assigned, but don't worry, there are plenty to choose from"); } } } }
private void addNonHumanBookings() { ArrayList<Resource> resources = null; Random random = new Random(1l); try { resources = resourceDAO.getResourcesByResourceType( resourceTypeDAO.getResourceTypeByResourceTypeName("machine")); resources.addAll( resourceDAO.getResourcesByResourceType( resourceTypeDAO.getResourceTypeByResourceTypeName("room"))); } catch (Exception e) { e.printStackTrace(); } ArrayList<Project> allProjects = null; try { allProjects = projectDAO.getAllProjects(); } catch (Exception e) { e.printStackTrace(); } for (Resource resource : resources) { HashSet<Project> projects = new HashSet<Project>(); for (int i = 0; i < 3; ++i) { projects.add(allProjects.get(random.nextInt(allProjects.size()))); } int max = (projects.size() > 0) ? (50 / projects.size()) : 0; for (Project project : projects) { for (int i = project.getStartWeek(); i <= project.getDeadLine(); ++i) { if (random.nextInt(2) == 0) { Booking booking = new Booking(); booking.setProjectID(project.getProjectID()); booking.setResourceID(resource.getResourceID()); booking.setWeek(i); booking.setRatio(((float) (random.nextInt(max + 1) + max)) / 100); try { bookingDAO.insertBooking(booking); } catch (DAOException e) { e.printStackTrace(); } System.out.println(booking); } } } } }
private void addProjects() throws IOException { RandomAccessFile f = new RandomAccessFile("randomProject.csv", "r"); String dataString = null; ArrayList<Status> stat = null; try { stat = statusDAO.getAllStatuses(); } catch (DAOException e1) { e1.printStackTrace(); } Random random = new Random(1l); while ((dataString = f.readLine()) != null) { String[] data = dataString.split(";"); Project insert = new Project(); if (data[0].length() < 45) { insert.setProjectName(data[0]); } else { insert.setProjectName(data[0].substring(0, 44)); } if (data[1].equals("1")) { insert.setOpenedStatus(true); } else { insert.setOpenedStatus(false); } insert.setStartWeek(Integer.parseInt(data[2])); insert.setDeadLine(Integer.parseInt(data[3])); insert.setNextRelease(data[4]); insert.setDescription(data[5]); insert.setCurrentStatusID(stat.get(random.nextInt(stat.size())).getStatusID()); System.out.println(insert); try { projectDAO.insertProject(insert); } catch (ProjectNameExistsException e) { e.printStackTrace(); } } f.close(); }
private void addHumanBookings() { ArrayList<Resource> workers = null; Random random = new Random(1l); try { workers = resourceDAO.getResourcesByResourceType( resourceTypeDAO.getResourceTypeByResourceTypeName("human")); } catch (Exception e) { e.printStackTrace(); } for (Resource worker : workers) { ArrayList<Project> projects = null; try { projects = projectDAO.getProjectsByWorker(worker); } catch (Exception e) { e.printStackTrace(); } int max = (projects.size() > 0) ? (50 / projects.size()) : 0; for (Project project : projects) { for (int i = project.getStartWeek(); i <= project.getDeadLine(); ++i) { if (random.nextInt(2) == 0) { Booking booking = new Booking(); booking.setProjectID(project.getProjectID()); booking.setResourceID(worker.getResourceID()); booking.setWeek(i); booking.setRatio(((float) (random.nextInt(max + 1) + max)) / 100); try { bookingDAO.insertBooking(booking); } catch (DAOException e) { e.printStackTrace(); } System.out.println(booking); } } } } }