Module: GrapeListing::Spreadsheet

Included in:
GrapeListingService
Defined in:
lib/listing_service/spreadsheet.rb

Constant Summary collapse

EXCLUDED_COLUMNS =
i[
  created_at
  updated_at
  deleted_at
  global_id
].freeze

Instance Method Summary collapse

Instance Method Details

#spreadsheetObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/listing_service/spreadsheet.rb', line 13

def spreadsheet
  # поиск и фильтрация
  search

  # коллекция записей ActiveRecord для формирования эл. таблицы
  records = @objects || @model.preload(@preload).merge(@scopes)

  # ограничение записей
  records = records.order(:id).offset(@offset).limit(@limit)

  # сериализация записей и превращение в объекты
  objects = serialize(records)

  # формирования файла эл. таблицы
  generate_spreadsheet(objects)
end