Fix and implement supplier counters

This commit is contained in:
2014-03-07 18:29:49 +01:00
parent 95e268adea
commit 99473758e6
25 changed files with 304 additions and 65 deletions
+11 -3
View File
@@ -270,7 +270,7 @@ class List
return false unless user
order = Order.create list: self, supplier: supplier, user: user, section_id: section_id
return unless order.id
orders_in_process_count = supplier.increment_orders_in_process_count!
orders_placed_count = supplier.increment_orders_placed_count!
loaded_products = self.class.database.load_document products.keys
products.each do |product_id, quantity|
quantity = quantity.to_i
@@ -281,11 +281,11 @@ class List
save
for user_id in user_ids
broadcast_user user_id, 'new_order', order: order.with_products_as_json, total_amount: price
broadcast_user user_id, 'orders_in_process_count', count: orders_in_process_count
broadcast_user user_id, 'orders_placed_count', count: orders_placed_count
end
broadcast_supplier supplier.id, 'list_update', active_model_serializer.new(self).as_json
broadcast_supplier supplier.id, 'new_order', OrderSerializer.new(order)
broadcast_supplier supplier.id, 'orders_in_process_count', count: orders_in_process_count
broadcast_supplier supplier.id, 'orders_placed_count', count: orders_placed_count
order
end
@@ -323,6 +323,14 @@ class List
@with_orders_and_join_requests_as_json = with_orders_as_json.merge(join_requests_as_json)
end
def with_orders_and_join_requests_and_supplier_info_as_json
with_orders_and_join_requests_as_json.merge(
supplier_name: supplier.name,
supplier_orders_in_process_count: supplier.orders_in_process_count,
supplier_orders_placed_count: supplier.orders_placed_count
)
end
def has_active_orders?
Order.count_active_for_supplier_and_list(supplier_id, id) > 0
end