Class: Cetustek::Models::InvoiceItem
- Inherits:
-
Object
- Object
- Cetustek::Models::InvoiceItem
- Defined in:
- lib/cetustek/models/invoice_data.rb
Constant Summary collapse
- DTYPE_MAP =
Per-item 稅別註記 (DType) used for mixed-tax invoices (TaxType == 9).
{ taxable: '', # 應稅商品 -> 空白 zero_rate: 'TZ', # 零稅率商品 tax_free: 'TN' # 免稅商品 }.freeze
Instance Attribute Summary collapse
-
#code ⇒ Object
readonly
Returns the value of attribute code.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#quantity ⇒ Object
readonly
Returns the value of attribute quantity.
-
#tax_type ⇒ Object
readonly
Returns the value of attribute tax_type.
-
#unit_price ⇒ Object
readonly
Returns the value of attribute unit_price.
Instance Method Summary collapse
-
#d_type ⇒ Object
Returns the DType code: ”, ‘TZ’ or ‘TN’.
-
#initialize(attributes = {}) ⇒ InvoiceItem
constructor
A new instance of InvoiceItem.
Constructor Details
#initialize(attributes = {}) ⇒ InvoiceItem
Returns a new instance of InvoiceItem.
58 59 60 61 62 63 64 |
# File 'lib/cetustek/models/invoice_data.rb', line 58 def initialize(attributes = {}) @code = attributes[:code] @name = attributes[:name] @quantity = attributes[:quantity] @unit_price = attributes[:unit_price] @tax_type = attributes[:tax_type] || :taxable end |
Instance Attribute Details
#code ⇒ Object (readonly)
Returns the value of attribute code.
56 57 58 |
# File 'lib/cetustek/models/invoice_data.rb', line 56 def code @code end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
56 57 58 |
# File 'lib/cetustek/models/invoice_data.rb', line 56 def name @name end |
#quantity ⇒ Object (readonly)
Returns the value of attribute quantity.
56 57 58 |
# File 'lib/cetustek/models/invoice_data.rb', line 56 def quantity @quantity end |
#tax_type ⇒ Object (readonly)
Returns the value of attribute tax_type.
56 57 58 |
# File 'lib/cetustek/models/invoice_data.rb', line 56 def tax_type @tax_type end |
#unit_price ⇒ Object (readonly)
Returns the value of attribute unit_price.
56 57 58 |
# File 'lib/cetustek/models/invoice_data.rb', line 56 def unit_price @unit_price end |
Instance Method Details
#d_type ⇒ Object
Returns the DType code: ”, ‘TZ’ or ‘TN’. Accepts the friendly symbols above or a raw code string.
68 69 70 |
# File 'lib/cetustek/models/invoice_data.rb', line 68 def d_type DTYPE_MAP.fetch(@tax_type) { @tax_type.to_s } end |