@Test
 public void testGetters() {
   assertEquals(ID, project.getId());
   assertEquals(NAME, project.getName());
   assertEquals(SHORT_NAME, project.getShortName());
   assertEquals(DESCRIPTION, project.getDescription());
 }
  /**
   * @see android.app.ListActivity#onListItemClick(android.widget.ListView, android.view.View, int,
   *     long)
   */
  @Override
  protected void onListItemClick(ListView l, View v, int position, long id) {
    Project selectedProject = mAdapter.getItem(position);

    storeProjectInfo(selectedProject.getId(), selectedProject.getName());

    finish();
  }
  @Override
  public void visit(Project project) {
    out.format(
        "%s [label=\"%s (%s)\", shape=box]\n",
        idFor(project), project.getName(), project.getNamespace());

    out.format(
        "%s [label=\"%s\", shape=none]\n",
        identityHashCode(project.getCopyright()), escape(project.getCopyright()));
    out.format("%s -> %s\n", idFor(project), identityHashCode(project.getCopyright()));
  }
Beispiel #4
0
  public boolean equals(Object object) {
    if (!(object instanceof Project)) return false;

    Project projectObject = (Project) object;
    if ((this.getId() == projectObject.getId())
        && (this.getDescription().equals(projectObject.getDescription()))
        && (this.getName().equals(projectObject.getName()))
        && (this.getType().equals(projectObject.getType()))) return true;

    return false;
  }
  public String jsonRestProjectList(Long projectId) throws IOException {
    StringBuilder sb = new StringBuilder();

    Project p = requestManager.getProjectById(projectId);
    sb.append("'id':'" + projectId + "'");
    sb.append(",");
    sb.append("'name':'" + p.getName() + "'");
    sb.append(",");
    sb.append("'alias':'" + p.getAlias() + "'");

    return "{" + sb.toString() + "}";
  }
  public boolean equals(Object object) {
    if (!(object instanceof Project)) return false;

    Project projectObject = (Project) object;

    if ((this.getId() == projectObject.getId())
        && (this.getName().equals(projectObject.getName()))
        && (((this.getLeader() == null) && (projectObject.getLeader() == null))
            || (this.getLeader().equals(projectObject.getLeader())))
        && (this.getType().equals(projectObject.getType()))) return true;

    return false;
  }
Beispiel #7
0
 @Test
 public void testGet() {
   assertThat(project.getProjectId(), is(11L));
   assertThat(project.getName(), is("TestName"));
   assertThat(project.getDescription(), is("TestDescription"));
   assertThat(project.getGoal(), is(100L));
   assertThat(project.getDaysToGo(), is(3L));
   assertThat(project.getHistory(), is("TestHistory"));
   assertThat(project.getLink(), is("TestLink"));
   assertThat(project.getCategory(), is(category));
   assertThat(project.getQuestions(), is(questions));
   assertThat(project.getRewards(), is(rewards));
   assertThat(project.getPayments(), is(payments));
   assertThat(project.getCategoryId(), is(22L));
 }
Beispiel #8
0
 public boolean postinTumblr(String username, Project project)
     throws SQLException, RemoteException {
   ResultSet result =
       connection
           .createStatement()
           .executeQuery(
               "select userToken,userSecret from users where username = \"" + username + "\"");
   Token token = new Token(result.getString(1), result.getString(2));
   OAuthRequest request =
       new OAuthRequest(
           Verb.POST, "http://api.tumblr.com/v2/blog/" + username + ".tumblr.com/post");
   request.addHeader("Accept", "application/json");
   request.addBodyParameter("type", "text");
   request.addBodyParameter("body", "Criei projeto " + project.getName());
   RMIServer.service.signRequest(token, request);
   org.scribe.model.Response response = request.send();
   System.out.println(response.getBody());
   Long postId = new JSONObject(response.getBody()).getJSONObject("response").getLong("id");
   System.out.println(postId);
   OAuthRequest request2 =
       new OAuthRequest(
           Verb.POST, "http://api.tumblr.com/v2/blog/" + username + ".tumblr.com/posts");
   request.addHeader("Accept", "application/json");
   request.addBodyParameter("type", "text");
   request.addBodyParameter("id", String.valueOf(project.getId()));
   RMIServer.service.signRequest(token, request2);
   org.scribe.model.Response response2 = request2.send();
   System.out.println(response2.getBody());
   String reblog_key =
       new JSONObject(response2.getBody()).getJSONObject("response").getString("reblog_key");
   System.out.println(
       "update projects set TumblrPostId = " + postId + " where id = " + project.getId());
   connection
       .createStatement()
       .execute(
           "update projects set TumblrPostId = "
               + postId
               + ",reblog_key = \""
               + reblog_key
               + "\" whessre id = "
               + project.getId());
   return true;
 }
  // ---------------------------------------------------------------//
  public int editProject(Project project, Connection conn) throws SQLException {
    PreparedStatement prepStmt = null;
    int rtrn = -1;
    java.util.Date date = new java.util.Date();
    Timestamp currentdate = new Timestamp(date.getTime());
    conn = select();
    String sql =
        "UPDATE PROJECTS SET PROJ_NAME=?,MODIFIED_AT=?,MODIFIED_BY=?,PROJ_ACTIVE=?,PROJ_BUDGET=?,PROJ_DEADLINE=?,PROJ_DESCRIPTION=?,PROJ_FROM=?,PROJ_TYPE=?,PROJ_TO=?,CUST_ID=?,ROWVERSION=ROWVERSION+1"
            + "WHERE PROJ_ID=?";

    prepStmt = conn.prepareStatement(sql);
    prepStmt.setString(1, project.getName());

    prepStmt.setTimestamp(2, currentdate);

    prepStmt.setString(3, project.getModified_by());

    if (project.isActive()) prepStmt.setString(4, "Y");
    else prepStmt.setString(4, "N");

    if (project.getBudget() != -1) prepStmt.setFloat(5, project.getBudget());
    else prepStmt.setInt(5, 0);

    if (project.getNextDeadline() == null) prepStmt.setDate(6, null);
    else prepStmt.setDate(6, new java.sql.Date(project.getNextDeadline().getTime()));

    prepStmt.setString(7, project.getDescription());

    prepStmt.setDate(8, new java.sql.Date(project.getStartDate().getTime()));

    prepStmt.setString(9, project.getProjectType());

    if (project.getEndDate() == null) prepStmt.setDate(10, null);
    else prepStmt.setDate(10, new java.sql.Date(project.getEndDate().getTime()));

    prepStmt.setInt(11, project.getCustomerID());
    prepStmt.setInt(12, project.getProjectID());
    prepStmt.executeUpdate();
    rtrn = project.getProjectID();
    return rtrn;
  }
