<?php
namespace App\Entities\Medicamento;

use App\Utils\Builder;
use App\Utils\Entity;

class MedicamentoBuilder implements Builder
{
    protected $id;
    protected $nome;
    protected $quantidade;
    protected $posologia;
    protected $id_clinica;

    public function setId($id)
    {
        $this->id = $id;
        return $this;
    }

    public function setNome($nome)
    {
        $this->nome = $nome;
        return $this;
    }

    public function setQuantidade($quantidade)
    {
        $this->quantidade = $quantidade;
        return $this;
    }

    public function setPosologia($posologia)
    {
        $this->posologia = $posologia;
        return $this;
    }

    public function setIdClinica($id_clinica)
    {
        $this->id_clinica = $id_clinica;
        return $this;
    }


    public function build() : Medicamento
    {
        $medicamento = new Medicamento();
        if (isset($this->id)) {
            $medicamento->setId($this->id);
        }
        if (isset($this->nome)) {
            $medicamento->setNome($this->nome);
        }
        if (isset($this->quantidade)) {
            $medicamento->setQuantidade($this->quantidade);
        }
        if (isset($this->posologia)) {
            $medicamento->setPosologia($this->posologia);
        }
        if (isset($this->id_clinica)) {
            $medicamento->setIdClinica($this->id_clinica);
        }
        return $medicamento;
    }
}