BillProcedure¶
BillProcedure wraps a single CbpBillProcedure entity from a Bill.Procedures collection and resolves its human-readable procedure description from the service-code reference data, feeding the Core.Contracts.Claims.Bills.BillProcedure contract that consumers outside the domain layer receive. Bill.Procedures is the only in-library constructor of this type.
Purpose¶
- Resolves a bill procedure's short description from
IServiceCodeQueryProvider.ServiceCodeQueries, so callers do not need a separate lookup against procedure-code reference data. - Maps the underlying
CbpBillProcedureentity to theCore.Contracts.Claims.Bills.BillProcedurecontract, filling in the resolved description as part of that mapping.
Context¶
- Namespace:
SAIF.Domain.Model.Claims.Bills - Assembly/package:
SAIF.Domain(packaged inSAIF.SAIFCode.Core)
Public members¶
| Member | Signature | Purpose |
|---|---|---|
| BillProcedure (constructor) | public BillProcedure(IBillQueryProvider provider, CbpBillProcedure data) |
Wraps data with the query provider needed to resolve the procedure's description. |
| BillProcedureContract | public Core.Contracts.Claims.Bills.BillProcedure BillProcedureContract { get; } |
Maps this procedure to the Core.Contracts.Claims.Bills.BillProcedure contract, with ProcedureDescription set from Description; returns a blank contract when the procedure has no data. |
| Description | public string Description { get; } |
The procedure's short description, looked up by DataItem.ServiceCode through ServiceCodeQueries.GetProcedureCode; empty when there is no service code or no matching procedure code. |
Inherited public members¶
Members in this section are inherited from DomainBase<TItem> in SAIF.Domain. They are available on this type through inheritance (via the intermediate DomainQueryBase<TItem,TQueryProvider> base).
| Member | Signature | Purpose | Origin |
|---|---|---|---|
| HasData | public virtual bool HasData { get; } |
Reports whether the wrapped CbpBillProcedure entity is present, evaluated as !DataItem.IsNull(). |
SAIF.Domain — DomainBase<TItem> |
Behavioral notes¶
Descriptionreturns an empty string both when there is no service code on the procedure and when the code lookup finds no matching procedure code, so callers cannot distinguish "no code" from "unknown code" from this property alone*.
Constraints and usage notes¶
BillProcedureContractre-evaluatesDescriptionon every access rather than caching it, so repeated access re-queriesServiceCodeQueries*.
Note: Statements marked with
*were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Sources¶
Domain/SAIF.Domain/Model/Claims/Bills/BillProcedure.csDomain/SAIF.Domain/DomainBase.csDomain/SAIF.Domain/DomainQueryBase.cs