Code Duplication    Length = 47-62 lines in 23 locations

src/Elements/Contribuicoes/M400.php 1 location

@@ 9-58 (lines=50) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class M400 extends Element implements ElementInterface
10
{
11
    const REG = 'M400';
12
    const LEVEL = 2;
13
    const PARENT = 'M001';
14
15
    protected $parameters = [
16
        'CST_PIS' => [
17
            'type' => 'string',
18
            'regex' => '^((0[1-9])|49|99)$',
19
            'required' => false,
20
            'info' => 'Código de Situação Tributária – CST das demais receitas auferidas no período, sem ' .
21
                '4.3.3. ' .
22
                'incidência da contribuição, ou sem contribuição apurada a pagar, conforme a Tabela ',
23
            'format' => ''
24
        ],
25
        'VL_TOT_REC' => [
26
            'type' => 'numeric',
27
            'regex' => '^\d+(\.\d*)?|\.\d+$',
28
            'required' => false,
29
            'info' => 'Valor total da receita bruta no período. ',
30
            'format' => '15v2'
31
        ],
32
        'COD_CTA' => [
33
            'type' => 'string',
34
            'regex' => '^.{0,255}$',
35
            'required' => false,
36
            'info' => 'Código da conta analítica contábil debitada/creditada. ',
37
            'format' => ''
38
        ],
39
        'DESC_COMPL' => [
40
            'type' => 'string',
41
            'regex' => '^(.*)$',
42
            'required' => false,
43
            'info' => 'Descrição Complementar da Natureza da Receita. ',
44
            'format' => ''
45
        ],
46
47
    ];
48
49
    /**
50
     * Constructor
51
     * @param \stdClass $std
52
     */
53
    public function __construct(\stdClass $std)
54
    {
55
        parent::__construct(self::REG);
56
        $this->std = $this->standarize($std);
57
    }
58
}
59

src/Elements/Contribuicoes/M800.php 1 location

@@ 9-58 (lines=50) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class M800 extends Element implements ElementInterface
10
{
11
    const REG = 'M800';
12
    const LEVEL = 2;
13
    const PARENT = 'M001';
14
15
    protected $parameters = [
16
        'CST_COFINS' => [
17
            'type' => 'string',
18
            'regex' => '^0[4-9]{1}$',
19
            'required' => false,
20
            'info' => 'Código de Situação Tributária – CST das demais receitas auferidas no período, sem ' .
21
                '4.3.4. ' .
22
                'incidência da contribuição, ou sem contribuição apurada a pagar, conforme a Tabela ',
23
            'format' => ''
24
        ],
25
        'VL_TOT_REC' => [
26
            'type' => 'numeric',
27
            'regex' => '^\d+(\.\d*)?|\.\d+$',
28
            'required' => false,
29
            'info' => 'Valor total da receita bruta no período. ',
30
            'format' => '15v2'
31
        ],
32
        'COD_CTA' => [
33
            'type' => 'string',
34
            'regex' => '^.{0,255}$',
35
            'required' => false,
36
            'info' => 'Código da conta analítica contábil debitada/creditada. ',
37
            'format' => ''
38
        ],
39
        'DESC_COMPL' => [
40
            'type' => 'string',
41
            'regex' => '^(.*)$',
42
            'required' => false,
43
            'info' => 'Descrição Complementar da Natureza da Receita. ',
44
            'format' => ''
45
        ],
46
47
    ];
48
49
    /**
50
     * Constructor
51
     * @param \stdClass $std
52
     */
53
    public function __construct(\stdClass $std)
54
    {
55
        parent::__construct(self::REG);
56
        $this->std = $this->standarize($std);
57
    }
58
}
59

src/Elements/Contribuicoes/P110.php 1 location

