[FIX]generate pain address block that is supported by german banks

This commit is contained in:
Luc De Meyer
2022-12-06 17:18:17 +01:00
parent d1624441e0
commit 36a58ea647

View File

@@ -502,27 +502,6 @@ class AccountPaymentOrder(models.Model):
"""Generate the piece of the XML corresponding to PstlAdr"""
if partner.country_id:
postal_address = etree.SubElement(parent_node, "PstlAdr")
if gen_args.get("pain_flavor").startswith("pain.001.001.") or gen_args.get(
"pain_flavor"
).startswith("pain.008.001."):
if partner.zip:
pstcd = etree.SubElement(postal_address, "PstCd")
pstcd.text = self._prepare_field(
"Postal Code",
"partner.zip",
{"partner": partner},
16,
gen_args=gen_args,
)
if partner.city:
twnnm = etree.SubElement(postal_address, "TwnNm")
twnnm.text = self._prepare_field(
"Town Name",
"partner.city",
{"partner": partner},
35,
gen_args=gen_args,
)
country = etree.SubElement(postal_address, "Ctry")
country.text = self._prepare_field(
"Country",
@@ -540,7 +519,31 @@ class AccountPaymentOrder(models.Model):
70,
gen_args=gen_args,
)
if (
gen_args.get("pain_flavor").startswith("pain.001.001.")
or gen_args.get("pain_flavor").startswith("pain.008.001.")
and (partner.zip or partner.city)
):
adrline2 = etree.SubElement(postal_address, "AdrLine")
if partner.zip:
val = self._prepare_field(
"zip",
"partner.zip",
{"partner": partner},
70,
gen_args=gen_args,
)
else:
val = ""
if partner.city:
val += " " + self._prepare_field(
"city",
"partner.city",
{"partner": partner},
70,
gen_args=gen_args,
)
adrline2.text = val
return True
@api.model