UNPKG

@speakr/speakr-module-services

Version:
88 lines (67 loc) 1.61 kB
"use strict"; const db = require('../../db/'); module.exports = { index, byId, byIdHash, byCampaignIdHash, byCampaignId }; function index(options) { } function byId(options) { let where = { id: options.req.params.id }; return db.contacts.findOne({where}) .then((contacts) => { if(!!contacts) { options.contacts = contacts; return Promise.resolve(options); } }).catch((err) => { return Promise.reject(err) }); } function byIdHash(options) { let where = { id_hash: options.req.params.id_hash }; return db.contacts.findOne({where}) .then((contacts) => { if(!!contacts) { options.contacts = contacts; return Promise.resolve(options); } }).catch((err) => { return Promise.reject(err) }); } function byCampaignIdHash(options) { let where = { id_hash: options.req.params.id_hash }; return db.campaigns.findOne({where, include: [db.contacts]}) .then((campaigns) => { if(!!campaigns) { options.contacts = campaigns.contacts; return Promise.resolve(options); } }).catch((err) => { return Promise.reject(err) }); } function byCampaignId(options) { let where = { id: options.req.params.campaign_id }; return db.campaigns.findOne({where, include: [db.point_of_contacts]}) .then((campaigns) => { if(!!campaigns) { options.point_of_contacts = campaigns.point_of_contacts; return Promise.resolve(options); } }).catch((err) => { return Promise.reject(err) }); }