getAllFromHousehold static method

Future<PcoCollection<PcoPeoplePerson>> getAllFromHousehold(
  1. String householdId, {
  2. String? id,
  3. PcoPeoplePersonQuery? query,
  4. bool includeAllRelated = false,
  5. bool includeAddresses = false,
  6. bool includeEmails = false,
  7. bool includeFieldData = false,
  8. bool includeHouseholds = false,
  9. bool includeInactiveReason = false,
  10. bool includeMaritalStatus = false,
  11. bool includeNamePrefix = false,
  12. bool includeNameSuffix = false,
  13. bool includeOrganization = false,
  14. bool includePersonApps = false,
  15. bool includePhoneNumbers = false,
  16. bool includePlatformNotifications = false,
  17. bool includePrimaryCampus = false,
  18. bool includeSchool = false,
  19. bool includeSocialProfiles = false,
})

Will get a PcoCollection containing ALL PcoPeoplePerson objects (expecting many) using a path like this: /people/v2/households/$householdId/people

Available Query Filters:

  • non_pending
  • without_deceased

Additional options may be specified by using the query argument, but some query options are also available as boolean flags in this function call too.

This function forces the query.getAll to be true.

Implementation

static Future<PcoCollection<PcoPeoplePerson>> getAllFromHousehold(
  String householdId, {
  String? id,
  PcoPeoplePersonQuery? query,
  bool includeAllRelated = false,
  bool includeAddresses = false,
  bool includeEmails = false,
  bool includeFieldData = false,
  bool includeHouseholds = false,
  bool includeInactiveReason = false,
  bool includeMaritalStatus = false,
  bool includeNamePrefix = false,
  bool includeNameSuffix = false,
  bool includeOrganization = false,
  bool includePersonApps = false,
  bool includePhoneNumbers = false,
  bool includePlatformNotifications = false,
  bool includePrimaryCampus = false,
  bool includeSchool = false,
  bool includeSocialProfiles = false,
}) async {
  query ??= PcoPeoplePersonQuery();
  query.getAll = true;
  if (includeAllRelated) query.include.addAll(PcoPeoplePerson.canInclude);
  if (includeAddresses) query.include.add('addresses');
  if (includeEmails) query.include.add('emails');
  if (includeFieldData) query.include.add('field_data');
  if (includeHouseholds) query.include.add('households');
  if (includeInactiveReason) query.include.add('inactive_reason');
  if (includeMaritalStatus) query.include.add('marital_status');
  if (includeNamePrefix) query.include.add('name_prefix');
  if (includeNameSuffix) query.include.add('name_suffix');
  if (includeOrganization) query.include.add('organization');
  if (includePersonApps) query.include.add('person_apps');
  if (includePhoneNumbers) query.include.add('phone_numbers');
  if (includePlatformNotifications)
    query.include.add('platform_notifications');
  if (includePrimaryCampus) query.include.add('primary_campus');
  if (includeSchool) query.include.add('school');
  if (includeSocialProfiles) query.include.add('social_profiles');
  var url = '/people/v2/households/$householdId/people';
  if (id != null) url += '/$id';
  return PcoCollection.fromApiCall<PcoPeoplePerson>(url,
      query: query, apiVersion: kApiVersion);
}