SAIF.Business.Policy.Audit.Premium architecture¶
SAIF.Business.Policy.Audit.Premium sits between consuming policy applications and Oracle-backed policy/audit data. The library contributes premium-audit orchestration and domain validation, while the framework supplies rule evaluation, data-portal execution, and edit-session behavior.*
Responsibilities¶
- Model premium audits, policy periods, events, review outcomes, and result payloads.
- Select expiring and off-cycle policy periods for audit through configurable rule catalogs.
- Assign audits to auditors by territory, override, and monthly-capacity rules.
- Synchronize audits with WCIS coverage changes and remote payroll-audit/document actions.
Component boundaries¶
- All persistence flows through nested
Criteriaclasses andIDataPortalInfo; no source file opens a database connection directly.* - The library has no UI, HTTP endpoint, or service host.
- Remote WCIS integration is limited to stored procedures and
@POLDBwrappers invoked from business objects. - Seven uncompiled source files on disk are excluded from runtime behavior and are treated as dead code or future work items.**
Interaction model¶
Premium-audit workflows follow the BOF factory-and-criteria pattern: callers use shared factory methods, nested criteria expose SQL or stored-procedure names, Before* methods bind parameters into an IDataRequest, and After* methods hydrate or validate the business object. Validation rules run through inherited BOF lifecycle operations.*
Architecture diagram¶
The following diagram shows the library's main collaborators.
flowchart TD
A[Consuming policy applications] --> B[SAIF.Business.Policy.Audit.Premium]
B --> C[Policy and audit sibling packages]
B --> D[SAIF.BOF.Framework / SAIF.Framework.Core]
D --> E[(Oracle via ODP.NET)]
B --> F[WCIS Oracle packages and @POLDB wrappers]
Sequence diagram¶
The following diagram shows the high-level selection flow.
sequenceDiagram
participant Caller
participant Manager as clsAuditSelectionManager
participant Tester as clsAuditSelectionTester
participant Portal as IDataPortalInfo
participant Oracle as WCIS Oracle packages
Caller->>Manager: Request audit selection run
Manager->>Portal: Build and execute criteria request
Portal->>Oracle: Stored procedure / SQL retrieval
Oracle-->>Portal: Candidate policy periods
Portal-->>Manager: Selection policy period collection
Manager->>Tester: Evaluate configured rules
Tester-->>Manager: Qualifying and disqualifying results
Manager-->>Caller: Selected audits and counters
Design constraints¶
- The active framework rule engine is the V1
clsRulesManager.* clsAuditCollection.GenerateRetrieveSQLcontains an unclosedJOIN BUSINESSparenthesis defect.PolicyNumberListandRowLimitare interpolated into SQL text without bind parameters, creating a SQL-injection-shaped risk pattern.- Three Oracle references remain unresolved from repository evidence:
pk73211_premium_audit.get_auditable_policy_periods,pk73211_premium_audit.get_claim_for_0_payroll_count, andsp72658_get_gov_class.**
Related documentation¶
- Index
- Overview
- Dependencies
- Operations and processes
- Business rules
- Database tables
- SQL catalog
- API reference
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.Policy.Audit.Premium\clsAudit.vbBusiness\SAIF.Business.Policy.Audit.Premium\clsAuditCollection.vbBusiness\SAIF.Business.Policy.Audit.Premium\clsAuditSelectionManager.vbBusiness\SAIF.Business.Policy.Audit.Premium\clsAuditSelectionTester.vbBusiness\SAIF.Business.Policy.Audit.Premium\clsAuditAssignmentManager.vbBusiness\SAIF.Business.Policy.Audit.Premium\clsAuditSynchronization.vbBusiness\SAIF.Business.Policy.Audit.Premium\clsAuditPolicyPeriod.vb