From 63c4568aeb7e585373fb2a54b95a00014c96bf88 Mon Sep 17 00:00:00 2001 From: Fabrice Lecomte Date: Sun, 14 Jun 2020 00:30:45 +0200 Subject: [PATCH] Fix find_citizens SQL query --- Makefile | 6 +++--- .../resources/sql/functions/citizen/find_citizens.sql | 10 ++++++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index dea3b52..0e0ad58 100644 --- a/Makefile +++ b/Makefile @@ -21,9 +21,9 @@ build-docker: ## Build the docker image of application pd: publish-docker publish-docker: build-docker ## Publish docker image of application to Github - git diff --quiet --exit-code || (echo "The git is DIRTY !!! You cannot publish this crap!" && exit 1) - cat ./GH_TOKEN.txt | docker login docker.pkg.github.com -u ${GITHUB_USERNAME} --password-stdin - docker tag dc-project docker.pkg.github.com/flecomte/dc-project/dc-project:${VERSION} + @git diff --quiet --exit-code || (echo "The git is DIRTY !!! You cannot publish this crap!" && exit 1) + @cat ./GH_TOKEN.txt | docker login docker.pkg.github.com -u ${GITHUB_USERNAME} --password-stdin + @docker tag dc-project docker.pkg.github.com/flecomte/dc-project/dc-project:${VERSION} docker push docker.pkg.github.com/flecomte/dc-project/dc-project:${VERSION} rd: run-docker diff --git a/src/main/resources/sql/functions/citizen/find_citizens.sql b/src/main/resources/sql/functions/citizen/find_citizens.sql index 1220b59..c5f5a0f 100644 --- a/src/main/resources/sql/functions/citizen/find_citizens.sql +++ b/src/main/resources/sql/functions/citizen/find_citizens.sql @@ -9,8 +9,7 @@ create or replace function find_citizens( ) language plpgsql as $$ begin - select json_agg(t), (select count(id) from citizen) - into resource, total + select json_agg(t) into resource from ( select z.*, @@ -38,6 +37,13 @@ begin z.created_at desc limit "limit" offset "offset" ) as t; + + select count(id) into total + from citizen + where "search" is null or ( + (name->'first_name')::text ilike '%'||"search"||'%' or + (name->'last_name')::text ilike '%'||"search"||'%' + ); end; $$;