Passed
Push — main ( ce55f8...f17cc4 )
by Leandro
01:26
created

BoleCode::setDadoBoleto()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 2
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
nc 1
nop 1
1
<?php
2
namespace Itau\API\BoleCode;
3
4
use Itau\API\TraitEntity;
5
6
class BoleCode implements \JsonSerializable
7
{
8
    use TraitEntity;
9
10
    const ETAPA_TESTE = "simulacao";
11
    const ETAPA_EFETIVO = "efetivacao";
12
13
    private string $etapa_processo_boleto;
14
    private Beneficiario $beneficiario;
15
    private DadoBoleto $dado_boleto;
16
    private DadosQrcode $dados_qrcode;
17
18
    public function __construct(
19
        $modo, $agencia, $conta, $contaDV, $valor, $tipoBoleto, $numeroDocumento, $nome, $tipoPessoa,
20
        $documento, $endereco, $numero, $complemento, $bairro, $cidade, $siglaEstado, $cep, $nossoNumero, $vencimento, $chavePix
21
    )
22
    {
23
        $this->setEtapaProcessoBoleto($modo)
24
            ->beneficiario()->setIdBeneficiario($agencia, $conta.$contaDV);
25
        $dadoBoleto = $this->dadoBoleto()
26
            ->setDados($valor, $tipoBoleto, $numeroDocumento);
27
        $pagador = $dadoBoleto->pagador();
28
        $pessoa = $pagador->pessoa()->setNomePessoa($nome);
29
        $tipoPessoa = $pessoa->tipoPessoa()
0 ignored issues
show
Unused Code introduced by
The assignment to $tipoPessoa is dead and can be removed.
Loading history...
30
            ->setPessoa($tipoPessoa, $documento);
31
        $pagador->endereco()->setEndereco(
32
            $endereco, $numero, $complemento, $bairro, $cidade, $siglaEstado, $cep
33
        );
34
            
35
        $dadoBoleto->dadosIndividuais()->setDados(
36
            $nossoNumero, $vencimento, $valor
37
        );
38
        $this->dadosQrCode()->setChave($chavePix);
39
    }
40
    public function setEtapaProcessoBoleto($etapa): self
41
    {
42
        $this->etapa_processo_boleto = $etapa;
43
        return $this;
44
    }
45
46
    public function beneficiario(): Beneficiario
47
    {
48
        $beneficiario = new Beneficiario();
49
50
        $this->setBeneficiario($beneficiario);
51
52
        return $beneficiario;
53
    }
54
55
    public function getBeneficiario(): Beneficiario
56
    {
57
        return $this->beneficiario;
58
    }
59
60
    public function setBeneficiario(Beneficiario $beneficiario): self
61
    {
62
        $this->beneficiario = $beneficiario;
63
        return $this;
64
    }
65
66
    public function dadoBoleto(): DadoBoleto
67
    {
68
        $dado = new DadoBoleto();
69
70
        $this->setDadoBoleto($dado);
71
72
        return $dado;
73
    }
74
75
    private function setDadoBoleto(DadoBoleto $dado): self
76
    {
77
        $this->dado_boleto = $dado;
78
        return $this;
79
    }
80
81
    public function dadosQrCode(): DadosQrCode
82
    {
83
        $dado = new DadosQrCode();
84
85
        $this->setDadosQrCode($dado);
86
87
        return $dado;
88
    }
89
90
    private function setDadosQrCode(DadosQrCode $dado): self
91
    {
92
        $this->dados_qrcode = $dado;
93
        return $this;
94
    }
95
}