|
|
@@ -296,5 +296,99 @@ public class WechatServiceImpl implements WechatService {
|
|
|
return resultObj.toString();
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public String getManagerTask(long userId) {
|
|
|
+ JSONObject resultObj = new JSONObject();
|
|
|
+ Manager manager = managerDao.findOne(userId);
|
|
|
+ if (manager == null){
|
|
|
+ resultObj.put("message", "manager not found");
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ JSONArray taskArr = new JSONArray();
|
|
|
+ List<Task> tasks = taskDao.findByManagerId(userId);
|
|
|
+ for (Task task : tasks){
|
|
|
+ JSONObject taskObj = new JSONObject();
|
|
|
+ taskObj.put("id", task.getId());
|
|
|
+ taskObj.put("taskName", task.getName());
|
|
|
+
|
|
|
+ // check task status - UPCOMING/ONGOING/FINISHED
|
|
|
+ Timestamp currentTimestamp = new Timestamp(System.currentTimeMillis());
|
|
|
+ if (task.getBeginTime().after(currentTimestamp)){
|
|
|
+ // UPCOMING
|
|
|
+ taskObj.put("status", 0);
|
|
|
+ }
|
|
|
+ else if (task.getEndTime().before(currentTimestamp)){
|
|
|
+ // FINISHED
|
|
|
+ taskObj.put("status", 2);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ taskObj.put("status", 1);
|
|
|
+ }
|
|
|
+
|
|
|
+ taskArr.put(taskObj);
|
|
|
+ }
|
|
|
+ resultObj.put("tasks", taskArr);
|
|
|
+ }
|
|
|
+
|
|
|
+ return resultObj.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getWorkersPassword(long taskId) {
|
|
|
+ JSONObject resultObj = new JSONObject();
|
|
|
+ Task task = taskDao.findOne(taskId);
|
|
|
+ if (task == null){
|
|
|
+ resultObj.put("message", "task not found");
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ JSONArray passwordArr = new JSONArray();
|
|
|
+ List<AssignedTask> assignedTasks = assignedTaskDao.findByTaskId(taskId);
|
|
|
+ for (AssignedTask assignedTask : assignedTasks){
|
|
|
+ JSONObject passwordObj = new JSONObject();
|
|
|
+
|
|
|
+ Worker worker = workerDao.findOne(assignedTask.getWorkerId());
|
|
|
+ passwordObj.put("workerId", worker.getId());
|
|
|
+ passwordObj.put("workerName", worker.getName());
|
|
|
+ try {
|
|
|
+ String password = EncryptionUtil.encryptDES(taskId + "_" + assignedTask.getWorkerId());
|
|
|
+ passwordObj.put("password", password);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+
|
|
|
+ passwordArr.put(passwordObj);
|
|
|
+ }
|
|
|
+ resultObj.put("passwords", passwordArr);
|
|
|
+ }
|
|
|
+
|
|
|
+ return resultObj.toString();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getWorkersGrade(long taskId) {
|
|
|
+ JSONObject resultObj = new JSONObject();
|
|
|
+ Task task = taskDao.findOne(taskId);
|
|
|
+ if (task == null){
|
|
|
+ resultObj.put("message", "task not found");
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ JSONArray gradeArr = new JSONArray();
|
|
|
+ List<AssignedTask> assignedTasks = assignedTaskDao.findByTaskId(taskId);
|
|
|
+ for (AssignedTask assignedTask : assignedTasks){
|
|
|
+ JSONObject gradeObj = new JSONObject();
|
|
|
+
|
|
|
+ Worker worker = workerDao.findOne(assignedTask.getWorkerId());
|
|
|
+ gradeObj.put("workerId", worker.getId());
|
|
|
+ gradeObj.put("workerName", worker.getName());
|
|
|
+ gradeObj.put("grade", assignedTask.getScore());
|
|
|
+
|
|
|
+ gradeArr.put(gradeObj);
|
|
|
+ }
|
|
|
+ resultObj.put("grades", gradeArr);
|
|
|
+ }
|
|
|
+
|
|
|
+ return resultObj.toString();
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
}
|