Code Duplication    Length = 41-44 lines in 5 locations

src/Elements/I053.php 1 location

@@ 13-55 (lines=43) @@
10
 * Elemento I053 do Bloco I OBRIGATÓRIO [0:N]
11
 * REGISTRO I053: SUBCONTAS CORRELATAS
12
 */
13
class I053 extends Element implements ElementInterface
14
{
15
    const REG = 'I053';
16
    const LEVEL = 4;
17
    const PARENT = '';
18
19
    protected $parameters = [
20
        'cod_idt'     => [
21
            'type'     => 'string',
22
            'regex'    => '^[A-Za-z0-9]{6}$',
23
            'required' => true,
24
            'info'     => 'Codigo de identificacao do grupo de conta-subcontas.',
25
            'format'   => ''
26
        ],
27
        'cod_cnt_corr'  => [
28
            'type'     => 'string',
29
            'regex'    => '^[A-Za-z0-9]$',
30
            'required' => true,
31
            'info'     => 'Código da subconta correlata (deve estar no plano de contas '
32
                . 'e só pode estar relacionada a um único grupo)',
33
            'format'   => ''
34
        ],
35
        'nat_sub_cnt'  => [
36
            'type'     => 'string',
37
            'regex'    => '^[A-Za-z0-9]{2}$',
38
            'required' => true,
39
            'info'     => 'Natureza da subconta correlata (conforme tabela de '
40
                . 'natureza da subconta publicada no Sped )',
41
            'format'   => ''
42
        ]
43
    ];
44
45
    /**
46
     * Constructor
47
     * @param \stdClass $std
48
     */
49
    public function __construct(\stdClass $std)
50
    {
51
        parent::__construct(self::REG);
52
        $this->std = $this->standarize($std);
53
        $this->postValidation();
54
    }
55
}
56

src/Elements/I100.php 1 location

@@ 13-53 (lines=41) @@
10
 * Elemento I100 do Bloco I OBRIGATÓRIO [0:N]
11
 * REGISTRO I100: CENTRO DE CUSTOS
12
 */
13
class I100 extends Element implements ElementInterface
14
{
15
    const REG = 'I100';
16
    const LEVEL = 3;
17
    const PARENT = '';
18
19
    protected $parameters = [
20
        'dt_alt'       => [
21
            'type'     => 'string',
22
            'regex'    => '^(0[1-9]|[1-2][0-9]|31(?!(?:0[2469]|11))|30(?!02))(0[1-9]|1[0-2])([12]\d{3})$',
23
            'required' => true,
24
            'info'     => 'Data de inclusao/alteracao.',
25
            'format'   => ''
26
        ],
27
        'cod_ccus'  => [
28
            'type'     => 'string',
29
            'regex'    => '^[A-Za-z0-9]$',
30
            'required' => true,
31
            'info'     => 'Código do Centro de Custos',
32
            'format'   => ''
33
        ],
34
        'ccus'  => [
35
            'type'     => 'string',
36
            'regex'    => '^[A-Za-z0-9]$',
37
            'required' => true,
38
            'info'     => 'Nome do Centro de Custo',
39
            'format'   => ''
40
        ]
41
    ];
42
43
    /**
44
     * Constructor
45
     * @param \stdClass $std
46
     */
47
    public function __construct(\stdClass $std)
48
    {
49
        parent::__construct(self::REG);
50
        $this->std = $this->standarize($std);
51
        $this->postValidation();
52
    }
53
}
54

src/Elements/J935.php 1 location

@@ 15-55 (lines=41) @@
12
 *
13
 * OBS.: Fazer verificacao de tamanho do campo ident_cpf_cnpj_t quando preencher os dados;
14
 */
