[FIX] website_sale: do not compute price of every pricelist

This controller was very slow as not providing a pricelist computed the price of
all products of all pricelists.
Instead only fetch the prices for the useful products.
This commit is contained in:
Martin Trigaux 2016-02-02 14:49:19 +01:00
parent d01ecb6e79
commit aca28c82b4
1 changed files with 1 additions and 1 deletions

View File

@ -972,7 +972,7 @@ class website_sale(http.Controller):
pricelist_id = request.session.get('sale_order_code_pricelist_id') or partner.property_product_pricelist.id
else:
pricelist_id = partner.property_product_pricelist.id
prices = pool['product.pricelist'].price_rule_get_multi(cr, uid, [], [(product, add_qty, partner) for product in products], context=context)
prices = pool['product.pricelist'].price_rule_get_multi(cr, uid, [pricelist_id], [(product, add_qty, partner) for product in products], context=context)
return {product_id: prices[product_id][pricelist_id][0] for product_id in product_ids}
# vim:expandtab:tabstop=4:softtabstop=4:shiftwidth=4: