<?php

class Sinistro2_Model_AvisosPessoasContato extends Agro_Db_Table_Abstract {
	protected $_schema = 'sinistro';
	protected $_name = 'avisos_pessoas_contato';
	protected $_primary = array('id');
	public $_order = 'id_aviso';
	
	public function save($dados) {
	    try {
    	   $Row = $this->getRow();
    	    
    	    $Row->id_aviso = ($dados['id_aviso'] ? $dados['id_aviso'] : null);
    	    $Row->ds_nome = ($dados['ds_nome']? $dados['ds_nome'] : null);
    	    $Row->ds_telefone = ($dados['ds_telefone']? $dados['ds_telefone'] : null);
    	    
    	    $Row->save();
	   }catch (Exception $e){
	       die($e);
	   }
	}
	
	public function getPessoasContato($idAviso){
	    $select = $this->select();
	    $select->setIntegrityCheck(false);
	    $select->from(array('a'=>'sinistro.avisos_pessoas_contato'),array('ds_nome','ds_telefone'));
	    $select->where($this->getAdapter()->quoteInto('a.id_aviso = ?',$idAviso));
	    
	    return Agro_Db_Table_Abstract::getDefaultAdapter()->fetchAll($select);
	}

    public function getPessoasContatoByProposta(int $idProposta) : ?array
    {
        $select = $this->select()->setIntegrityCheck(false);
        $select->from(['sapc' => "{$this->_schema}.{$this->_name}"], ['ds_telefone']);
        $select->join(['sa' => 'sinistro.avisos'], 'sa.id = sapc.id_aviso', false);
        $select->where('sa.id_proposta = ?', $idProposta);

        return $this->fetchAll($select)->toArray();
    }
}