feature: Medication Tracking & Vital Sign Correlation

This commit is contained in:
voltsrage
2026-06-19 10:47:55 +08:00
parent e2d40331b7
commit 5c7e37471b
29 changed files with 2512 additions and 4 deletions
@@ -172,6 +172,18 @@ public class News2Detector
var triggeredAt = DateTimeOffset.UtcNow;
var details = BuildDetails(totalScore, riskLevel, paramScores);
var correlation = scope.ServiceProvider.GetRequiredService<MedicationCorrelationHelper>();
var annotatedParts = new List<string>();
foreach (var code in News2Calculator.ParameterCodes)
{
var part = await correlation.TryAnnotateDetailsAsync(
encounterId, code, "", ct);
if (part.StartsWith(" — note:"))
annotatedParts.Add(part.TrimStart(' ', '—').Trim());
}
if (annotatedParts.Count > 0)
details += " — " + string.Join("; ", annotatedParts.Distinct());
var affected = await db.Database.ExecuteSqlInterpolatedAsync($"""
INSERT INTO clinical_alerts
(id, encounter_id, patient_id, alert_type, severity, details, status, triggered_at)