Beispiel #1
0
 /**
  * Archive a result
  *
  * @param taskData task data of this result
  * @param data the result data
  * @param quality the quality of the result
  * @param advocatingWorkers the advocating workers of this result
  */
 public void archiveResult(
     TaskData taskData, ByteArray data, double quality, Set<WorkerID> advocatingWorkers) {
   PathManager pathManager = PathManager.jobOwner(taskData.getJobName());
   File location =
       new File(pathManager.getCanonicalResultFilePath(taskData.getTaskMeta().getTaskName()));
   resultMap.put(
       taskData.taskID(), new CanonicalResult(data, quality, advocatingWorkers, location));
 }
  // According to userid and assignmentid, pasrse the teamrecord data group by user
  public List<UserTicketTrackingData> parseUserData(List<TaskData> taskdatas) throws SQLException {
    Map<String, UserTicketTrackingData> userid_map = new HashMap<String, UserTicketTrackingData>();

    for (TaskData user_assignmetid_taskData : taskdatas) {

      String userid = user_assignmetid_taskData.ticketinfos.get(0).assignee;
      String timesheetid = trackingTicketScriptDao.findtimeSheetId(userid, startDate, endDate);
      String rmlogin = user_assignmetid_taskData.getRmlogin();

      if (!userid_map.containsKey(userid)) {
        UserTicketTrackingData userdata = new UserTicketTrackingData();
        userdata.setUserId(userid);
        userdata.setTimesheetId(timesheetid);
        userdata.setRmlogin(rmlogin);
        // userdata.taskdatas.add(user_assignmetid_taskData);
        userid_map.put(userid, userdata);
      }
      UserTicketTrackingData userdata = userid_map.get(userid);
      userdata.getTaskdatas().add(user_assignmetid_taskData);
    }
    List<UserTicketTrackingData> list = new ArrayList<UserTicketTrackingData>(userid_map.values());
    return list;
  }
Beispiel #3
0
  @Override
  protected TaskData doInBackground(TaskData... params) {
    // Wait for previous thread (if any) to finish before continuing
    try {
      if ((oldInstance != null) && (oldInstance.getStatus() != AsyncTask.Status.FINISHED))
        oldInstance.get();
    } catch (Exception e) {
      Log.e(
          TAG,
          "doInBackground - Got exception while waiting for thread to finish: " + e.getMessage());
    }

    switch (type) {
      case TASK_TYPE_LOAD_DECK:
        return doInBackgroundLoadDeck(params);

      case TASK_TYPE_LOAD_DECK_AND_UPDATE_CARDS:
        TaskData taskData = doInBackgroundLoadDeck(params);
        if (taskData.integer == AnkiDroid.DECK_LOADED) {
          taskData.deck.updateAllCards();
          taskData.card = taskData.deck.getCurrentCard();
        }
        return taskData;

      case TASK_TYPE_ANSWER_CARD:
        return doInBackgroundAnswerCard(params);

      case TASK_TYPE_SUSPEND_CARD:
        return doInBackgroundSuspendCard(params);

      case TASK_TYPE_UPDATE_FACT:
        return doInBackgroundUpdateFact(params);

      default:
        return null;
    }
  }
  // According to userid, pasrse the teamrecord data group by user and assignmentid
  public List<TaskData> parseTaskData(List<TeamRecord> records) throws SQLException {

    Map<String, TaskData> ticket_map = new HashMap<String, TaskData>();

    for (TeamRecord rcd : records) {
      // If this line's rmlogin is not in the database, we need to delete this line
      if (!rmLoginNames.contains(rcd.getRmlogin())) {
        // need to add a log
        continue;
      }

      // to find userid according rmlogin, rmlogin is the remedy's name
      // useridtd is String array, useridtd[0] is userId, useridtd[1] is
      // timesheetid, useridtd[2] is staffid
      String[] strs = trackingTicketScriptDao.findUserId(rcd.getRmlogin(), startDate, endDate);
      String uid = strs[0];
      String tid = strs[1];
      String sid = strs[2];

      String assignmentid = trackingTicketScriptDao.findassignmentId(rcd.getTask());

      // distinguish the data by assignmentid and id, to confirm each task's ticket_id
      if (!ticket_map.containsKey(assignmentid + ":" + uid)) {
        TaskData taskdata = new TaskData();
        taskdata.setAssignmentid(assignmentid);
        ticket_map.put(assignmentid + ":" + uid, taskdata);
      }

      TaskData taskdata = ticket_map.get(assignmentid + ":" + uid);
      taskdata.setRmlogin(rcd.getRmlogin());
      TicketInfo ticketinfo = new TicketInfo();
      ticketinfo.setDescription(rcd.getTask());
      ticketinfo.setAssignee(uid);
      ticketinfo.setTicket_id(rcd.getTicketNumber());
      String ticket_id =
          new Integer(trackingTicketScriptDao.getticket_id(rcd.getTicketNumber())).toString();

      // gain the TicketInfo data information from excel
      ticketinfo.setId(ticket_id);
      ticketinfo.setFunctionPoint(rcd.getFp());
      ticketinfo.setEstimation(rcd.getEst());
      ticketinfo.setProgress(rcd.getProgress());
      ticketinfo.setInternalCommentsCount(rcd.getInternal_Comments());
      ticketinfo.setWmCommentsCount(rcd.getWm_Comments());
      ticketinfo.setInternalReviewEffort(rcd.getInternal_Review_Effort());
      ticketinfo.setInternalReworkEffort(rcd.getInternal_Rework_Effort());
      ticketinfo.setExternalReworkEffort(rcd.getExternal_Rework_Effort());
      ticketinfo.setTransactionCount(rcd.getTransaction());
      ticketinfo.setUpdateBy(sid);

      // gain the TicketLog data information from excel
      TicketLog ticketLog = new TicketLog();
      ticketLog.setAssignmentId(trackingTicketScriptDao.findassignmentId(rcd.getTask()));
      ticketLog.setHourSpends(rcd.getDays());
      ticketLog.setTimesheetId(tid);
      ticketLog.setAssigneeId(sid);
      ticketLog.setTicketId(ticket_id);
      ticketLog.setComment(rcd.getComment());

      taskdata.ticketinfos.add(ticketinfo);
      taskdata.ticketLogs.add(ticketLog);
      taskdata.setWrong_log(rcd.getWrong_log());
    }

    List<TaskData> list = new ArrayList<TaskData>(ticket_map.values());
    return list;
  }
Beispiel #5
0
 @Override
 public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) {
   TaskData task = listAdapter.getItem(position);
   task.expanded = !task.expanded;
   listAdapter.notifyDataSetChanged();
 }