<?php

class Seguro_Model_BeneficiariosArquivosEnvio extends Agro_Db_Table_Abstract
{
    protected $_schema = 'seguro';
    protected $_name = 'beneficiarios_arquivos_envio';
    protected $_primary = 'id';
    public $_order = 'id asc';

    public function save($data)
    {
        $row = !empty($data['id_arquivo']) ? $this->getEnvioByArquivo($data['id_arquivo']) : $this->createRow();
        $row = !empty($row) ? $row : $this->createRow();

        $row->id_arquivo = $data['id_arquivo'];
        $row->id_beneficiario = $data['id_beneficiario'];

        return $row->save();
    }

    public function getEnvioByArquivo(int $idArquivo)
    {
        $select = $this->select()->distinct(true)->setIntegrityCheck(false);
        $select->from(['bae' => "{$this->_schema}.{$this->_name}"], '*');
        $select->where('bae.id_arquivo = ?', $idArquivo);

        return $this->fetchRow($select);
    }
}
