class Pca::ItemDaAcao < ApplicationRecord
  include TradutorConcern
  has_paper_trail

  belongs_to :acao, class_name: 'Pca::Acao', foreign_key: 'acao_id', inverse_of: :itens_da_acao
  belongs_to :item, class_name: 'Base::Item', foreign_key: 'item_id'
  self.table_name = 'pca_itens_da_acao'

  validates_presence_of :item_id, :acao_id

  validates_uniqueness_of :item_id, scope: :acao_id, if: Proc.new{ self.persisted? }

  validates :quantidade, numericality: { greater_than_or_equal_to: 0 }
  validates :valor, numericality: { greater_than_or_equal_to: 0 }

  def valor_total
  self.quantidade * self.valor
  end

end