feature: FHIR R4 Inbound Facade

This commit is contained in:
voltsrage
2026-06-21 13:53:38 +08:00
parent 9f96f54007
commit a43db52813
42 changed files with 2873 additions and 3 deletions
+12
View File
@@ -83,6 +83,9 @@ try
.GetSection(DashboardOptions.Section)
.Get<DashboardOptions>() ?? new DashboardOptions();
builder.Services.Configure<FhirOptions>(
builder.Configuration.GetSection(FhirOptions.Section));
builder.Services.AddCors(options =>
{
options.AddPolicy("Dashboard", policy =>
@@ -122,6 +125,14 @@ try
builder.Services.AddScoped<SofaVasopressorResolver>();
builder.Services.AddScoped<SofaDetector>();
builder.Services.AddScoped<ISofaService, SofaService>();
builder.Services.AddScoped<IExternalIdentifierService, ExternalIdentifierService>();
builder.Services.AddScoped<FhirReferenceResolver>();
builder.Services.AddScoped<PatientFhirMapper>();
builder.Services.AddScoped<EncounterFhirMapper>();
builder.Services.AddScoped<ObservationFhirMapper>();
builder.Services.AddScoped<MedicationAdministrationFhirMapper>();
builder.Services.AddScoped<FhirBundleProcessor>();
builder.Services.AddScoped<FhirExceptionFilter>();
builder.Services.AddHostedService<ThresholdCacheLoader>();
builder.Services.AddHostedService<KafkaTopicProvisioner>();
@@ -209,6 +220,7 @@ try
}
app.UseMiddleware<CorrelationIdMiddleware>();
app.UseMiddleware<FhirApiKeyMiddleware>();
app.UseMiddleware<ExceptionHandlerMiddleware>();
app.UseCors("Dashboard");