scinote-web/app/services/reports/docx/repository_helper.rb
artoscinote 5f9c04844f
Added prefixed IDs to repository rows (items) [SCI-5909] (#3441)
* Added prefixed IDs to repository rows (items) [SCI-5909]

* Fix prefixed id queries to work with joins, use subquery in repository search [SCI-5909]

* Fixed accessing repository_row parent code [SCI-5909]

* Better handling of repository_row code display [SCI-5909]

* Fix index warning for id prefixed models issue setting up project [SCI-5909]
2021-07-19 14:23:36 +02:00

32 lines
868 B
Ruby

# frozen_string_literal: true
module Reports::Docx::RepositoryHelper
include InputSanitizeHelper
def prepare_row_columns(repository_data)
result = [repository_data[:headers]]
repository_data[:rows].each do |record|
row = []
row.push(record.code)
row.push(escape_input(record.archived ? "#{record.name} [#{I18n.t('general.archived')}]" : record.name))
row.push(I18n.l(record.created_at, format: :full))
row.push(escape_input(record.created_by.full_name))
cell_values = {}
custom_cells = record.repository_cells
custom_cells.each do |cell|
cell_values[cell.repository_column_id] = cell.value.formatted
end
repository_data[:custom_columns].each do |column_id|
value = cell_values[column_id]
row.push(value)
end
result.push(row)
end
result
end
end