Attending physician resolution¶
Resolve the attending physician's location for a claim, combining physician and facility contacts.
| Field | Value |
|---|---|
| Operation ID | OP-SD-13 |
| Trigger | Caller requests the attending physician location for a claim. |
| Inputs | Claim id |
| Outputs | Location, or throws |
| Primary components | ClaimQueryProvider.GetAttendingPhysician |
| Entry point | Data/SAIF.Data/Queries/Claims/ClaimQueryProvider.cs |
Steps¶
- Load attending physician contacts for the claim that are active and not terminated (SQL-057). Data:
AttendingPhysician(ATTENDING_PHYSICIAN),Location(LOCATION). - If there is a physician without a facility, throw
ApplicationException(SD-BR-040). - If the physician equals the facility, or only a facility exists, use the facility location. If both exist, use the physician location with the facility as its parent (SD-BR-040).
Process flow¶
The following diagram visualizes this operation's control flow.
flowchart TD
Start(["Caller requests the attending physician location for a<br>claim."]) --> S1["`ClaimQueryProvider.GetAttendingPhysician`"]
S1 --> S2{"Rules satisfied?"}
S2 -->|Yes| EndOk([Result returned])
S2 -->|No| EndErr([Exception / empty result])
Failure and edge-case behavior¶
- Physician without a facility: throws
ApplicationException.
Related documentation¶
Sources¶
Data/SAIF.Data/Queries/Claims/ClaimQueryProvider.csData/SAIF.Data/Queries/Claims/ClaimQueryProvider.cs:172