From 6b25759715641824c1e8dbc9d4eabdf711eaa559 Mon Sep 17 00:00:00 2001 From: Martin Artnik Date: Wed, 31 Aug 2022 09:06:16 +0200 Subject: [PATCH] Fix import issues with date formatting [SCI-7111] --- app/services/spreadsheet_parser.rb | 4 +++- app/utilities/repository_import_parser/importer.rb | 6 +++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/app/services/spreadsheet_parser.rb b/app/services/spreadsheet_parser.rb index aedd01b0a..3be76b773 100644 --- a/app/services/spreadsheet_parser.rb +++ b/app/services/spreadsheet_parser.rb @@ -51,11 +51,13 @@ class SpreadsheetParser return header, columns end - def self.parse_row(row, sheet, header: false) + def self.parse_row(row, sheet, header: false, date_format: nil) if sheet.is_a?(Roo::Excelx) && !header row.map do |cell| if cell.is_a?(Roo::Excelx::Cell::Number) && cell.format == 'General' cell&.value&.to_d + elsif date_format && cell&.value.is_a?(Date) + cell&.value&.strftime(date_format) else cell&.formatted_value end diff --git a/app/utilities/repository_import_parser/importer.rb b/app/utilities/repository_import_parser/importer.rb index 84fb1a1a0..b95d99be3 100644 --- a/app/utilities/repository_import_parser/importer.rb +++ b/app/utilities/repository_import_parser/importer.rb @@ -72,7 +72,11 @@ module RepositoryImportParser @total_new_rows += 1 new_full_row = {} - SpreadsheetParser.parse_row(row, @sheet).each_with_index do |value, index| + SpreadsheetParser.parse_row( + row, + @sheet, + date_format: @user.settings['date_format'] + ).each_with_index do |value, index| if index == @name_index new_row = RepositoryRow.new(name: try_decimal_to_string(value),