changeset 5df86c78eb76 in modules/sale_complaint:default
details: 
https://hg.tryton.org/modules/sale_complaint?cmd=changeset;node=5df86c78eb76
description:
        Allow only line of type line to be used

        issue9890
        review329771002
diffstat:

 complaint.py |  9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diffs (54 lines):

diff -r 22d6d3655d5f -r 5df86c78eb76 complaint.py
--- a/complaint.py      Fri Nov 06 00:46:31 2020 +0100
+++ b/complaint.py      Fri Dec 04 18:44:14 2020 +0100
@@ -157,6 +157,7 @@
                 ('state', 'in', ['confirmed', 'processing', 'done']),
                 ],
             'sale.line': [
+                ('type', '=', 'line'),
                 If(Eval('customer'),
                     ('sale.party', '=', Eval('customer')),
                     ()),
@@ -172,6 +173,7 @@
                 ('state', 'in', ['posted', 'paid']),
                 ],
             'account.invoice.line': [
+                ('type', '=', 'line'),
                 If(Eval('customer'),
                     ('invoice.party', '=', Eval('customer')),
                     ()),
@@ -466,7 +468,7 @@
                     default['quantity'] = lambda o: line2qty.get(o['id'])
                     default['unit_price'] = lambda o: line2price.get(o['id'])
                 else:
-                    sale_lines = sale.lines
+                    sale_lines = [l for l in sale.lines if l.type == 'line']
             elif isinstance(self.complaint.origin, Line):
                 sale_line = self.complaint.origin
                 sale = sale_line.sale
@@ -505,7 +507,8 @@
                         for l in self.invoice_lines
                         if l.unit_price is not None}
                 else:
-                    invoice_lines = invoice.lines
+                    invoice_lines = [
+                        l for l in invoice.lines if l.type == 'line']
             elif isinstance(self.complaint.origin, Line):
                 invoice_line = self.complaint.origin
                 invoice = invoice_line.invoice
@@ -606,6 +609,7 @@
         'sale.line', "Sale Line",
         ondelete='RESTRICT', required=True,
         domain=[
+            ('type', '=', 'line'),
             ('sale', '=', Eval('complaint_origin_id', -1)),
             ],
         depends=['complaint_origin_id'])
@@ -629,6 +633,7 @@
         'account.invoice.line', 'Invoice Line',
         ondelete='RESTRICT', required=True,
         domain=[
+            ('type', '=', 'line'),
             ('invoice', '=', Eval('complaint_origin_id', -1)),
             ],
         depends=['complaint_origin_id'])

Reply via email to