Z0400   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 1
lcom 0
cbo 1
dl 0
loc 33
ccs 0
cts 5
cp 0
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 1
1
<?php
2
3
namespace NFePHP\EFD\Elements\ICMSIPI;
4
5
use NFePHP\EFD\Common\Element;
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
/**
10
 * Elemento 0400 do Bloco 0
11
 *
12
 * Este registro tem por objetivo codificar os textos das diferentes
13
 * naturezas  da operação/prestações discriminadas nos documentos fiscais.
14
 * Esta codificação  e suas descrições são livremente criadas e mantidas
15
 * pelo contribuinte.
16
 *
17
 * Este registro não se refere a CFOP. Algumas empresas utilizam outra
18
 * classificação  além das apresentadas nos CFOP. Esta codificação permite
19
 * informar estes agrupamentos próprios.
20
 *
21
 * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente
22
 * numeréricos e também para não confundir os com elementos do bloco B
23
 */
24
class Z0400 extends Element implements ElementInterface
25
{
26
    const REG = '0400';
27
    const LEVEL = 0;
28
    const PARENT = '';
29
    
30
    protected $parameters = [
31
        'COD_NAT' => [
32
            'type'     => 'string',
33
            'regex'    => '^.{1,10}$',
34
            'required' => true,
35
            'info'     => 'Código da natureza da operação/prestação',
36
            'format'   => ''
37
        ],
38
        'DESCR_NAT' => [
39
            'type'     => 'string',
40
            'regex'    => '^.{1,255}$',
41
            'required' => true,
42
            'info'     => 'Descrição da natureza da operação/prestação',
43
            'format'   => ''
44
        ]
45
    ];
46
    
47
    /**
48
     * Constructor
49
     * @param stdClass $std
50
     */
51
    public function __construct(stdClass $std)
52
    {
53
        parent::__construct(self::REG);
54
        $this->std = $this->standarize($std);
55
    }
56
}
57