OBJECT

OfferingPackageOption

link GraphQL Schema definition

  • type OfferingPackageOption {
  • offeringPackageOptionId: Int
  • offeringId: Int
  • offeringPriceTemplateId: Int
  • created: DateTime
  • modified: DateTime
  • # Arguments
  • # languageCode: [Not documented]
  • # languageId: [Not documented]
  • name(languageCode: LanguageEnum, languageId: Int): String
  • offering: Offering
  • offeringPriceTemplate: OfferingPriceTemplate
  • offeringPackageOptionNames: [OfferingPackageOptionName]
  • offeringPackageOptionItems: [OfferingPackageOptionItem]
  • offeringPackageOptionFeeItems: [OfferingPackageOptionFeeItem]
  • # offeringPackageOptionItems, but only the secondary items,
  • #
  • # "Secondary" is defined by items that are *always* included in the package when
  • # booking.
  • #
  • # i.e. at the moment, all the service items
  • #
  • #
  • # How is this different from *offeringPackageOptionItems*?
  • #
  • # offeringPackageOptionItems includes all *available* items, i.e. multiple courses
  • # and accommodation which
  • #
  • # are eventually chosen by the agency/student.
  • #
  • # Whereas *includedSecondaryOfferingPackageOptionItems* gives us *everything else*
  • # that are always included
  • #
  • #
  • # In the end, how do I use this?
  • #
  • # To know all items included in a package booking, we need all of
  • #
  • # 1. selectedCourse (this comes from the booking itself)
  • #
  • # 2. selectedAccommodation (this comes from the booking itself)
  • #
  • # 3. includedSecondaryOfferingPackageOptionItems
  • #
  • # 4. offeringPackageOptionFeeItems
  • #
  • includedSecondaryOfferingPackageOptionItems: [OfferingPackageOptionItem]
  • }