fix: Trend alert matching uses fragile LIKE pattern

This commit is contained in:
voltsrage
2026-06-21 16:45:09 +08:00
parent 076e8364b2
commit 3eb937ef98
6 changed files with 1339 additions and 6 deletions
@@ -51,6 +51,7 @@ public class ClinicalAlertConfiguration : IEntityTypeConfiguration<ClinicalAlert
v => AlertSeverityExtensions.FromDbString(v))
.IsRequired();
builder.Property(a => a.Details).HasColumnName("details").IsRequired();
builder.Property(a => a.ObservationCode).HasColumnName("observation_code").HasMaxLength(50);
builder.Property(a => a.Status)
.HasColumnName("status")
.HasMaxLength(20)
@@ -73,5 +74,7 @@ public class ClinicalAlertConfiguration : IEntityTypeConfiguration<ClinicalAlert
builder.HasIndex(a => new { a.PatientId, a.TriggeredAt });
builder.HasIndex(a => new { a.Severity, a.TriggeredAt })
.HasFilter("status = 'OPEN'");
builder.HasIndex(a => new { a.EncounterId, a.AlertType, a.ObservationCode })
.HasFilter("status IN ('OPEN', 'ESCALATED')");
}
}