15
class J935 extends Element implements ElementInterface
16
{
17
    const REG = 'J935';
18
    const LEVEL = 3;
19
    const PARENT = '';
20
21
    protected $parameters = [
22
        'ni_cpf_cnpj' => [
23
            'type'     => 'numeric',
24
            'regex'    => '^[0-9]$',
25
            'required' => true,
26
            'info'     => 'CPF do auditor independente/CNPJ da pessoa jurídica de auditoria independente.',
27
            'format'   => ''
28
        ],
29
        'nome_auditor_firma' => [
30
            'type'     => 'string',
31
            'regex'    => '^[A-Za-z]$',
32
            'required' => true,
33
            'info'     => 'Nome do auditor independente ou pessoa jurídica de auditoria independente.',
34
            'format'   => ''
35
        ],
36
        'cod_assin_t' => [
37
            'type'     => 'string',
38
            'regex'    => '^[A-Za-z0-9]{3}$',
39
            'required' => false,
40
            'info'     => 'Registro do auditor independente na CVM.',
41
            'format'   => ''
42
        ]
43
    ];
44
45
    /**
46
     * Constructor
47
     * @param \stdClass $std
48
     */
49
    public function __construct(\stdClass $std)
50
    {
51
        parent::__construct(self::REG);
52
        $this->std = $this->standarize($std);
53
        $this->postValidation();
54
    }
55
}
56

src/Elements/K115.php 1 location

@@ 13-56 (lines=44) @@
10
 * Elemento K115 do Bloco K OBRIGATÓRIO [1:1]
11
 * REGISTRO K115: ABERTURA DO ARQUIVO DIGITAL E IDENTIFICAÇÃO DO EMPRESÁRIO OU DA SOCIEDADE EMPRESÁRIA
12
 */
13
class K115 extends Element implements ElementInterface
14
{
15
    const REG = 'K115';
16
    const LEVEL = 5;
17
    const PARENT = '';
18
19
    protected $parameters = [
20
        'emp_cod_part'        => [
21
            'type'     => 'numeric',
22
            'regex'    => '^[0-9]{4}$',
23
            'required' => true,
24
            'info'     => 'Código da empresa envolvida na operação.',
25
            'format'   => ''
26
        ],
27
        'evento' => [
28
            'type'     => 'numeric',
29
            'regex'    => '^(1|2|3)$',
30
            'required' => true,
31
            'info'     => 'Condição da empresa relacionada à operação:'
32
            .' 1 – Sucessora;'
33
            .' 2 – Adquirente;'
34
            .' 3 – Alienante.',
35
            'format'   => ''
36
        ],
37
        'per_evt'        => [
38
            'type'     => 'numeric',
39
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
40
            'required' => true,
41
            'info'     => 'Percentual da empresa participante envolvida na operação.',
42
            'format'   => '8v4'
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
        $this->postValidation();
55
    }
56
}
57

src/Elements/K310.php 1 location

@@ 13-56 (lines=44) @@
10
 * Elemento K310 do Bloco K OBRIGATÓRIO [1:1]
11
 * REGISTRO K310: ABERTURA DO ARQUIVO DIGITAL E IDENTIFICAÇÃO DO EMPRESÁRIO OU DA SOCIEDADE EMPRESÁRIA
12
 */
13
class K310 extends Element implements ElementInterface
14
{
15
    const REG = 'K310';
16
    const LEVEL = 4;
17
    const PARENT = '';
18
19
    protected $parameters = [
20
        'emp_cod_parte'      => [
21
            'type'     => 'numeric',
22
            'regex'    => '^[0-9]{4}$',
23
            'required' => true,
24
            'info'     => 'Código da empresa detentora do valor aglutinado que foi eliminado',
25
            'format'   => ''
26
        ],
27
        'valor'        => [
28
            'type'     => 'numeric',
29
            'regex'    => '^\d+(\.\d*)?|\.\d+$',
30
            'required' => true,
31
            'info'     => 'Parcela do valor eliminado total',
32
            'format'   => '19v2'
33
        ],
34
        'ind_valor' => [
35
            'type'     => 'string',
36
            'regex'    => '^(D|C)$',
37
            'required' => true,
38
            'info'     => 'Indicador da situação do valor eliminado:'
39
                . ' D – Devedor;'
40
                . ' C – Credor.',
41
            'format'   => ''
42
        ]
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
        $this->postValidation();
55
    }
56
}
57