Index: lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java =================================================================== diff -u -rd9a8907ef60b47f5dbe1c024a93cb44c3e0a4174 -r8e8e09083dbf82ce00a164f744e58f3ade9c1adc --- lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java (.../GradebookService.java) (revision d9a8907ef60b47f5dbe1c024a93cb44c3e0a4174) +++ lams_gradebook/src/java/org/lamsfoundation/lams/gradebook/service/GradebookService.java (.../GradebookService.java) (revision 8e8e09083dbf82ce00a164f744e58f3ade9c1adc) @@ -135,7 +135,7 @@ activityDTO.setFeedback(gradebookActivity.getFeedback()); } - LearnerProgress learnerProgress = getLearnerProgress(lesson, learner); + LearnerProgress learnerProgress = lessonService.getUserProgressForLesson(learner.getUserId(), lesson.getLessonId()); // Setting status activityDTO.setStartDate(getActivityStartDate(learnerProgress, activity, learner.getTimeZone())); activityDTO.setTimeTaken(getActivityDuration(learnerProgress, activity)); @@ -465,7 +465,7 @@ lessonRow.setFeedback(gbLesson.getFeedback()); } - LearnerProgress learnerProgress = getLearnerProgress(lesson, user); + LearnerProgress learnerProgress = lessonService.getUserProgressForLesson(user.getUserId(), lesson.getLessonId()); lessonRow.setStatus(getLessonStatusStr(learnerProgress)); if (learnerProgress != null) { if (learnerProgress.getStartDate() != null && learnerProgress.getFinishDate() != null) { @@ -1213,32 +1213,14 @@ } return null; } - - private LearnerProgress getLearnerProgress(Lesson lesson, User user) { - if (lesson != null && user != null) { - Map properties = new HashMap(); - properties.put("lesson", lesson); - properties.put("user", user); - List learnerProgressList = baseDAO.findByProperties(LearnerProgress.class, properties); - - if (learnerProgressList != null && learnerProgressList.size() > 0) { - return (LearnerProgress) learnerProgressList.get(0); - } else { - return null; - } - } else { - return null; - } - } /** * Returns map containing (userId -> LearnerProgressMap) pairs. It serves merely for optimizing amount of db queries. */ private Map getUserToLearnerProgressMap(Lesson lesson) { if (lesson != null) { - String query = "select lp from LearnerProgress lp where lp.lesson.lessonId=?"; - List learnerProgressList = baseDAO.find(query, new Object[] { lesson.getLessonId() }); + List learnerProgressList = lessonService.getUserProgressForLesson(lesson.getLessonId()); if (learnerProgressList != null && learnerProgressList.size() > 0) { Map map = new HashMap();