Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java,v diff -u -r1.7.2.3 -r1.7.2.4 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java 11 May 2016 07:35:28 -0000 1.7.2.3 +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/ResourceItemVisitDAO.java 25 Nov 2016 12:07:42 -0000 1.7.2.4 @@ -39,9 +39,10 @@ * Return list which contains key pair which key is resource item uid, value is number view. * * @param contentId + * @param sessionId * @return */ - Map getSummary(Long contentId); + Map getSummary(Long contentId, Long sessionId); List getResourceItemLogBySession(Long sessionId, Long itemUid); Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java,v diff -u -r1.11.2.5 -r1.11.2.6 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java 11 May 2016 07:35:29 -0000 1.11.2.5 +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/dao/hibernate/ResourceItemVisitDAOHibernate.java 25 Nov 2016 12:07:42 -0000 1.11.2.6 @@ -53,8 +53,8 @@ private static final String FIND_SUMMARY = "select v.resourceItem.uid, count(v.resourceItem) from " + ResourceItemVisitLog.class.getName() + " as v , " + ResourceSession.class.getName() + " as s, " - + Resource.class.getName() + " as r " + " where v.sessionId = s.sessionId " - + " and s.resource.uid = r.uid " + " and r.contentId =? " + " group by v.sessionId, v.resourceItem.uid "; + + Resource.class.getName() + " as r " + " where v.sessionId = :sessionId and v.sessionId = s.sessionId " + + " and s.resource.uid = r.uid " + " and r.contentId =:contentId " + " group by v.sessionId, v.resourceItem.uid "; @Override public ResourceItemVisitLog getResourceItemLog(Long itemUid, Long userId) { @@ -76,10 +76,14 @@ @Override @SuppressWarnings("unchecked") - public Map getSummary(Long contentId) { + public Map getSummary(Long contentId, Long sessionId) { // Note: Hibernate 3.1 query.uniqueResult() returns Integer, Hibernate 3.2 query.uniqueResult() returns Long - List result = (List) doFind(FIND_SUMMARY, contentId); + List result = getSession().createQuery(FIND_SUMMARY) + .setLong("sessionId", sessionId) + .setLong("contentId", contentId) + .list(); + Map summaryList = new HashMap(result.size()); for (Object[] list : result) { if (list[1] != null) { Index: lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java,v diff -u -r1.77.2.14 -r1.77.2.15 --- lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java 15 Jun 2016 08:06:25 -0000 1.77.2.14 +++ lams_tool_larsrc/src/java/org/lamsfoundation/lams/tool/rsrc/service/ResourceServiceImpl.java 25 Nov 2016 12:07:42 -0000 1.77.2.15 @@ -420,8 +420,6 @@ public List getSummary(Long contentId) { List groupList = new ArrayList(); - // get all item which is accessed by user - Map visitCountMap = resourceItemVisitDao.getSummary(contentId); Resource resource = resourceDao.getByContentId(contentId); // get all sessions in a resource and retrieve all resource items under this session @@ -440,6 +438,9 @@ // add this session's resource items items.addAll(session.getResourceItems()); + // get all item which is accessed by users in this session + Map visitCountMap = resourceItemVisitDao.getSummary(contentId, session.getSessionId()); + for (ResourceItem item : items) { ResourceItemDTO resourceItemDTO = new ResourceItemDTO(item); // set viewNumber according visit log