Code Duplication    Length = 73-76 lines in 4 locations

src/Elements/Contribuicoes/M300.php 1 location

@@ 9-84 (lines=76) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class M300 extends Element implements ElementInterface
10
{
11
    const REG = 'M300';
12
    const LEVEL = 2;
13
    const PARENT = 'M001';
14
15
    protected $parameters = [
16
        'COD_CONT' => [
17
            'type' => 'string',
18
            'regex' => '^.{0,2}$',
19
            'required' => false,
20
            'info' => 'Código da contribuição social diferida em períodos anteriores, conforme a Tabela ' .
21
                '4.3.5. ',
22
            'format' => ''
23
        ],
24
        'VL_CONT_APUR_DIFER' => [
25
            'type' => 'numeric',
26
            'regex' => '^\d+(\.\d*)?|\.\d+$',
27
            'required' => false,
28
            'info' => 'Valor da Contribuição Apurada, diferida em períodos anteriores. ',
29
            'format' => '15v2'
30
        ],
31
        'NAT_CRED_DESC' => [
32
            'type' => 'string',
33
            'regex' => '^(1|2|3|4)$',
34
            'required' => false,
35
            'info' => 'Natureza do Crédito Diferido, vinculado à receita tributada no mercado interno, a ' .
36
                'descontar ' .
37
                ' 01 – Crédito a Alíquota Básica ' .
38
                ' 02 – Crédito a Alíquota Diferenciada ' .
39
                ' 03 – Crédito a Alíquota por Unidade de Produto ' .
40
                ' 04 – Crédito Presumido da Agroindústria. ',
41
            'format' => ''
42
        ],
43
        'VL_CRED_DESC_DIFER' => [
44
            'type' => 'numeric',
45
            'regex' => '^\d+(\.\d*)?|\.\d+$',
46
            'required' => false,
47
            'info' => 'Valor do Crédito a Descontar vinculado à contribuição diferida. ',
48
            'format' => '15v2'
49
        ],
50
        'VL_CONT_DIFER_ANT' => [
51
            'type' => 'numeric',
52
            'regex' => '^(3)$',
53
            'required' => false,
54
            'info' => 'Valor da Contribuição a Recolher, diferida em períodos anteriores (Campo 03 – Campo ' .
55
                '05) ',
56
            'format' => '15v2'
57
        ],
58
        'PER_APUR' => [
59
            'type' => 'numeric',
60
            'regex' => '^(\d{6})$',
61
            'required' => false,
62
            'info' => 'Período de apuração da contribuição social e dos créditos diferidos (MMAAAA) ',
63
            'format' => ''
64
        ],
65
        'DT_RECEB' => [
66
            'type' => 'string',
67
            'regex' => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
68
            'required' => false,
69
            'info' => 'Data de recebimento da receita, objeto de diferimento ',
70
            'format' => ''
71
        ],
72
73
    ];
74
75
    /**
76
     * Constructor
77
     * @param \stdClass $std
78
     */
79
    public function __construct(\stdClass $std)
80
    {
81
        parent::__construct(self::REG);
82
        $this->std = $this->standarize($std);
83
    }
84
}
85

src/Elements/ICMSIPI/B460.php 1 location

@@ 9-84 (lines=76) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class B460 extends Element implements ElementInterface
10
{
11
    const REG = 'B460';
12
    const LEVEL = 2;
13
    const PARENT = 'B001';
14
15
    protected $parameters = [
16
        'IND_DED' => [
17
            'type'     => 'string',
18
            'regex'    => '^[0|1|2|9]$',
19
            'required' => true,
20
            'info'     => 'Indicador do tipo de dedução: '
21
            .'0- Compensação do ISS calculado a maior; '
22
            .'1- Benefício fiscal por incentivo à cultura; '
23
            .'2- Decisão administrativa ou judicial; '
24
            .'9- Outros',
25
            'format'   => ''
26
        ],
27
        'VL_DED' => [
28
            'type'     => 'numeric',
29
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
30
            'required' => true,
31
            'info'     => 'Valor da dedução',
32
            'format'   => '15v2'
33
        ],
34
        'NUM_PROC' => [
35
            'type'     => 'string',
36
            'regex'    => '^.*$',
37
            'required' => false,
38
            'info'     => 'Número do processo ao qual o ajuste está vinculado, se houver',
39
            'format'   => ''
40
        ],
41
        'IND_PROC' => [
42
            'type'     => 'string',
43
            'regex'    => '^[0|1|2|9]$',
44
            'required' => false,
45
            'info'     => 'Indicador da origem do processo: '
46
            .'0- Sefin; '
47
            .'1- Justiça Federal; '
48
            .'2- Justiça Estadual; '
49
            .'9- Outros',
50
            'format'   => ''
51
        ],
52
        'PROC' => [
53
            'type'     => 'string',
54
            'regex'    => '^.*$',
55
            'required' => false,
56
            'info'     => 'Descrição do processo que embasou o lançamento',
57
            'format'   => ''
58
        ],
59
        'COD_INF_OBS' => [
60
            'type'     => 'string',
61
            'regex'    => '^.{1,60}$',
62
            'required' => true,
63
            'info'     => 'Código da observação do lançamento fiscal (campo 02 do Registro 0460)',
64
            'format'   => ''
65
        ],
66
        'IND_OBR' => [
67
            'type'     => 'string',
68
            'regex'    => '^[0|1|2]$',
69
            'required' => true,
70
            'info'     => 'Indicador da obrigação onde será aplicada a dedução:',
71
            'format'   => ''
72
        ]
73
    ];
74
75
    /**
76
     * Constructor
77
     * @param \stdClass $std
78
     */
79
    public function __construct(\stdClass $std)
80
    {
81
        parent::__construct(self::REG);
82
        $this->std = $this->standarize($std);
83
    }
84
}
85