@@ 9-56 (lines=48) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class P110 extends Element implements ElementInterface
10
{
11
    const REG = 'P110';
12
    const LEVEL = 4;
13
    const PARENT = 'P100';
14
15
    protected $parameters = [
16
        'NUM_CAMPO' => [
17
            'type' => 'string',
18
            'regex' => '^.{2}$',
19
            'required' => false,
20
            'info' => 'Informar o número do campo do registro “P100”, objeto de detalhamento neste registro. ',
21
            'format' => ''
22
        ],
23
        'COD_DET' => [
24
            'type' => 'string',
25
            'regex' => '^.{8}$',
26
            'required' => false,
27
            'info' => 'Código do tipo de detalhamento, conforme Tabela 5.1.2 ',
28
            'format' => ''
29
        ],
30
        'DET_VALOR' => [
31
            'type' => 'numeric',
32
            'regex' => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => false,
34
            'info' => 'Valor detalhado referente ao campo 02 deste registro ',
35
            'format' => '15v2'
36
        ],
37
        'INF_COMPL' => [
38
            'type' => 'string',
39
            'regex' => '^(.*)$',
40
            'required' => false,
41
            'info' => 'Informação complementar do detalhamento. ',
42
            'format' => ''
43
        ],
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

src/Elements/Contribuicoes/Z0110.php 1 location

@@ 9-70 (lines=62) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z0110 extends Element implements ElementInterface
10
{
11
    const REG = '0110';
12
    const LEVEL = 2;
13
    const PARENT = '000';
14
15
    protected $parameters = [
16
        'COD_INC_TRIB' => [
17
            'type' => 'numeric',
18
            'regex' => '^([1-3]{1})$',
19
            'required' => false,
20
            'info' => 'Código indicador da incidência tributária no período: 
21
            1 – Escrituração de operações com incidência exclusivamente no regime não-cumulativo; 
22
            2 – Escrituração de operações com incidência exclusivamente no regime cumulativo; 
23
            3 – Escrituração de operações com incidência nos regimes não-cumulativo e cumulativo.',
24
            'format' => ''
25
        ],
26
        'IND_APRO_CRED' => [
27
            'type' => 'numeric',
28
            'regex' => '^([1-2]{1})$',
29
            'required' => false,
30
            'info' => 'Código indicador de método de apropriação de créditos comuns, 
31
            no caso de incidência no regime não-cumulativo (COD_INC_TRIB = 1 ou 3): 
32
            1 – Método de Apropriação Direta; 2 – Método de Rateio Proporcional (Receita Bruta)',
33
            'format' => ''
34
        ],
35
        'COD_TIPO_CONT' => [
36
            'type' => 'numeric',
37
            'regex' => '^([1-2]{1})$',
38
            'required' => false,
39
            'info' => 'Código indicador do Tipo de Contribuição Apurada no Período 
40
            1 – Apuração da Contribuição Exclusivamente a Alíquota Básica 
41
            2 – Apuração da Contribuição a Alíquotas Específicas (Diferenciadas e/ou por 
42
            Unidade de Medida de Produto)',
43
            'format' => ''
44
        ],
45
        'IND_REG_CUM' => [
46
            'type' => 'numeric',
47
            'regex' => '^(1|2|9)$',
48
            'required' => false,
49
            'info' => 'Código indicador do critério de escrituração e apuração adotado, 
50
            no caso de incidência exclusivamente no regime cumulativo (COD_INC_TRIB = 2), 
51
            pela pessoa jurídica submetida ao regime de tributação com base no lucro presumido: 
52
            1 – Regime de Caixa – Escrituração consolidada (Registro F500); 
53
            2 – Regime de Competência - Escrituração consolidada (Registro F550); 
54
            9 – Regime de Competência - Escrituração detalhada, com base 
55
            nos registros dos Blocos “A”, “C”, “D” e “F”.',
56
            'format' => ''
57
        ],
58
59
    ];
60
61
    /**
62
     * Constructor
63
     * @param \stdClass $std
64
     */
65
    public function __construct(\stdClass $std)
66
    {
67
        parent::__construct(self::REG);
68
        $this->std = $this->standarize($std);
69
    }
70
}
71

src/Elements/Contribuicoes/Z0205.php 1 location

@@ 9-56 (lines=48) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z0205 extends Element implements ElementInterface
10
{
11
    const REG = '0205';
12
    const LEVEL = 4;
13
    const PARENT = '0200';
14
15
    protected $parameters = [
16
        'DESCR_ANT_ITEM' => [
17
            'type' => 'string',
18
            'regex' => '^(.*)$',
19
            'required' => false,
20
            'info' => 'Descrição anterior do item',
21
            'format' => ''
22
        ],
23
        'DT_INI' => [
24
            'type' => 'string',
25
            'regex' => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
26
            'required' => false,
27
            'info' => 'Data inicial de utilização da descrição do item',
28
            'format' => ''
29
        ],
30
        'DT_FIM' => [
31
            'type' => 'string',
32
            'regex' => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
33
            'required' => false,
34
            'info' => 'Data final de utilização da descrição do item',
35
            'format' => ''
36
        ],
37
        'COD_ANT_ITEM' => [
38
            'type' => 'string',
39
            'regex' => '^.{0,60}$',
40
            'required' => false,
41
            'info' => 'Código anterior do item com relação à última informação apresentada.',
42
            'format' => ''
43
        ],
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

src/Elements/Contribuicoes/Z1220.php 1 location

@@ 9-58 (lines=50) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z1220 extends Element implements ElementInterface
10
{
11
    const REG = '1220';
12
    const LEVEL = 3;
13
    const PARENT = '1200';
14
15
    protected $parameters = [
16
        'PER_APU_CRED' => [
17
            'type' => 'numeric',
18
            'regex' => '^(\d{0,6})$',
19
            'required' => false,
20
            'info' => 'Período de Apuração do Crédito (MM/AAAA) ',
21
            'format' => ''
22
        ],
23
        'ORIG_CRED' => [
24
            'type' => 'numeric',
25
            'regex' => '^(1|2)$',
26
            'required' => false,
27
            'info' => 'Indicador da origem do crédito ' .
28
                ' 01 – Crédito decorrente de operações próprias ' .
29
                ' 02 – Crédito transferido por pessoa jurídica sucedida. ',
30
            'format' => ''
31
        ],
32
        'COD_CRED' => [
33
            'type' => 'numeric',
34
            'regex' => '^(\d{3})$',
35
            'required' => false,
36
            'info' => 'Código do Tipo do Crédito, conforme Tabela 4.3.6. ',
37
            'format' => ''
38
        ],
39
        'VL_CRED' => [
40
            'type' => 'numeric',
41
            'regex' => '^\d+(\.\d*)?|\.\d+$',
42
            'required' => false,
43
            'info' => 'Valor do Crédito a Descontar ',
44
            'format' => '15v2'
45
        ],
46
47
    ];
48
49
    /**
50
     * Constructor
51
     * @param \stdClass $std
52
     */
53
    public function __construct(\stdClass $std)
54
    {
55
        parent::__construct(self::REG);
56
        $this->std = $this->standarize($std);
57
    }
58
}
59

src/Elements/Contribuicoes/Z1620.php 1 location

@@ 9-58 (lines=50) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z1620 extends Element implements ElementInterface
10
{
11
    const REG = '1620';
12
    const LEVEL = 3;
13
    const PARENT = '1600';
14
15
    protected $parameters = [
16
        'PER_APU_CRED' => [
17
            'type' => 'numeric',
18
            'regex' => '^(\d{0,6})$',
19
            'required' => false,
20
            'info' => 'Período de Apuração do Crédito (MM/AAAA) ',
21
            'format' => ''
22
        ],
23
        'ORIG_CRED' => [
24
            'type' => 'numeric',
25
            'regex' => '^(1|2)$',
26
            'required' => false,
27
            'info' => 'Indicador da origem do crédito ' .
28
                ' 01 – Crédito decorrente de operações próprias ' .
29
                ' 02 – Crédito transferido por pessoa jurídica sucedida. ',
30
            'format' => ''
31
        ],
32
        'COD_CRED' => [
33
            'type' => 'numeric',
34
            'regex' => '^(\d{3})$',
35
            'required' => false,
36
            'info' => 'Código do Tipo do Crédito, conforme Tabela 4.3.6. ',
37
            'format' => ''
38
        ],
39
        'VL_CRED' => [
40
            'type' => 'numeric',
41
            'regex' => '^\d+(\.\d*)?|\.\d+$',
42
            'required' => false,
43
            'info' => 'Valor do Crédito a Descontar ',
44
            'format' => '15v2'
45
        ],
46
47
    ];
48
49
    /**
50
     * Constructor
51
     * @param \stdClass $std
52
     */
53
    public function __construct(\stdClass $std)
54
    {
55
        parent::__construct(self::REG);
56
        $this->std = $this->standarize($std);
57
    }
58
}
59

src/Elements/ICMSIPI/C175.php 1 location

@@ 17-63 (lines=47) @@
14
 * entrada e saída (exceto pelos contribuintes emissores de NF-e), exceto quando se tratar de operações de exportação.
15
 * @package NFePHP\EFD\Elements\ICMSIPI
16
 */
17
class C175 extends Element implements ElementInterface
18
{
19
    const REG = 'C175';
20
    const LEVEL = 4;
21
    const PARENT = 'C170';
22
23
    protected $parameters = [
24
        'IND_VEIC_OPER' => [
25
            'type' => 'string',
26
            'regex' => '^(0|1|2|3|9)$',
27
            'required' => true,
28
            'info' => 'Indicador do tipo de operação com veículo',
29
            'format' => ''
30
        ],
31
        'CNPJ' => [
32
            'type' => 'string',
33
            'regex' => '^[0-9]{14}$',
34
            'required' => false,
35
            'info' => 'CNPJ da Concessionária',
36
            'format' => ''
37
        ],
38
        'UF' => [
39
            'type' => 'string',
40
            'regex' => '^AC|AL|AM|AP|BA|CE|DF|ES|GO|MA|MG|MS|MT|PA|PB|PE|PI|PR|RJ|RN|RO|RR|RS|SC|SE|SP|TO$',
41
            'required' => false,
42
            'info' => 'Sigla da unidade da federação da Concessionária',
43
            'format' => ''
44
        ],
45
        'CHASSI_VEIC' => [
46
            'type' => 'string',
47
            'regex' => '^.{17}$',
48
            'required' => false,
49
            'info' => 'Chassi do veículo',
50
            'format' => ''
51
        ]
52
    ];
53
54
    /**
55
     * Constructor
56
     * @param \stdClass $std
57
     */
58
    public function __construct(\stdClass $std)
59
    {
60
        parent::__construct(self::REG);
61
        $this->std = $this->standarize($std);
62
    }
63
}
64

src/Elements/ICMSIPI/C400.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class C400 extends Element implements ElementInterface
10
{
11
    const REG = 'C400';
12
    const LEVEL = 2;
13
    const PARENT = 'C001';
14
15
    protected $parameters = [
16
        'COD_MOD' => [
17
            'type' => 'string',
18
            'regex' => '^(02|2D|60)$',
19
            'required' => false,
20
            'info' => 'Código do modelo do documento fiscal',
21
            'format' => ''
22
        ],
23
        'ECF_MOD' => [
24
            'type' => 'string',
25
            'regex' => '^.{0,20}$',
26
            'required' => false,
27
            'info' => 'Modelo do equipamento',
28
            'format' => ''
29
        ],
30
        'ECF_FAB' => [
31
            'type' => 'string',
32
            'regex' => '^.{0,21}$',
33
            'required' => false,
34
            'info' => 'Número de série de fabricação do ECF',
35
            'format' => ''
36
        ],
37
        'ECF_CX' => [
38
            'type' => 'numeric',
39
            'regex' => '^(\d{0,3})$',
40
            'required' => false,
41
            'info' => 'Número do caixa atribuído ao ECF',
42
            'format' => ''
43
        ],
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/C420.php 1 location

@@ 9-56 (lines=48) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class C420 extends Element implements ElementInterface
10
{
11
    const REG = 'C420';
12
    const LEVEL = 4;
13
    const PARENT = 'C400';
14
15
    protected $parameters = [
16
        'COD_TOT_PAR' => [
17
            'type' => 'string',
18
            'regex' => '^.{1,7}$',
19
            'required' => true,
20
            'info' => 'Código do totalizador, conforme Tabela 4.4.6',
21
            'format' => ''
22
        ],
23
        'VLR_ACUM_TOT' => [
24
            'type' => 'numeric',
25
            'regex' => '^\d+(\.\d*)?|\.\d+$',
26
            'required' => true,
27
            'info' => 'Valor acumulado no respectiva Redução Z.',
28
            'format' => '15v2'
29
        ],
30
        'NR_TOT' => [
31
            'type' => 'numeric',
32
            'regex' => '^(\d{0,2})$',
33
            'required' => false,
34
            'info' => 'Número do totalizador quando ocorrer mais de uma situação com a mesma carga tributária efetiva.',
35
            'format' => ''
36
        ],
37
        'DESCR_NR_TOT' => [
38
            'type' => 'string',
39
            'regex' => '^(.*)$',
40
            'required' => false,
41
            'info' => 'Descrição da situação tributária relativa ao totalizador parcial, quando houver
42
             mais de um com a mesma carga tributária efetiva.',
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

src/Elements/ICMSIPI/D110.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D110 extends Element implements ElementInterface
10
{
11
    const REG = 'D110';
12
    const LEVEL = 3;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'NUM_ITEM' => [
17
            'type'     => 'numeric',
18
            'regex'    => '^[0-9]{3}$',
19
            'required' => true,
20
            'info'     => 'Número sequencial do item no documento fiscal',
21
            'format'   => ''
22
        ],
23
        'COD_ITEM' => [
24
            'type'     => 'string',
25
            'regex'    => '^[0-9]{60}$',
26
            'required' => true,
27
            'info'     => 'Código do item (campo 02 do Registro 0200)',
28
            'format'   => ''
29
        ],
30
        'VL_SERV' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => true,
34
            'info'     => 'Valor do serviço',
35
            'format'   => '15v2'
36
        ],
37
        'VL_OUT' => [
38
            'type'     => 'numeric',
39
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
40
            'required' => true,
41
            'info'     => 'Outros valores',
42
            'format'   => '15v2'
43
        ]
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/D120.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D120 extends Element implements ElementInterface
10
{
11
    const REG = 'D120';
12
    const LEVEL = 4;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'COD_MUN_ORIG' => [
17
            'type'     => 'numeric',
18
            'regex'    => '',
19
            'required' => true,
20
            'info'     => 'Código do município de origem do serviço, conforme a tabela IBGE',
21
            'format'   => ''
22
        ],
23
        'COD_MUN_DEST' => [
24
            'type'     => 'numeric',
25
            'regex'    => '',
26
            'required' => true,
27
            'info'     => 'Código do município de destino, conforme a tabela IBGE',
28
            'format'   => ''
29
        ],
30
        'VEIC_ID' => [
31
            'type'     => 'string',
32
            'regex'    => '^[0-9]{7}$',
33
            'required' => true,
34
            'info'     => 'Placa de identificação do veículo',
35
            'format'   => ''
36
        ],
37
        'UF_ID' => [
38
            'type'     => 'string',
39
            'regex'    => '^[0-9]{2}$',
40
            'required' => true,
41
            'info'     => 'Sigla da UF da placa do veículo',
42
            'format'   => ''
43
        ]
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/D310.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D310 extends Element implements ElementInterface
10
{
11
    const REG = 'D310';
12
    const LEVEL = 3;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'COD_MUN_ORIG' => [
17
            'type'     => 'numeric',
18
            'regex' => '^[0-9]{7}$',
19
            'required' => true,
20
            'info'     => 'Código do município de origem do serviço, conforme a tabela IBGE',
21
            'format'   => ''
22
        ],
23
        'VL_SERV' => [
24
            'type'     => 'numeric',
25
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
26
            'required' => true,
27
            'info'     => 'Valor total da prestação de serviço',
28
            'format'   => '15v2'
29
        ],
30
        'VL_BC_ICMS' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => true,
34
            'info'     => 'Valor total da base de cálculo do ICMS',
35
            'format'   => '15v2'
36
        ],
37
        'VL_ICMS' => [
38
            'type'     => 'numeric',
39
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
40
            'required' => true,
41
            'info'     => 'Valor total do ICMS',
42
            'format'   => '15v2'
43
        ]
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/D350.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D350 extends Element implements ElementInterface
10
{
11
    const REG = 'D350';
12
    const LEVEL = 2;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'COD_MOD' => [
17
            'type'     => 'string',
18
            'regex'    => '^[0-9]{2}$',
19
            'required' => true,
20
            'info'     => 'Código do modelo do documento fiscal, conforme a tabela 4.1.1',
21
            'format'   => ''
22
        ],
23
        'ECF_MOD' => [
24
            'type'     => 'string',
25
            'regex'    => '^[0-9]{20}$',
26
            'required' => true,
27
            'info'     => 'Modelo do equipamento',
28
            'format'   => ''
29
        ],
30
        'ECF_FAB' => [
31
            'type'     => 'string',
32
            'regex'    => '^[0-9]{21}$',
33
            'required' => true,
34
            'info'     => 'Número de série de fabricação do ECF',
35
            'format'   => ''
36
        ],
37
        'ECF_CX' => [
38
            'type'     => 'numeric',
39
            'regex'    => '^[0-9]{3}$',
40
            'required' => true,
41
            'info'     => 'Número do caixa atribuído ao ECF',
42
            'format'   => ''
43
        ]
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/D365.php 1 location

@@ 9-57 (lines=49) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D365 extends Element implements ElementInterface
10
{
11
    const REG = 'D365';
12
    const LEVEL = 4;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'COD_TOT_PAR' => [
17
            'type'     => 'string',
18
            'regex'    => '^[0-9]{7}$',
19
            'required' => true,
20
            'info'     => 'Código do totalizador, conforme tabela 4.4.6',
21
            'format'   => ''
22
        ],
23
        'VLR_ACUM_TOT' => [
24
            'type'     => 'numeric',
25
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
26
            'required' => true,
27
            'info'     => 'Valor acumulado no totalizador, relativo à respectiva Redução Z',
28
            'format'   => '15v2'
29
        ],
30
        'NR_TOT' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^[0-9]{2}$',
33
            'required' => true,
34
            'info'     => 'Número do totalizador quando ocorrer mais de uma situação com a mesma carga'
35
            .' tributária efetiva',
36
            'format'   => ''
37
        ],
38
        'DESCR_NR_TOT' => [
39
            'type'     => 'string',
40
            'regex'    => '^[0-9]{0}$',
41
            'required' => true,
42
            'info'     => 'Descrição da situação tributária relativa ao totalizador parcial, quando houver'
43
            .' mais de um com a mesma carga tributária efetiva',
44
            'format'   => ''
45
        ]
46
    ];
47
48
    /**
49
     * Constructor
50
     * @param \stdClass $std
51
     */
52
    public function __construct(\stdClass $std)
53
    {
54
        parent::__construct(self::REG);
55
        $this->std = $this->standarize($std);
56
    }
57
}
58

src/Elements/ICMSIPI/D420.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D420 extends Element implements ElementInterface
10
{
11
    const REG = 'D420';
12
    const LEVEL = 3;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'COD_MUN_ORIG' => [
17
            'type'     => 'numeric',
18
            'regex' => '^[0-9]{7}$',
19
            'required' => true,
20
            'info'     => 'Código do município de origem do serviço, conforme a tabela IBGE',
21
            'format'   => ''
22
        ],
23
        'VL_SERV' => [
24
            'type'     => 'numeric',
25
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
26
            'required' => true,
27
            'info'     => 'Valor total da prestação de serviço',
28
            'format'   => '15v2'
29
        ],
30
        'VL_BC_ICMS' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => true,
34
            'info'     => 'Valor total da base de cálculo do ICMS',
35
            'format'   => '15v2'
36
        ],
37
        'VL_ICMS' => [
38
            'type'     => 'numeric',
39
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
40
            'required' => true,
41
            'info'     => 'Valor total do ICMS',
42
            'format'   => '15v2'
43
        ]
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/H030.php 1 location

@@ 14-60 (lines=47) @@
11
 *0 regime de substituição tributária
12
 *
13
 */
14
class H030 extends Element implements ElementInterface
15
{
16
    const REG = 'H030';
17
    const LEVEL = 4;
18
    const PARENT = 'H010';
19
20
    protected $parameters = [
21
        'VL_ICMS_OP' => [
22
            'type'     => 'numeric',
23
            'regex'     => '',
24
            'required' => true,
25
            'info'     => 'Valor médio unitário do ICMS OP',
26
            'format'   => '15v6'
27
        ],
28
        'VL_BC_ICMS_ST' => [
29
            'type'     => 'numeric',
30
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
31
            'required' => true,
32
            'info'     => 'Valor médio unitário da base de cálculo do ICMS ST',
33
            'format'   => '15v6'
34
        ],
35
        'VL_ICMS_ST' => [
36
            'type'     => 'numeric',
37
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
38
            'required' => true,
39
            'info'     => 'Valor médio unitário do ICMS ST',
40
            'format'   => '15v2'
41
        ],
42
        'VL_FCP' => [
43
            'type'     => 'numeric',
44
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
45
            'required' => true,
46
            'info'     => 'Valor médio unitário do FCP',
47
            'format'   => '15v6'
48
        ],
49
    ];
50
    
51
    /**
52
     * Constructor
53
     * @param \stdClass $std
54
     */
55
    public function __construct(\stdClass $std)
56
    {
57
        parent::__construct(self::REG);
58
        $this->std = $this->standarize($std);
59
    }
60
}
61

src/Elements/ICMSIPI/K235.php 1 location

@@ 9-56 (lines=48) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class K235 extends Element implements ElementInterface
10
{
11
    const REG = 'K235';
12
    const LEVEL = 4;
13
    const PARENT = 'K230';
14
15
    protected $parameters = [
16
        'DT_SAIDA' => [
17
            'type'     => 'numeric',
18
            'regex'    => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
19
            'required' => true,
20
            'info'     => 'Data de saída do estoque para alocação ao produto',
21
            'format'   => ''
22
        ],
23
        'COD_ITEM' => [
24
            'type'     => 'string',
25
            'regex'    => '^.{1,60}$',
26
            'required' => true,
27
            'info'     => 'Código do item componente/insumo (campo 02 do Registro 0200)',
28
            'format'   => ''
29
        ],
30
        'QTD' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => true,
34
            'info'     => 'Quantidade consumida do item',
35
            'format'   => '15v6'
36
        ],
37
        'COD_INS_SUBST' => [
38
            'type'     => 'string',
39
            'regex'    => '^.{1,60}$',
40
            'required' => false,
41
            'info'     => 'Código do insumo que foi substituído, '
42
            . 'caso ocorra a substituição (campo 02 do Registro 0210)',
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

src/Elements/ICMSIPI/K255.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class K255 extends Element implements ElementInterface
10
{
11
    const REG = 'K255';
12
    const LEVEL = 4;
13
    const PARENT = 'K250';
14
15
    protected $parameters = [
16
        'DT_CONS' => [
17
            'type'     => 'string',
18
            'regex'    => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
19
            'required' => true,
20
            'info'     => 'Data do reconhecimento do consumo',
21
            'format'   => ''
22
        ],
23
        'COD_ITEM' => [
24
            'type'     => 'string',
25
            'regex'    => '^.{1,60}$',
26
            'required' => true,
27
            'info'     => 'Código do item (campo 02 do Registro 0200)',
28
            'format'   => ''
29
        ],
30
        'QTD' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => true,
34
            'info'     => 'Quantidade de consumo do insumo',
35
            'format'   => '15v3'
36
        ],
37
        'COD_INS_SUBST' => [
38
            'type'     => 'string',
39
            'regex'    => '^.{1,60}$',
40
            'required' => false,
41
            'info'     => 'Código do insumo que foi substituído',
42
            'format'   => ''
43
        ]
44
    ];
45
    
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/K275.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class K275 extends Element implements ElementInterface
10
{
11
    const REG = 'K275';
12
    const LEVEL = 4;
13
    const PARENT = '270';
14
15
    protected $parameters = [
16
        'COD_ITEM' => [
17
            'type'     => 'string',
18
            'regex'    => '^.{1,60}$',
19
            'required' => true,
20
            'info'     => 'Código do item (campo 02 do Registro 0200)',
21
            'format'   => ''
22
        ],
23
        'QTD_COR_POS' => [
24
            'type'     => 'numeric',
25
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
26
            'required' => false,
27
            'info'     => 'Quantidade de correção positiva de apontamento',
28
            'format'   => '15v3'
29
        ],
30
        'QTD_COR_NEG' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => false,
34
            'info'     => 'Quantidade de correção negativa de apontamento',
35
            'format'   => '15v3'
36
        ],
37
        'COD_INS_SUBST' => [
38
            'type'     => 'string',
39
            'regex'    => '^.{1,60}$',
40
            'required' => false,
41
            'info'     => 'Código do insumo que foi substituído',
42
            'format'   => ''
43
        ]
44
    ];
45
    
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56

src/Elements/ICMSIPI/Z0205.php 1 location

@@ 23-69 (lines=47) @@
20
 * NOTA: usada a letra Z no nome da Classe pois os nomes não podem ser exclusivamente
21
 * numeréricos e também para não confundir os com elementos do bloco B
22
 */
23
class Z0205 extends Element implements ElementInterface
24
{
25
    const REG = '0205';
26
    const LEVEL = 3;
27
    const PARENT = '0200';
28
    
29
    protected $parameters = [
30
        'DESCR_ANT_ITEM' => [
31
            'type'     => 'string',
32
            'regex'    => '^.{3,255}$',
33
            'required' => false,
34
            'info'     => 'Descrição anterior do item',
35
            'format'   => ''
36
        ],
37
        'DT_INI' => [
38
            'type'     => 'string',
39
            'regex'    => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
40
            'required' => true,
41
            'info'     => 'Data inicial de utilização da descrição do item',
42
            'format'   => ''
43
        ],
44
        'DT_FIM' => [
45
            'type'     => 'string',
46
            'regex'    => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
47
            'required' => true,
48
            'info'     => 'Data final de utilização da descrição do item',
49
            'format'   => ''
50
        ],
51
        'COD_ANT_ITEM' => [
52
            'type'     => 'string',
53
            'regex'    => '^.{1,60}$',
54
            'required' => false,
55
            'info'     => 'Código anterior do item com relação à última informação apresentada.',
56
            'format'   => ''
57
        ]
58
    ];
59
    
60
    /**
61
     * Constructor
62
     * @param stdClass $std
63
     */
64
    public function __construct(stdClass $std)
65
    {
66
        parent::__construct(self::REG);
67
        $this->std = $this->standarize($std);
68
    }
69
}
70

src/Elements/ICMSIPI/Z1350.php 1 location

@@ 9-57 (lines=49) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z1350 extends Element implements ElementInterface
10
{
11
    const REG = '1350';
12
    const LEVEL = 2;
13
    const PARENT = '1001';
14
15
    protected $parameters = [
16
        'SERIE' => [
17
            'type'     => 'string',
18
            'regex'    => '^.*$',
19
            'required' => true,
20
            'info'     => 'Número de Série da Bomba',
21
            'format'   => ''
22
        ],
23
        'FABRICANTE' => [
24
            'type'     => 'string',
25
            'regex'    => '^.{1,60}$',
26
            'required' => true,
27
            'info'     => 'Nome do Fabricante da Bomba',
28
            'format'   => ''
29
        ],
30
        'MODELO' => [
31
            'type'     => 'string',
32
            'regex'    => '^.*$',
33
            'required' => true,
34
            'info'     => 'Modelo da Bomba',
35
            'format'   => ''
36
        ],
37
        'TIPO_MEDICAO' => [
38
            'type'     => 'string',
39
            'regex'    => '^[0|1]$',
40
            'required' => true,
41
            'info'     => 'Identificador de medição: '
42
            .'0 - analógico; '
43
            .'1 – digital',
44
            'format'   => ''
45
        ]
46
    ];
47
48
    /**
49
     * Constructor
50
     * @param \stdClass $std
51
     */
52
    public function __construct(\stdClass $std)
53
    {
54
        parent::__construct(self::REG);
55
        $this->std = $this->standarize($std);
56
    }
57
}
58

src/Elements/ICMSIPI/Z1975.php 1 location

@@ 9-55 (lines=47) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z1975 extends Element implements ElementInterface
10
{
11
    const REG = '1975';
12
    const LEVEL = 3;
13
    const PARENT = '1970';
14
15
    protected $parameters = [
16
        'ALIQ_IMP_BASE' => [
17
            'type'     => 'numeric',
18
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
19
            'required' => true,
20
            'info'     => 'Alíquota incidente sobre as importações-base',
21
            'format'   => '15v2'
22
        ],
23
        'G3_10' => [
24
            'type'     => 'numeric',
25
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
26
            'required' => true,
27
            'info'     => 'Saídas incentivadas de PI',
28
            'format'   => '15v2'
29
        ],
30
        'G3_11' => [
31
            'type'     => 'numeric',
32
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
33
            'required' => true,
34
            'info'     => 'Importações-base para o crédito presumido',
35
            'format'   => '15v2'
36
        ],
37
        'G3_12' => [
38
            'type'     => 'numeric',
39
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
40
            'required' => true,
41
            'info'     => 'Crédito presumido nas saídas internas',
42
            'format'   => '15v2'
43
        ]
44
    ];
45
46
    /**
47
     * Constructor
48
     * @param \stdClass $std
49
     */
50
    public function __construct(\stdClass $std)
51
    {
52
        parent::__construct(self::REG);
53
        $this->std = $this->standarize($std);
54
    }
55
}
56