From 43ecf86fe9e66b86fb909e34b2125bcc711c05d9 Mon Sep 17 00:00:00 2001 From: ppc19 <ppc19@inf.ufpr.br> Date: Fri, 18 Feb 2022 10:56:06 -0300 Subject: [PATCH] only relation like adds '%' to value --- src/libs/middlewares/reqQueryFields.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/libs/middlewares/reqQueryFields.js b/src/libs/middlewares/reqQueryFields.js index 37a37777..36c33d38 100644 --- a/src/libs/middlewares/reqQueryFields.js +++ b/src/libs/middlewares/reqQueryFields.js @@ -11,10 +11,11 @@ const nullFields = [ "Não classificada" ] -function parseWhereValue(type, value) { +function parseWhereValue(type, value, relation) { if(type === 'integer') return parseInt(value, 10); if(type === 'double') return parseFloat(value); - if(type === 'string') return '%'+value+'%'; + if(type === 'string' && relation === 'LIKE') return '%'+value+'%'; + if(type === 'string') return value; if(type === 'boolean') { if(value === null || typeof value === 'boolean') { return value; @@ -306,14 +307,14 @@ class ReqQueryFields { let whereString = '('; for(let i = 0; i < whereValue.length; ++i) { whereString += whereField; - whereValues.push(parseWhereValue(value.where.type, whereValue[i])); + whereValues.push(parseWhereValue(value.where.type, whereValue[i], value.where.relation)); if(i < whereValue.length-1) { whereString += ' OR '; } } whereString += ')'; } else { - whereValues.push(parseWhereValue(value.where.type, whereValue)); + whereValues.push(parseWhereValue(value.where.type, whereValue, value.where.relation)); } }); @@ -326,7 +327,7 @@ class ReqQueryFields { let arrayWhereValues = []; for(let i = 0; i < whereValue.length; ++i) { let curRelation = value.where.relation; - let curValue = parseWhereValue(value.where.type, whereValue[i]) + let curValue = parseWhereValue(value.where.type, whereValue[i],value.where.relation) if (isNull(k, curValue) ) { curValue = null; curRelation = "is"; @@ -341,7 +342,7 @@ class ReqQueryFields { whereString += ')'; sql.where(whereString, ...arrayWhereValues); } else { - let curValue = parseWhereValue(value.where.type, whereValue) + let curValue = parseWhereValue(value.where.type, whereValue, value.where.relation) let curRelation = value.where.relation; if (isNull(k, curValue) ) { -- GitLab