Beispiel #10
0
  public static List<ProjectDTO> getAllProject() {
    // Get project list
    List<Project> projectList;
    // retrieve project list from JPA controller
    projectList = ProxyManager.getProjectProxy().getProjectsList();

    ArrayList<ProjectDTO> resList = new ArrayList<ProjectDTO>();
    ProjectDTO projectDTO;
    for (Project p : projectList) {
      projectDTO = new ProjectDTO();
      projectDTO.setName(p.getName());
      projectDTO.setDescription(p.getDescription());
      projectDTO.setStatus(p.getStatus());
      Team team = p.getTeamTeamId();
      if (team != null) {
        TeamDTO teamDTO = new TeamDTO();
        teamDTO.setTeamId(team.getTeamId());
        teamDTO.setProductOwnerId(team.getProductOwnerId());
        teamDTO.setScrumMasterId(team.getScrumMasterId());
        ArrayList<UserDTO> userDTOList = new ArrayList<UserDTO>();
        for (User user : team.getUserList()) {
          UserDTO userDTO = new UserDTO();
          userDTO.setUserId(user.getUserId());
          userDTO.setUsername(user.getUsername());
          userDTO.setPassword(user.getPassword());
          userDTO.setFirstName(user.getFirstName());
          userDTO.setLastName(user.getLastName());
          userDTO.setEmail(user.getEmail());
          userDTO.setAdmin(user.getIsAdmin());
          userDTO.setSalt(user.getSalt());
          userDTO.setActive(user.getIsActive());
          userDTO.setTimeCreated(user.getTimeCreated());
          userDTOList.add(userDTO);
        }
        teamDTO.setUserList(userDTOList);
        projectDTO.setTeamTeamId(teamDTO);
      } else projectDTO.setTeamTeamId(null); // TODO: possible break
      resList.add(projectDTO);
    }
    return resList;
  }
  @Test
  public void testUpdateProject() {
    testedObject.updateProject(
        testedObject.getProjectObjByKey("ABC"),
        "Snookums",
        "Snook snooky",
        "vez",
        null,
        AssigneeTypes.PROJECT_LEAD);
    final Project project = testedObject.getProjectObjByKey("ABC");

    assertEquals("ABC", project.getKey());
    assertEquals("Snookums", project.getName());
    assertEquals("Snook snooky", project.getDescription());
    assertEquals("vez", project.getLeadUserKey());
    assertEquals(new Long(2), project.getAssigneeType());
    assertEquals(null, project.getUrl());

    assertNotNull(testedObject.getProjectObjByName("Snookums"));
    assertNotNull(testedObject.getProjectObjByKey("ABC"));
  }
 // ---------------------------------------------------------------//
 public int insertProject(Project project, Connection conn) throws SQLException {
   PreparedStatement prepStmt = null;
   int rtrn = -1;
   java.util.Date date = new java.util.Date();
   Timestamp currentdate = new Timestamp(date.getTime());
   conn = select();
   String sql =
       "INSERT INTO PROJECTS(PROJ_ID,PROJ_NAME,INSERTED_AT,INSERTED_BY,MODIFIED_AT,MODIFIED_BY,PROJ_ACTIVE,PROJ_BUDGET,PROJ_DEADLINE,PROJ_DESCRIPTION,PROJ_FROM,PROJ_TYPE,PROJ_TO,CUST_ID,ROWVERSION)"
           + " VALUES(PROJ_SEQ.NEXTVAL,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
   String cols[] = {"PROJ_ID"};
   prepStmt = conn.prepareStatement(sql, cols);
   prepStmt.setString(1, project.getName());
   prepStmt.setTimestamp(2, currentdate);
   prepStmt.setString(3, project.getInserted_by());
   prepStmt.setDate(4, null);
   prepStmt.setString(5, null);
   if (project.isActive()) prepStmt.setString(6, "Y");
   else prepStmt.setString(6, "N");
   if (project.getBudget() != -1) prepStmt.setFloat(7, project.getBudget());
   else prepStmt.setInt(7, 0);
   if (project.getNextDeadline() == null) prepStmt.setDate(8, null);
   else prepStmt.setDate(8, new java.sql.Date(project.getNextDeadline().getTime()));
   prepStmt.setString(9, project.getDescription());
   prepStmt.setDate(10, new java.sql.Date(project.getStartDate().getTime()));
   prepStmt.setString(11, project.getProjectType());
   if (project.getEndDate() == null) prepStmt.setDate(12, null);
   else prepStmt.setDate(12, new java.sql.Date(project.getEndDate().getTime()));
   prepStmt.setInt(13, project.getCustomerID());
   prepStmt.setInt(14, project.getRowversion());
   prepStmt.executeUpdate();
   ResultSet rs = prepStmt.getGeneratedKeys();
   if (rs.next()) {
     rtrn = rs.getInt(1);
   }
   rs.close();
   return rtrn;
 }
  private void updateProject(TracksAction act) {
    final boolean badcert = _prefs.getBoolean(PreferenceConstants.BADCERT, false);
    final String username = _prefs.getString(PreferenceConstants.USERNAME, null);
    final String password = _prefs.getString(PreferenceConstants.PASSWORD, null);

    Project p = (Project) act.target;

    Log.d(TAG, "Updating project " + String.valueOf(p.getId()));

    StringBuilder xml = new StringBuilder("<project>");
    xml.append("<name>");
    xml.append(p.getName());
    xml.append("</name>");
    xml.append("<description>");
    xml.append(p.getDescription() == null ? "" : p.getDescription());
    xml.append("</description>");
    xml.append("</project>");

    Log.v(TAG, "Sending: " + xml.toString());

    try {
      HttpResponse r;
      int resp;

      if (p.getId() < 0) {
        Log.v(TAG, "Posting to contexts.xml to create new context");
        r =
            HttpConnection.post(
                PreferenceUtils.getUri(_prefs, "projects.xml"),
                username,
                password,
                xml.toString(),
                badcert);
      } else {
        Log.v(TAG, "Putting to update existing context");
        r =
            HttpConnection.put(
                PreferenceUtils.getUri(_prefs, "projects/" + String.valueOf(p.getId()) + ".xml"),
                username,
                password,
                xml.toString(),
                badcert);
      }

      resp = r.getStatusLine().getStatusCode();

      if (resp == 200) {
        Log.d(TAG, "Successfully updated context");
        act.notify.sendEmptyMessage(SUCCESS_CODE);
      } else if (resp == 201) {
        Log.d(TAG, "Successfully created context.");
        String got = r.getFirstHeader("Location").getValue();
        got = got.substring(got.lastIndexOf('/') + 1);
        int pno = Integer.parseInt(got);
        p.setId(pno);
        Log.d(TAG, "ID of new project is: " + String.valueOf(pno));
        act.notify.sendEmptyMessage(SUCCESS_CODE);
      } else {
        Log.w(TAG, "Unexpected response from server: " + String.valueOf(resp));
        act.notify.sendEmptyMessage(UPDATE_FAIL_CODE);
      }
    } catch (Exception e) {
      Log.w(TAG, "Error updating context", e);
      act.notify.sendEmptyMessage(UPDATE_FAIL_CODE);
    }
  }
