Fix searcher methods for dot notation

issue6757
review40651002
This commit is contained in:
Cédric Krier committed 2017-09-27 18:37:32 +02:00
1 parent 17187fd0e0
commit dd7f60db0a
3 files changed
+11 -8

No files matched your search

+2 -1
View File
@@ -67,7 +67,8 @@ class Invoice:
@classmethod
def search_sales(cls, name, clause):
return [('lines.origin.sale',) + tuple(clause[1:]) + ('sale.line',)]
return [('lines.origin.sale' + clause[0].lstrip(name),)
+ tuple(clause[1:3]) + ('sale.line',) + tuple(clause[3:])]
@classmethod
def copy(cls, invoices, default=None):
+7 -6
View File
@@ -537,7 +537,8 @@ class Sale(Workflow, ModelSQL, ModelView, TaxableMixin):
@classmethod
def search_invoices(cls, name, clause):
return [('lines.invoice_lines.invoice',) + tuple(clause[1:])]
return [('lines.invoice_lines.invoice' + clause[0].lstrip(name),)
+ tuple(clause[1:])]
def get_invoice_state(self):
'''
@@ -585,12 +586,12 @@ class Sale(Workflow, ModelSQL, ModelView, TaxableMixin):
Search on shipments or returns
'''
def method(self, name, clause):
if isinstance(clause[2], basestring):
target = 'rec_name'
nested = clause[0].lstrip(name)
if nested:
return [('lines.moves.shipment' + nested,)
+ tuple(clause[1:3]) + (model_name,) + tuple(clause[3:])]
else:
target = 'id'
return [('lines.moves.shipment.' + target,) + tuple(clause[1:])
+ (model_name,)]
return [('lines.moves.shipment',) + tuple(clause[1:3])]
return classmethod(method)
search_shipments = search_shipments_returns('stock.shipment.out')
+2 -1
View File
@@ -165,7 +165,8 @@ class Move:
@classmethod
def search_sale(cls, name, clause):
return [('origin.' + name,) + tuple(clause[1:]) + ('sale.line',)]
return [('origin.' + clause[0],) + tuple(clause[1:3])
+ ('sale.line',) + tuple(clause[3:])]
def get_sale_exception_state(self, name):
SaleLine = Pool().get('sale.line')