src/Elements/ICMSIPI/D161.php 1 location

@@ 9-82 (lines=74) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class D161 extends Element implements ElementInterface
10
{
11
    const REG = 'D161';
12
    const LEVEL = 4;
13
    const PARENT = '';
14
15
    protected $parameters = [
16
        'IND_CARGA' => [
17
            'type'     => 'numeric',
18
            'regex'    => '',
19
            'required' => true,
20
            'info'     => 'Indicador do tipo de transporte da carga coletada: 0 - Rodoviário'
21
            . '1 - Ferroviário'
22
            . '2 - Rodo-Ferroviário'
23
            . '3 - Aquaviário'
24
            . '4 - Dutoviário'
25
            . '5 - Aéreo'
26
            . '9 - Outros',
27
            'format'   => ''
28
        ],
29
        'CNPJ_CPF_COL' => [
30
            'type'     => 'string',
31
            'regex'    => '^[0-9]{14}$',
32
            'required' => true,
33
            'info'     => 'Número do CNPJ ou CPF do local da coleta',
34
            'format'   => ''
35
        ],
36
        'IE_COL' => [
37
            'type'     => 'string',
38
            'regex'    => '^[0-9]{14}$',
39
            'required' => true,
40
            'info'     => 'Inscrição Estadual do contribuinte do local de coleta',
41
            'format'   => ''
42
        ],
43
        'COD_MUN_COL' => [
44
            'type'     => 'numeric',
45
            'regex'    => '',
46
            'required' => true,
47
            'info'     => 'Código do Município do local de coleta, conforme tabela IBGE',
48
            'format'   => ''
49
        ],
50
        'CNPJ_CPF_ENTG' => [
51
            'type'     => 'string',
52
            'regex'    => '^[0-9]{14}$',
53
            'required' => true,
54
            'info'     => 'Número do CNPJ ou CPF do local da entrega',
55
            'format'   => ''
56
        ],
57
        'IE_ENTG' => [
58
            'type'     => 'string',
59
            'regex'    => '^[0-9]{14}$',
60
            'required' => true,
61
            'info'     => 'Inscrição Estadual do contribuinte do local de entrega',
62
            'format'   => ''
63
        ],
64
        'COD_MUN_ENTG' => [
65
            'type'     => 'numeric',
66
            'regex' => '^[0-9]{7}$',
67
            'required' => true,
68
            'info'     => 'Código do Município do local de entrega, conforme tabela IBGE',
69
            'format'   => ''
70
        ]
71
    ];
72
73
    /**
74
     * Constructor
75
     * @param \stdClass $std
76
     */
77
    public function __construct(\stdClass $std)
78
    {
79
        parent::__construct(self::REG);
80
        $this->std = $this->standarize($std);
81
    }
82
}
83

src/Elements/ICMSIPI/Z1700.php 1 location

@@ 9-81 (lines=73) @@
6
use NFePHP\EFD\Common\ElementInterface;
7
use \stdClass;
8
9
class Z1700 extends Element implements ElementInterface
10
{
11
    const REG = '1700';
12
    const LEVEL = 2;
13
    const PARENT = '1001';
14
15
    protected $parameters = [
16
        'COD_DISP' => [
17
            'type'     => 'string',
18
            'regex'    => '^0[0-5]$',
19
            'required' => true,
20
            'info'     => 'Código dispositivo autorizado: '
21
            .'00 - Formulário de Segurança – impressor autônomo '
22
            .'01 - FS-DA – Formulário de Segurança para Impressão de DANFE '
23
            .'02 – Formulário de segurança - NF-e '
24
            .'03 - Formulário Contínuo 04 – Blocos '
25
            .'05 - Jogos Soltos',
26
            'format'   => ''
27
        ],
28
        'COD_MOD' => [
29
            'type'     => 'string',
30
            'regex'    => '^.{2}$',
31
            'required' => true,
32
            'info'     => 'Código do modelo do dispositivo autorizado, conforme a Tabela 4.1.1',
33
            'format'   => ''
34
        ],
35
        'SER' => [
36
            'type'     => 'string',
37
            'regex'    => '^.{1,4}$',
38
            'required' => false,
39
            'info'     => 'Série do dispositivo autorizado',
40
            'format'   => ''
41
        ],
42
        'SUB' => [
43
            'type'     => 'string',
44
            'regex'    => '^.{1,3}$',
45
            'required' => false,
46
            'info'     => 'Subsérie do dispositivo autorizado',
47
            'format'   => ''
48
        ],
49
        'NUM_DOC_INI' => [
50
            'type'     => 'integer',
51
            'regex'    => '^\d{1,12}$',
52
            'required' => true,
53
            'info'     => 'Número do dispositivo autorizado (utilizado) inicial',
54
            'format'   => ''
55
        ],
56
        'NUM_DOC_FIN' => [
57
            'type'     => 'integer',
58
            'regex'    => '^\d{1,12}$',
59
            'required' => true,
60
            'info'     => 'Número do dispositivo autorizado (utilizado) final',
61
            'format'   => ''
62
        ],
63
        'NUM_AUT' => [
64
            'type'     => 'string',
65
            'regex'    => '^\d{1,60}$',
66
            'required' => true,
67
            'info'     => 'Número da autorização, conforme dispositivo autorizado',
68
            'format'   => ''
69
        ]
70
    ];
71
72
    /**
73
     * Constructor
74
     * @param \stdClass $std
75
     */
76
    public function __construct(\stdClass $std)
77
    {
78
        parent::__construct(self::REG);
79
        $this->std = $this->standarize($std);
80
    }
81
}
82