<?php

class Sinistro_Model_ProcessosObservacoes extends Agro_Db_Table_Abstract {
	protected $_schema = 'sinistro';
	protected $_name = 'processos_observacoes';
	protected $_primary = array('id');
	public $_order = 'id_processo';

	public function save($dados){

		try{
			$ModelEmpresas = new Sistema_Model_Empresas();
			$empresa = $ModelEmpresas->getNomeEmpresaById($dados['id_empresa_vistoriadora']);
			$observacao = 'Processo transferido para a empresa '.$empresa.' conforme observação abaixo: <br>'.$dados['ds_observacao'];

			$Row = $this->createRow();
			$Row->id_processo = $dados['id_processo'];
			$Row->ds_observacao = $observacao;

			$Row->save();

		}catch (Exception $e){
			die($e);
		}
	}

	public function saveObservacaoExclusao($dados){
		try{
			$observacao = 'Arquivo '.$dados['ds_nome_arquivo'].' foi excluído por '.$dados['ds_nome_usuario'].'.';

			$Row = $this->createRow();
			$Row->id_processo = $dados['id_processo'];
			$Row->ds_observacao = $observacao;

			$Row->save();
		}catch (Exception $e){
			die($e);
		}
	}

	public function getObservacoesByProcesso($idProcesso) {
		if ($idProcesso) {
			$select = $this->select()->setIntegrityCheck(false);
			$select->from(array('po' => 'sinistro.processos_observacoes'), array('po.id as id_observacao','po.ds_observacao',"to_char(po.dt_criacao, 'DD/MM/YYYY') as dt_entrada", 'ds_nome_arquivo'));
			$select->joinLeft(array('f'  => 'sistema.funcionarios'),'f.id_usuario = po.id_usuario_criacao','f.ds_nome_funcionario');
			$select->where("po.id_processo = ?", $idProcesso);
			$select->where("po.fl_ativo = true");
			$select->order(array('po.dt_criacao desc'));

			return $this->_db->fetchAll($select);
		} else {
			return false;
		}
	}
}