refactor: join in the DB

This commit is contained in:
siiky 2022-12-16 12:41:14 +00:00 committed by Rafael
parent a607868942
commit 4793b2a415

View file

@ -3,13 +3,12 @@ const _ = require('lodash/fp')
const db = require('./db') const db = require('./db')
const notifierQueries = require('./notifier/queries') const notifierQueries = require('./notifier/queries')
const getBlacklist = () => { const getBlacklist = () =>
const blacklistSql = `SELECT * FROM blacklist` db.any(
const messagesSql = `SELECT * FROM blacklist_messages` `SELECT blacklist.address AS address, blacklist_messages.content AS blacklistMessage
return Promise.all([db.any(blacklistSql), db.any(messagesSql)]) FROM blacklist JOIN blacklist_messages
.then(([blacklist, messages]) => Promise.all([_.map(_.mapKeys(_.camelCase), blacklist), _.map(_.mapKeys(_.camelCase), messages)])) ON blacklist.blacklist_message_id = blacklist_messages.id`
.then(([blacklist, messages]) => _.map(it => ({ ...it, blacklistMessage: _.find(ite => it.blacklistMessageId === ite.id, messages) }), blacklist)) )
}
const deleteFromBlacklist = address => { const deleteFromBlacklist = address => {
const sql = `DELETE FROM blacklist WHERE address = $1` const sql = `DELETE FROM blacklist WHERE address = $1`