<?php


namespace App\ViewModels\ClassificacaoRisco\ClassificacaoRiscoDetailsViewModel;


use App\Utils\Builder;
use App\ViewModels\ClassificacaoRisco\ClassificacaoRiscoRegistrationViewModel\ClassificacaoRiscoRegistrationViewModel;

class ClassificacaoRiscoDetailsViewModelBuilder implements Builder
{
    private $id;
    private $descricao;
    private $nome_unidade;
    private $id_unidade;
    private $cor;
    private $valor;
    private $criado_em;
    private $atualizado_em;
    private $desativado_em;
    private $criado_por;
    private $alterado_por;
    private $desativado_por;

    /**
     * @param mixed $id
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setId($id)
    {
        $this->id = $id;
        return $this;
    }

    /**
     * @param mixed $nome_unidade
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setNomeUnidade($nome_unidade)
    {
        $this->nome_unidade = $nome_unidade;
        return $this;
    }

    /**
     * @param mixed $descricao
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setDescricao($descricao)
    {
        $this->descricao = $descricao;
        return $this;
    }

    /**
     * @param mixed $criado_em
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setCriadoEm($criado_em)
    {
        $this->criado_em = $criado_em;
        return $this;
    }

    /**
     * @param mixed $atualizado_em
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setAtualizadoEm($atualizado_em)
    {
        $this->atualizado_em = $atualizado_em;
        return $this;
    }

    /**
     * @param mixed $desativado_em
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setDesativadoEm($desativado_em)
    {
        $this->desativado_em = $desativado_em;
        return $this;
    }

    /**
     * @param mixed $criado_por
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setCriadoPor($criado_por)
    {
        $this->criado_por = $criado_por;
        return $this;
    }

    /**
     * @param mixed $alterado_por
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setAlteradoPor($alterado_por)
    {
        $this->alterado_por = $alterado_por;
        return $this;
    }

    /**
     * @param mixed $desativado_por
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setDesativadoPor($desativado_por)
    {
        $this->desativado_por = $desativado_por;
        return $this;
    }

    /**
     * @param mixed $id_unidade
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setIdUnidade($id_unidade)
    {
        $this->id_unidade = $id_unidade;
        return $this;
    }

    /**
     * @param mixed $cor
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setCor($cor)
    {
        $this->cor = $cor;
        return $this;
    }

    /**
     * @param mixed $valor
     * @return ClassificacaoRiscoDetailsViewModelBuilder
     */
    public function setValor($valor)
    {
        $this->valor = $valor;
        return $this;
    }


    public function build() : ClassificacaoRiscoDetailsViewModel
    {
        $paciente_details_vm = new ClassificacaoRiscoDetailsViewModel();
        $paciente_details_vm->setId($this->id);
        $paciente_details_vm->setDescricao($this->descricao);
        $paciente_details_vm->setNomeUnidade($this->nome_unidade);
        $paciente_details_vm->setIdUnidade($this->id_unidade);
        $paciente_details_vm->setCor($this->cor);
        $paciente_details_vm->setValor($this->valor);
        $paciente_details_vm->setCriadoEm($this->criado_em);
        $paciente_details_vm->setAtualizadoEm($this->atualizado_em);
        $paciente_details_vm->setCriadoPor($this->criado_por);
        $paciente_details_vm->setAlteradoPor($this->alterado_por);
        $paciente_details_vm->setDesativadoEm($this->desativado_em);
        $paciente_details_vm->setDesativadoPor($this->desativado_por);
        return $paciente_details_vm;
    }


}
