<?php


namespace App\ViewModels\Formulario\FormularioListingViewModel;


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

/**
 * Class FormularioListingViewModelBuilder
 * @package App\ViewModels\Formulario\FormularioListingViewModel
 */
class FormularioListingViewModelBuilder implements Builder
{
    protected $id;
    protected $titulo;
    protected $descricao;
    protected $ativo;
    protected $quantidade_perguntas;

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

    public function setTitulo(string $titulo): FormularioListingViewModelBuilder
    {
        $this->titulo = $titulo;
        return $this;
    }

    /**
     * @param string $descricao
     * @return $this
     */
    public function setDescricao(string $descricao): FormularioListingViewModelBuilder
    {
        $this->descricao = $descricao;
        return $this;
    }

    /**
     * @param int $quantidade_perguntas
     * @return $this
     */
    public function setQuantidadePerguntas(int $quantidade_perguntas): FormularioListingViewModelBuilder
    {
        $this->quantidade_perguntas = $quantidade_perguntas;
        return $this;
    }


    public function setAtivo(int $ativo): FormularioListingViewModelBuilder
    {
        $this->ativo = $ativo;
        return $this;
    }


    /**
     * @return FormularioListingViewModel
     */
    public function build()
    {
        $formulario_listing_vm = new FormularioListingViewModel();
        $formulario_listing_vm->setid($this->id);
        $formulario_listing_vm->settitulo($this->titulo);
        $formulario_listing_vm->setdescricao($this->descricao);
        $formulario_listing_vm->setquantidadeperguntas($this->quantidade_perguntas);
        $formulario_listing_vm->setAtivo($this->ativo);
        return $formulario_listing_vm;
    }


}