Slide 19
Slide 19 text
module KPI!
module Summary!
class SalesReport!
def client!
@client ||= Mysql2::Client.new(!
host: Settings.kpi.database.host,!
database: Settings.kpi.database.xxxxxxx,!
username: config['username'],!
password: config['password']!
)!
end!
!
! ### தུ ####!
def collect!
sql = <<-__SQL__!
select *!
from (#লུ...) salse_reports!
where placed_at >= '#{start_at}'!
and placed_at < '#{end_at}'!
order by placed_at!
__SQL__!
client.query(sql)!
end!
!
def rows!
@rows ||= collect.map { |row| row.values }!
end!
!
def save!
spreadsheet = KPI::GoogleDrive::Collection.new.spreadsheet(@start_at)!
sheet = spreadsheet.worksheet(:sales_report, rows)!
sheet.clear!
sheet.save!
end!
end!
end!
end