Preserve order of sale line in invoice
(transplanted from 41ec52ac100e4174ad9c94d59d8c856c4f3b612c)
This commit is contained in:
1 parent
0812e33924
commit
05ec0aabcd
1 file changed
+6
-4
@@ -650,7 +650,7 @@ class Sale(ModelWorkflow, ModelSQL, ModelView):
|
||||
|
||||
:param sale: the BrowseRecord of the sale
|
||||
|
||||
:return: a dictionary with invoice line as key
|
||||
:return: a dictionary with invoiced sale line id as key
|
||||
and a list of invoice lines values as value
|
||||
'''
|
||||
line_obj = self.pool.get('sale.line')
|
||||
@@ -718,12 +718,14 @@ class Sale(ModelWorkflow, ModelSQL, ModelView):
|
||||
with Transaction().set_user(0, set_context=True):
|
||||
invoice_id = invoice_obj.create(vals)
|
||||
|
||||
for line_id in invoice_lines:
|
||||
for vals in invoice_lines[line_id]:
|
||||
for line in sale.lines:
|
||||
if line.id not in invoice_lines:
|
||||
continue
|
||||
for vals in invoice_lines[line.id]:
|
||||
vals['invoice'] = invoice_id
|
||||
with Transaction().set_user(0, set_context=True):
|
||||
invoice_line_id = invoice_line_obj.create(vals)
|
||||
sale_line_obj.write(line_id, {
|
||||
sale_line_obj.write(line.id, {
|
||||
'invoice_lines': [('add', invoice_line_id)],
|
||||
})
|
||||
|
||||
|
||||
Reference in new issue
Block a user