<?php 

class Regulacao_Model_Croquis extends Agro_Db_Table_Abstract
{
    protected $_schema = 'regulacao';
    protected $_name = 'croquis';
    protected $_primary = 'id';

    public function save($dados) {

        if (!$dados['id']) {
            $Row = $this->createRow();
        } else {
            $Row = $this->getRow($dados['id']);
        }

        $Row->id_laudo = $dados['id_laudo'];
        $Row->ds_referencia_regulacao = $dados['ds_referencia_regulacao'];
        $Row->ds_nome_arquivo = $dados['ds_nome_arquivo'];
        $Row->fl_vigente = true;
        $Row->save();

        return $Row->id;
    }

    public function temCroquiDesenhado(int $idLaudo) : bool {
        return $this->fetchAll("id_laudo = $idLaudo")->count() > 0 ? true : false;
    }

    public function getCroquis(int $idLaudo) {
        $select = $this->select()->setIntegrityCheck(false);
        $select->from(array('rc' => 'regulacao.croquis'), array('id','ds_nome_arquivo'));
        $select->join(array('rct' => 'regulacao.croquis_talhoes'), 'rc.id = rct.id_croqui', array('ds_nome', 'fl_area', 'ds_coordenadas', 'ds_item_segurado'));
        $select->where('rc.fl_vigente is true');
        $select->where('rc.id_laudo = ?', $idLaudo);
        return $this->getAdapter()->fetchAll($select);
    }
}