|
1
|
1 |
|
from ..models import Code |
|
2
|
|
|
|
|
3
|
|
|
|
|
4
|
1 |
|
def format_address_raw(calle, num_exterior, num_interior, referencia, colonia, municipio, localidad, estado, pais, codigo_postal): |
|
5
|
1 |
|
parts = [] |
|
6
|
|
|
|
|
7
|
1 |
|
calle_num = None |
|
8
|
1 |
|
if calle or num_exterior or num_interior: |
|
9
|
1 |
|
if num_exterior: |
|
10
|
1 |
|
calle_num = f"{calle} #{num_exterior}" |
|
11
|
|
|
else: |
|
12
|
1 |
|
calle_num = f"{calle}" |
|
13
|
|
|
|
|
14
|
1 |
|
if num_interior: |
|
15
|
1 |
|
calle_num = f"{calle_num}, int. #{num_interior}" |
|
16
|
|
|
|
|
17
|
1 |
|
if colonia: |
|
18
|
1 |
|
if calle_num: |
|
19
|
1 |
|
parts.append(f"{calle_num}, {colonia}") |
|
20
|
|
|
else: |
|
21
|
|
|
parts.append(f"{colonia}") |
|
22
|
|
|
|
|
23
|
1 |
|
if referencia: |
|
24
|
1 |
|
parts.append(f"{referencia}") |
|
25
|
|
|
|
|
26
|
1 |
|
if localidad and localidad != municipio: |
|
27
|
1 |
|
parts.append(f"{localidad}") |
|
28
|
|
|
|
|
29
|
1 |
|
if municipio: |
|
30
|
1 |
|
parts.append(f"{municipio}, {estado} {codigo_postal}") |
|
31
|
|
|
else: |
|
32
|
1 |
|
parts.append(f"{estado} {codigo_postal}") |
|
33
|
|
|
|
|
34
|
1 |
|
parts.append(f"{pais}") |
|
35
|
1 |
|
return "\n".join(parts) |
|
36
|
|
|
|
|
37
|
|
|
|
|
38
|
1 |
|
def format_address(k): |
|
39
|
1 |
|
return format_address_raw( |
|
40
|
|
|
calle=k["Calle"], |
|
41
|
|
|
num_exterior=k.get("NumeroExterior"), |
|
42
|
|
|
num_interior=k.get("NumeroInterior"), |
|
43
|
|
|
referencia=desc(k.get("Referencia")), |
|
44
|
|
|
colonia=desc(k.get("Colonia")), |
|
45
|
|
|
municipio=desc(k.get("Municipio")), |
|
46
|
|
|
localidad=desc(k.get("Localidad")), |
|
47
|
|
|
estado=desc(k["Estado"]), |
|
48
|
|
|
pais=desc(k["Pais"]), |
|
49
|
|
|
codigo_postal=k["CodigoPostal"] |
|
50
|
|
|
) |
|
51
|
|
|
|
|
52
|
|
|
|
|
53
|
1 |
|
def desc(s): |
|
54
|
1 |
|
if isinstance(s, Code): |
|
55
|
1 |
|
return s.description |
|
56
|
|
|
return s |
|
57
|
|
|
|