Skip to content

EbillingImageService

Implements IEbillingImageService as the batch-level entry point for imaging an e-billing batch: it resolves the SETUP-status 837 batch by ID, delegates the actual document imaging to IDocumentImageManager, and reports the resolved batch ID back on the result even when imaging fails.

Purpose

  • Resolves the batch to be imaged from its ID via Batch.GetBatch, requiring it to be in 837/ SETUP status (ImageDocuments).
  • Delegates the imaging workflow for the batch to IDocumentImageManager.ImageDocuments.
  • Wraps any imaging failure in an exception that identifies the batch ID, and stamps the resolved batch ID onto the returned ImageResults regardless of outcome.

Context

  • Namespace: SAIF.Services.Claims.Ebilling.Imaging
  • Assembly/package: SAIF.Services (packaged inside the SAIF.SAIFCode.Core NuGet package)

Public members

Member Signature Purpose
EbillingImageService public EbillingImageService(IUnitOfWork unitOfWork, IUserProfileService profileService, IDocumentImageManager documentImageManager, IEbillingQueryProvider ebillingQueryProvider) Wires the unit-of-work, current-user resolver, document-image-manager delegate, and e-billing query provider used to resolve and image a batch.
ImageDocuments public ImageResults ImageDocuments(ImageDocumentsRequest request, ILogWriter resultsControlReport) Resolves the SETUP-status 837 batch for the request, runs the imaging workflow via IDocumentImageManager, and returns the results with the resolved batch ID populated (re-throwing imaging failures wrapped with the batch ID).

Behavioral notes

  • Acts as a thin facade over IDocumentImageManager; the substantive imaging logic (file validation, per-document upload, status transitions) lives in that collaborator, not here.

Sources

  • Services/SAIF.Services/Claims/EBilling/Imaging/EbillingImageService.cs