From 9346bffa3e6d0fc69ce3aff2c5f3a2a6a1ddd669 Mon Sep 17 00:00:00 2001 From: Pietro Polinari Cavassin <ppc19@inf.ufpr.br> Date: Fri, 16 Sep 2022 10:54:32 -0300 Subject: [PATCH] Add region and state not filter --- src/libs/routes/city.js | 34 +++++++++++++++++++++++++++++++++- src/libs/routes/region.js | 10 ++++++++++ src/libs/routes/state.js | 9 +++++++++ 3 files changed, 52 insertions(+), 1 deletion(-) diff --git a/src/libs/routes/city.js b/src/libs/routes/city.js index 1686c850..fc697a9f 100644 --- a/src/libs/routes/city.js +++ b/src/libs/routes/city.js @@ -69,6 +69,22 @@ rqf.addField({ foreign: 'estado_id', foreignTable: 'municipio' } +}).addValue({ + name: 'state_not', + table: 'estado', + tableField: ['nome', 'id'], + resultField: ['state_name', 'state_id'], + where: { + relation: '<>', + type: 'integer', + field: 'estado_id', + table: 'municipio' + }, + join: { + primary: 'id', + foreign: 'estado_id', + foreignTable: 'municipio' + } }).addField({ name: 'search', field: false, @@ -100,7 +116,23 @@ rqf.addField({ type: 'integer', field: 'microrregiao_id' } -}); +}).addValueToField({ + name: 'region', + table: 'estado', + tableField: 'regiao_id', + resultField: 'region_id', + where: { + relation: '=', + type: 'integer', + field: 'regiao_id', + table: 'estado' + }, + join: { + primary: 'id', + foreign: 'estado_id', + foreignTable: 'municipio' + } +}, 'filter'); // Return all cities cityApp.get('/', rqf.parse(), rqf.build(), (req, res, next) => { diff --git a/src/libs/routes/region.js b/src/libs/routes/region.js index b1076e64..5df65e72 100644 --- a/src/libs/routes/region.js +++ b/src/libs/routes/region.js @@ -36,6 +36,16 @@ rqf.addField({ field: 'id', table: '@' } +}).addValue({ + name: 'id_not', + table: '@', + tableField: 'id', + where: { + relation: '<>', + type: 'integer', + field: 'id', + table: '@' + } }).addField({ name: 'search', field: false, diff --git a/src/libs/routes/state.js b/src/libs/routes/state.js index 453ca6eb..c9830b20 100644 --- a/src/libs/routes/state.js +++ b/src/libs/routes/state.js @@ -53,6 +53,15 @@ rqf.addField({ type: 'integer', field: 'id' } +}).addValue({ + name: 'id_not', + table: 'estado', + tableField: 'id', + where: { + relation: '<>', + type: 'integer', + field: 'id' + } }).addValue({ name: 'region', table: 'regiao', -- GitLab