Nicolas Bally 429325823c suite
2019-06-02 18:48:14 +02:00

56 lines
1.1 KiB
Ruby

class Renew < ActiveRecord::Base
belongs_to :sheet
validates :sheet_number, :presence => true
validates :email, :presence => true
validates :payment_type_id, :presence => true
validates :join_type, :presence => true
before_validation do
self.payment_type_id = 3
if self.join_type == 1
self.price = 10.0
elsif self.join_type == 2
self.price = 15.0
else
self.price = nil
end
if self.sheet_number
self.sheet = Sheet.where(:sheet_number => self.sheet_number).first
if !self.sheet
errors.add(:sheet_number, "Numéro d'adhérent invalide")
end
end
end
YEAR = 2019
def done_return
if self.ok and !self.return_done
sheet_year = self.sheet.sheet_years.new(:year => Renew::YEAR, :join_type => self.join_type, :paid_at => Time.now, :amount => self.price, :payment_type => self.payment_type_id, )
if sheet_year.save
self.return_done = true
self.save
else
false
end
end
end
end