Merge lp:~jfb-tempo-consulting/unifield-server/US-5397 into lp:unifield-server

Proposed by jftempo
Status: Merged
Merged at revision: 5191
Proposed branch: lp:~jfb-tempo-consulting/unifield-server/US-5397
Merge into: lp:unifield-server
Diff against target: 124 lines (+44/-12)
5 files modified
bin/addons/msf_config_locations/stock_configuration.py (+15/-7)
bin/addons/msf_profile/i18n/fr_MF.po (+1/-0)
bin/addons/stock/stock.py (+10/-1)
bin/addons/stock/stock_view.xml (+17/-0)
bin/addons/stock_override/stock.py (+1/-4)
To merge this branch: bzr merge lp:~jfb-tempo-consulting/unifield-server/US-5397
Reviewer Review Type Date Requested Status
UniField Reviewer Team Pending
Review via email: mp+359902@code.launchpad.net
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 'bin/addons/msf_config_locations/stock_configuration.py'
2--- bin/addons/msf_config_locations/stock_configuration.py 2018-11-22 15:40:32 +0000
3+++ bin/addons/msf_config_locations/stock_configuration.py 2018-11-30 11:24:44 +0000
4@@ -839,26 +839,34 @@
5 Returns all stock.picking containing a stock move not done from/to the location
6 '''
7 location = False
8- picking_ids = []
9+ picking_ids = set()
10
11 for wizard in self.browse(cr, uid, ids, context=context):
12 location = wizard.location_id
13
14+ sys_int_po_ids = set()
15 move_ids = self.pool.get('stock.move').search(cr, uid, [('state', 'not in', ['done', 'cancel']), '|', ('location_id', '=', location.id), ('location_dest_id', '=', location.id)])
16 for move in self.pool.get('stock.move').browse(cr, uid, move_ids, context=context):
17- if move.picking_id and move.picking_id.id not in picking_ids:
18- picking_ids.append(move.picking_id.id)
19-
20- view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'stock', 'vpicktree')[1]
21+ if move.picking_id.subtype == 'sysint' and move.picking_id.purchase_id:
22+ sys_int_po_ids.add(move.picking_id.purchase_id.id)
23+ elif move.picking_id and move.picking_id.id not in picking_ids:
24+ picking_ids.add(move.picking_id.id)
25+
26+ if sys_int_po_ids:
27+ in_ids = self.pool.get('stock.picking').search(cr, uid, [('purchase_id', 'in', list(sys_int_po_ids)), ('state', 'not in', ['done', 'cancel']), ('type', '=', 'in')], context=context)
28+ picking_ids.update(in_ids)
29+
30+ view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'stock', 'genericpick')[1]
31 if location.usage == 'customer':
32 view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'stock', 'view_picking_out_tree')[1]
33
34 return {'type': 'ir.actions.act_window',
35 'res_model': 'stock.picking',
36- 'domain': [('id', 'in', picking_ids)],
37+ 'domain': [('id', 'in', list(picking_ids))],
38 'view_id': [view_id],
39 'view_type': 'form',
40- 'view_mode': 'tree,form',
41+ 'view_mode': 'tree',
42+ 'name': _('Moves'),
43 'target': 'current',
44 }
45
46
47=== modified file 'bin/addons/msf_profile/i18n/fr_MF.po'
48--- bin/addons/msf_profile/i18n/fr_MF.po 2018-11-26 17:05:18 +0000
49+++ bin/addons/msf_profile/i18n/fr_MF.po 2018-11-30 11:24:44 +0000
50@@ -67908,6 +67908,7 @@
51 #: field:stock.incoming.processor,move_ids:0
52 #: field:stock.picking.processor,move_ids:0
53 #: view:stock.reserved.products:0
54+#: view:stock.picking:0
55 msgid "Moves"
56 msgstr "Mouvements"
57
58
59=== modified file 'bin/addons/stock/stock.py'
60--- bin/addons/stock/stock.py 2018-11-09 14:06:04 +0000
61+++ bin/addons/stock/stock.py 2018-11-30 11:24:44 +0000
62@@ -748,8 +748,17 @@
63 'claim_name': '',
64 'from_manage_expired': False,
65 })
66- picking_obj = self.read(cr, uid, id, ['name', 'type'], context=context)
67+
68+ fields_to_read = ['name', 'type']
69+
70+ if not context.get('keep_prodlot'):
71+ fields_to_read += ['move_lines']
72+
73+ picking_obj = self.read(cr, uid, id, fields_to_read, context=context)
74 move_obj = self.pool.get('stock.move')
75+
76+ if not context.get('keep_prodlot') and picking_obj.get('move_lines') and not context.get('allow_copy'):
77+ move_obj._check_locations_active(cr, uid, picking_obj['move_lines'], context=context)
78 if ('name' not in default) or (picking_obj['name'] == '/'):
79 seq_obj_name = ''.join(('stock.picking.', picking_obj['type']))
80 default['name'] = self.pool.get('ir.sequence').get(cr, uid, seq_obj_name)
81
82=== modified file 'bin/addons/stock/stock_view.xml'
83--- bin/addons/stock/stock_view.xml 2018-11-07 14:06:24 +0000
84+++ bin/addons/stock/stock_view.xml 2018-11-30 11:24:44 +0000
85@@ -693,6 +693,23 @@
86 </calendar>
87 </field>
88 </record>
89+ <record id="genericpick" model="ir.ui.view">
90+ <field name="name">stock.picking.tree</field>
91+ <field name="model">stock.picking</field>
92+ <field name="type">tree</field>
93+ <field eval="50" name="priority"/>
94+ <field name="arch" type="xml">
95+ <tree string="Moves">
96+ <field name="name"/>
97+ <field name="backorder_id" />
98+ <field name="origin"/>
99+ <field name="reason_type_id"/>
100+ <field name="date"/>
101+ <field name="min_date"/>
102+ <field name="state"/>
103+ </tree>
104+ </field>
105+ </record>
106 <record id="vpicktree" model="ir.ui.view">
107 <field name="name">stock.picking.tree</field>
108 <field name="model">stock.picking</field>
109
110=== modified file 'bin/addons/stock_override/stock.py'
111--- bin/addons/stock_override/stock.py 2018-11-21 10:31:26 +0000
112+++ bin/addons/stock_override/stock.py 2018-11-30 11:24:44 +0000
113@@ -1635,10 +1635,7 @@
114 other_type_id = data_obj.get_object_reference(cr, uid, 'reason_types_moves', 'reason_type_other')[1]
115 pick_obj.write(cr, uid, [picking['id']], {'reason_type_id': other_type_id}, context=context)
116
117- new_id = super(stock_move, self).create(cr, uid, vals, context=context)
118-
119- self._check_locations_active(cr, uid, [new_id], context=context)
120- return new_id
121+ return super(stock_move, self).create(cr, uid, vals, context=context)
122
123 def _check_locations_active(self, cr, uid, ids, context=None):
124 if isinstance(ids, (int, long)):

Subscribers

People subscribed via source and target branches