Class: XeroGateway::Account
- Inherits:
-
Object
- Object
- XeroGateway::Account
- Defined in:
- lib/xero_gateway/account.rb
Constant Summary collapse
- TYPE =
{ 'CURRENT' => '', 'FIXED' => '', 'PREPAYMENT' => '', 'EQUITY' => '', 'DEPRECIATN' => '', 'DIRECTCOSTS' => '', 'EXPENSE' => '', 'OVERHEADS' => '', 'CURRLIAB' => '', 'LIABILITY' => '', 'TERMLIAB' => '', 'OTHERINCOME' => '', 'REVENUE' => '', 'SALES' => '' }
- ACCOUNT_CLASS =
{ 'ASSET' => '', 'EQUITY' => '', 'EXPENSE' => '', 'LIABILITY' => '', 'REVENUE' => '', }
- TAX_TYPE =
{ 'NONE' => 'No GST', 'EXEMPTINPUT' => 'VAT on expenses exempt from VAT (UK only)', 'INPUT' => 'GST on expenses', 'SRINPUT' => 'VAT on expenses', 'ZERORATEDINPUT' => 'Expense purchased from overseas (UK only)', 'RRINPUT' => 'Reduced rate VAT on expenses (UK Only)', 'EXEMPTOUTPUT' => 'VAT on sales exempt from VAT (UK only)', 'ECZROUTPUT' => 'EC Zero-rated output', 'OUTPUT' => 'OUTPUT (old rate)', 'OUTPUT2' => 'OUTPUT2', 'SROUTPUT' => 'SROUTPUT', 'ZERORATEDOUTPUT' => 'Sales made from overseas (UK only)', 'RROUTPUT' => 'Reduced rate VAT on sales (UK Only)', 'ZERORATED' => 'Zero-rated supplies/sales from overseas (NZ Only)' }
Instance Attribute Summary collapse
-
#account_class ⇒ Object
Returns the value of attribute account_class.
-
#account_id ⇒ Object
Returns the value of attribute account_id.
-
#code ⇒ Object
Returns the value of attribute code.
-
#currency_code ⇒ Object
Returns the value of attribute currency_code.
-
#description ⇒ Object
Returns the value of attribute description.
-
#enable_payments_to_account ⇒ Object
Returns the value of attribute enable_payments_to_account.
-
#name ⇒ Object
Returns the value of attribute name.
-
#system_account ⇒ Object
Returns the value of attribute system_account.
-
#tax_type ⇒ Object
Returns the value of attribute tax_type.
-
#type ⇒ Object
Returns the value of attribute type.
Class Method Summary collapse
Instance Method Summary collapse
- #==(other) ⇒ Object
-
#initialize(params = {}) ⇒ Account
constructor
A new instance of Account.
- #to_xml(b = Builder::XmlMarkup.new, options = {}) ⇒ Object
Constructor Details
#initialize(params = {}) ⇒ Account
Returns a new instance of Account.
48 49 50 51 52 |
# File 'lib/xero_gateway/account.rb', line 48 def initialize(params = {}) params.each do |k,v| self.send("#{k}=", v) end end |
Instance Attribute Details
#account_class ⇒ Object
Returns the value of attribute account_class.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def account_class @account_class end |
#account_id ⇒ Object
Returns the value of attribute account_id.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def account_id @account_id end |
#code ⇒ Object
Returns the value of attribute code.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def code @code end |
#currency_code ⇒ Object
Returns the value of attribute currency_code.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def currency_code @currency_code end |
#description ⇒ Object
Returns the value of attribute description.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def description @description end |
#enable_payments_to_account ⇒ Object
Returns the value of attribute enable_payments_to_account.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def enable_payments_to_account @enable_payments_to_account end |
#name ⇒ Object
Returns the value of attribute name.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def name @name end |
#system_account ⇒ Object
Returns the value of attribute system_account.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def system_account @system_account end |
#tax_type ⇒ Object
Returns the value of attribute tax_type.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def tax_type @tax_type end |
#type ⇒ Object
Returns the value of attribute type.
46 47 48 |
# File 'lib/xero_gateway/account.rb', line 46 def type @type end |
Class Method Details
.from_xml(account_element) ⇒ Object
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/xero_gateway/account.rb', line 75 def self.from_xml(account_element) account = Account.new account_element.children.each do |element| case(element.name) when "AccountID" then account.account_id = element.text when "Code" then account.code = element.text when "Name" then account.name = element.text when "Type" then account.type = element.text when "Class" then account.account_class = element.text when "TaxType" then account.tax_type = element.text when "Description" then account.description = element.text when "SystemAccount" then account.system_account = element.text when "EnablePaymentsToAccount" then account.enable_payments_to_account = (element.text == 'true') when "CurrencyCode" then account.currency_code = element.text end end account end |
Instance Method Details
#==(other) ⇒ Object
54 55 56 57 58 59 |
# File 'lib/xero_gateway/account.rb', line 54 def ==(other) [:account_id, :code, :name, :type, :account_class, :tax_type, :description, :system_account, :enable_payments_to_account].each do |field| return false if send(field) != other.send(field) end return true end |
#to_xml(b = Builder::XmlMarkup.new, options = {}) ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/xero_gateway/account.rb', line 61 def to_xml(b = Builder::XmlMarkup.new, ={}) b.tag!([:name] ? [:name] : 'Account') { b.AccountID self.account_id b.Code self.code b.Name self.name b.Type self.type b.TaxType self.tax_type b.Description self.description b.SystemAccount self.system_account unless self.system_account.nil? b.EnablePaymentsToAccount self.enable_payments_to_account b.CurrencyCode currency_code if currency_code } end |