Skip to content

clsMCOProvider

clsMCOProvider represents one MCO (managed care organization) enrollment for a provider location from MCO_PROVIDER. During construction by clsMCOProviderList, each instance is decorated with plan details fetched from SAIF.Business's GetMCOInfo, and the plan attachment is validated to ensure the submitted plan matches the plan ID already recorded on the enrollment.

Purpose

  • Carries the effective/expiration date window and plan identifier for one MCO enrollment.
  • Validates, via SetPlan, that the MCOPlanInfo attached to this enrollment matches its own recorded plan ID, throwing when they diverge (BR-MCO-001).
  • Applies the shared date-window evaluation pattern to determine whether the enrollment is currently in effect (BR-DATE-001).

Context

  • Namespace: SAIF.Business.View.Provider
  • Assembly/package: SAIF.Business.View.Provider (embedded/project-compiled); also distributed as the NuGet package SAIF.BOF.Business.View.Provider.

Public members

Member Signature Purpose
ProviderLocationID ReadOnly Property ProviderLocationID As Decimal Identifies the location enrolled with the MCO plan.
PlanID ReadOnly Property PlanID As String The MCO plan identifier recorded for this enrollment, checked by SetPlan against the attached MCOPlanInfo (BR-MCO-001).
Plan ReadOnly Property Plan As MCOPlanInfo The plan detail object attached via SetPlan, sourced from GetMCOInfo in SAIF.Business.
EffectiveDate ReadOnly Property EffectiveDate As Date Date from which this MCO enrollment applies (BR-DATE-001).
ExpirationDate ReadOnly Property ExpirationDate As Date Date after which this MCO enrollment no longer applies, if one exists.
IsActive ReadOnly Property IsActive As Boolean True when the enrollment is currently within its effective/expiration window (BR-DATE-001).
IsExpired ReadOnly Property IsExpired As Boolean True when the enrollment's expiration date is in the past.
HasExpirationDate ReadOnly Property HasExpirationDate As Boolean True when an expiration date is set for this enrollment.
IsInEffect Function IsInEffect(asOfDate As Date) As Boolean True when the given date is on/after the effective date and, if an expiration date exists, on/before it (BR-DATE-001).
SetPlan Sub SetPlan(plan As MCOPlanInfo) Attaches plan detail to this enrollment, throwing ApplicationException("MCO plan submitted does not match plan assigned.") if the plan's ID does not match PlanID (BR-MCO-001).

Behavioral notes

  • OP-11: clsMCOProviderList's constructor queries MCO_PROVIDER bound on :ProviderLocationID (SQL-MCO-01), then for each row calls SetPlan(GetMCOInfo(inDPI).Plan(prov.PlanID)), applying BR-MCO-001 as each enrollment is decorated.
  • GetMCOInfo is implemented in SAIF.Business, outside this repository; its internal lookup behavior is not visible here.**

Constraints and usage notes

  • Constructing an enrollment with mismatched plan data will throw rather than silently attaching incorrect plan information — callers should not catch and suppress this exception without understanding the data-integrity implication (BR-MCO-001).
  • Read-only data holder with no create/update/delete surface.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Business.View.Provider/clsMCOProvider.vb