Sha256: fbb920a835258baac6c44f6c3b3ab128a85b617178b4824464e8447a4a4a8aaf
Contents?: true
Size: 1.01 KB
Versions: 2
Compression:
Stored size: 1.01 KB
Contents
module RightnowOms class Order < ActiveRecord::Base REQUIRED_ATTRS = %W( province city district neighborhood room receiver payment_mode order_items user_id ) has_many :order_items REQUIRED_ATTRS.each do |attr| validates attr, presence: true end validate :validates_mobile_and_tel def order_no @generator ||= OrderNoGenerator.new(self) @generator.generate end def delivery_address "#{province}#{city}#{district}#{street}#{neighborhood}#{room}" end class << self def new_with_items(base, items) Order.new(base) do |o| items.each do |i| children = i.delete(:children) oi = o.order_items.build(i.merge(order: o)) children.each { |c| oi.children.build(c.merge(order: o)) } if children end end end end private def validates_mobile_and_tel errors[:base] = 'One of mobile and tel must be present.' unless self.mobile || self.tel end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rightnow_oms-0.1.4 | app/models/rightnow_oms/order.rb |
rightnow_oms-0.1.3 | app/models/rightnow_oms/order.rb |