@Override public int getActiveUsersCount(Date since) { UserQueryParams params = new UserQueryParams(); params.setLastLogin(since); return getUserCount(params); }
@Override public int getManagedUserCount(User user) { UserQueryParams params = new UserQueryParams(user); params.setCanManage(true); params.setAuthSubset(true); return userStore.getUserCount(params); }
@Override public List<User> getAllUsersBetweenByName(String name, int first, int max) { UserQueryParams params = new UserQueryParams(); params.setQuery(name); params.setFirst(first); params.setMax(max); return userStore.getUsers(params); }
public boolean validateUserQueryParams(UserQueryParams params) { if (params.isCanManage() && (params.getUser() == null || !params.getUser().hasManagedGroups())) { log.warn("Cannot get managed users as user does not have any managed groups"); return false; } if (params.isAuthSubset() && (params.getUser() == null || !params.getUser().getUserCredentials().hasAuthorities())) { log.warn("Cannot get users with authority subset as user does not have any authorities"); return false; } if (params.isDisjointRoles() && (params.getUser() == null || !params.getUser().getUserCredentials().hasUserAuthorityGroups())) { log.warn("Cannot get users with disjoint roles as user does not have any user roles"); return false; } return true; }
@Override public List<User> getUsersByPhoneNumber(String phoneNumber) { UserQueryParams params = new UserQueryParams(); params.setPhoneNumber(phoneNumber); return getUsers(params); }
private void handleUserQueryParams(UserQueryParams params) { boolean canGrantOwnRoles = (Boolean) systemSettingManager.getSystemSetting(KEY_CAN_GRANT_OWN_USER_AUTHORITY_GROUPS, false); params.setDisjointRoles(!canGrantOwnRoles); if (params.getUser() == null) { params.setUser(currentUserService.getCurrentUser()); } if (params.getUser() != null && params.getUser().isSuper()) { params.setCanManage(false); params.setAuthSubset(false); params.setDisjointRoles(false); } if (params.getInactiveMonths() != null) { Calendar cal = PeriodType.createCalendarInstance(); cal.add(Calendar.MONTH, (params.getInactiveMonths() * -1)); params.setInactiveSince(cal.getTime()); } }