Skip to content

Commit 6d6e019

Browse files
authored
PPR API account registrations filter query updates. (#2259)
Signed-off-by: Doug Lovett <doug@diamante.ca>
1 parent 1025b1d commit 6d6e019

3 files changed

Lines changed: 23 additions & 15 deletions

File tree

ppr-api/src/ppr_api/models/registration_utils.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -233,30 +233,30 @@
233233
QUERY_ACCOUNT_CHANGE_DEFAULT_ORDER = " ORDER BY arv2.registration_ts DESC"
234234
QUERY_ACCOUNT_REG_LIMIT = " LIMIT :page_size OFFSET :page_offset"
235235
QUERY_ACCOUNT_REG_NUM_CLAUSE = """
236-
AND (arv.registration_number LIKE :reg_num || '%' OR
236+
AND (position(:reg_num in arv.registration_number) > 0 OR
237237
EXISTS (SELECT arv2.financing_id
238238
FROM account_registration_vw arv2
239239
WHERE arv2.financing_id = arv.financing_id
240240
AND arv2.registration_type_cl NOT IN ('CROWNLIEN', 'MISCLIEN', 'PPSALIEN')
241-
AND arv2.registration_number LIKE :reg_num || '%'))
241+
AND position(:reg_num in arv2.registration_number) > 0))
242242
"""
243-
QUERY_ACCOUNT_CLIENT_REF_CLAUSE = " AND arv.client_reference_id LIKE '%' || :client_reference_id || '%'"
243+
QUERY_ACCOUNT_CLIENT_REF_CLAUSE = " AND position(:client_reference_id in UPPER(arv.client_reference_id)) > 0"
244244
QUERY_ACCOUNT_CLIENT_REF_CLAUSE_NEW = """
245-
AND (arv.client_reference_id ILIKE '%' || :client_reference_id || '%' OR
245+
AND (position(:client_reference_id in UPPER(arv.client_reference_id)) > 0 OR
246246
EXISTS (SELECT arv2.financing_id
247247
FROM account_registration_vw arv2
248248
WHERE arv2.financing_id = arv.financing_id
249249
AND arv2.registration_type_cl NOT IN ('CROWNLIEN', 'MISCLIEN', 'PPSALIEN')
250-
AND arv2.client_reference_id ILIKE :client_reference_id || '%'))
250+
AND position(:client_reference_id in UPPER(arv2.client_reference_id)) > 0))
251251
"""
252-
QUERY_ACCOUNT_REG_NAME_CLAUSE = " AND arv.registering_name LIKE '%' || :registering_name || '%'"
252+
QUERY_ACCOUNT_REG_NAME_CLAUSE = " AND position(:registering_name in UPPER(arv.registering_name)) > 0"
253253
QUERY_ACCOUNT_REG_NAME_CLAUSE_NEW = """
254-
AND (arv.registering_name ILIKE '%' || :registering_name || '%' OR
254+
AND (position(:registering_name in UPPER(arv.registering_name)) > 0 OR
255255
EXISTS (SELECT arv2.financing_id
256256
FROM account_registration_vw arv2
257257
WHERE arv2.financing_id = arv.financing_id
258258
AND arv2.registration_type_cl NOT IN ('CROWNLIEN', 'MISCLIEN', 'PPSALIEN')
259-
AND arv2.registering_name ILIKE '%' || :registering_name || '%'))
259+
AND position(:registering_name in UPPER(arv2.registering_name)) > 0))
260260
"""
261261
QUERY_ACCOUNT_STATUS_CLAUSE = " AND arv.state = :status_type"
262262
QUERY_ACCOUNT_REG_TYPE_CLAUSE = " AND arv.registration_type = :registration_type"

ppr-api/src/ppr_api/models/utils.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -256,11 +256,11 @@
256256
"""
257257
QUERY_ACCOUNT_DRAFTS_LIMIT = " FETCH FIRST :max_results_size ROWS ONLY"
258258
QUERY_ACCOUNT_DRAFTS_DEFAULT_ORDER = " ORDER BY create_ts DESC"
259-
QUERY_ACCOUNT_DRAFTS_DOC_NUM_CLAUSE = " AND document_number LIKE :doc_num || '%'"
260-
QUERY_ACCOUNT_DRAFTS_CLIENT_REF_CLAUSE = " AND client_reference_id LIKE '%' || :client_reference_id || '%'"
261-
QUERY_ACCOUNT_DRAFTS_CLIENT_REF_CLAUSE_NEW = " AND client_reference_id ILIKE '%' || :client_reference_id || '%'"
262-
QUERY_ACCOUNT_DRAFTS_REG_NAME_CLAUSE = " AND registering_name LIKE '%' || :registering_name || '%'"
263-
QUERY_ACCOUNT_DRAFTS_REG_NAME_CLAUSE_NEW = " AND registering_name ILIKE '%' || :registering_name || '%'"
259+
QUERY_ACCOUNT_DRAFTS_DOC_NUM_CLAUSE = " AND position(:doc_num in q.document_number) > 0"
260+
QUERY_ACCOUNT_DRAFTS_CLIENT_REF_CLAUSE = " AND position(:client_reference_id in UPPER(q.client_reference_id)) > 0"
261+
QUERY_ACCOUNT_DRAFTS_CLIENT_REF_CLAUSE_NEW = " AND position(:client_reference_id in UPPER(q.client_reference_id)) > 0"
262+
QUERY_ACCOUNT_DRAFTS_REG_NAME_CLAUSE = " AND position(:registering_name in UPPER(q.registering_name)) > 0"
263+
QUERY_ACCOUNT_DRAFTS_REG_NAME_CLAUSE_NEW = " AND position(:registering_name in UPPER(q.registering_name)) > 0"
264264
QUERY_ACCOUNT_DRAFTS_REG_TYPE_CLAUSE = " AND registration_type = :registration_type"
265265
QUERY_ACCOUNT_DRAFTS_DATE_CLAUSE = """
266266
AND create_ts BETWEEN (TO_TIMESTAMP(:start_date_time, 'YYYY-MM-DD HH24:MI:SS') at time zone 'utc') AND

ppr-api/src/ppr_api/resources/utils.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -704,10 +704,18 @@ def get_account_registration_params(req: request, params: AccountRegistrationPar
704704
if start_ts and end_ts:
705705
params.start_date_time = start_ts
706706
params.end_date_time = end_ts
707-
if params.sort_direction is not None:
707+
if params.sort_direction:
708708
params.sort_direction = params.sort_direction.lower()
709-
if params.registration_number is not None:
709+
if params.registration_number:
710710
params.registration_number = params.registration_number.strip().upper()
711+
if params.registration_type:
712+
params.registration_type = params.registration_type.strip().upper()
713+
if params.status_type:
714+
params.status_type = params.status_type.strip().upper()
715+
if params.client_reference_id:
716+
params.client_reference_id = params.client_reference_id.strip().upper()
717+
if params.registering_name:
718+
params.registering_name = params.registering_name.strip().upper()
711719
return params
712720

713721

0 commit comments

Comments
 (0)