read :groups_for_organization do
argument :organization_id, :uuid, allow_nil?: false
prepare fn query, _ ->
Ash.Query.before_action(query, fn query ->
organization_id = query.arguments.organization_id
descendants = Organization.get_descendant_organizations!([organization_id])
ids = [organization_id | Enum.map(descendants, & &1.id)]
Ash.Query.filter(query, organization_id in ^ids)
end)
end
pagination offset?: true, countable: true, default_limit: 1000
end
read :groups_for_organization do
argument :organization_id, :uuid, allow_nil?: false
prepare fn query, _ ->
Ash.Query.before_action(query, fn query ->
organization_id = query.arguments.organization_id
descendants = Organization.get_descendant_organizations!([organization_id])
ids = [organization_id | Enum.map(descendants, & &1.id)]
Ash.Query.filter(query, organization_id in ^ids)
end)
end
pagination offset?: true, countable: true, default_limit: 1000
end