Class: SolidusImportProducts::Import
- Inherits:
-
Object
- Object
- SolidusImportProducts::Import
- Defined in:
- app/services/solidus_import_products/import.rb
Instance Attribute Summary collapse
-
#logger ⇒ Object
Returns the value of attribute logger.
-
#product_imports ⇒ Object
Returns the value of attribute product_imports.
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(args = { product_imports: nil }) ⇒ Import
constructor
A new instance of Import.
Constructor Details
#initialize(args = { product_imports: nil }) ⇒ Import
Returns a new instance of Import.
5 6 7 8 |
# File 'app/services/solidus_import_products/import.rb', line 5 def initialize(args = { product_imports: nil }) self.product_imports = args[:product_imports] self.logger = SolidusImportProducts::Logger.instance end |
Instance Attribute Details
#logger ⇒ Object
Returns the value of attribute logger.
3 4 5 |
# File 'app/services/solidus_import_products/import.rb', line 3 def logger @logger end |
#product_imports ⇒ Object
Returns the value of attribute product_imports.
3 4 5 |
# File 'app/services/solidus_import_products/import.rb', line 3 def product_imports @product_imports end |
Class Method Details
.call(options = {}) ⇒ Object
10 11 12 |
# File 'app/services/solidus_import_products/import.rb', line 10 def self.call( = {}) new().call end |
Instance Method Details
#call ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'app/services/solidus_import_products/import.rb', line 14 def call skus_of_products_before_import = Spree::Product.all.map(&:sku) parser = product_imports.parse col = parser.column_mappings product_imports.start ActiveRecord::Base.transaction do parser.data_rows.each do |row| SolidusImportProducts::ProcessRow.call( parser: parser, product_imports: product_imports, row: row, col: col, skus_of_products_before_import: skus_of_products_before_import ) end end product_imports.complete rescue SolidusImportProducts::Exception::Base => e product_imports.failure! raise e end |