Class: Workarea::Admin::CodeListViewModel

Inherits:
ApplicationViewModel
  • Object
show all
Defined in:
app/view_models/workarea/admin/code_list_view_model.rb

Instance Method Summary collapse

Instance Method Details

#last_used_atObject



16
17
18
# File 'app/view_models/workarea/admin/code_list_view_model.rb', line 16

def last_used_at
  @last_used_at ||= model.promo_codes.order(used_at: :desc).first.used_at
end

#promo_codesObject



4
5
6
# File 'app/view_models/workarea/admin/code_list_view_model.rb', line 4

def promo_codes
  @promo_codes ||= model.promo_codes.page(options[:page])
end

#timelineObject



20
21
22
# File 'app/view_models/workarea/admin/code_list_view_model.rb', line 20

def timeline
  @timeline ||= TimelineViewModel.new(model)
end

#unused_promo_codesObject



8
9
10
# File 'app/view_models/workarea/admin/code_list_view_model.rb', line 8

def unused_promo_codes
  @unused_promo_codes ||= model.promo_codes.unused.to_a
end

#used_countObject



12
13
14
# File 'app/view_models/workarea/admin/code_list_view_model.rb', line 12

def used_count
  model.count - unused_promo_codes.count
end