fix: case-insensitive voornaam zoeken door capitalize toe te passen

Voornaam zoeken werkte niet omdat name_given array case-sensitive is.
Capitalize nu de zoekterm (eerste letter hoofdletter) voordat deze
wordt gebruikt in de array search, zodat 'jan' matcht met 'Jan'.

Aangepast in beide search endpoints:
- /api/patients/search
- /api/cortex/patients/search
This commit is contained in:
colinislit
2026-01-03 11:47:12 +01:00
parent 4b45853868
commit 43d4d095ce
2 changed files with 12 additions and 2 deletions

View File

@@ -129,9 +129,14 @@ export async function GET(request: NextRequest) {
`identifier_bsn.ilike.%${searchQuery}%,identifier_client_number.ilike.%${searchQuery}%`
);
} else {
// Capitalize first letter, lowercase rest (matches Dutch name format)
const capitalizedQuery = searchQuery.charAt(0).toUpperCase() +
searchQuery.slice(1).toLowerCase();
// Search name fields (family name and given names)
// name_family uses ilike (case-insensitive), name_given uses cs with capitalized query
dbQuery = dbQuery.or(
`name_family.ilike.%${searchQuery}%,name_given.cs.{${searchQuery}}`
`name_family.ilike.%${searchQuery}%,name_given.cs.{${capitalizedQuery}}`
);
}