Beispiel #14
0
  public static ProjectDTO getProjectByName(String name) {
    Project p;
    p = ProxyManager.getProjectProxy().findProjectByName(name);
    if (p != null) {
      ProjectDTO projectDTO = new ProjectDTO();
      projectDTO.setProjectId(p.getProjectId());
      projectDTO.setName(p.getName());
      projectDTO.setDescription(p.getDescription());
      projectDTO.setStatus(p.getStatus());
      Team team = p.getTeamTeamId();
      if (team != null) {
        TeamDTO teamDTO = new TeamDTO();
        teamDTO.setTeamId(team.getTeamId());
        teamDTO.setProductOwnerId(team.getProductOwnerId());
        teamDTO.setScrumMasterId(team.getScrumMasterId());
        ArrayList<UserDTO> userDTOList = new ArrayList<UserDTO>();
        for (User user : team.getUserList()) {
          UserDTO userDTO = new UserDTO();
          userDTO.setUserId(user.getUserId());
          userDTO.setUsername(user.getUsername());
          userDTO.setPassword(user.getPassword());
          userDTO.setFirstName(user.getFirstName());
          userDTO.setLastName(user.getLastName());
          userDTO.setEmail(user.getEmail());
          userDTO.setAdmin(user.getIsAdmin());
          userDTO.setSalt(user.getSalt());
          userDTO.setActive(user.getIsActive());
          userDTO.setTimeCreated(user.getTimeCreated());
          userDTOList.add(userDTO);
        }
        teamDTO.setUserList(userDTOList);
        projectDTO.setTeamTeamId(teamDTO);
      } else projectDTO.setTeamTeamId(null);

      List<SprintDTO> sprintDTOList = new ArrayList<SprintDTO>();
      if (p.getSprintList() != null) {
        for (Sprint s : p.getSprintList()) {
          s = ProxyManager.getSprintProxy().findSprint(s.getSprintPK());
          SprintDTO sprintDTO = new SprintDTO();
          SprintPKDTO sprintPKDTO = new SprintPKDTO();
          sprintPKDTO.setSprintId(s.getSprintPK().getSprintId());
          sprintPKDTO.setProjectProjectId(s.getSprintPK().getProjectProjectId());
          sprintDTO.setSprintPK(sprintPKDTO);
          sprintDTO.setSeqNumber(s.getSeqNumber());
          sprintDTO.setStatus(s.getStatus());
          sprintDTO.setStartDate(s.getStartDate());
          sprintDTO.setEndDate(s.getEndDate());
          sprintDTO.setVelocity(s.getVelocity());
          if (s.getUserStoryList() != null) {
            List<UserStoryDTO> userStoryDTOList = new ArrayList<UserStoryDTO>();
            for (UserStory userStory : s.getUserStoryList()) {
              userStory = ProxyManager.getUserStoryProxy().findUserStory(userStory.getStoryId());
              UserStoryDTO userStoryDTO = new UserStoryDTO();
              userStoryDTO.setStoryId(userStory.getStoryId());
              userStoryDTO.setName(userStory.getName());
              userStoryDTO.setContent(userStory.getContent());
              userStoryDTO.setBusinessValue(userStory.getBusinessValue());
              userStoryDTO.setStatus(userStory.getStatus());
              if (userStory.getEstimateTime() != null) {
                userStoryDTO.setEstimateTime(userStory.getEstimateTime().doubleValue());
              } else userStoryDTO.setEstimateTime(null);
              userStoryDTO.setStoryId(userStory.getStoryId());
              userStoryDTO.setProjectProjectId(projectDTO);
              userStoryDTO.setComment(userStory.getComment());
              userStoryDTO.setSprint(sprintDTO);

              PriorityDTO priorityDTO = new PriorityDTO();
              priorityDTO.setPriorityId(userStory.getPriorityPriorityId().getPriorityId());
              priorityDTO.setName(userStory.getPriorityPriorityId().getName());
              userStoryDTO.setPriorityPriorityId(priorityDTO);

              List<AcceptanceTestDTO> acceptanceTestDTOList = new ArrayList<AcceptanceTestDTO>();
              for (AcceptanceTest at : userStory.getAcceptanceTestList()) {
                AcceptanceTestDTO acceptanceTestDTO = new AcceptanceTestDTO();
                acceptanceTestDTO.setAcceptanceTestId(at.getAcceptanceTestId());
                acceptanceTestDTO.setContent(at.getContent());
                acceptanceTestDTOList.add(acceptanceTestDTO);
              }
              userStoryDTO.setAcceptanceTestList(acceptanceTestDTOList);

              if (userStory.getTaskList() != null) {
                List<TaskDTO> taskDTOList = new ArrayList<TaskDTO>();
                for (Task task : userStory.getTaskList()) {
                  task = ProxyManager.getTaskProxy().findTask(task.getTaskPK());
                  TaskDTO taskDTO = new TaskDTO();
                  taskDTO.setDescription(task.getDescription());
                  taskDTO.setTimeRemaining(task.getTimeRemaining());
                  taskDTO.setEstimatedTime(task.getEstimatedTime());
                  taskDTO.setStatus(task.getStatus());
                  taskDTO.setPreassignedUserName(task.getPreassignedUserName());
                  taskDTO.setAssignedDate(task.getAssignedDate());

                  taskDTO.setUserStory(userStoryDTO);

                  TaskPKDTO taskPKDTO = new TaskPKDTO();
                  taskPKDTO.setTaskId(task.getTaskPK().getTaskId());
                  taskPKDTO.setUserStoryStoryId(task.getTaskPK().getUserStoryStoryId());
                  taskDTO.setTaskPK(taskPKDTO);

                  if (task.getUserUserId() != null) {
                    User user =
                        ProxyManager.getUserProxy().findUser(task.getUserUserId().getUserId());
                    UserDTO userDTO = new UserDTO();
                    userDTO.setUserId(user.getUserId());
                    userDTO.setUsername(user.getUsername());
                    userDTO.setPassword(user.getPassword());
                    userDTO.setFirstName(user.getFirstName());
                    userDTO.setLastName(user.getLastName());
                    userDTO.setEmail(user.getEmail());
                    userDTO.setAdmin(user.getIsAdmin());
                    userDTO.setSalt(user.getSalt());
                    userDTO.setActive(user.getIsActive());
                    userDTO.setTimeCreated(user.getTimeCreated());
                    taskDTO.setUserUserId(userDTO);
                  }

                  List<WorkloadDTO> workloadDTOList = new ArrayList<WorkloadDTO>();
                  for (Workload workload : task.getWorkloadList()) {
                    workload =
                        ProxyManager.getWorkloadProxy().findWorkload(workload.getWorkloadPK());
                    WorkloadDTO workloadDTO = new WorkloadDTO();
                    workloadDTO.setDay(workload.getDay());
                    workloadDTO.setTimeRemaining(workload.getTimeRemaining());
                    workloadDTO.setTimeSpent(workload.getTimeSpent());
                    workloadDTO.setStarted(workload.getStarted());
                    workloadDTO.setStartTime(workload.getStartTime());
                    workloadDTO.setStopTime(workload.getStopTime());

                    User user =
                        ProxyManager.getUserProxy().findUser(workload.getUser().getUserId());
                    UserDTO userDTO = new UserDTO();
                    userDTO.setUserId(user.getUserId());
                    userDTO.setUsername(user.getUsername());
                    userDTO.setPassword(user.getPassword());
                    userDTO.setFirstName(user.getFirstName());
                    userDTO.setLastName(user.getLastName());
                    userDTO.setEmail(user.getEmail());
                    userDTO.setAdmin(user.getIsAdmin());
                    userDTO.setSalt(user.getSalt());
                    userDTO.setActive(user.getIsActive());
                    userDTO.setTimeCreated(user.getTimeCreated());
                    workloadDTO.setUser(userDTO);

                    workloadDTO.setTask(taskDTO);

                    WorkloadPKDTO workloadPKDTO = new WorkloadPKDTO();
                    WorkloadPK workloadPK = workload.getWorkloadPK();
                    workloadPKDTO.setTaskTaskId(workloadPK.getTaskTaskId());
                    workloadPKDTO.setTaskUserStoryStoryId(workloadPK.getTaskUserStoryStoryId());
                    workloadPKDTO.setUserUserId(workloadPK.getUserUserId());
                    workloadPKDTO.setWorkloadId(workloadPK.getWorkloadId());
                    workloadDTO.setWorkloadPK(workloadPKDTO);

                    List<WorkblockDTO> workblockDTOList = new ArrayList<WorkblockDTO>();
                    for (Workblock workblock : workload.getWorkblockList()) {
                      workblock =
                          ProxyManager.getWorkblockProxy()
                              .findWorkblock(workblock.getWorkblockPK());
                      WorkblockDTO workblockDTO = new WorkblockDTO();
                      workblockDTO.setTimeStart(workblock.getTimeStart());
                      workblockDTO.setTimeStop(workblock.getTimeStop());

                      workblockDTO.setWorkload(workloadDTO);

                      WorkblockPKDTO workblockPKDTO = new WorkblockPKDTO();
                      WorkblockPK workblockPK = workblock.getWorkblockPK();
                      workloadPKDTO.setWorkloadId(workblockPK.getWorkloadWorkloadId());
                      workblockPKDTO.setWorkloadTaskTaskId(workloadPK.getTaskTaskId());
                      workblockPKDTO.setWorkloadTaskUserStoryStoryId(
                          workblockPK.getWorkloadTaskUserStoryStoryId());
                      workblockPKDTO.setWorkloadUserUserId(workblockPK.getWorkloadUserUserId());
                      workblockPKDTO.setWorkloadWorkloadId(workblockPK.getWorkloadWorkloadId());
                      workblockDTO.setWorkblockPK(workblockPKDTO);

                      workblockDTOList.add(workblockDTO);
                    }
                    workloadDTO.setWorkblockList(workblockDTOList);

                    workloadDTOList.add(workloadDTO);
                  }
                  taskDTO.setWorkloadList(workloadDTOList);

                  taskDTOList.add(taskDTO);
                }
                userStoryDTO.setTaskList(taskDTOList);
              }
              userStoryDTOList.add(userStoryDTO);
            }
            sprintDTO.setUserStoryList(userStoryDTOList);
          }
          sprintDTOList.add(sprintDTO);
        }
        projectDTO.setSprintList(sprintDTOList);

      } else projectDTO.setSprintList(null);

      List<UserStoryDTO> userStoryDTOList = new ArrayList<UserStoryDTO>();
      if (p.getUserStoryList() != null) {
        for (UserStory us : p.getUserStoryList()) {
          UserStoryDTO userStoryDTO = new UserStoryDTO();
          userStoryDTO.setStoryId(us.getStoryId());
          userStoryDTO.setName(us.getName());
          userStoryDTO.setContent(us.getContent());
          userStoryDTO.setBusinessValue(us.getBusinessValue());
          userStoryDTO.setStatus(us.getStatus());
          if (us.getEstimateTime() != null) {
            userStoryDTO.setEstimateTime(us.getEstimateTime().doubleValue());
          } else userStoryDTO.setEstimateTime(null);
          userStoryDTO.setStoryId(us.getStoryId());
          userStoryDTO.setProjectProjectId(projectDTO);

          PriorityDTO priorityDTO = new PriorityDTO();
          priorityDTO.setPriorityId(us.getPriorityPriorityId().getPriorityId());
          priorityDTO.setName(us.getPriorityPriorityId().getName());
          userStoryDTO.setPriorityPriorityId(priorityDTO);

          List<AcceptanceTestDTO> acceptanceTestDTOList = new ArrayList<AcceptanceTestDTO>();
          for (AcceptanceTest at : us.getAcceptanceTestList()) {
            AcceptanceTestDTO acceptanceTestDTO = new AcceptanceTestDTO();
            acceptanceTestDTO.setAcceptanceTestId(at.getAcceptanceTestId());
            acceptanceTestDTO.setContent(at.getContent());
            acceptanceTestDTOList.add(acceptanceTestDTO);
          }
          userStoryDTO.setAcceptanceTestList(acceptanceTestDTOList);

          // TODO: Set taskList to userStoryDTO
          if (us.getTaskList() != null) {
            List<TaskDTO> taskDTOList = new ArrayList<TaskDTO>();
            for (Task task : us.getTaskList()) {
              task = ProxyManager.getTaskProxy().findTask(task.getTaskPK());
              TaskDTO taskDTO = new TaskDTO();
              taskDTO.setDescription(task.getDescription());
              taskDTO.setTimeRemaining(task.getTimeRemaining());
              taskDTO.setEstimatedTime(task.getEstimatedTime());
              taskDTO.setStatus(task.getStatus());
              taskDTO.setPreassignedUserName(task.getPreassignedUserName());
              taskDTO.setAssignedDate(task.getAssignedDate());

              taskDTO.setUserStory(userStoryDTO);

              TaskPKDTO taskPKDTO = new TaskPKDTO();
              taskPKDTO.setTaskId(task.getTaskPK().getTaskId());
              taskPKDTO.setUserStoryStoryId(task.getTaskPK().getUserStoryStoryId());
              taskDTO.setTaskPK(taskPKDTO);

              if (task.getUserUserId() != null) {
                User user = ProxyManager.getUserProxy().findUser(task.getUserUserId().getUserId());
                UserDTO userDTO = new UserDTO();
                userDTO.setUserId(user.getUserId());
                userDTO.setUsername(user.getUsername());
                userDTO.setPassword(user.getPassword());
                userDTO.setFirstName(user.getFirstName());
                userDTO.setLastName(user.getLastName());
                userDTO.setEmail(user.getEmail());
                userDTO.setAdmin(user.getIsAdmin());
                userDTO.setSalt(user.getSalt());
                userDTO.setActive(user.getIsActive());
                userDTO.setTimeCreated(user.getTimeCreated());
                taskDTO.setUserUserId(userDTO);
              }

              List<WorkloadDTO> workloadDTOList = new ArrayList<WorkloadDTO>();
              for (Workload workload : task.getWorkloadList()) {
                workload = ProxyManager.getWorkloadProxy().findWorkload(workload.getWorkloadPK());
                WorkloadDTO workloadDTO = new WorkloadDTO();
                workloadDTO.setDay(workload.getDay());
                workloadDTO.setTimeRemaining(workload.getTimeRemaining());
                workloadDTO.setTimeSpent(workload.getTimeSpent());

                User user = ProxyManager.getUserProxy().findUser(workload.getUser().getUserId());
                UserDTO userDTO = new UserDTO();
                userDTO.setUserId(user.getUserId());
                userDTO.setUsername(user.getUsername());
                userDTO.setPassword(user.getPassword());
                userDTO.setFirstName(user.getFirstName());
                userDTO.setLastName(user.getLastName());
                userDTO.setEmail(user.getEmail());
                userDTO.setAdmin(user.getIsAdmin());
                userDTO.setSalt(user.getSalt());
                userDTO.setActive(user.getIsActive());
                userDTO.setTimeCreated(user.getTimeCreated());
                workloadDTO.setUser(userDTO);

                workloadDTO.setTask(taskDTO);

                WorkloadPKDTO workloadPKDTO = new WorkloadPKDTO();
                WorkloadPK workloadPK = workload.getWorkloadPK();
                workloadPKDTO.setTaskTaskId(workloadPK.getTaskTaskId());
                workloadPKDTO.setTaskUserStoryStoryId(workloadPK.getTaskUserStoryStoryId());
                workloadPKDTO.setUserUserId(workloadPK.getUserUserId());
                workloadPKDTO.setWorkloadId(workloadPK.getWorkloadId());
                workloadDTO.setWorkloadPK(workloadPKDTO);

                List<WorkblockDTO> workblockDTOList = new ArrayList<WorkblockDTO>();
                for (Workblock workblock : workload.getWorkblockList()) {
                  workblock =
                      ProxyManager.getWorkblockProxy().findWorkblock(workblock.getWorkblockPK());
                  WorkblockDTO workblockDTO = new WorkblockDTO();
                  workblockDTO.setTimeStart(workblock.getTimeStart());
                  workblockDTO.setTimeStop(workblock.getTimeStop());

                  workblockDTO.setWorkload(workloadDTO);

                  WorkblockPKDTO workblockPKDTO = new WorkblockPKDTO();
                  WorkblockPK workblockPK = workblock.getWorkblockPK();
                  workloadPKDTO.setWorkloadId(workblockPK.getWorkloadWorkloadId());
                  workblockPKDTO.setWorkloadTaskTaskId(workloadPK.getTaskTaskId());
                  workblockPKDTO.setWorkloadTaskUserStoryStoryId(
                      workblockPK.getWorkloadTaskUserStoryStoryId());
                  workblockPKDTO.setWorkloadUserUserId(workblockPK.getWorkloadUserUserId());
                  workblockPKDTO.setWorkloadWorkloadId(workblockPK.getWorkloadWorkloadId());
                  workblockDTO.setWorkblockPK(workblockPKDTO);

                  workblockDTOList.add(workblockDTO);
                }
                workloadDTO.setWorkblockList(workblockDTOList);

                workloadDTOList.add(workloadDTO);
              }
              taskDTO.setWorkloadList(workloadDTOList);

              taskDTOList.add(taskDTO);
            }
            userStoryDTO.setTaskList(taskDTOList);
          } else userStoryDTO.setTaskList(null);

          SprintDTO sprintDTO = new SprintDTO();
          if (us.getSprint() != null) {
            SprintPKDTO sprintPKDTO = new SprintPKDTO();
            sprintPKDTO.setSprintId(us.getSprint().getSprintPK().getSprintId());
            sprintPKDTO.setProjectProjectId(us.getSprint().getSprintPK().getProjectProjectId());
            sprintDTO.setSprintPK(sprintPKDTO);
            sprintDTO.setSeqNumber(us.getSprint().getSeqNumber());
            sprintDTO.setStatus(us.getSprint().getStatus());
            sprintDTO.setStartDate(us.getSprint().getStartDate());
            sprintDTO.setEndDate(us.getSprint().getEndDate());
            sprintDTO.setVelocity(us.getSprint().getVelocity());
          } else sprintDTO = null;
          userStoryDTO.setSprint(sprintDTO);
          userStoryDTOList.add(userStoryDTO);
        }
        projectDTO.setUserStoryList(userStoryDTOList);
      }
      return projectDTO;
    } else return null;
  }
  @Test
  public void testUpdateAndRefreshJobPositions() {
    Project obj = dod.getNewTransientProject(4);
    assertNotNull("Data on demand for 'Project' failed to initialize correctly", obj);
    JobPosition jp1 = jobPositionDataOnDemand.getNewTransientJobPosition(8);
    assertNotNull("Data on demand for 'JobPosition' failed to initialize correctly", jp1);
    JobPosition jp2 = jobPositionDataOnDemand.getNewTransientJobPosition(9);
    JobPosition jp3 = jobPositionDataOnDemand.getNewTransientJobPosition(10);

    Date projDateFrom = DateTrimmer.addDays(DateTrimmer.today(), -20);
    Date projDateTo = DateTrimmer.addDays(DateTrimmer.today(), 20);

    obj.setDateFrom(projDateFrom);
    obj.setDateTo(projDateTo);
    obj.persist();

    jp1.setProject(obj);
    obj.getJobPositions().add(jp1);
    jp2.setProject(obj);
    obj.getJobPositions().add(jp2);
    jp3.setProject(obj);
    obj.getJobPositions().add(jp3);
    obj.persist();

    Date eheDateTo1 = DateTrimmer.addDays(projDateTo, -5);
    Date eheDateTo2 = DateTrimmer.addDays(projDateTo, -10);
    Date eheDateTo3 = DateTrimmer.addDays(projDateTo, 15);

    Employee emp1 = employeeDataOnDemand.getNewTransientEmployee(5);
    assertNotNull("Data on demand for 'Employee' failed to initialize correctly", emp1);
    emp1.persist();
    Employee emp2 = employeeDataOnDemand.getNewTransientEmployee(6);
    emp2.persist();
    Employee emp3 = employeeDataOnDemand.getNewTransientEmployee(7);
    emp3.persist();

    EmploymentHistoryEntry ehe1 =
        employmentHistoryEntryDataOnDemand.getNewTransientEmploymentHistoryEntry(5);
    assertNotNull(
        "Data on demand for 'EmploymentHistoryEntry' failed to initialize correctly", ehe1);
    EmploymentHistoryEntry ehe2 =
        employmentHistoryEntryDataOnDemand.getNewTransientEmploymentHistoryEntry(6);
    EmploymentHistoryEntry ehe3 =
        employmentHistoryEntryDataOnDemand.getNewTransientEmploymentHistoryEntry(7);

    prepareHistoryEntry(eheDateTo1, DateTrimmer.addDays(eheDateTo1, -50), emp1, ehe1);
    prepareHistoryEntry(eheDateTo2, DateTrimmer.addDays(eheDateTo2, -50), emp2, ehe2);
    prepareHistoryEntry(eheDateTo3, DateTrimmer.addDays(eheDateTo3, -50), emp3, ehe3);

    JobPositionHistoryEntry jphe1 =
        jobPositionHistoryEntryDataOnDemand.getNewTransientJobPositionHistoryEntry(5);
    assertNotNull(
        "Data on demand for 'JobPositionHistoryEntry' failed to initialize correctly", jphe1);
    jphe1.setJobPosition(jp1);
    jphe1.persist();
    JobPositionHistoryEntry jphe2 =
        jobPositionHistoryEntryDataOnDemand.getNewTransientJobPositionHistoryEntry(6);
    jphe2.setJobPosition(jp2);
    jphe2.persist();
    JobPositionHistoryEntry jphe3 =
        jobPositionHistoryEntryDataOnDemand.getNewTransientJobPositionHistoryEntry(7);
    jphe3.setJobPosition(jp3);
    jphe3.persist();

    prepareHistoryEntry(projDateTo, DateTrimmer.addDays(projDateTo, -50), emp1, jphe1);
    prepareHistoryEntry(projDateTo, DateTrimmer.addDays(projDateTo, -50), emp2, jphe2);
    prepareHistoryEntry(projDateTo, DateTrimmer.addDays(projDateTo, -50), emp3, jphe3);

    obj = Project.findProject(obj.getId());
    Date newProjEndDate = DateTrimmer.addDays(projDateTo, -7);
    obj.setDateTo(newProjEndDate);
    obj.setDescription("myDesc1");
    obj.setName("myName1");
    obj.setReferenceLink("http://www.mylink1.com/");
    obj.updateAndRefreshJobPositions();
    obj = Project.findProject(obj.getId());
    jphe1 = JobPositionHistoryEntry.findJobPositionHistoryEntry(jphe1.getId());
    assertEquals(
        "Wrong date to assigned to job position history", jphe1.getDateTo(), obj.getDateTo());
    jphe2 = JobPositionHistoryEntry.findJobPositionHistoryEntry(jphe2.getId());
    assertEquals(
        "Wrong date to assigned to job position history", jphe2.getDateTo(), ehe2.getDateTo());
    jphe3 = JobPositionHistoryEntry.findJobPositionHistoryEntry(jphe3.getId());
    assertEquals(
        "Wrong date to assigned to job position history", jphe3.getDateTo(), obj.getDateTo());

    assertEquals(obj.getName(), "myName1");
    assertEquals(obj.getDescription(), "myDesc1");
    assertEquals(obj.getReferenceLink(), "http://www.mylink1.com/");
  }
  @RequestMapping(value = "project/{projectId}", method = RequestMethod.GET)
  public @ResponseBody String jsonRestProject(@PathVariable Long projectId, ModelMap model)
      throws IOException {
    StringBuilder sb = new StringBuilder();

    Project p = requestManager.getProjectById(projectId);
    sb.append("'id':'" + projectId + "'");
    sb.append(",");
    sb.append("'name':'" + p.getName() + "'");
    sb.append(",");
    sb.append("'alias':'" + p.getAlias() + "'");
    sb.append(",");
    sb.append("'progress':'" + p.getProgress().name() + "'");
    sb.append(",");
    sb.append("'description':'" + p.getDescription() + "'");
    sb.append(",");

    sb.append("'overviews':[");
    if (p.getOverviews().size() > 0) {
      int oi = 0;
      for (ProjectOverview overview : p.getOverviews()) {
        oi++;
        sb.append("{");
        sb.append("'allSampleQcPassed':" + overview.getAllSampleQcPassed());
        sb.append(",");
        sb.append("'libraryPreparationComplete':" + overview.getLibraryPreparationComplete());
        sb.append(",");
        sb.append("'allLibrariesQcPassed':" + overview.getAllLibrariesQcPassed());
        sb.append(",");
        sb.append("'allPoolsConstructed':" + overview.getAllPoolsConstructed());
        sb.append(",");
        sb.append("'allRunsCompleted':" + overview.getAllRunsCompleted());
        sb.append(",");
        sb.append("'primaryAnalysisCompleted':" + overview.getPrimaryAnalysisCompleted());
        sb.append("}");
        if (oi < p.getOverviews().size()) {
          sb.append(",");
        }
      }
    }
    sb.append("]");
    sb.append(",");

    sb.append("'samples':[");
    Collection<Sample> samples = requestManager.listAllSamplesByProjectId(projectId);
    if (samples.size() > 0) {
      int si = 0;
      for (Sample sample : samples) {
        si++;
        String sampleQubit = "not available";
        if (requestManager.listAllSampleQCsBySampleId(sample.getId()).size() > 0) {
          ArrayList<SampleQC> sampleQcList =
              new ArrayList(requestManager.listAllSampleQCsBySampleId(sample.getId()));
          SampleQC lastQc = sampleQcList.get(sampleQcList.size() - 1);
          sampleQubit = (lastQc.getResults() != null ? lastQc.getResults().toString() : "");
        }
        sb.append("{");
        sb.append("'alias':'" + sample.getAlias() + "'");
        sb.append(",");
        sb.append(
            "'qcPassed':'"
                + (sample.getQcPassed() != null ? sample.getQcPassed().toString() : "")
                + "'");
        sb.append(",");

        sb.append(
            "'receivedDate':'"
                + (sample.getReceivedDate() != null
                    ? LimsUtils.getDateAsString(sample.getReceivedDate())
                    : "not available")
                + "'");
        sb.append(",");
        sb.append(
            "'sampleType':'"
                + (sample.getSampleType() != null ? sample.getSampleType() : "")
                + "'");
        sb.append(",");
        sb.append("'sampleQubit':'" + sampleQubit + "'");
        sb.append("}");

        if (si < samples.size()) {
          sb.append(",");
        }
      }
    }
    sb.append("]");
    sb.append(",");

    sb.append("'runs':[");
    Collection<Run> runs = requestManager.listAllRunsByProjectId(projectId);
    if (runs.size() > 0) {
      int ri = 0;
      for (Run run : runs) {
        ri++;
        if (!run.getStatus().getHealth().getKey().equals("Failed")) {
          ArrayList<String> runSamples = new ArrayList();
          Collection<SequencerPartitionContainer<SequencerPoolPartition>> spcs =
              requestManager.listSequencerPartitionContainersByRunId(run.getId());
          if (spcs.size() > 0) {
            for (SequencerPartitionContainer<SequencerPoolPartition> spc : spcs) {

              if (spc.getPartitions().size() > 0) {
                for (SequencerPoolPartition spp : spc.getPartitions()) {
                  if (spp.getPool() != null) {
                    if (spp.getPool().getDilutions().size() > 0) {
                      for (Dilution dilution : spp.getPool().getDilutions()) {
                        Sample sample = dilution.getLibrary().getSample();
                        if (sample.getProject().equals(p)) {
                          runSamples.add(sample.getAlias());
                        }
                      }
                    }
                  }
                }
              }
            }
          }

          sb.append("{");
          sb.append("'name':'" + run.getName() + "'");
          sb.append(",");
          sb.append(
              "'status':'"
                  + (run.getStatus() != null && run.getStatus().getHealth() != null
                      ? run.getStatus().getHealth().getKey()
                      : "")
                  + "'");
          sb.append(",");
          sb.append(
              "'startDate':'"
                  + (run.getStatus() != null && run.getStatus().getStartDate() != null
                      ? run.getStatus().getStartDate().toString()
                      : "")
                  + "'");
          sb.append(",");
          sb.append(
              "'completionDate':'"
                  + (run.getStatus() != null && run.getStatus().getCompletionDate() != null
                      ? run.getStatus().getCompletionDate().toString()
                      : "")
                  + "'");
          sb.append(",");
          sb.append(
              "'platformType':'"
                  + (run.getPlatformType() != null ? run.getPlatformType().getKey() : "")
                  + "'");
          sb.append(",");
          sb.append("'samples':[");
          if (runSamples.size() > 0) {
            int rsi = 0;
            for (String alias : runSamples) {
              rsi++;
              sb.append("{'sampleAlias':'" + alias + "'}");
              if (rsi < runSamples.size()) {
                sb.append(",");
              }
            }
          }
          sb.append("]");
          sb.append("}");
          if (ri < runs.size()) {
            sb.append(",");
          }
        }
      }
    }
    sb.append("]");

    return "{" + sb.toString() + "}";
  }
