Feat: Se agrega ApplicationResponse a AttachedDocument

This commit is contained in:
2025-01-01 16:56:15 -05:00
parent 3a385c63e3
commit a758b8678b
7 changed files with 221 additions and 19 deletions

View File

@@ -1,4 +1,5 @@
from .. import fe
from .application_response import ApplicationResponse
__all__ = ['AttachedDocument']
@@ -13,11 +14,6 @@ class AttachedDocument():
self.DIANInvoiceXML = DIANInvoiceXML
self.attached_document_invoice = self.attached_document_invoice()
# self.fexml.placeholder_for(
# './ext:UBLExtension/ext:ExtensionContent/ds:Signature')
# self.fexml.set_element('./ext:UBLExtension/ext:ExtensionContent/ds:Signature', None, Id=id)
#
def attached_document_invoice(self):
self.fexml = fe.FeXML(
'AttachedDocument', self.schema)
@@ -168,15 +164,6 @@ class AttachedDocument():
self._build_attachment(self.DIANInvoiceXML)
)
def _build_attachment(self, DIANInvoiceXML):
document = (
'<?xml version="1.0" encoding="UTF-8" standalone="no"?>'
) + DIANInvoiceXML.tostring()
attachment = "<![CDATA[{}]]>".format(
document)
return attachment
def set_parent_document_line_reference(self):
self.fexml.placeholder_for(
'./cac:ParentDocumentLineReference')
@@ -205,9 +192,13 @@ class AttachedDocument():
self.fexml.set_element(
'./cac:ParentDocumentLineReference/cac:DocumentReference/cac:Attachment/cac:ExternalReference/cbc:EncodingCode',
'UTF-8')
application_response = ApplicationResponse(
self.invoice).toFachoXML()
self.fexml.set_element(
'./cac:ParentDocumentLineReference/cac:DocumentReference/cac:Attachment/cac:ExternalReference/cbc:Description',
' ')
self._build_attachment(application_response))
self.fexml.placeholder_for(
'./cac:ParentDocumentLineReference/cac:DocumentReference/cac:ResultOfVerification')
self.fexml.set_element(
@@ -223,5 +214,14 @@ class AttachedDocument():
'./cac:ParentDocumentLineReference/cac:DocumentReference/cac:ResultOfVerification/cbc:ValidationTime',
'10:35:11-05:00')
def _build_attachment(self, DIANInvoiceXML):
document = (
'<?xml version="1.0" encoding="UTF-8" standalone="no"?>'
) + DIANInvoiceXML.tostring()
attachment = "<![CDATA[{}]]>".format(
document)
return attachment
def toFachoXML(self):
return self.fexml