changeset 9a364e4ba3e0 in modules/purchase_amendment:6.0
details: 
https://hg.tryton.org/modules/purchase_amendment?cmd=changeset&node=9a364e4ba3e0
description:
        Delete stock moves from components when applying amendment

        issue11355
        review386301002
        (grafted from 36bc7330032ba9cd2199d280e924d207e22a0a35)
diffstat:

 purchase.py |  10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diffs (27 lines):

diff -r f250824603ac -r 9a364e4ba3e0 purchase.py
--- a/purchase.py       Mon May 03 16:01:24 2021 +0200
+++ b/purchase.py       Wed Apr 06 18:52:08 2022 +0200
@@ -142,9 +142,7 @@
                 for invoice_line in line.invoice_lines:
                     if invoice_line.invoice_state == 'draft':
                         invoice_lines.add(invoice_line)
-                for move in line.moves:
-                    if move.state == 'draft':
-                        moves.add(move)
+                moves.update(cls._stock_moves(line))
 
         InvoiceLine.delete(invoice_lines)
         Move.delete(moves)
@@ -152,6 +150,12 @@
         Invoice.update_taxes([i for i in invoices if i.lines])
         Invoice.delete([i for i in invoices if not i.lines])
 
+    @classmethod
+    def _stock_moves(cls, line):
+        for move in line.moves:
+            if move.state == 'draft':
+                yield move
+
 
 class AmendmentLine(ModelSQL, ModelView):
     "Purchase Amendment Line"

Reply via email to