Merge PR #1331 into 16.0

Signed-off-by pedrobaeza
This commit is contained in:
OCA-git-bot
2024-08-17 10:36:39 +00:00
2 changed files with 17 additions and 6 deletions

View File

@@ -52,7 +52,7 @@ class AccountMove(models.Model):
communication = self.payment_reference or self.ref or self.name
if self.is_invoice():
if self.is_purchase_document():
communication = self.ref or self.payment_reference
communication = self.payment_reference or self.ref
else:
communication = self.payment_reference or self.name
return communication or ""

View File

@@ -304,10 +304,13 @@ class TestPaymentOrderOutbound(TestPaymentOrderOutboundBase):
)
def test_invoice_communication_02(self):
self.invoice.payment_reference = "R1234"
self.assertEqual(
"F1242", self.invoice._get_payment_order_communication_direct()
)
self.invoice.payment_reference = "R1234"
self.assertEqual(
"R1234", self.invoice._get_payment_order_communication_direct()
)
def test_invoice_communication_03(self):
self.invoice.ref = False
@@ -331,6 +334,13 @@ class TestPaymentOrderOutbound(TestPaymentOrderOutboundBase):
self.invoice._get_payment_order_communication_full(),
)
def test_supplier_invoice_payment_reference(self):
self.invoice.payment_reference = "+++F1234+++"
self.invoice.action_post()
self.assertEqual(
"+++F1234+++", self.invoice._get_payment_order_communication_full()
)
def test_manual_line_and_manual_date(self):
# Create payment order
outbound_order = self.env["account.payment.order"].create(
@@ -433,7 +443,7 @@ class TestPaymentOrderOutbound(TestPaymentOrderOutboundBase):
self.invoice.payment_reference = "F/1234"
self.invoice.action_post()
self.assertEqual(
"F1242", self.invoice._get_payment_order_communication_direct()
"F/1234", self.invoice._get_payment_order_communication_direct()
)
self.refund = self._create_supplier_refund(self.invoice)
with Form(self.refund) as refund_form:
@@ -443,7 +453,9 @@ class TestPaymentOrderOutbound(TestPaymentOrderOutboundBase):
line_form.price_unit = 75.0
self.refund.action_post()
self.assertEqual("R1234", self.refund._get_payment_order_communication_direct())
self.assertEqual(
"FR/1234", self.refund._get_payment_order_communication_direct()
)
# The user add the outstanding payment to the invoice
invoice_line = self.invoice.line_ids.filtered(
@@ -465,8 +477,7 @@ class TestPaymentOrderOutbound(TestPaymentOrderOutboundBase):
self.assertEqual(len(payment_order.payment_line_ids), 1)
self.assertEqual("F1242 R1234", payment_order.payment_line_ids.communication)
self.assertNotIn("FR/1234", payment_order.payment_line_ids.communication)
self.assertEqual("F/1234 FR/1234", payment_order.payment_line_ids.communication)
def test_supplier_manual_refund(self):
"""