Add patch for issue 4828
This commit is contained in:
parent
667aed8957
commit
c460afc4c0
|
@ -0,0 +1,65 @@
|
|||
# HG changeset patch
|
||||
# User Guillem Barba <guillembarba@gmail.com>
|
||||
Allow to change the destination of internal shipment's moves
|
||||
|
||||
issue4828
|
||||
review18361002
|
||||
|
||||
Index: shipment.py
|
||||
===================================================================
|
||||
|
||||
--- a/trytond/trytond/modules/stock/shipment.py
|
||||
+++ b/trytond/trytond/modules/stock/shipment.py
|
||||
@@ -1784,9 +1784,15 @@
|
||||
| ~Eval('from_location') | ~Eval('to_location')),
|
||||
},
|
||||
domain=[
|
||||
- ('from_location', 'child_of', [Eval('from_location', -1)],
|
||||
- 'parent'),
|
||||
- ('to_location', '=', Eval('to_location')),
|
||||
+ If(Eval('state') == 'draft', [
|
||||
+ ('from_location', '=', Eval('from_location')),
|
||||
+ ('to_location', '=', Eval('to_location')),
|
||||
+ ], [
|
||||
+ ('from_location', 'child_of', [Eval('from_location', -1)],
|
||||
+ 'parent'),
|
||||
+ ('to_location', 'child_of', [Eval('to_location', -1)],
|
||||
+ 'parent'),
|
||||
+ ]),
|
||||
('company', '=', Eval('company')),
|
||||
],
|
||||
depends=['state', 'from_location', 'to_location', 'planned_date',
|
||||
@@ -1934,13 +1940,6 @@
|
||||
@Workflow.transition('draft')
|
||||
def draft(cls, shipments):
|
||||
Move = Pool().get('stock.move')
|
||||
- Move.draft([m for s in shipments for m in s.moves])
|
||||
-
|
||||
- @classmethod
|
||||
- @ModelView.button
|
||||
- @Workflow.transition('waiting')
|
||||
- def wait(cls, shipments):
|
||||
- Move = Pool().get('stock.move')
|
||||
# First reset state to draft to allow update from and to location
|
||||
Move.draft([m for s in shipments for m in s.moves])
|
||||
for shipment in shipments:
|
||||
@@ -1952,6 +1951,18 @@
|
||||
})
|
||||
|
||||
@classmethod
|
||||
+ @ModelView.button
|
||||
+ @Workflow.transition('waiting')
|
||||
+ def wait(cls, shipments):
|
||||
+ Move = Pool().get('stock.move')
|
||||
+ Move.draft([m for s in shipments for m in s.moves])
|
||||
+ for shipment in shipments:
|
||||
+ for move in shipment.moves:
|
||||
+ if move.state != 'done':
|
||||
+ move.planned_date = shipment.planned_date
|
||||
+ move.save()
|
||||
+
|
||||
+ @classmethod
|
||||
@Workflow.transition('assigned')
|
||||
def assign(cls, shipments):
|
||||
pass
|
||||
|
Loading…
Reference in New Issue