diff --git a/app/services/repository_zip_export.rb b/app/services/repository_zip_export.rb index b7a2ff125..64138f261 100644 --- a/app/services/repository_zip_export.rb +++ b/app/services/repository_zip_export.rb @@ -23,6 +23,8 @@ module RepositoryZipExport I18n.t('repositories.table.archived_by') when -8 I18n.t('repositories.table.archived_on') + when 'relationship' + next else column = repository.repository_columns.find_by(id: c_id) column ? column.name : nil @@ -30,6 +32,11 @@ module RepositoryZipExport end csv_header << I18n.t('repositories.table.row_consumption') if add_consumption + if column_ids.include? 'relationship' + csv_header << I18n.t('repositories.table.parents') + csv_header << I18n.t('repositories.table.children') + end + CSV.generate do |csv| csv << csv_header rows.each do |row| @@ -50,6 +57,8 @@ module RepositoryZipExport row.archived? && row.archived_by.present? ? row.archived_by.full_name : '' when -8 row.archived? && row.archived_on.present? ? I18n.l(row.archived_on, format: :full) : '' + when 'relationship' + next else cell = row.repository_cells.find_by(repository_column_id: c_id) @@ -66,6 +75,11 @@ module RepositoryZipExport end csv_row << row.row_consumption(row.stock_consumption) if add_consumption + if column_ids.include? 'relationship' + csv_row << "\"#{row.parent_repository_rows.map(&:code).join("\;\s")}\"" + csv_row << "\"#{row.child_repository_rows.map(&:code).join("\;\s")}\"" + end + csv << csv_row end end diff --git a/config/locales/en.yml b/config/locales/en.yml index 293b70c52..054f2a928 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -2053,6 +2053,8 @@ en: archived_on: "Archived on" archived_by: "Archived by" relationship: "Relationship" + children: "Children" + parents: "Parents" row_consumption: "Consumed" enter_row_name: "Enter name" locked_item: "This is read-only item."