Compare commits

..
Author SHA1 Message Date
aziz_28002andClaude Sonnet 5 a5bbc24ecf fix: make order search case-insensitive
Runner Test / test (push) Successful in 16s
Runner Test / test (pull_request) Successful in 14s
instr() in SQLite compares bytes, so searching for a customer name
in uppercase (e.g. "JOHN") silently missed lowercase-stored matches
like "John". Lowercase both sides of the order number, name, and
email comparisons so search matches regardless of the case staff
paste in.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-16 20:41:45 +04:00
+4 -4
View File
@@ -35,13 +35,13 @@ function toOrderItemDetail(row: {
} }
export async function listOrderSummaries(context: DatabaseContext, query?: string) { export async function listOrderSummaries(context: DatabaseContext, query?: string) {
const search = query?.trim().toLowerCase(); const search = query?.trim();
const filters = search const filters = search
? or( ? or(
sql`instr(lower(${orders.orderNumber}), ${search}) > 0`, sql`instr(lower(${orders.orderNumber}), lower(${search})) > 0`,
sql`instr(lower(${users.name}), ${search}) > 0`, sql`instr(lower(${users.name}), lower(${search})) > 0`,
sql`instr(lower(${users.email}), ${search}) > 0` sql`instr(lower(${users.email}), lower(${search})) > 0`
) )
: undefined; : undefined;