<?php namespace App\Entities\PessoaFisica;


use App\Entities\Endereco\Endereco;
use App\Entities\Usuario\Usuario;
use App\Models\PessoaModel;
use App\Utils\Entity;

class PessoaFisica extends Entity
{
    protected $id;
    protected $id_pessoa;
    protected $cpf;
    protected $rg;
    protected $genero;
    protected $data_nascimento;
    protected $nome;
    protected $profissao;
    protected $estado_civil;

    public static function builder() : PessoaFisicaBuilder
    {
        $pessoa_fisica_builder = new PessoaFisicaBuilder();
        return $pessoa_fisica_builder;
    }

    public function getId() : int
    {
        return $this->id;
    }

    public function getIdPessoa() : int
    {
        return $this->id_pessoa;
    }

    public function getCpf() : string
    {
        return $this->cpf;
    }

    public function getRg() : string
    {
        return $this->rg;
    }

    public function getGenero() : string
    {
        return $this->genero;
    }

    public function getDataNascimento() : string
    {
        return $this->data_nascimento;
    }

    public function getNome() : string
    {
        return $this->nome;
    }

    public function getProfissao() : string
    {
        return $this->profissao;
    }

    public function getEstadoCivil() : string
    {
        return $this->estado_civil;
    }

    public function setId(int $id): void
    {
        $this->id = $id;
    }

    public function setIdPessoa(int $id_pessoa): void
    {
        $this->id_pessoa = $id_pessoa;
    }

    public function setCpf($cpf): void
    {
        $this->cpf = $cpf;
    }

    public function setRg(string $rg): void
    {
        $this->rg = $rg;
    }

    public function setGenero(string $genero): void
    {
        $this->genero = $genero;
    }

    public function setDataNascimento(string $data_nascimento): void
    {
        $this->data_nascimento = $data_nascimento;
    }

    public function setNome(string $nome): void
    {
        $this->nome = $nome;
    }

    public function setProfissao(string $profissao): void
    {
        $this->profissao = $profissao;
    }

    public function setEstadoCivil(string $estado_civil): void
    {
        $this->estado_civil = $estado_civil;
    }

}