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'])