【问题标题】:How do you get a list of users for a Liferay 6.2 site如何获取 Liferay 6.2 站点的用户列表
【发布时间】:2019-10-18 17:29:40
【问题描述】:

我正在尝试获取 Liferay 6.2 站点的用户列表,但我似乎找不到这样做的方法。我有 groupId,我知道这是正确的,因为我可以获取文档,但查询只会获取直接添加的用户,而不是继承的用户(例如来自组织的用户)。

我只是使用方法UserLocalService.getGroupUsers(groupId),然后循环它们。如何获取所有用户(即与站点管理中的站点成员身份相同,但没有分页)?

更新

我有一个 Liferay 门户实例,它有几个具有关联站点的组织。组织 A 具有用户 1、2、3 等。组织 B 具有用户 4、5、6。他们具有相同的公司 ID(因为它们属于同一门户),但组 ID 不同。我只想要那些在 Org A 中的人(直接添加,已分配的任何用户组或组织的一部分)。该站点也可以是非组织站点(即分配给组织 A 和 B,但不是任何其他站点,例如新的组织 C),用于组织之间的文档共享。据我了解,所有网站在内部都称为组,与文档库一起工作。

【问题讨论】:

标签: groovy liferay liferay-6.2


【解决方案1】:

您可以进行两次调用以获取站点和组织用户,然后调用一次以获取分配的组织,遍历它们并获取其用户。然后合并所有结果:

HashSet<User> groupAndOrganizationUsersSet = new LinkedHashSet<>();

groupAndOrganizationUsersSet.addAll(UserLocalServiceUtil.getGroupUsers(groupId));
groupAndOrganizationUsersSet.addAll(UserLocalServiceUtil.getOrganizationUsers(
        GroupLocalServiceUtil.getGroup(groupId).getOrganizationId()));

for (Organization organization : 
        OrganizationLocalServiceUtil.getGroupOrganizations(groupId)) {

    groupAndOrganizationUsersSet.addAll(UserLocalServiceUtil.getOrganizationUsers(
            organization.getOrganizationId()));
}

List<User> groupAndOrganizationUsers = new ArrayList<>(groupAndOrganizationUsersSet);

【讨论】:

  • 如果我将空的 替换为 则有效,但仅适用于只有一个组织的网站
  • AFAIK 一个组织只能连接一个特定站点。所以我不明白你的意思 该站点也可能是一个非组织站点(即分配的组织 A 和 B,但不是任何其他站点,例如新的组织 C)。如何将多个组织分配到一个站点?我认为一个组织可以链接到一个特定的站点,但是一个站点没有链接,之后也不能链接到一个组织。但我可能在这里错了!您能否具体说明您的设置是什么样的以及您想要实现的目标?
  • 在站点成员页面上,我通过组织选项卡添加组织,然后允许所有这些用户访问。我目前没有添加用户组,但将来可能会。
  • 谢谢,我今天学到了一些新东西 :) 我会编辑我的答案。
【解决方案2】:

也许是这样

UserLocalServiceUtil.getCompanyUsers(long companyId, int start, int end)

对于标准的非分页结果(您知道风险)使用

UserLocalServiceUtil.getCompanyUsers(PortalUtil.getDefaultCompanyId(), -1, -1)

【讨论】:

  • 当我尝试这样做时,它会获取门户实例上的所有用户。有几个站点,每个站点都有不同的用户组。
  • 我正在查询没有所有门户用户的网站,例如治理站点,或仅限董事会成员的子站点。我已经更新了这个问题,所以希望能澄清一些事情。
猜你喜欢
  • 2015-06-23
  • 2016-02-18
  • 1970-01-01
  • 1970-01-01
  • 2014-12-10
  • 2019-06-15
  • 2014-07-07
  • 1970-01-01
  • 2018-03-01
相关资源
最近更新 更多