From 215325f6fbe165f1efebc691a6ad8d5eb96e053d Mon Sep 17 00:00:00 2001 From: "Daniel J. Summers" Date: Sat, 16 Mar 2019 09:15:50 -0500 Subject: [PATCH] Added requestor field to search --- src/PrayerTracker.Data/DataAccess.fs | 6 +++++- src/search-sql.txt | 4 +++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/PrayerTracker.Data/DataAccess.fs b/src/PrayerTracker.Data/DataAccess.fs index e9516c2..79bfe1d 100644 --- a/src/PrayerTracker.Data/DataAccess.fs +++ b/src/PrayerTracker.Data/DataAccess.fs @@ -118,7 +118,11 @@ type AppDbContext with member this.SearchRequestsForSmallGroup (grp : SmallGroup) (searchTerm : string) pageNbr : PrayerRequest seq = let pgSz = grp.preferences.pageSize let skip = (pageNbr - 1) * pgSz - let sql = RawSqlString """SELECT * FROM pt."PrayerRequest" WHERE "SmallGroupId" = {0} AND "Text" ILIKE {1}""" + let sql = + """ SELECT * FROM pt."PrayerRequest" WHERE "SmallGroupId" = {0} AND "Text" ILIKE {1} + UNION + SELECT * FROM pt."PrayerRequest" WHERE "SmallGroupId" = {0} AND COALESCE("Requestor", '') ILIKE {1}""" + |> RawSqlString let like = sprintf "%%%s%%" upcast ( this.PrayerRequests.FromSql(sql, grp.smallGroupId, like searchTerm).AsNoTracking () diff --git a/src/search-sql.txt b/src/search-sql.txt index c5c2ce2..801748d 100644 --- a/src/search-sql.txt +++ b/src/search-sql.txt @@ -1,3 +1,5 @@ create extension pg_trgm; +set search_path=pt,public; +create index "IX_PrayerRequest_Requestor_TRGM" on "PrayerRequest" using GIN (COALESCE("Requestor", '') gin_trgm_ops); create index "IX_PrayerRequest_Text_TRGM" on "PrayerRequest" using GIN ("Text" gin_trgm_ops); -alter table "ListPreference" add column "PageSize" int not null default 100; \ No newline at end of file +alter table "ListPreference" add column "PageSize" int not null default 100;