Merge lp:~openerp-dev/openobject-addons/trunk-bug-1095986-hip into lp:openobject-addons

Proposed by Hiral Patel (OpenERP)
Status: Needs review
Proposed branch: lp:~openerp-dev/openobject-addons/trunk-bug-1095986-hip
Merge into: lp:openobject-addons
Diff against target: 35 lines (+10/-2)
2 files modified
account/account_invoice.py (+4/-2)
product_visible_discount/product_visible_discount.py (+6/-0)
To merge this branch: bzr merge lp:~openerp-dev/openobject-addons/trunk-bug-1095986-hip
Reviewer Review Type Date Requested Status
OpenERP Core Team Pending
Review via email: mp+142239@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Josse Colpaert (OpenERP) (jco-openerp) wrote :

Please check my comment that the discount is changed to a wrong value with custom uoms.

8496. By Hiral Patel (OpenERP)

[IMP] Improve code for discount

Unmerged revisions

8496. By Hiral Patel (OpenERP)

[IMP] Improve code for discount

8495. By Hiral Patel (OpenERP)

[Trunk] Error when we change unit on account.invoice.line

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'account/account_invoice.py'
2--- account/account_invoice.py 2012-12-21 16:48:08 +0000
3+++ account/account_invoice.py 2013-01-09 05:12:24 +0000
4@@ -1485,10 +1485,12 @@
5 res_final['value']['price_unit'] = new_price
6
7 if result['uos_id'] != res.uom_id.id:
8- selected_uom = self.pool.get('product.uom_id').browse(cr, uid, result['uos_id'], context=context)
9+ selected_uom = self.pool.get('product.uom').browse(cr, uid, result['uos_id'], context=context)
10 if res.uom_id.category_id.id == selected_uom.category_id.id:
11- new_price = res_final['value']['price_unit'] * uom_id.factor_inv
12+ new_price = res_final['value']['price_unit'] * selected_uom.factor_inv
13 res_final['value']['price_unit'] = new_price
14+ else:
15+ res_final['value']['uos_id'] = res.uom_id.id
16 return res_final
17
18 def uos_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition_id=False, price_unit=False, currency_id=False, context=None, company_id=None):
19
20=== modified file 'product_visible_discount/product_visible_discount.py'
21--- product_visible_discount/product_visible_discount.py 2012-12-06 14:56:32 +0000
22+++ product_visible_discount/product_visible_discount.py 2013-01-09 05:12:24 +0000
23@@ -157,6 +157,12 @@
24 discount=(real_price-price_unit) / real_price * 100
25 result['price_unit'] = real_price
26 result['discount'] = discount
27+ default_uom = product.uom_id and product.uom_id.id
28+ selected_uom = self.pool.get('product.uom').browse(cr, uid, res['value']['uos_id'], context=context)
29+ if res['value']['uos_id'] != default_uom:
30+ new_price = real_price * selected_uom.factor_inv
31+ result['price_unit'] = new_price
32+ result['discount'] = 0.0
33 else:
34 result['discount']=0.0
35 return res

Subscribers

People subscribed via source and target branches

to all changes: