json.data do json.array! @sale_reports do |d| json.id d.id json.staff d.staff.user.real_name json.client d.client json.amount d.amount json.content d.content.truncate(40) json.finish_rate "#{d.finish_rate}%" json.level1_score d.level1_score || 0 json.level2_score d.level2_score || 0 json.level3_score d.level3_score || 0 json.updated_at d.updated_at.to_s json.weekly d.weekly json.created_at d.created_at.to_s json.month d.month.strftime("%Y-%m") end end json.totalRow do sum = @sale_reports.inject(0) { |score, i| score + i.finish_rate} json.finish_rate ( @sale_reports.size > 0 ? (sum.to_f / @sale_reports.size).round(2).to_s : '0' ) + '%' end json.code 0 json.count @sale_reports.total_count