Table name: bank_accounts
id :integer not null, primary key user_id :integer name_on_account :string(255) routing_number :string(255) account_number :string(255) account_type :string(255) uri :string(255) active :boolean created_at :datetime updated_at :datetime university_id :integer
passing a/c types
To add/update account details to balance payments.
# File app/models/bank_account.rb, line 35 def add_or_update_to_balanced_payments if self.new_record? begin balanced_student = user.balanced_student account = Balanced::BankAccount.new( account_number: self.account_number, type: self.account_type.try(:upcase), name: self.name_on_account, routing_number: self.routing_number ).save self.uri = account.href self.account_number = account.account_number rescue => e logger.info e self.errors.add(:base, 'Invalid Account Details.') return false end end end
To find account for balanced payment.
# File app/models/bank_account.rb, line 75 def balanced_bank_account if uri? Balanced::Card.find(uri) end end
To remove account from balance payments.
# File app/models/bank_account.rb, line 63 def remove_from_balanced_payments return false if active? or self.class.count == 1 begin account = Balanced::BankAccount.find(uri) account.unstore rescue => e logger.info e return false end end
if active than deactivate bank account
# File app/models/bank_account.rb, line 56 def setup_bank_account_state if active? self.user.bank_accounts.where.not(id: id).update_all(active: false) end end