Skip to content

Application overview

ClaimBillEntry is the Claims bill-entry web application. Staff use it to key medical bills (worker, diagnoses, procedures, service lines, notes and providers) against a SAIF claim, to work a personal inbox of bills, and to search bills. It is hosted in IIS under the virtual directory /ClaimBillEntry/ with Windows authentication and runs on .NET Framework 4.6.2 with ASP.NET MVC 5 and Razor views.

Purpose

  • Key, save, submit, send or pend, and discard medical bills against a SAIF claim on the Bill entry screen.
  • Give each user a personal work queue of bills on the Inbox screen.
  • Find bills by bill id, tax id, provider id, SSN, claim number or received date on the Search screen.
  • Delegate all domain behavior (bill services, query providers, claim and worker lookups) to SAIF internal packages, leaving the application responsible for screens, routing, AJAX endpoints and composition.

Users

User role Description Primary use cases
CBPEnterBill Claims bill-entry staff; the role required by the Entry, Inbox and Search controllers Key and submit bills, work the inbox, search bills
CBEDiscardBill Permission checked when the Bill entry screen loads; controls whether the Discard button is shown Discard a bill (enforced on the client only, see BR-SCR-006)
ConflictClaim Permission checked when a bill is opened Open bills that belong to conflict claims (see BR-SCR-002)

Capability matrix

The repository has no standalone libraries. Each capability is owned by an application component and performed by a consumed SAIF package. 20 package/framework business rules recovered from those packages are now documented in business rules†. SaifAuthorizeAttribute's role-check behavior is likewise documented via retrieved behavior† in Request pipeline and composition and Security and authorization; the internal mechanics of each service method beyond the recovered rules, and the inherited ClaimControllerBase.CheckSecurity action-filter internals beyond its call site, remain untraced**.

Capability Owning component Consumed package(s) performing the work Description
Bill header entry, save, submit, discard and queue feed Bill entry, EntryController SAIF.SAIFCode.Core (IBillEntryService) Loads, saves, submits and discards bills and pulls the next bill from the queue
Send or pend a bill to another mailbox EntryController SAIF.SAIFCode.Core (IBillService.SendPendBill) Routes a bill to another user's mail id
Worker lookup by claim number EntryController SAIF.SAIFCode.Core (IClaimInformationService) Loads worker information when the claim number changes
Diagnosis, procedure, service-line and note grids DiagnosisGridController, ProcedureGridController, ServiceGridController, NoteGridController SAIF.SAIFCode.Core (IBillDiagnosisService, IBillProcedureService, IBillServiceService, INoteService) Kendo grid create, read, update and delete plus code validation
Provider lookup and TIN validation ProviderController SAIF.SAIFCode.Core (IBillEntryService, IProviderQueryProvider) Billing and rendering provider lookups and tax id validation
Personal inbox Inbox, InboxController SAIF.SAIFCode.Core (IBillEntryService), SAIF.Framework.Core (IUserProfileService) Lists bills for a responsible party
Bill search Search, SearchController SAIF.SAIFCode.Core (IBillQueryService) Searches bills by criteria
Grid column preferences BaseController SAIF.Framework.Core (IUserProfileService.Preferences) Saves and clears a user's grid column layout
Menu, web context and security filter BaseController, _Bootstrap3 layout SAIF.SAIFCode.Web.Mvc (ClaimControllerBase), SAIF.Framework.Web.Mvc Renders the SAIF menu and web-context control and applies conflict-claim access
Claim document viewing Client script launchOnBase OnBase enabler (client asset) Opens a claim document in OnBase from the browser
Dependency composition SAIF.DependencyMaps.Web.ClaimBillEntry (companion project) Autofac, SAIF.Framework.Data.NHibernate, ImagingApi.Client Builds the Autofac container and registers services

Note: Statements marked with † are derived from dependency library documentation via the Legends CLI. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • ClaimBillEntry/ClaimBillEntry.csproj
  • ClaimBillEntry/Views/_ViewStart.cshtml
  • ClaimBillEntry/Controllers/HomeController.cs
  • ClaimBillEntry/Controllers/BaseController.cs
  • ClaimBillEntry/Controllers/EntryController.cs
  • ClaimBillEntry/Controllers/InboxController.cs
  • ClaimBillEntry/Controllers/SearchController.cs
  • ClaimBillEntry/Controllers/ProviderController.cs
  • ClaimBillEntry/Controllers/NoteGridController.cs
  • ClaimBillEntry/Controllers/DiagnosisGridController.cs
  • ClaimBillEntry/Controllers/ProcedureGridController.cs
  • ClaimBillEntry/Controllers/ServiceGridController.cs
  • ClaimBillEntry/js/ClaimBillEntry.entry.js
  • SAIF.DependencyMaps.Web.ClaimBillEntry/DependencyMap.cs
  • Pipelines/build-vars.yml