@@ -8,7 +8,7 @@ from simpleeval import simple_eval
|
||||
from trytond import backend, config
|
||||
from trytond.i18n import gettext
|
||||
from trytond.model import (
|
||||
DeactivableMixin, ModelSQL, ModelView, Workflow, fields)
|
||||
DeactivableMixin, ModelSQL, ModelView, Workflow, fields, sort)
|
||||
from trytond.modules.company.model import (
|
||||
CompanyMultiValueMixin, CompanyValueMixin)
|
||||
from trytond.modules.currency.fields import Monetary
|
||||
@@ -346,12 +346,16 @@ class Sale(metaclass=PoolMeta):
|
||||
self.advance_payment_lines = advance_payment_term.get_lines(self)
|
||||
|
||||
def get_advance_payment_invoices(self, name):
|
||||
pool = Pool()
|
||||
Invoice = pool.get('account.invoice')
|
||||
field = getattr(self.__class__, name)
|
||||
order = field.order if field.order is not None else Invoice._order
|
||||
invoices = set()
|
||||
for line in self.advance_payment_lines:
|
||||
for invoice_line in line.invoice_lines:
|
||||
if invoice_line.invoice:
|
||||
invoices.add(invoice_line.invoice.id)
|
||||
return list(invoices)
|
||||
invoices.add(invoice_line.invoice)
|
||||
return sort(invoices, order)
|
||||
|
||||
@classmethod
|
||||
def search_advance_payment_invoices(cls, name, clause):
|
||||
|
||||
@@ -392,7 +392,7 @@ it::
|
||||
... handle_exception.form.recreate_invoices.find())
|
||||
>>> handle_exception.execute('handle')
|
||||
>>> sale.reload()
|
||||
>>> _, inv_recreated = sale.advance_payment_invoices
|
||||
>>> inv_recreated, _ = sale.advance_payment_invoices
|
||||
>>> inv_recreated.total_amount
|
||||
Decimal('10.00')
|
||||
>>> assertEqual(inv_recreated.invoice_date, next_week)
|
||||
|
||||
Reference in New Issue
Block a user