<?php
namespace App\ViewModels\DocumentoAnexo\DocumentoAnexoRegistrationViewModel;

use App\Utils\Builder;

class DocumentoAnexoRegistrationViewModelBuilder implements Builder
{
    protected $url;
    protected $descricao;
    protected $id_cliente;
    protected $id_pet;
    protected $criado_em;

    /**
     * @return mixed
     */
    public function getUrl()
    {
        return $this->url;
    }

    /**
     * @param mixed $url
     * @return DocumentoAnexoRegistrationViewModelBuilder
     */
    public function setUrl($url)
    {
        $this->url = $url;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getDescricao()
    {
        return $this->descricao;
    }

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

    /**
     * @return mixed
     */
    public function getIdCliente()
    {
        return $this->id_cliente;
    }

    /**
     * @param mixed $id_cliente
     * @return DocumentoAnexoRegistrationViewModelBuilder
     */
    public function setIdCliente($id_cliente)
    {
        $this->id_cliente = $id_cliente;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getIdPet()
    {
        return $this->id_pet;
    }

    /**
     * @param mixed $id_pet
     * @return DocumentoAnexoRegistrationViewModelBuilder
     */
    public function setIdPet($id_pet)
    {
        $this->id_pet = $id_pet;
        return $this;
    }

    /**
     * @return mixed
     */
    public function getCriadoEm()
    {
        return $this->criado_em;
    }

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


    public function build() : DocumentoAnexoRegistrationViewModel
    {
        $procedimento_registration_vm = new DocumentoAnexoRegistrationViewModel ();
        $procedimento_registration_vm->setDescricao($this->descricao);
        $procedimento_registration_vm->setUrl($this->url);
        $procedimento_registration_vm->setIdCliente($this->id_cliente);
        $procedimento_registration_vm->setIdPet($this->id_pet);
        $procedimento_registration_vm->setCriadoEm($this->criado_em);
        return $procedimento_registration_vm;
    }


}