Sha256: 1a27059d86895a8e32eb0095ef2cbc3e34fdb3f061e48afcae56be29ce692839
Contents?: true
Size: 829 Bytes
Versions: 70
Compression:
Stored size: 829 Bytes
Contents
module Xsys module Model class SaleItem def self.attr_list [:sale_code, :position, :transaction_number, :shop_code, :product_id, :quantity, :taxed_unit_price, :vat_unit_price, :total_unit_price, :taxed_amount, :vat_amount, :total_amount, :vat_rate] end attr_reader *attr_list def initialize(attributes={}) decimal_fields = ['taxed_unit_price', 'vat_unit_price', 'total_unit_price', 'taxed_amount', 'vat_amount', 'total_amount', 'vat_rate'] attributes.each do |k, v| if decimal_fields.include?(k.to_s) self.send("#{k}=", BigDecimal.new(v)) unless v.nil? else self.send("#{k}=", v) if self.respond_to?(k) end end end private attr_writer *attr_list end end end
Version data entries
70 entries across 70 versions & 1 rubygems