- Líneas >79 cols reajustadas en todo el paquete - Fix F821: etree.cleanup_namespaces(security) en signature.py (era 'header', NameError) - Fix bug cune_xpath -> xpath en nomina/informacion_general() (NameError) - Elimina clase TaxScheme duplicada en form/__init__.py - Imports explícitos (F403/F405) y __all__ en form_xml/invoice.py, nomina - Elimina imports y variables muertas (F401/F841), E712 (== None -> is None)
27 lines
824 B
Python
27 lines
824 B
Python
from dataclasses import dataclass
|
|
|
|
from .pais import Pais
|
|
from .departamento import Departamento
|
|
from .municipio import Municipio
|
|
from facho.fe.data.dian import codelist
|
|
|
|
|
|
@dataclass
|
|
class Lugar:
|
|
pais: Pais
|
|
departamento: Departamento
|
|
municipio: Municipio
|
|
idioma: str = 'es'
|
|
|
|
def __post_init__(self):
|
|
if self.idioma not in codelist.IdiomaISO6391:
|
|
raise ValueError("idioma [%s] not found" % (self.code))
|
|
codelist.IdiomaISO6391[self.idioma]['iso-639-1']
|
|
|
|
def apply(self, fragment, root):
|
|
fragment.set_attributes(root,
|
|
Pais=self.pais.code,
|
|
DepartamentoEstado=self.departamento.code,
|
|
MunicipioCiudad=self.municipio.code,
|
|
Idioma=self.idioma)
|