<?php

namespace App\ViewModels\Medico\MedicoRegistrationViewModel;

use App\Utils\Entity;

class MedicoRegistrationViewModel extends Entity {
	protected $foto;
	protected $nome;
	protected $email;
	protected $rg;
	protected $data_nascimento;
	protected $cpf;
	protected $genero;
	protected $telefone_1;
	protected $telefone_2;
	protected $numero;
	protected $complemento;
	protected $referencias;
	protected $profissao;
	protected $estado_civil;
	protected $indicado_por;
	protected $adicionado_por;
	protected $senha;
	protected $token_confirmacao_email;
	protected $ativo;
	protected $cep;
	protected $logradouro;
	protected $estado;
	protected $bairro;
	protected $cidade;
	protected $senha_chamefacil;
	protected $assinatura;
	protected $documento;
	protected $unidade;

	public static function builder(): MedicoRegistrationViewModelBuilder {

		$paciente_registration_view_model_builder = new MedicoRegistrationViewModelBuilder();
		return $paciente_registration_view_model_builder;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getUnidade() {

		return $this->unidade;

	}

	/**
	 *
	 * @param mixed $unidade
	 */
	public function setUnidade($unidade): void {

		$this->unidade = $unidade;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getAssinatura() {

		return $this->assinatura;

	}

	/**
	 *
	 * @param mixed $assinatura
	 */
	public function setAssinatura($assinatura): void {

		$this->assinatura = $assinatura;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getDocumento() {

		return $this->documento;

	}

	/**
	 *
	 * @param mixed $documento
	 */
	public function setDocumento($documento): void {

		$this->documento = $documento;

	}

	public function getNome(): string {

		return $this->nome;

	}

	public function getEmail(): string {

		return $this->email;

	}

	public function getRg(): string {

		return $this->rg;

	}

	public function getDataNascimento(): string {

		return $this->data_nascimento;

	}

	public function getCpf(): string {

		return $this->cpf;

	}

	public function getGenero(): string {

		return $this->genero;

	}

	public function getTelefone1(): string {

		return $this->telefone_1;

	}

	public function getTelefone2(): string {

		return $this->telefone_2;

	}

	public function getCep(): string {

		return $this->cep;

	}

	public function getNumero(): string {

		return $this->numero;

	}

	public function getComplemento(): string {

		return $this->complemento;

	}

	public function getReferencias(): string {

		return $this->referencias;

	}

	public function getProfissao(): string {

		return $this->profissao;

	}

	public function getEstadoCivil(): string {

		return $this->estado_civil;

	}

	public function getIndicadoPor(): string {

		return $this->indicado_por;

	}

	public function getAdicionadoPor(): ?int {

		return $this->adicionado_por;

	}

	public function getSenha(): string {

		return $this->senha;

	}

	public function getTokenConfirmacaoEmail(): string {

		return $this->token_confirmacao_email;

	}

	public function getAtivo(): int {

		return $this->ativo;

	}

	public function setNome(string $nome): void {

		$this->nome = $nome;

	}

	public function setEmail(string $email): void {

		$this->email = $email;

	}

	public function setRg(string $rg): void {

		$this->rg = $rg;

	}

	public function setDataNascimento(string $data_nascimento): void {

		$this->data_nascimento = $data_nascimento;

	}

	public function setCpf(string $cpf): void {

		$this->cpf = $cpf;

	}

	public function setGenero(string $genero): void {

		$this->genero = $genero;

	}

	public function setTelefone1(string $telefone_1): void {

		$this->telefone_1 = $telefone_1;

	}

	public function setTelefone2(string $telefone_2): void {

		$this->telefone_2 = $telefone_2;

	}

	public function setCep(string $cep): void {

		$this->cep = $cep;

	}

	public function setNumero(string $numero): void {

		$this->numero = $numero;

	}

	public function setComplemento(string $complemento): void {

		$this->complemento = $complemento;

	}

	public function setReferencias(string $referencias): void {

		$this->referencias = $referencias;

	}

	public function setProfissao(string $profissao): void {

		$this->profissao = $profissao;

	}

	public function setEstadoCivil(string $estado_civil): void {

		$this->estado_civil = $estado_civil;

	}

	public function setIndicadoPor(string $indicado_por): void {

		$this->indicado_por = $indicado_por;

	}

	public function setAdicionadoPor(?int $adicionado_por): void {

		$this->adicionado_por = $adicionado_por;

	}

	public function setSenha(string $senha): void {

		$this->senha = $senha;

	}

	public function setTokenConfirmacaoEmail(string $token_confirmacao_email): void {

		$this->token_confirmacao_email = $token_confirmacao_email;

	}

	public function setAtivo(int $ativo): void {

		$this->ativo = $ativo;

	}

	public function getFoto() {

		return $this->foto;

	}

	public function setFoto($foto): void {

		$this->foto = $foto;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getLogradouro() {

		return $this->logradouro;

	}

	/**
	 *
	 * @param mixed $logradouro
	 */
	public function setLogradouro($logradouro): void {

		$this->logradouro = $logradouro;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getEstado() {

		return $this->estado;

	}

	/**
	 *
	 * @param mixed $estado
	 */
	public function setEstado($estado): void {

		$this->estado = $estado;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getBairro() {

		return $this->bairro;

	}

	/**
	 *
	 * @param mixed $bairro
	 */
	public function setBairro($bairro): void {

		$this->bairro = $bairro;

	}

	/**
	 *
	 * @return mixed
	 */
	public function getCidade() {

		return $this->cidade;

	}

	/**
	 *
	 * @param mixed $cidade
	 */
	public function setCidade($cidade): void {

		$this->cidade = $cidade;

	}

	public function setSenhaChameFacil(string $senha_chamefacil): void {

		$this->senha_chamefacil = $senha_chamefacil;

	}

	public function getSenhaChameFacil(): string {

		return $this->senha_chamefacil;

	}

}
