Ignore subdivision with non valid type

issue11201
review381901002
This commit is contained in:
Adrià Tarroja Caubet
2022-02-07 22:41:11 +01:00
parent 4594c27fda
commit 64749e6dee
+9 -4
View File
@@ -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