<?php namespace App\ViewModels\EspecialidadeProcedimento\EspecialidadeProcedimentoUpdateViewModel;

use App\Utils\Builder;

class EspecialidadeProcedimentoUpdateViewModelBuilder implements Builder
{

    protected $id_especialidade;
    protected $id_procedimento;
    protected $id_unidade;

    /**
     * @param mixed $id_especialidade
     * @return EspecialidadeProcedimentoUpdateViewModelBuilder
     */
    public function setIdEspecialidade($id_especialidade)
    {
        $this->id_especialidade = $id_especialidade;
        return $this;
    }

    /**
     * @param mixed $id_procedimento
     * @return EspecialidadeProcedimentoUpdateViewModelBuilder
     */
    public function setIdProcedimento($id_procedimento)
    {
        $this->id_procedimento = $id_procedimento;
        return $this;
    }

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


    public function build() : EspecialidadeProcedimentoUpdateViewModel
    {
        $procedimento_update_vm = new EspecialidadeProcedimentoUpdateViewModel();
        $procedimento_update_vm->setIdProcedimento($this->id_procedimento);
        $procedimento_update_vm->setIdEspecialidade($this->id_especialidade);
        $procedimento_update_vm->setIdUnidade($this->id_unidade);

        return $procedimento_update_vm;
    }
}