Beispiel #17
0
  public boolean createProject(Project project, int requestId, int userId)
      throws RemoteException, SQLException {
    System.out.println(userId);
    ResultSet result =
        connection
            .createStatement()
            .executeQuery(
                "select count(*) from logs where requestId = "
                    + requestId
                    + " and userId = "
                    + userId);
    if (result.getInt(1) == 0) {
      SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
      result =
          connection
              .createStatement()
              .executeQuery("select id from projects where Name = \"" + project.getName() + "\"");
      if (result.next()) {
        return false;
      }
      connection.setAutoCommit(false);
      connection
          .createStatement()
          .execute(
              "insert into projects (Name, Deadline, Objective, Description, OwnerUserId,Active) values (\""
                  + project.getName()
                  + "\", \""
                  + dateFormat.format(project.getDeadline())
                  + "\","
                  + project.getObjective()
                  + ", \""
                  + project.getDescription()
                  + "\", "
                  + userId
                  + ","
                  + 1
                  + ")");
      result =
          connection
              .createStatement()
              .executeQuery("select id from projects where Name = \"" + project.getName() + "\"");
      int projectId = result.getInt(1);
      connection
          .createStatement()
          .execute(
              "insert into administrators (ProjectId, UserId) values ("
                  + projectId
                  + ", "
                  + userId
                  + ")");
      connection
          .createStatement()
          .execute(
              "insert into logs (UserId, RequestId, Response) values ("
                  + userId
                  + ", "
                  + requestId
                  + ", 1)");

      for (Reward reward : project.getRewards()) {
        this.createReward(reward, 0, projectId, userId);
      }
      for (Path path : project.getPaths()) {
        this.createPath(path, 0, userId, projectId);
      }
      project.setId(projectId);
      System.out.println("Created Proj");
      User username = getUser(userId);
      if (isTumblr(username.getUsername())) {
        postinTumblr(username.getUsername(), project);
      }
      connection.commit();
      return true;
    } else {
      System.out.println("OUPS");
      result =
          connection
              .createStatement()
              .executeQuery(
                  "select response from logs where requestId = "
                      + requestId
                      + " and userId = "
                      + userId);
      return result.getBoolean(1);
    }
  }