<?php namespace App\Models;

use App\Entities\Pessoa\Pessoa;
use App\Entities\Especialidade\Especialidade;
use CodeIgniter\Model;

class EspecialidadeModel extends ModelEntity
{
    protected $table = 'especialidade';
    protected $primaryKey = 'id';
    protected $returnType = 'array';
    protected $allowedFields = [
        'descricao',
    ];
    protected $useSoftDeletes = false;
    protected $skipValidation = true;
    protected $useTimestamps = false;

    public function registerEspecialidade (Especialidade $tipoProcedimento) : void {
        $id_new_especialidade = $this->insert($tipoProcedimento->toArray(true));
        $tipoProcedimento->setId($id_new_especialidade);
    }

    public function updateEspecialidadeByID (int $id_especialidade, Especialidade $especialidade) : bool {
        $data = $especialidade->toArray(true);
        $binds = ['id_especialidade' => $id_especialidade];
        $sets = $this->generateUpdateSets($data, $binds);
        $sql = "UPDATE especialidade $sets WHERE especialidade.id = :id_especialidade:";
        $query = $this->db->query($sql, $binds);
        return $query->connID->affected_rows === 1;
    }

}
