LibreDTE

BuildAecJob extends AbstractJob
in package
implements JobInterface

Construye el XML `AEC` firmado.

Soporta dos modos según la fuente del bag:

  • Primera cesión (DocumentInterface): orquesta BuildDteCedidoJob y BuildCesionJob, ensambla el AEC con un DTECedido y una Cesion, y firma el DocumentoAEC con ID LibreDTE_AEC.

  • Re-cesión (Aec): extrae el DTECedido y las Cesion existentes del AEC recibido via DOM, construye una nueva Cesion con seq = N+1, y re-ensambla y re-firma el DocumentoAEC con todos los elementos.

Attributes
#[Job]
$name: 'build_aec'
$worker: 'aec'
$component: 'ownership_transfer'
$package: 'billing'

Table of Contents

Interfaces

JobInterface

Constants

NS  = 'http://www.sii.cl/SiiDte'

Properties

$buildCesionJob  : BuildCesionJob
$buildDteCedidoJob  : BuildDteCedidoJob
$signatureService  : SignatureServiceInterface
$xmlEncoder  : XmlEncoderInterface

Methods

__construct()  : mixed
build()  : Aec
Construye y firma el XML `AEC`.
assembleAndSign()  : Aec
Ensambla el XML del AEC con los nodos ya firmados y lo firma.
buildPrimeraCesion()  : Aec
Construye el AEC para la primera cesión a partir de un `DocumentInterface`.
buildRecesion()  : Aec
Construye el AEC para una re-cesión a partir de un `Aec` existente.
stripXmlDeclaration()  : string
Elimina la declaración `<?xml...?>` de un string XML.

Constants

Properties

$signatureService

private SignatureServiceInterface $signatureService

Methods

build()

Construye y firma el XML `AEC`.

public build(AecBag $bag) : Aec
Parameters
$bag : AecBag

Contenedor con todos los datos necesarios.

Return values
Aec

assembleAndSign()

Ensambla el XML del AEC con los nodos ya firmados y lo firma.

private assembleAndSign(array<string, mixed> $cedente, array<string, mixed> $cesionario, string $dteCedidoXml, array<string|int, string> $cesionesXml, CertificateInterface|null $certificate) : Aec
Parameters
$cedente : array<string, mixed>
$cesionario : array<string, mixed>
$dteCedidoXml : string

XML del DTECedido (sin declaración ).

$cesionesXml : array<string|int, string>

XMLs de todas las Cesion (sin declaración).

$certificate : CertificateInterface|null
Return values
Aec

buildPrimeraCesion()

Construye el AEC para la primera cesión a partir de un `DocumentInterface`.

private buildPrimeraCesion(AecBag $bag) : Aec
Parameters
$bag : AecBag
Return values
Aec

buildRecesion()

Construye el AEC para una re-cesión a partir de un `Aec` existente.

private buildRecesion(AecBag $bag) : Aec
Parameters
$bag : AecBag
Return values
Aec

stripXmlDeclaration()

Elimina la declaración `<?xml...?>` de un string XML.

private stripXmlDeclaration(string $xml) : string
Parameters
$xml : string
Return values
string

        
On this page

Search results