This is an automated email from the ASF dual-hosted git repository. solomax pushed a commit to branch OPENMEETINGS-1864-privacy in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/OPENMEETINGS-1864-privacy by this push: new 8b37133 [OPENMEETINGS-1864] admin users count is fixed 8b37133 is described below commit 8b37133f2095059a93a0b93048384419f8ddf5d1 Author: Maxim Solodovnik <solomax...@gmail.com> AuthorDate: Thu Apr 12 23:46:03 2018 +0700 [OPENMEETINGS-1864] admin users count is fixed --- .../apache/openmeetings/db/dao/user/UserDao.java | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java index de004ad..1adf437 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java @@ -195,6 +195,14 @@ public class UserDao implements IGroupAdminDataProviderDao<User> { return q.getResultList(); } + private long count(String search, boolean filterContacts, Long currentUserId, boolean filterDeleted) { + Map<String, Object> params = new HashMap<>(); + TypedQuery<Long> q = em.createQuery(DaoHelper.getSearchQuery("User", "u", getAdditionalJoin(filterContacts), search, true, filterDeleted, true + , getAdditionalWhere(filterContacts, currentUserId, params), null, searchFields), Long.class); + setAdditionalParams(q, params); + return q.getSingleResult(); + } + @Override public long count() { // get all users @@ -212,16 +220,17 @@ public class UserDao implements IGroupAdminDataProviderDao<User> { } public long count(String search, boolean filterContacts, Long currentUserId) { - Map<String, Object> params = new HashMap<>(); - TypedQuery<Long> q = em.createQuery(DaoHelper.getSearchQuery("User", "u", getAdditionalJoin(filterContacts), search, true, true, true - , getAdditionalWhere(filterContacts, currentUserId, params), null, searchFields), Long.class); - setAdditionalParams(q, params); - return q.getSingleResult(); + return count(search, filterContacts, currentUserId, true); + } + + @Override + public long adminCount(String search) { + return count(search, false, Long.valueOf(-1), false); } @Override public long adminCount(String search, Long adminId) { - TypedQuery<Long> q = em.createQuery(DaoHelper.getSearchQuery("GroupUser gu, IN(gu.user)", "u", null, search, true, true, true + TypedQuery<Long> q = em.createQuery(DaoHelper.getSearchQuery("GroupUser gu, IN(gu.user)", "u", null, search, true, false, true , "gu.group.id IN (SELECT gu1.group.id FROM GroupUser gu1 WHERE gu1.moderator = true AND gu1.user.id = :adminId)", null, searchFields), Long.class); q.setParameter("adminId", adminId); return q.getSingleResult(); -- To stop receiving notification emails like this one, please contact solo...@apache.org.