2015-01-18 02:04:57 +01:00
|
|
|
# Foodsoft-file import
|
|
|
|
class FoodsoftFile
|
2009-01-06 11:49:19 +01:00
|
|
|
# parses a string from a foodsoft-file
|
|
|
|
# returns two arrays with articles and outlisted_articles
|
|
|
|
# the parsed article is a simple hash
|
2015-01-18 02:04:57 +01:00
|
|
|
def self.parse(file, options = {})
|
2018-09-14 20:17:46 +02:00
|
|
|
SpreadsheetFile.parse file, options do |row, row_index|
|
|
|
|
next if row[2].blank?
|
2015-01-18 02:04:57 +01:00
|
|
|
|
2023-05-12 13:01:12 +02:00
|
|
|
article = { order_number: row[1],
|
|
|
|
name: row[2],
|
|
|
|
note: row[3],
|
|
|
|
manufacturer: row[4],
|
|
|
|
origin: row[5],
|
|
|
|
unit: row[6],
|
|
|
|
price: row[7],
|
|
|
|
tax: row[8],
|
|
|
|
deposit: (row[9].nil? ? '0' : row[9]),
|
|
|
|
unit_quantity: row[10],
|
|
|
|
article_category: row[13] }
|
2018-09-14 20:17:46 +02:00
|
|
|
status = row[0] && row[0].strip.downcase == 'x' ? :outlisted : nil
|
|
|
|
yield status, article, row_index
|
2009-01-06 11:49:19 +01:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|