Skip to content

SAIF.Business.View.Policy overview

Documentation context: Embedded library (local project reference within this repository)

SAIF.Business.View.Policy is a mid-tier VB.NET class library with no program entry points that aggregates a consolidated, read-only "policy header" view (policy data, address, agency, MCO, team assignments, trading-as names, affiliations, payroll class info) and provides the central policy-authorization gate (clsPolicySecurity) consumed by the Claims Legal front end.

Purpose

  • Assemble a policy's aggregate view data — header, address, agency/agent, MCO assignment, team assignment roster, trading-as names, affiliated policies, and payroll class info — behind clsPolicyData as the principal entry point.
  • Enforce policy-level authorization decisions via clsPolicySecurity.IsPolicyValidForUser(...), gating access to a policy based on a global secure-policy AD-resource check plus per-user-type ownership rules (agent, policyholder, group, loss-control, auditor, employee/MCO/med-provider/bookkeeper).
  • Resolve policy-to-policy associations (manual affiliation, wrapup, leasing, sub-account, state agency, experience/discount combination) through clsAssociationTypeCode and the Associations\ factory classes.
  • Provide read-only data retrieval exclusively — every CreateSQL/InsertSQL/UpdateSQL/DeleteSQL override across the 16 IBusinessCriteria objects in this library returns empty or throws, confirming this library performs no writes.
  • Consumed by the Claims Legal front end (and sibling business libraries) for policy context lookups and access-control decisions.

Responsibilities

  • Aggregate and expose read-only policy header, address, agency, MCO, team-assignment, trading-as, affiliation, and payroll-classification data.
  • Gate policy access per user type and mask PII for demo-tier users.
  • Resolve policy-association type codes and relationships for the affiliation/grouping domain.

Key components

  • clsPolicyData: Aggregate policy header view object and principal retrieval entry point.
  • clsPolicySecurity: Central authorization class determining policy access and per-user-type "book of business" lists.
  • clsPolicyAddress, clsAgency, clsPolicyMCOCollection/clsMCOCollection, clsTeamAssignmentCollection: Supporting contact, agency, MCO, and team-assignment data with demo-user data masking.
  • Associations\clsAssociationTypeCode(Collection), clsPolicyAssociationFactory: Policy-to-policy association type resolution.
  • clsTradingAs(Collection), clsNonEmployerAccount, clsPayrollClassInfo(Collection), clsPolicySearch: Supporting reference and search-result value objects.

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.Policy\SAIF.Business.View.Policy.vbproj
  • .saifdocgen/state/runs/20260821-113120-claims-bof-web-legal/analysis/TSK005-analysis.md