Skip to content

SAIF.SAIFCode.Core business rules

This page captures business rules enforced by this library. Origin for every rule below is SAIF.SAIFCode.Core (this library); paths are relative to Core/SAIF.Core/Contracts/ unless stated otherwise.

CORE-BR-001 Documents are routed to a Left-window Right-window or DCBS-batch envelope

Field Value
Statement Documents are routed to one of three envelope destinations: Left window, Right window, or DCBS batch.
Trigger Banner creation.
Enforcement Documents/DocumentBannerInstructions.WhichEnvelope
Outcome Envelope type is selected for the document.
Source Core/SAIF.Core/Contracts/Documents/DocumentBannerInstructions.cs

CORE-BR-002 Banner text order of six inserts plus language marker and delimiter matters for parsing

Field Value
Statement Banner-page text is made of six ordered inserts, a language marker, and the "; " delimiter; the order matters because downstream processes parse the string back apart.
Trigger Banner creation or parse.
Enforcement DocumentBannerInstructions.CreateBannerPageText / GetFreeformText
Outcome Banner string is assembled or its free-form segments are extracted.
Source Core/SAIF.Core/Contracts/Documents/DocumentBannerInstructions.cs

CORE-BR-010 Claim alerts are raised for fraud secured worker preferred worker support order worker conflict multiple jobs overpayment and CDA Full DCS Partial DCS with dates

Field Value
Statement Claim alerts are raised for fraud, secured worker, preferred worker, support order, worker conflict, multiple jobs, overpayment, and CDA/Full DCS/Partial DCS (with their dates).
Trigger Claim detail display.
Enforcement Claims/Information/ClaimDetail.AlertItems
Outcome Alert list is produced for display.
Source Core/SAIF.Core/Contracts/Claims/Information/ClaimDetail.cs

CORE-BR-020 Filter sentinels and producer minus 2 or minus 1 mean special or no-filter values

Field Value
Statement The sentinel keys "---" and "-100", and producer -2/-1, mean special or no-filter selections rather than literal filter values.
Trigger Note or image search.
Enforcement Agencies/Notes/NoteSearchCriteria.cs (NoteFilterCriteria.Filter), Groups/Notes/NoteFilterCriteria.cs
Outcome Filter is applied or skipped.
Source Core/SAIF.Core/Contracts/Agencies/Notes/NoteSearchCriteria.cs

CORE-BR-030 A claim identifier is 7 characters plus the 8th check character

Field Value
Statement A claim identifier is composed of a 7-character claim number plus an 8th check character.
Trigger Claim number parse.
Enforcement Claims/ClaimIdentifier
Outcome Number and check character are split out.
Source Core/SAIF.Core/Contracts/Claims/ClaimIdentifier.cs

CORE-BR-040 Task priority codes are URG INFO MED LOW HIGH source codes are CLAIM COLL COVB IMAGE WCIS RTW

Field Value
Statement Task priority codes are URG, INFO, MED, LOW, and HIGH; task source codes are CLAIM, COLL, COVB, IMAGE, WCIS, and RTW.
Trigger Task mapping.
Enforcement Tasks/Extensions/TaskExtensions
Outcome Code is mapped to a display value.
Source Core/SAIF.Core/Contracts/Tasks/Extensions/TaskExtensions.cs

CORE-BR-050 A bill is discardable when it is not an e-bill entry source E or its status is PEN

Field Value
Statement A bill is discardable when its entry source is not "E" (not an e-bill) or its status is PEN.
Trigger Bill UI rendering.
Enforcement Claims/Bills/Bill.IsBillDiscardable
Outcome Boolean flag controlling the discard action.
Source Core/SAIF.Core/Contracts/Claims/Bills/Bill.cs

CORE-BR-051 A bill is complete when its status is COM

Field Value
Statement A bill is complete when its status is COM.
Trigger Bill UI rendering.
Enforcement Bill.IsBillComplete
Outcome Boolean flag controlling completion state display.
Source Core/SAIF.Core/Contracts/Claims/Bills/Bill.cs

CORE-BR-052 A bill is updateable when its status is PEN ENT AUD or SUS

Field Value
Statement A bill is updateable when its status is PEN, ENT, AUD, or SUS.
Trigger Bill UI rendering.
Enforcement Bill.IsBillUpdateable
Outcome Boolean flag controlling the update action.
Source Core/SAIF.Core/Contracts/Claims/Bills/Bill.cs

CORE-BR-053 The bill status code set is COM ENT AUD PEN APP DIS EXT REV SUS

Field Value
Statement The bill status code domain is COM, ENT, AUD, PEN, APP, DIS, EXT, REV, SUS.
Trigger Status mapping.
Enforcement Claims/Bills/BillStatusCode
Outcome Code instance representing a bill status.
Source Core/SAIF.Core/Contracts/Claims/Bills/BillStatusCode.cs

CORE-BR-060 Policy document API return codes map to user messages UserNotAuthorized is 2 UserNotAuthorizedForPolicy is 3

Field Value
Statement Policy Documents API integer return codes map to user-facing messages, including UserNotAuthorized (2, "User is not authorized to view Policy or Payroll Reports") and UserNotAuthorizedForPolicy (3, "User is not authorized to view Report").
Trigger API response handling.
Enforcement Policies/PolicyDocumentsApi/PolicyDocumentReturnCode.AssignMessage
Outcome Message text is produced for the caller.
Source Core/SAIF.Core/Contracts/Policies/PolicyDocumentsApi/PolicyDocumentReturnCode.cs

Notes

  • SAIF.Domain's Bill.ModifyStatus operation consumes the CORE-BR-053 bill status code set (recorded there as DOM-BR-030 in that library's documentation)*.
  • This library has no stored procedures; the ## Stored procedure business rules category is omitted because none apply.

Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

Sources

  • Core/SAIF.Core/Contracts/Documents/DocumentBannerInstructions.cs
  • Core/SAIF.Core/Contracts/Claims/Information/ClaimDetail.cs
  • Core/SAIF.Core/Contracts/Agencies/Notes/NoteSearchCriteria.cs
  • Core/SAIF.Core/Contracts/Groups/Notes/NoteFilterCriteria.cs
  • Core/SAIF.Core/Contracts/Claims/ClaimIdentifier.cs
  • Core/SAIF.Core/Contracts/Tasks/Extensions/TaskExtensions.cs
  • Core/SAIF.Core/Contracts/Claims/Bills/Bill.cs
  • Core/SAIF.Core/Contracts/Claims/Bills/BillStatusCode.cs
  • Core/SAIF.Core/Contracts/Policies/PolicyDocumentsApi/PolicyDocumentReturnCode.cs