Skip to content

Instantly share code, notes, and snippets.

@hiendinhngoc
Last active March 8, 2019 03:48
Show Gist options
  • Save hiendinhngoc/8bbd57fc19500430382aa3d8670a07c1 to your computer and use it in GitHub Desktop.
Save hiendinhngoc/8bbd57fc19500430382aa3d8670a07c1 to your computer and use it in GitHub Desktop.
export csv file
require 'csv'
start = Date.new(Date.today.year, 1)
finish = Date.new(Date.today.year, 2).end_of_month
#campaigns = Campaign.includes(:transactions).where.not(:transactions => { :id => nil })
transactions = Transaction.joins(:campaign).where.not(campaign_id: nil).where(created_at: start..finish)
column_headers = ["Campaign", "Amount", "Date"]
csv_file = CSV.generate do |csv|
csv << column_headers
transactions.each do |transaction|
csv << [transaction.campaign.try(:headline), transaction.amount_cents, transaction.created_at.strftime("%d-%b-%Y")]
end
end
NotifyAdmin.export_influencer_email(user, csv_file).deliver_now
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment