Sha256: fa364df337f499d9655cae82486a3df30c5c552452184ebe82a7643ba6d8b71c

Contents?: true

Size: 876 Bytes

Versions: 3

Compression:

Stored size: 876 Bytes

Contents

##
# Order 是订单。

class Unidom::Order::Order < Unidom::Order::ApplicationRecord

  self.table_name = 'unidom_orders'

  include Unidom::Common::Concerns::ModelExtension
  include Unidom::Order::Concerns::AsAdjusted

  validates :number,           presence: true, length:       { is: self.columns_hash['number'].limit }
  validates :purchase_amount,  presence: true, numericality: { less_than: 1_000_000_000, greater_than: 0 }
  validates :aggregate_amount, presence: true, numericality: { less_than: 1_000_000_000, greater_than: 0 }

  belongs_to :placer, polymorphic: true
  belongs_to :taker,  polymorphic: true

  has_many :items, class_name: 'Unidom::Order::OrderItem'

  scope :placed_by, ->(placer) { where placer: placer }
  scope :taken_by,  ->(taker)  { where taker:  taker  }

end unless Unidom::Common::Neglection.namespace_neglected? 'Unidom::Order::Order'

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
unidom-order-1.5.3 app/models/unidom/order/order.rb
unidom-order-1.5.2 app/models/unidom/order/order.rb
unidom-order-1.5.1 app/models/unidom/order/order.rb