Skip to content

IClaimReportDataRetriever

Defines the contract for retrieving claim-level data needed to report on broken provider relationships (worker representation, attending physician, and benefit payment scenarios), implemented by ClaimReportDataRetriever and consumed by ClaimReportingService to drive the broken-provider-relationship report.

Purpose

  • Declares lookups for claims linked to a provider relationship by relationship category (legal representative, attending physician, benefit payment).
  • Declares a lookup for provider relationships that have expired on or after a given effective date.
  • Declares a method to build a per-claim ReportItem summarizing a claim's status, provider names, and adjuster contact for reporting.

Context

  • Namespace: SAIF.Services.Claims.Reports
  • Assembly/package: SAIF.Services (packaged inside the SAIF.SAIFCode.Core NuGet package)

Public members

Member Signature Purpose
GetLegalRepClaimsWithProviderRelationship(providerLocationId, parentProviderLocationId) IEnumerable<long> GetLegalRepClaimsWithProviderRelationship(long providerLocationId, long parentProviderLocationId) Returns the claim IDs where the given provider/parent-provider location pair serves as legal representative.
GetAttendingPhysicianClaimsWithProviderRelationship(providerLocationId, parentProviderLocationId) IEnumerable<long> GetAttendingPhysicianClaimsWithProviderRelationship(long providerLocationId, long parentProviderLocationId) Returns the claim IDs where the given provider/parent-provider location pair serves as attending physician.
GetBenefitPaymentClaimsWithProviderRelationship(providerLocationId, parentProviderLocationId) IEnumerable<long> GetBenefitPaymentClaimsWithProviderRelationship(long providerLocationId, long parentProviderLocationId) Returns the claim IDs linked to the provider/parent-provider location pair through benefit payments.
GetExpiredRelationships(effectiveDate) IEnumerable<ProviderRelationship> GetExpiredRelationships(DateTime effectiveDate) Returns provider relationships that expired on or after the given date and have no currently active replacement relationship.
GetReportDetails(claimId, relationship) ReportItem GetReportDetails(long claimId, ProviderRelationship relationship) Builds a ReportItem describing the claim's status, provider identities, and responsible adjuster for the given expired provider relationship.

Behavioral notes

  • This interface is the sole abstraction ClaimReportingService uses to source report data, keeping report orchestration decoupled from the underlying query providers.*

Constraints and usage notes

  • Implementations are expected to return empty (not exceptional) results when no matching claims/relationships exist, based on ClaimReportDataRetriever's behavior.*

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

  • Services/SAIF.Services/Claims/Reports/ClaimReportDataRetriever.cs