From 64749e6deeef37c636dfd0070278ae7c2df6d06b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A0=20Tarroja=20Caubet?= Date: Mon, 7 Feb 2022 22:41:11 +0100 Subject: [PATCH] Ignore subdivision with non valid type issue11201 review381901002 --- party.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/party.py b/party.py index 88064080d0..128f3a6718 100644 --- a/party.py +++ b/party.py @@ -59,6 +59,7 @@ class Address(metaclass=PoolMeta): pool = Pool() Country = pool.get('country.country') Subdivision = pool.get('country.subdivision') + SubdivisionType = pool.get('party.address.subdivision_type') values = {} values['party_name'] = remove_forbidden_chars(address.name or '') @@ -75,10 +76,14 @@ class Address(metaclass=PoolMeta): if address.province_code: subdivision_code = '-'.join( [address.country_code, address.province_code]) - subdivisions = Subdivision.search([ - ('country', '=', country.id), - ('code', 'like', subdivision_code + '%'), - ], limit=1) + subdivision_domain = [ + ('country', '=', country.id), + ('code', 'like', subdivision_code + '%'), + ] + types = SubdivisionType.get_types(country) + if types: + subdivision_domain.append(('type', 'in', types)) + subdivisions = Subdivision.search(subdivision_domain, limit=1) if subdivisions: subdivision, = subdivisions values['subdivision'] = subdivision.id