<?

class Sinistro2_Model_EnvioAviso extends Agro_Db_Table_Abstract {
	protected $_schema = 'seguro';
	protected $_name = 'propostas';
	protected $_primary = 'id';
	public $_order = 'id';

	public function getData($where=false) {
		$select = $this->select();
		$select->setIntegrityCheck(false);

		$select->from(array('v'=>'sinistro.v_envio_avisos'), '*');

		if ($this->_order) {
			$select->order($this->_order);
		}

		if (is_array($where)) {
			foreach ($where as $clause) {
			    if ($clause['field'] == "id_proposta"){
                    $select->where("id_endosso = (select id_endosso from seguro.propostas_endosso where id_proposta = (".$clause['value']."))");
			    } elseif ($clause['field'] == "nr_apolice"){
                	$select->where("id_endosso = (select distinct(id_endosso) from seguro.propostas where nr_apolice = (".trim($clause['value'])."))");
                } elseif (is_array($clause)) {
					$field = $clause['field'];
					$operator = $clause['operator'];
					$value = $clause['value'];

					$select->where("$field $operator ?", $value);
				} else {
					$select->where($clause, '');
				}
			}
		} elseif ($where != '') {
			$select->where($where);
		}

		return $select;
	}
}