facho/fe/fe.py (DianXMLExtensionSoftwareProvider): nueva extension para SoftwareProvider
FossilOrigin-Name: 4a475ab0e79b851fcf5575d309f1d8c8c929488b37b9a1b77d2fa8e8fffea499
This commit is contained in:
@@ -4,4 +4,5 @@ from .fe import DianXMLExtensionSigner
|
||||
from .fe import DianXMLExtensionSoftwareSecurityCode
|
||||
from .fe import DianXMLExtensionCUFE
|
||||
from .fe import DianXMLExtensionInvoiceAuthorization
|
||||
from .fe import DianXMLExtensionSoftwareProvider
|
||||
from .fe import DianZIP
|
||||
|
||||
@@ -113,6 +113,20 @@ class DianXMLExtensionCUFE(FachoXMLExtension):
|
||||
h.update(cufe.encode('utf-8'))
|
||||
return h.hexdigest()
|
||||
|
||||
|
||||
class DianXMLExtensionSoftwareProvider(FachoXMLExtension):
|
||||
# RESOLUCION 0004: pagina 108
|
||||
|
||||
def __init__(self, nit: str, id_software: str):
|
||||
self.nit = nit
|
||||
self.id_software = id_software
|
||||
|
||||
def build(self, fexml):
|
||||
software_provider = fexml.fragment('/fe:Invoice/ext:UBLExtensions/ext:UBLExtension/ext:ExtensionContent/sts:DianExtensions/sts:SoftwareProvider')
|
||||
software_provider.set_element('/sts:SoftwareProvider/sts:ProviderID', self.nit)
|
||||
software_provider.set_element('/sts:SoftwareProvider/sts:SoftwareID', self.id_software)
|
||||
return '', []
|
||||
|
||||
|
||||
class DianXMLExtensionSoftwareSecurityCode(FachoXMLExtension):
|
||||
# RESOLUCION 0001: pagina 535
|
||||
|
||||
Reference in New Issue
Block a user