[FIX] point_of_sale: multiple invoice on same commercial partner

When you are selling with invoices to multiple partner having the same
commercial partner, you get a singleton exception.

So now we are looping on the created move lines

closes odoo/odoo#71583

X-original-commit: 369331dfdc144cf852c80c99d00ce8d5da843be1
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
This commit is contained in:
Pierre Masereel
2021-06-03 08:01:17 +00:00
parent 93c4b03737
commit a1047b41a9
+7 -6
View File
@@ -682,12 +682,13 @@ class PosSession(models.Model):
invoice_receivable_vals[commercial_partner].append(self._get_invoice_receivable_vals(account_id, amounts['amount'], amounts['amount_converted'], partner=commercial_partner))
for commercial_partner, vals in invoice_receivable_vals.items():
account_id = commercial_partner.property_account_receivable_id.id
receivable_line = MoveLine.create(vals)
if (not receivable_line.reconciled):
if account_id not in invoice_receivable_lines:
invoice_receivable_lines[account_id] = receivable_line
else:
invoice_receivable_lines[account_id] |= receivable_line
receivable_lines = MoveLine.create(vals)
for receivable_line in receivable_lines:
if (not receivable_line.reconciled):
if account_id not in invoice_receivable_lines:
invoice_receivable_lines[account_id] = receivable_line
else:
invoice_receivable_lines[account_id] |= receivable_line
data.update({'invoice_receivable_lines': invoice_receivable_lines})
return data