in lambda/src/main/scala/pricemigrationengine/handlers/NotificationHandler.scala [463:482]
def buildSupporterPlus2024NotificationData(
cohortSpec: CohortSpec,
subscriptionNumber: String
): ZIO[Zuora, Failure, SupporterPlus2024NotificationData] = {
MigrationType(cohortSpec) match {
case SupporterPlus2024 => {
for {
subscription <- Zuora.fetchSubscription(subscriptionNumber)
contributionAmountOpt <- ZIO.fromEither(SupporterPlus2024Migration.contributionAmount(subscription))
previousCombinedAmountOpt <- ZIO.fromEither(SupporterPlus2024Migration.previousCombinedAmount(subscription))
newCombinedAmountOpt <- ZIO.fromEither(SupporterPlus2024Migration.newCombinedAmount(subscription))
} yield SupporterPlus2024NotificationData(
contributionAmount = contributionAmountOpt,
previousCombinedAmount = previousCombinedAmountOpt,
newCombinedAmount = newCombinedAmountOpt
)
}
case _ => ZIO.succeed(SupporterPlus2024NotificationData(None, None, None))
}
}