class Seatsio::EventReportsClient

Client for fetching event reports

def by_category_key(event_key, category_key = nil)

def by_category_key(event_key, category_key = nil)
  fetch_report('byCategoryKey', event_key, category_key)
end

def by_category_label(event_key, category_label = nil)

def by_category_label(event_key, category_label = nil)
  fetch_report('byCategoryLabel', event_key, category_label)
end

def by_channel(event_key, channelKey = nil)

def by_channel(event_key, channelKey = nil)
  fetch_report('byChannel', event_key, channelKey)
end

def by_label(event_key, label = nil)

def by_label(event_key, label = nil)
  fetch_report('byLabel', event_key, label)
end

def by_object_type(event_key, object_type = nil)

def by_object_type(event_key, object_type = nil)
  fetch_report('byObjectType', event_key, object_type)
end

def by_order_id(event_key, order_id = nil)

def by_order_id(event_key, order_id = nil)
  fetch_report('byOrderId', event_key, order_id)
end

def by_section(event_key, section = nil)

def by_section(event_key, section = nil)
  fetch_report('bySection', event_key, section)
end

def by_selectability(event_key, selectability = nil)

def by_selectability(event_key, selectability = nil)
  fetch_report('bySelectability', event_key, selectability)
end

def by_status(event_key, status = nil)

def by_status(event_key, status = nil)
  fetch_report('byStatus', event_key, status)
end

def deep_summary_by_category_key(event_key)

def deep_summary_by_category_key(event_key)
  fetch_deep_summary_report('byCategoryKey', event_key)
end

def deep_summary_by_category_label(event_key)

def deep_summary_by_category_label(event_key)
  fetch_deep_summary_report('byCategoryLabel', event_key)
end

def deep_summary_by_channel(event_key)

def deep_summary_by_channel(event_key)
  fetch_deep_summary_report('byChannel', event_key)
end

def deep_summary_by_object_type(event_key)

def deep_summary_by_object_type(event_key)
  fetch_deep_summary_report('byObjectType', event_key)
end

def deep_summary_by_section(event_key)

def deep_summary_by_section(event_key)
  fetch_deep_summary_report('bySection', event_key)
end

def deep_summary_by_selectability(event_key)

def deep_summary_by_selectability(event_key)
  fetch_deep_summary_report('bySelectability', event_key)
end

def deep_summary_by_status(event_key)

def deep_summary_by_status(event_key)
  fetch_deep_summary_report('byStatus', event_key)
end

def fetch_deep_summary_report(report_type, event_key)

def fetch_deep_summary_report(report_type, event_key)
  url = "reports/events/#{event_key}/#{report_type}/summary/deep"
  @http_client.get(url)
end

def fetch_report(report_type, event_key, report_filter = nil)

def fetch_report(report_type, event_key, report_filter = nil)
  if report_filter
    url = "reports/events/#{event_key}/#{report_type}/#{report_filter}"
    body = @http_client.get(url)
    EventReport.new(body[report_filter])
  else
    url = "reports/events/#{event_key}/#{report_type}"
    body = @http_client.get(url)
    EventReport.new(body)
  end
end

def fetch_summary_report(report_type, event_key)

def fetch_summary_report(report_type, event_key)
  url = "reports/events/#{event_key}/#{report_type}/summary"
  @http_client.get(url)
end

def initialize(http_client)

def initialize(http_client)
  @http_client = http_client
end

def summary_by_category_key(event_key)

def summary_by_category_key(event_key)
  fetch_summary_report('byCategoryKey', event_key)
end

def summary_by_category_label(event_key)

def summary_by_category_label(event_key)
  fetch_summary_report('byCategoryLabel', event_key)
end

def summary_by_channel(event_key)

def summary_by_channel(event_key)
  fetch_summary_report('byChannel', event_key)
end

def summary_by_object_type(event_key)

def summary_by_object_type(event_key)
  fetch_summary_report('byObjectType', event_key)
end

def summary_by_section(event_key)

def summary_by_section(event_key)
  fetch_summary_report('bySection', event_key)
end

def summary_by_selectability(event_key)

def summary_by_selectability(event_key)
  fetch_summary_report('bySelectability', event_key)
end

def summary_by_status(event_key)

def summary_by_status(event_key)
  fetch_summary_report('byStatus', event_key)
end