Skip to content

Instantly share code, notes, and snippets.

@weslleyanjos
Created April 24, 2017 12:38
Show Gist options
  • Save weslleyanjos/47b8d0dfbf736f160942a0dbaef27c8d to your computer and use it in GitHub Desktop.
Save weslleyanjos/47b8d0dfbf736f160942a0dbaef27c8d to your computer and use it in GitHub Desktop.

Esse snippets é para gerar um CSV com todas as avaliações da loja.

require 'csv'

store_id = 857
num_months = 8
store_reviews = StoreReview.includes(:user, :sale).
           where(store_id: store_id).
           where("created_at >= ?", Date.today - num_months.months).
           where("text IS NOT NULL")


CSV.open("/mnt/trustvox-production/current/tmp/store_reviews_loja_#{store_id}.csv", "wb") do |csv|

  
  csv << [ "Data da opinião", "Texto", "Nota", "Categoria", 
           "Nome do cliente", "Email do cliente", "ID do pedido", "Data formatada"]
  store_reviews.find_each do |store_review|
    user = store_review.user
    sale = store_review.sale

    if store_review.user && store_review.sale
      

      csv << [ store_review.created_at.strftime("%F"),  store_review.text, store_review.rate, "",
              "#{user.decorate.name}",  user.email, sale.order_id, store_review.created_at.strftime("%Y-%m")]

    end
  end
end
scp -i ~/.ssh/google trustv@169.57.165.216:/mnt/trustvox-production/current/tmp/store_reviews_loja_857.csv store_reviews_loja_857.csv
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment