Class: SpecialBonus

Inherits:
ApplicationRecord show all
Defined in:
app/models/special_bonus.rb

Overview

Dont forget to set the campaign type

Constant Summary collapse

CAMPAIGN_TYPE =
{
  special_restaurant_campaign: 1,
  special_days_campaign: 2,
  sign_up_based_campaign: 3,
  reservation_campaign: 4,
}.freeze

Instance Method Summary collapse

Methods inherited from ApplicationRecord

sync_carrierwave_url

Instance Method Details

#campaign_date_formatObject



63
64
65
# File 'app/models/special_bonus.rb', line 63

def campaign_date_format
  campaign_date.to_time.strftime("%d/%m/%Y") unless campaign_date.blank?
end

#is_restaurant_campaign?Boolean

Returns:

  • (Boolean)


47
48
49
# File 'app/models/special_bonus.rb', line 47

def is_restaurant_campaign?
  type == :special_restaurant_campaign
end

#is_sign_up_based_campaign?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'app/models/special_bonus.rb', line 55

def 
  type == :sign_up_based_campaign
end

#is_special_days_campaign?Boolean

Returns:

  • (Boolean)


51
52
53
# File 'app/models/special_bonus.rb', line 51

def is_special_days_campaign?
  type == :special_days_campaign
end

#reservation_campaign?Boolean

Returns:

  • (Boolean)


59
60
61
# File 'app/models/special_bonus.rb', line 59

def reservation_campaign?
  type == :reservation_campaign
end

#restaurant_campaign_reservationsObject



67
68
69
# File 'app/models/special_bonus.rb', line 67

def restaurant_campaign_reservations
  Reservation.where(restaurant_id: restaurant.id, date: campaign_date)
end

#typeObject



43
44
45
# File 'app/models/special_bonus.rb', line 43

def type
  CAMPAIGN_TYPE.key(campaign_type)
end