Class: SpreeCmCommissioner::Imports::Contestants::Create

Inherits:
Object
  • Object
show all
Defined in:
app/services/spree_cm_commissioner/imports/contestants/create.rb

Constant Summary collapse

IMPORTABLE_COLUMNS =
%w[
  contestant_number name gender category status origin age bio
  facebook instagram twitter linkedin youtube tiktok telegram
].freeze
MAX_ROWS =
50
%w[facebook instagram twitter linkedin youtube tiktok telegram].freeze

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(import_id:) ⇒ Create

Returns a new instance of Create.



17
18
19
20
# File 'app/services/spree_cm_commissioner/imports/contestants/create.rb', line 17

def initialize(import_id:)
  @import_id = import_id
  @fail_row_numbers = []
end

Instance Attribute Details

#fail_row_numbersObject (readonly)

Returns the value of attribute fail_row_numbers.



15
16
17
# File 'app/services/spree_cm_commissioner/imports/contestants/create.rb', line 15

def fail_row_numbers
  @fail_row_numbers
end

#import_idObject (readonly)

Returns the value of attribute import_id.



15
16
17
# File 'app/services/spree_cm_commissioner/imports/contestants/create.rb', line 15

def import_id
  @import_id
end

Instance Method Details

#callObject



22
23
24
25
26
27
28
29
30
# File 'app/services/spree_cm_commissioner/imports/contestants/create.rb', line 22

def call
  update_import_status_when_start
  import_contestants
  save_fail_rows
  update_import_status_when_finish(:done)
rescue StandardError => e
  update_import_status_when_finish(:failed)
  raise e
end