fix: dynamic query

This commit is contained in:
Sérgio Salgado 2021-07-23 04:27:15 +01:00 committed by Josh Harvey
parent 03fd19e0cf
commit 43ff04b2af

View file

@ -78,9 +78,9 @@ function getCustomersWithDiscounts (discounts) {
const idCardNumbersSql = _.map(pgp.as.text, idCardNumbers).join(',')
const hasPhoneNumbers = !_.isEmpty(phoneNumbers)
const hasIDNumbers = !_.isEmpty(phoneNumbers)
const hasIDNumbers = !_.isEmpty(idCardNumbers)
const sql = `SELECT * FROM customers WHERE ${hasPhoneNumbers && `phone IN ($1^)`} ${hasPhoneNumbers && hasIDNumbers && `OR`} ${hasIDNumbers && `id_card_data_number IN ($2^)`}`
const sql = `SELECT * FROM customers WHERE ${hasPhoneNumbers ? `phone IN ($1^)` : ``} ${hasPhoneNumbers && hasIDNumbers ? `OR` : ``} ${hasIDNumbers ? `id_card_data_number IN ($2^)` : ``}`
return db.any(sql, [phoneNumbersSql, idCardNumbersSql])
.then(res => _.map(it => it ? _.mapKeys(_.camelCase, it) : null, res))
}