Skip to content

SAIF.Business.Claim.Maintenance architecture

SAIF.Business.Claim.Maintenance is the post-entry claim-maintenance business component for maintaining claim detail, accident and injury state, legal and medical sub-entities, support orders, adjustments, vocational records, and several related collections and API-backed lookups.

Responsibilities

  • Maintain core claim detail, accident and injury data, work status, work release, policy history, and pharmacy eligibility records.
  • Persist and retrieve medical conditions, omitted conditions, compensability decisions, disability activity, and authorization activity records.
  • Execute claim-adjustment workflows such as void, combine, transfer, and restore through Oracle packages.
  • Coordinate support-order CRUD and validation workflows through support-order stored procedures.
  • Expose vocational, attending-physician, and related collection retrieval behavior for downstream claim-maintenance consumers.

Inherited framework context (from Legends CLI)

Cached resolvedTypes[].queries[] results for SAIF.Business.Claim.Maintenance indicate the following inherited framework behavior:

  • IBusinessCriteria provides the BOF criteria contract that supplies overridable create/retrieve/insert/update/delete request slots for database and API-backed requests.* (source: saif-framework-core library docs)
  • IDataPortalInfo supplies connection, data-access-layer, API-client, and scalar-execution context to business objects during persistence and retrieval.* (source: saif-framework-core library docs)
  • IDataRequest represents the request abstraction used by the Oracle and SQL portal implementations beneath BOF business objects.* (source: saif-framework-core library docs)
  • clsAddress is identified as a framework address type, but the cached Legends results did not return deeper indexed behavior for it.* (source: saif-framework-core library docs)
  • clsBusinessApiBase provides the API-oriented single-object lifecycle used by REST-backed attending-physician flows.* (source: saif-framework-core library docs)
  • clsBusinessApiCriteriaBase supplies API-route dictionaries and SQL-like CRUD slots for API-backed criteria objects in the hybrid BOF model.* (source: saif-framework-core library docs)
  • clsBusinessBase contributes edit lifecycle support and a per-object clsRulesManager used to surface validation state.* (source: saif-framework-core library docs)
  • clsBusinessCollection(Of T) contributes typed collection traversal, deleted-item tracking, and collection-level validation surfacing.* (source: saif-framework-core library docs)
  • clsBusinessCollectionApiBase provides the API-backed collection lifecycle used by REST-backed collection objects.* (source: saif-framework-core library docs)
  • clsBusinessCollectionBase contributes collection traversal, deleted-item tracking, and IDataErrorInfo validation surfacing for collection objects.* (source: saif-framework-core library docs)
  • clsResultSet is identified as a framework result-wrapper type, but no deeper indexed behavior was returned by the cached Legends results.* (source: saif-framework-core library docs)
  • clsSAIFDataReader is identified as a framework data-reader abstraction, but no deeper indexed behavior was returned by the cached Legends results.* (source: saif-framework-core library docs)
  • clsSmartDate is part of the BOF smart-value wrapper set used to carry null-safe date values through business objects.* (source: saif-framework-core library docs)
  • clsSmartDecimal is part of the BOF smart-value wrapper set used to carry null-safe decimal values through business objects.* (source: saif-framework-core library docs)
  • clsSmartString is part of the BOF smart-value wrapper set used to carry null-safe string values through business objects.* (source: saif-framework-core library docs)

Component boundaries

  • Core claim-maintenance boundary: clsClaimDetail, clsAccidentInjury, and related business objects own the main claim-maintenance aggregate and common validation/count checks.
  • Sub-entity boundary: condition, disability, work status, work release, COVID-19 history, request decision, policy history, and MCO classes each own a single claim-related table set.
  • Adjustment and support-order boundary: clsClaimAdjustment and clsClaimSupportOrder* encapsulate multi-step package-driven workflows rather than simple table CRUD.
  • Vocational boundary: clsVocationalDetail* classes isolate vocational data retrieval and persistence.
  • API boundary: clsAttendingPhysician* and CCClaimDataApi models isolate REST-backed attending-physician retrieval from Oracle-backed BOF entities.

Interaction model

Consumers retrieve or save BOF business objects and collections, criteria definitions are populated on each object, and IDataPortalInfo routes those definitions to Oracle. Complex workflows such as support-order management and claim adjustment defer orchestration to package contracts, while API-based attending-physician retrieval uses framework-managed API clients.

Architecture diagram

The following diagram shows high-level component interactions.


