You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2018/04/16 15:57:29 UTC
[openmeetings] 05/09: [OPENMEETINGS-1864] admin users count is fixed
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch 4.0.x
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
commit d73bbbb83e8984ff08a1ee11b3819af2893f601f
Author: Maxim Solodovnik <so...@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
solomax@apache.org.