From ed68ee893ae7bb3540f0731c3ccf21a26bc6ac1f Mon Sep 17 00:00:00 2001 From: Ran Guin Date: Wed, 28 Jul 2021 22:02:24 -0700 Subject: add apiParse for generating common search conditions --- scripts/apiParse.js | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 scripts/apiParse.js (limited to 'scripts/apiParse.js') diff --git a/scripts/apiParse.js b/scripts/apiParse.js new file mode 100644 index 00000000..427f34cd --- /dev/null +++ b/scripts/apiParse.js @@ -0,0 +1,42 @@ +var debug = require('debug')('debug') + +const addUserSearch = async function (input) { + debug('add User Search') + var {search, starts_with, contains} = input + + // if (since) cmd = cmd.havingRaw('invoices + payments + deposits + orders > ?', [0]) + + if (search) { + if (starts_with) { + search = search + '%' + } else if (contains) { + search = '%' + search + '%' + } + + var condition = "(Users.email like '" + search + " OR Users.username like '" + search + "'" + + debug('condition: ' + condition) + return condition + } else { + return '' + } +} + +const addTimeSearch = async function (input, field) { + debug('add time Search') + if (!field) { field = 'updatedAt' } + + var {since} = input + if (since) { + + condition = "WHERE " + field + " >= " + since + debug('condition: ' + condition) + + return condition + } else { + return '' + } +} + +module.exports = {addUserSearch: addUserSearch, addTimeSearch: addTimeSearch} + -- cgit v1.2.3