Sha256: ad281a612425e0bbcf7e86b7a21d1b6f2f25249ac4291ac1f1f41758fe4174fb

Contents?: true

Size: 971 Bytes

Versions: 2

Compression:

Stored size: 971 Bytes

Contents

module Comee
  module Core
    class SalesOrder < ApplicationRecord
      belongs_to :client
      has_many :sales_order_items

      enum :status, {draft: 0, confirmed: 1}

      validates :order_number, presence: true, uniqueness: true
      validates :order_date, :expected_delivery_date, :delivery_address, :invoice_address, :status, presence: true
      validates :payment_no_of_days,
        :payment_discount,
        :payment_penalty,
        presence: true,
        numericality: {greater_than_or_equal_to: 0, less_than_or_equal_to: 100}

      delegate(:name, to: :client, prefix: true)

      def self.ransackable_attributes(auth_object = nil)
        [
          "delivery_address",
          "expected_delivery_date",
          "invoice_address",
          "order_date",
          "order_number",
          "status",
          "client_id"
        ]
      end

      def self.ransackable_associations(auth_object = nil)
        []
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
comee_core-0.1.14 app/models/comee/core/sales_order.rb
comee_core-0.1.13 app/models/comee/core/sales_order.rb