get_campaigns_by_date: Don't lookup transactions if there are none.

This commit is contained in:
Brian Simpson
2013-12-11 20:35:48 -05:00
parent 4a6103963e
commit 1c8fa745bc

View File

@@ -111,8 +111,12 @@ def get_campaigns_by_date(srs, start, end, ignore=None):
campaigns = PromoCampaign._byID(campaign_ids, data=True, return_dict=False)
transaction_ids = {camp.trans_id for camp in campaigns
if camp.trans_id != NO_TRANSACTION}
transactions = Bid.query().filter(Bid.transaction.in_(transaction_ids))
transaction_by_id = {bid.transaction: bid for bid in transactions}
if transaction_ids:
transactions = Bid.query().filter(Bid.transaction.in_(transaction_ids))
transaction_by_id = {bid.transaction: bid for bid in transactions}
else:
transaction_by_id = {}
ret = {sr.name: defaultdict(list) for sr in srs}
for camp in campaigns: