[FIX] purchase: procurement quantity depends on product_id

Before this fix, the quantity of the last procurement of the list is used for
each PO line.

opw-646868
opw-646596
This commit is contained in:
Nicolas Martinelli
2015-08-07 17:00:24 +02:00
parent 982f713236
commit bf0f438209
+6 -4
View File
@@ -1388,13 +1388,15 @@ class procurement_order(osv.osv):
pricelist_id = partner.property_product_pricelist_purchase.id
prices_qty = []
qty = {}
for procurement in procurements:
seller_qty = procurement.product_id.seller_qty if procurement.location_id.usage != 'customer' else 0.0
uom_id = procurement.product_id.uom_po_id.id
qty = uom_obj._compute_qty(cr, uid, procurement.product_uom.id, procurement.product_qty, uom_id)
qty[procurement.product_id.id] = uom_obj._compute_qty(cr, uid, procurement.product_uom.id, procurement.product_qty, uom_id)
if seller_qty:
qty = max(qty, seller_qty)
prices_qty += [(procurement.product_id, qty, partner)]
qty[procurement.product_id.id] = max(qty[procurement.product_id.id], seller_qty)
prices_qty += [(procurement.product_id, qty[procurement.product_id.id], partner)]
prices = pricelist_obj.price_get_multi(cr, uid, [pricelist_id], prices_qty)
#Passing partner_id to context for purchase order line integrity of Line name
@@ -1419,7 +1421,7 @@ class procurement_order(osv.osv):
values = {
'name': name,
'product_qty': qty,
'product_qty': qty[procurement.product_id.id],
'product_id': procurement.product_id.id,
'product_uom': procurement.product_id.uom_po_id.id,
'price_unit': price or 0.0,