flowchart TD

    A[Claim maintenance applications] --> B[Maintenance business objects]

    B --> C[Entity CRUD classes]

    B --> D[Claim adjustment and support order]

    B --> E[API physician retrieval]

    C --> F[Oracle claim tables]

    D --> G[Oracle package contracts]

    E --> H[Framework API clients]

    G --> F

Sequence diagram

The following diagram shows the primary request/response sequence.


sequenceDiagram

    participant App as Claim maintenance UI

    participant Support as clsClaimSupportOrder

    participant DPI as IDataPortalInfo

    participant Proc as PK82141_SUPPORT_ORDER

    participant DB as Claim tables

    App->>Support: Save support-order change

    Support->>DPI: Submit validation and persistence request

    DPI->>Proc: Execute support-order package method

    Proc->>DB: Read or update support-order rows

    DB-->>Proc: Data and rowcount

    Proc-->>DPI: Package result

    DPI-->>Support: Persisted support-order state

    Support-->>App: Updated support-order object

Design constraints

  • The library exposes a very large BOF surface area, with Stage 1 analysis identifying 57 public classes and Stage 1b identifying 41 IBusinessCriteria implementations.
  • Claim-adjustment behavior is traceable to retrieved PK82140_CLAIM_ADJUSTMENTS source, but PK82141_SUPPORT_ORDER and PK82003_VOCDATA package bodies were not retrieved, so higher-order database behavior must be inferred from caller contracts.
  • The library mixes package-driven workflows, inline SQL CRUD, and REST-backed retrieval, which increases regression scope when business behavior changes.
  • No local security or configuration surface was identified, so runtime behavior depends mainly on BOF infrastructure and Oracle contracts rather than library-owned settings.

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

  • Business\SAIF.Business.Claim.Maintenance\clsAccidentInjury.vb
  • Business\SAIF.Business.Claim.Maintenance\clsAttendingPhysician.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimAdjustment.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimDetail.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimDisabilityActivity.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimSupportOrder.vb
  • Business\SAIF.Business.Claim.Maintenance\clsVocationalDetail.vb
  • Business\SAIF.Business.Claim.Maintenance\clsVocationalDetailCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsHelper.vb
  • Business\SAIF.Business.Claim.Maintenance\enums.vb
  • Business\SAIF.Business.Claim.Maintenance\packages.config
  • Business\SAIF.Business.Claim.Maintenance\SAIF.BOF.Business.Claim.Maintenance.nuspec
  • Business\SAIF.Business.Claim.Maintenance\Pipelines\build-vars.yml
  • Business\SAIF.Business.Claim.Maintenance\CCClaimDataApi\AttendingPhysicians.vb
  • Business\SAIF.Business.Claim.Maintenance\CCClaimDataApi\ClaimContactsResponse.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimDisabilityActivityCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimMcoEligibility.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimMcoEligibilityCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimPolicy.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimPolicyHistory.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimPolicyHistoryCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimRequestDecision.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimRequestDecisionCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimStatusActivity.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimStatusActivityCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimSupportOrderCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimSupportOrderConn.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimSupportOrderConnCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimTypeActivity.vb
  • Business\SAIF.Business.Claim.Maintenance\clsClaimTypeActivityCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsConditionDecision.vb
  • Business\SAIF.Business.Claim.Maintenance\clsConditionDecisionCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsCovid19TestingHistory.vb
  • Business\SAIF.Business.Claim.Maintenance\clsCovid19TestingHistoryCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsDisabilityAuthActivity.vb
  • Business\SAIF.Business.Claim.Maintenance\clsDisabilityAuthActivityCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsMedicalCondition.vb
  • Business\SAIF.Business.Claim.Maintenance\clsMedicalConditionCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsOmittedCondition.vb
  • Business\SAIF.Business.Claim.Maintenance\clsOmittedConditionCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsTDThreeDayWait.vb
  • Business\SAIF.Business.Claim.Maintenance\clsTDThreeDayWaitCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkRelease.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkReleaseCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkStatus.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkStatusCollection.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkStatusInjuryClaim.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkerClaimBenefitPayment.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkerClaimBenefitSchedule.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkerInjuryClaim.vb
  • Business\SAIF.Business.Claim.Maintenance\clsWorkerPharmacyEligibilityReport.vb
  • Business\SAIF.Business.Claim.Maintenance\SAIF.BOF.Business.Claim.Maintenance.vbproj