class Skr::PtLine
Attributes
qty_to_ship[RW]
Public Instance Methods
cancel!()
click to toggle source
# File lib/skr/models/pt_line.rb, line 25 def cancel! self.update_attributes! :is_complete=>true self.pick_ticket.maybe_cancel end
is_invoiceable?()
click to toggle source
# File lib/skr/models/pt_line.rb, line 30 def is_invoiceable? ! self.is_complete? && self.qty_to_ship.to_i > 0 end
total()
click to toggle source
# File lib/skr/models/pt_line.rb, line 34 def total self.price * ( self.qty_to_ship || self.qty ) end
Private Instance Methods
set_defaults()
click to toggle source
# File lib/skr/models/pt_line.rb, line 44 def set_defaults if self.so_line.blank? self.so_line = self.pick_ticket.sales_order.lines.where({ sku_loc_id: self.sku_loc_id }).first end if self.so_line.blank? self.so_line = self.pick_ticket.sales_order.lines.create({ sku_loc: self.sku_loc, qty: self.qty, price: self.price, uom: self.uom, description: self.description }) unless self.so_line.valid? self.errors.add(:so_line, "cannot be created because #{self.so_line.errors.full_messages.join(', ')}" ) return false end end self.sku_loc ||= so_line.sku_loc self.bin ||= sku_loc.bin self.price ||= so_line.price self.sku_code = sku_loc.sku.code self.description = so_line.description if self.description.blank? self.uom = so_line.uom if self.uom.blank? true end
update_from_inv_line( inv_line )
click to toggle source
# File lib/skr/models/pt_line.rb, line 40 def update_from_inv_line( inv_line ) self.update_attributes( qty_invoiced: inv_line.qty ) end