Merge lp:~openbig/bigconsulting/packging_quantity into lp:bigconsulting

Proposed by gpa(OpenERP)
Status: Merged
Merged at revision: 75
Proposed branch: lp:~openbig/bigconsulting/packging_quantity
Merge into: lp:bigconsulting
Diff against target: 55 lines (+21/-3)
1 file modified
packing_barcode_check/wizard/scan_product.py (+21/-3)
To merge this branch: bzr merge lp:~openbig/bigconsulting/packging_quantity
Reviewer Review Type Date Requested Status
openbig Pending
Review via email: mp+32587@code.launchpad.net

Description of the change

solve the bug of 616640

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'packing_barcode_check/wizard/scan_product.py'
2--- packing_barcode_check/wizard/scan_product.py 2010-07-22 15:43:40 +0000
3+++ packing_barcode_check/wizard/scan_product.py 2010-08-13 14:21:42 +0000
4@@ -40,7 +40,8 @@
5 picking_id = data['ids']
6 form_ean = data['form']['ean']
7 stock_move_ids = stock_move_obj.search(cr, uid, [('picking_id','=',picking_id[0])])
8-
9+ pick_data = pool.get("stock.picking").browse(cr, uid, picking_id[0]).tobe_scan_ids
10+
11 for move_id in stock_move_ids:
12 move_data = stock_move_obj.browse(cr, uid,move_id)
13 if move_data.product_qty == move_data.scaned_qty:
14@@ -48,11 +49,19 @@
15 for ean_id in move_data.product_id.packaging:
16 ean_data = pool.get("product.packaging").browse(cr, uid, ean_id.id)
17 product_ean = ean_data.ean
18+ quantity = ean_data.qty
19 if product_ean == form_ean:
20 if move_data.product_id.track_production:
21 return 'scan_product_number'
22 else:
23- stock_move_obj.write(cr, uid, [move_id],{'scaned_qty':move_data.scaned_qty+1}, context=context)
24+ for pick in pick_data:
25+ if pick.product_name.id == move_data.product_id.id:
26+ check_qty = pick.quantity - pick.scan_quantity
27+ if check_qty < ean_data.qty:
28+ raise osv.except_osv(_('Warning!'),
29+ _('Unscanned quantity does not match with the product packaging quantity'))
30+
31+ stock_move_obj.write(cr, uid, [move_id],{'scaned_qty':move_data.scaned_qty+quantity}, context=context)
32 return 'init'
33 else:
34 raise osv.except_osv(_('Warning!'),
35@@ -81,10 +90,19 @@
36 call_product_scan = 1
37 if stock_lot_ids:
38 for stock_move_obj in move_obj.browse(cr, uid, stock_lot_ids, context):
39+ for ean_id in stock_move_obj.product_id.packaging:
40+ ean_data = pool.get("product.packaging").browse(cr, uid, ean_id.id)
41+ product_ean = ean_data.ean
42+ quantity = ean_data.qty
43 if stock_move_obj.product_qty == stock_move_obj.scaned_qty:
44 call_product_scan = 1
45 continue
46- move_obj.write(cr, uid, [stock_move_obj.id],{'scaned_qty':stock_move_obj.scaned_qty+1}, context=context)
47+ if pick.product_name.id == stock_move_obj.product_id.id:
48+ check_qty = pick.quantity - pick.scan_quantity
49+ if check_qty < quantity:
50+ raise osv.except_osv(_('Warning!'),
51+ _('Unscanned quantity does not match with the product packaging quantity'))
52+ move_obj.write(cr, uid, [stock_move_obj.id],{'scaned_qty':stock_move_obj.scaned_qty+quantity}, context=context)
53 call_product_scan = 2
54 if stock_move_obj.product_qty >= stock_move_obj.scaned_qty+1:
55 call_product_scan = 1

Subscribers

People subscribed via source and target branches