SAIF.Application.Claim.Legal business rules
This page captures business rules enforced by this library.
BR-001 Members of the legal admin AD group bypass all confidential-claim restrictions
| Field |
Value |
| Statement |
Members of the legal admin AD group bypass all confidential-claim restrictions. |
| Trigger |
Retrieve of any legal manager |
| Enforcement |
LegalManagerBase.OnRetrieve (LegalManagerBase.vb) |
| Outcome |
Access allowed |
| Source |
LegalManagerBase.OnRetrieve (LegalManagerBase.vb) |
BR-002 A worker-conflict claim
| Field |
Value |
| Statement |
A worker-conflict claim may be viewed only with legal conflict access (or admin, or a security override). |
| Trigger |
Retrieve when ClaimData.IsWorkerConflict |
| Enforcement |
LegalManagerBase.OnRetrieve |
| Outcome |
Denied → ERRORCONFIDENTIALCLAIM, CanViewClaim = False |
| Source |
LegalManagerBase.OnRetrieve |
BR-003 An exposure claim
| Field |
Value |
| Statement |
An exposure claim may be viewed only with legal exposure access (or admin, or a security override). |
| Trigger |
Retrieve when ClaimData.IsExposure |
| Enforcement |
LegalManagerBase.OnRetrieve |
| Outcome |
Denied → ERRORCONFIDENTIALCLAIM, CanViewClaim = False |
| Source |
LegalManagerBase.OnRetrieve |
BR-004 Case search results
| Field |
Value |
| Statement |
Case search results are filtered by the caller's exposure and conflict entitlements. |
| Trigger |
GetSearchResults |
| Enforcement |
clsCaseSearchManager.GetSearchResults (LegalNet\clsCaseSearchManager.vb) |
| Outcome |
ExposureCode = 99 / ConflictAccess = True only when entitled |
| Source |
clsCaseSearchManager.GetSearchResults (LegalNet\clsCaseSearchManager.vb) |
BR-005 The LNCaseUpdate resource is surfaced as a Boolean capability for update workflows
| Field |
Value |
| Statement |
The LNCaseUpdate resource is surfaced as a Boolean capability for update workflows. |
| Trigger |
UI checks whether case-edit actions should be enabled |
| Enforcement |
LegalManagerBase.IsInCaseUpdateGroup |
| Outcome |
Presentation code can suppress case-update actions |
| Source |
SAIF.Application.Claim.Legal\LegalManagerBase.vb |
BR-006 The LNView resource is surfaced as a Boolean capability for read-only workflows
| Field |
Value |
| Statement |
The LNView resource is surfaced as a Boolean capability for read-only workflows. |
| Trigger |
UI checks whether the current user should remain view-only |
| Enforcement |
LegalManagerBase.IsInViewOnly |
| Outcome |
Presentation code can suppress write actions |
| Source |
SAIF.Application.Claim.Legal\LegalManagerBase.vb |
BR-007 The LNNoteView resource is surfaced as a Boolean capability for case-note visibility
| Field |
Value |
| Statement |
The LNNoteView resource is surfaced as a Boolean capability for case-note visibility. |
| Trigger |
UI checks whether case notes may be shown |
| Enforcement |
clsCaseNotesManager.IsInNoteView |
| Outcome |
Presentation code can suppress note visibility |
| Source |
SAIF.Application.Claim.Legal\LegalNet\clsCaseNotesManager.vb |
BR-008 The LNUpdate resource is surfaced as a Boolean capability for bill-note updates
| Field |
Value |
| Statement |
The LNUpdate resource is surfaced as a Boolean capability for bill-note updates. |
| Trigger |
UI checks whether bill-note edits may be shown |
| Enforcement |
clsCaseNotesManager.CanUpdateBillNotes |
| Outcome |
Presentation code can suppress bill-note edits |
| Source |
SAIF.Application.Claim.Legal\LegalNet\clsCaseNotesManager.vb |
BR-009 The LNLCEUpdate resource is surfaced as a Boolean capability for LCE edits
| Field |
Value |
| Statement |
The LNLCEUpdate resource is surfaced as a Boolean capability for LCE edits. |
| Trigger |
UI checks whether LCE records may be edited |
| Enforcement |
clsScheduleManager.IsInLCEUpdateGroup |
| Outcome |
Presentation code can suppress LCE edits |
| Source |
SAIF.Application.Claim.Legal\LegalNet\clsScheduleManager.vb |
BR-010 The LNDueDateUpdate resource is surfaced as a Boolean capability for LCE due-date edits
| Field |
Value |
| Statement |
The LNDueDateUpdate resource is surfaced as a Boolean capability for LCE due-date edits. |
| Trigger |
UI checks whether LCE due dates may be edited |
| Enforcement |
clsScheduleManager.IsInLCEDueDateGroup |
| Outcome |
Presentation code can suppress LCE due-date edits |
| Source |
SAIF.Application.Claim.Legal\LegalNet\clsScheduleManager.vb |
BR-011 Legal case context can be established from a claim number, WCB number, or DCBS number
| Field |
Value |
| Statement |
Legal case context can be established from a claim number, WCB number, or DCBS number. |
| Trigger |
Context change |
| Enforcement |
LegalManagerBase.OnContextChanged |
| Outcome |
Case list rebuilt and current case selected |
| Source |
LegalManagerBase.OnContextChanged |
BR-020 Letter requests
| Field |
Value |
| Statement |
Letter requests are created through the pk80001_LEGALNET.insertLetterRequest package procedure, never by direct table insert. |
| Trigger |
Letter generation |
| Enforcement |
LegalManagerBase.insertLetterRequest |
| Outcome |
Request number returned to caller |
| Source |
LegalManagerBase.insertLetterRequest |
BR-021 Changes to file location, LCE, case status, and DEF flag on a primary case propagate to all consolidated secondary cases
| Field |
Value |
| Statement |
Changes to file location, LCE, case status, and DEF flag on a primary case propagate to all consolidated secondary cases. |
| Trigger |
Save on a consolidated case |
| Enforcement |
LegalManagerBase.updateConsolFileLocation / updateConsolLCE / UpdateConsolCaseStatus / UpdateConsolDEFFLag |
| Outcome |
Secondary cases updated in step |
| Source |
LegalManagerBase.updateConsolFileLocation / updateConsolLCE / UpdateConsolCaseStatus / UpdateConsolDEFFLag |
BR-030 Saving attorney tables persists six child collections in a fixed order within one write
| Field |
Value |
| Statement |
Saving attorney tables persists six child collections in a fixed order within one write. |
| Trigger |
OnWrite |
| Enforcement |
clsAttorneyTableManager.OnWrite |
| Outcome |
All collections saved atomically* |
| Source |
clsAttorneyTableManager.OnWrite |
BR-031 Lookup code lists are cached in-process for 8 hours sliding
| Field |
Value |
| Statement |
Lookup code lists are cached in-process for 8 hours (sliding) at low priority. |
| Trigger |
Lookup list first access |
| Enforcement |
AddToCache helpers in clsAttorneyTableManager / clsHearingLocationManager |
| Outcome |
Reduced database round-trips |
| Source |
AddToCache helpers in clsAttorneyTableManager / clsHearingLocationManager |
BR-040 A legal person
| Field |
Value |
| Statement |
A legal person may be deleted only when CanDeleteLegalPerson allows it. |
| Trigger |
DeletePerson |
| Enforcement |
clsLegalPersonManager.DeletePerson |
| Outcome |
Delete blocked otherwise |
| Source |
clsLegalPersonManager.DeletePerson |
BR-041 After a legal person save, the person collection is discarded to force a fresh reload
| Field |
Value |
| Statement |
After a legal person save, the person collection is discarded to force a fresh reload. |
| Trigger |
OnWrite |
| Enforcement |
clsLegalPersonManager.OnWrite |
| Outcome |
Stale data avoided |
| Source |
clsLegalPersonManager.OnWrite |
BR-050 New hearing locations default RequiresFullDayFlag False RotationFlag False CreateDate Today CreateUser DPI UserID
| Field |
Value |
| Statement |
New hearing locations default to RequiresFullDayFlag = False and RotationFlag = False, with CreateDate = Today and CreateUser = DPI.UserID. |
| Trigger |
InsertNewLocation |
| Enforcement |
clsHearingLocationManager.InsertNewLocation |
| Outcome |
Defaults applied; location cache invalidated |
| Source |
clsHearingLocationManager.InsertNewLocation |
BR-051 A hearing location
| Field |
Value |
| Statement |
A hearing location may be deleted only when CanDeleteLocation allows it. |
| Trigger |
DeleteLocation |
| Enforcement |
clsHearingLocationManager.DeleteLocation |
| Outcome |
Delete blocked otherwise |
| Source |
clsHearingLocationManager.DeleteLocation |
BR-060 Attorney profiles are active only when ExpirationDate has not passed
| Field |
Value |
| Statement |
An attorney profile is "active" only when its ExpirationDate has not passed. |
| Trigger |
GetProfiles |
| Enforcement |
clsMaintenanceManager.GetProfiles |
| Outcome |
Active subset returned separately |
| Source |
clsMaintenanceManager.GetProfiles |
BR-070 A new hearing request creates a LOUN file location entry
| Field |
Value |
| Statement |
A new hearing request creates a LOUN file location entry. |
| Trigger |
OnWrite for a new case |
| Enforcement |
clsRequestManager.OnWrite (LegalNet\clsRequestManager.vb) |
| Outcome |
File location recorded |
| Source |
clsRequestManager.OnWrite (LegalNet\clsRequestManager.vb) |
BR-071 Hearing-request tasks
| Field |
Value |
| Statement |
Hearing-request tasks are due 13 working days (adjuster) and 29 days (text) out, rolled forward to the next work day. |
| Trigger |
OnWrite |
| Enforcement |
clsRequestManager.OnWrite (TASKDAYS, TEXTDAYS, NextWorkDay) |
| Outcome |
Tasks created with computed due dates |
| Source |
clsRequestManager.OnWrite (TASKDAYS, TEXTDAYS, NextWorkDay) |
BR-072 A change of firm or attorney is recorded as a system case note with category RFH and CreateUser SYSTEM
| Field |
Value |
| Statement |
A change of firm or attorney is recorded as a system case note with category RFH and CreateUser = "SYSTEM". |
| Trigger |
Firm/attorney change on save |
| Enforcement |
clsRequestManager.OnWrite |
| Outcome |
Audit note written |
| Source |
clsRequestManager.OnWrite |
BR-080 DEF print hold date is the next Friday if today is Friday the following Friday
| Field |
Value |
| Statement |
DEF print hold date is the next Friday; if today is Friday, the following Friday. |
| Trigger |
PrintDEF |
| Enforcement |
clsScheduleManager.PrintDEF (LegalNet\clsScheduleManager.vb) |
| Outcome |
Hold date set |
| Source |
clsScheduleManager.PrintDEF (LegalNet\clsScheduleManager.vb) |
BR-081 DEF notification e-mail goes to the attorney manager resolved from the database falling back to ISClaimsAppsSupport at saif.com
| Field |
Value |
| Statement |
DEF notification e-mail goes to the attorney manager resolved from the database, falling back to ISClaimsAppsSupport@saif.com. |
| Trigger |
SendDEFEmail |
| Enforcement |
clsScheduleManager.SendDEFEmail |
| Outcome |
Recipient resolved |
| Source |
clsScheduleManager.SendDEFEmail |
BR-082 Outside Production DEF e-mail is redirected to the current user DPI UserID at saif.com
| Field |
Value |
| Statement |
Outside Production, DEF e-mail is redirected to the current user (DPI.UserID & "@saif.com"). |
| Trigger |
SendDEFEmail in non-Prod |
| Enforcement |
clsScheduleManager.SendDEFEmail |
| Outcome |
No mail to real recipients in test |
| Source |
clsScheduleManager.SendDEFEmail |
BR-090 Closing a case adds a RECRD file location and sets CaseStatusCode CLOSE
| Field |
Value |
| Statement |
Closing a case adds a RECRD file location and sets CaseStatusCode = "CLOSE". |
| Trigger |
CloseCase |
| Enforcement |
clsOutcomeManager.CloseCase (LegalNet\clsOutcomeManager.vb) |
| Outcome |
Case closed |
| Source |
clsOutcomeManager.CloseCase (LegalNet\clsOutcomeManager.vb) |
BR-091 A voc-specific close task CASECLOSEDVOC is created only when the case has voc issues and a VocMailID longer than 5 characters
| Field |
Value |
| Statement |
A voc-specific close task (CASECLOSEDVOC) is created only when the case has voc issues and a VocMailID longer than 5 characters. |
| Trigger |
CloseCase |
| Enforcement |
clsOutcomeManager.CloseCase |
| Outcome |
Correct task type created |
| Source |
clsOutcomeManager.CloseCase |
BR-100 Letter batch jobs
| Field |
Value |
| Statement |
Letter batch jobs are submitted only after the pending database transaction has been explicitly ended. |
| Trigger |
OnWrite |
| Enforcement |
clsCreateFileManager.OnWrite, clsMailDateManager.OnWrite |
| Outcome |
LGN0002_LEGALNET_LETTERS submitted against committed data |
| Source |
clsCreateFileManager.OnWrite, clsMailDateManager.OnWrite |
BR-110 The attorney assignment batch process runs in test mode in any non-Production environment
| Field |
Value |
| Statement |
The attorney assignment batch process runs in test mode in any non-Production environment. |
| Trigger |
RunAssignmentProcess |
| Enforcement |
clsAssignmentManager.Testing (LegalNet\clsAssignmentManager.vb) |
| Outcome |
No production side effects in test |
| Source |
clsAssignmentManager.Testing (LegalNet\clsAssignmentManager.vb) |
BR-120 Only privileged users
| Field |
Value |
| Statement |
Only privileged users may delete case notes whose category is not DOCCO. |
| Trigger |
DeleteNote |
| Enforcement |
clsCaseNotesManager.DeleteNote (LegalNet\clsCaseNotesManager.vb) |
| Outcome |
Delete blocked |
| Source |
clsCaseNotesManager.DeleteNote (LegalNet\clsCaseNotesManager.vb) |
BR-121 Notes created by SYSTEM can never be deleted
| Field |
Value |
| Statement |
Notes created by SYSTEM can never be deleted. |
| Trigger |
DeleteNote |
| Enforcement |
clsCaseNotesManager.DeleteNote |
| Outcome |
Delete blocked |
| Source |
clsCaseNotesManager.DeleteNote |
BR-130 All legal data access in this library runs as database user LGN
| Field |
Value |
| Statement |
All legal data access in this library runs as database user LGN. |
| Trigger |
Manager construction |
| Enforcement |
LegalManagerBase.New (DataLayer.DBUser = "LGN") |
| Outcome |
Consistent Oracle schema/proxy user |
| Source |
LegalManagerBase.New (DataLayer.DBUser = "LGN") |
Notes
- Additional procedure-internal rules could not be expanded because the Oracle package bodies are not present in this repository.
Sources
- SAIF.Application.Claim.Legal\LegalManagerBase.vb
- SAIF.Application.Claim.Legal\clsAttorneyTableManager.vb
- SAIF.Application.Claim.Legal\clsHearingLocationManager.vb
- SAIF.Application.Claim.Legal\clsLegalPersonManager.vb
- SAIF.Application.Claim.Legal\clsMaintenanceManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsAssignmentManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsCaseNotesManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsCaseSearchManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsCreateFileManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsMailDateManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsOutcomeManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsRequestManager.vb
- SAIF.Application.Claim.Legal\LegalNet\clsScheduleManager.vb