27 lines
874 B
Ruby
27 lines
874 B
Ruby
class Item < ActiveRecord::Base
|
|
belongs_to :unit
|
|
has_many :multi_media_descriptions
|
|
belongs_to :sub_category
|
|
belongs_to :supplier
|
|
has_and_belongs_to_many :item_groups, :join_table => 'item_item_groups'
|
|
|
|
validates_presence_of :name, :description, :list_price, :current_input_price, :tags, :unit_id, :code, :sub_category_id, :weight, :supplier_id
|
|
|
|
|
|
# todo build a front end in backoffice (rails)
|
|
def self.items_to_order
|
|
return Item.find_by_sql(%Q{
|
|
select s.name as supplier, i.name as item, sum(iic.count) amount, i.current_input_price
|
|
from carts c
|
|
join item_in_carts iic on iic.cart_id = c.id
|
|
join items i on i.id = iic.item_id
|
|
join suppliers s on i.supplier_id = s.id
|
|
where c.confirmed and not (c.packed or c.delivered)
|
|
group by s.name, i.name, i.current_input_price
|
|
order by s.name, amount desc;
|
|
})
|
|
end
|
|
|
|
|
|
end
|