32 lines
815 B
Ruby
32 lines
815 B
Ruby
class OrderItem < ApplicationRecord
|
|
#Associations
|
|
belongs_to :order
|
|
|
|
#Validation
|
|
validates_presence_of :item_code, :item_name, :qty
|
|
validates :qty, numericality: { :greater_than => 0 }
|
|
validates_associated :orders
|
|
|
|
#This Method - handle how items is added into order
|
|
# order_item : {
|
|
# order_item_code : "",
|
|
# item_instance_code : "",
|
|
# quantity : 0,
|
|
# option_values : [],
|
|
# sub_order_items : [],
|
|
# }
|
|
def processs_item (item, item_order_by)
|
|
OrderItem.new do |oitem|
|
|
oitem.item_code = item.item_code
|
|
oitem.item_name = item.name
|
|
oitem.qty = item.qty
|
|
oitem.option = item.option
|
|
oitem.variants = item.variants
|
|
oitem.set_order_items = item.sub_order_items
|
|
oitem.item_order_by = item_order_by
|
|
|
|
end
|
|
|
|
end
|
|
end
|