lib/xeroizer/models/bank_transaction.rb in xeroizer-2.15.3 vs lib/xeroizer/models/bank_transaction.rb in xeroizer-2.15.5
- old
+ new
@@ -6,24 +6,35 @@
class BankTransactionModel < BaseModel
set_permissions :read
end
class BankTransaction < Base
+
+ BANK_TRANSACTION_STATUS = {
+ 'ACTIVE' => 'Active bank transactions',
+ 'DELETED' => 'Deleted bank transactions',
+ } unless defined?(BANK_TRANSACTION_STATUS)
+ BANK_TRANSACTION_STATUSES = BANK_TRANSACTION_STATUS.keys.sort
+
+
def initialize(parent)
super parent
self.line_amount_types = "Exclusive"
end
set_primary_key :bank_transaction_id
+ list_contains_summary_only true
+
string :type
date :date
- date :updated_date_utc, :api_name => "UpdatedDateUTC"
- date :fully_paid_on_date
- string :reference
- string :bank_transaction_id, :api_name => "BankTransactionID"
- boolean :is_reconciled
+ datetime_utc :updated_date_utc, :api_name => "UpdatedDateUTC"
+ date :fully_paid_on_date
+ string :reference
+ string :bank_transaction_id, :api_name => "BankTransactionID"
+ boolean :is_reconciled
+ string :status
alias_method :reconciled?, :is_reconciled
belongs_to :contact, :model_name => 'Contact'
string :line_amount_types
@@ -34,9 +45,10 @@
:in => Xeroizer::Record::LINE_AMOUNT_TYPES, :allow_blanks => false
validates_inclusion_of :type,
:in => %w{SPEND RECEIVE}, :allow_blanks => false,
:message => "Invalid type. Expected either SPEND or RECEIVE."
+ validates_inclusion_of :status, :in => BANK_TRANSACTION_STATUSES, :unless => :new_record?
validates_presence_of :contact, :bank_account, :allow_blanks => false
validates :line_items, :message => "Invalid line items. Must supply at least one." do
self.line_items.size > 0