Ignore subdivision with non valid type
issue11201 review381901002
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user