1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
namespace NFePHP\ECD\Blocks; |
4
|
|
|
|
5
|
|
|
use NFePHP\ECD\Elements; |
6
|
|
|
use NFePHP\ECD\Common\Block; |
7
|
|
|
use NFePHP\ECD\Common\BlockInterface; |
8
|
|
|
|
9
|
|
|
/** |
10
|
|
|
* Classe constutora do bloco 0 Abertura, Identificação e Referências |
11
|
|
|
* |
12
|
|
|
* Esta classe irá usar um recurso para invocar as classes de cada um dos elementos |
13
|
|
|
* constituintes listados |
14
|
|
|
* |
15
|
|
|
* NOTA: usada a letra z no inicio do elemento devido ao fato de não poder chamar classes |
16
|
|
|
* apenas com numeros e também para não confundir os com elementos do bloco B |
17
|
|
|
* |
18
|
|
|
* @method Elements\Z0000 z0000(\stdClass $std) Constructor element 0000 |
19
|
|
|
* @method Elements\Z0001 z0001(\stdClass $std) Constructor element 0001 |
20
|
|
|
* @method Elements\Z0007 z0007(\stdClass $std) Constructor element 0007 |
21
|
|
|
* @method Elements\Z0020 z0020(\stdClass $std) Constructor element 0020 |
22
|
|
|
* @method Elements\Z0035 z0035(\stdClass $std) Constructor element 0035 |
23
|
|
|
* @method Elements\Z0155 z0150(\stdClass $std) Constructor element 0150 |
24
|
|
|
* @method Elements\Z0180 z0180(\stdClass $std) Constructor element 0180 |
25
|
|
|
*/ |
26
|
|
|
final class Block0 extends Block implements BlockInterface |
27
|
|
|
{ |
28
|
|
|
const TOTAL = '0990'; |
29
|
|
|
|
30
|
|
|
public $elements = [ |
31
|
|
|
'z0000' => ['class' => Elements\Z0000::class, 'level' => 0, 'type' => 'single'], |
32
|
|
|
'z0001' => ['class' => Elements\Z0001::class, 'level' => 1, 'type' => 'single'], |
33
|
|
|
'z0007' => ['class' => Elements\Z0007::class, 'level' => 2, 'type' => 'multiple'], |
34
|
|
|
'z0015' => ['class' => Elements\Z0020::class, 'level' => 2, 'type' => 'multiple'], |
35
|
|
|
'z0100' => ['class' => Elements\Z0035::class, 'level' => 2, 'type' => 'multiple'], |
36
|
|
|
'z0150' => ['class' => Elements\Z0150::class, 'level' => 2, 'type' => 'multiple'], |
37
|
|
|
'z0180' => ['class' => Elements\Z0180::class, 'level' => 3, 'type' => 'multiple'], |
38
|
|
|
]; |
39
|
|
|
|
40
|
|
|
public function __construct() |
41
|
|
|
{ |
42
|
|
|
parent::__construct(self::TOTAL); |
43
|
|
|
} |
44
|
|
|
} |
45
|
|
|
|