<?

class Nobre_Model_LiquidacoesPagamentoBeneficiarios extends Agro_Db_Table_Abstract {
	protected $_schema = 'sinistro';
	protected $_name = 'liquidacoes_pagamento_beneficiarios';
	protected $_primary = 'id';
	public $_order = 'id';

	public function save($dados){
		try {
			$Row = $this->getRow($dados['id']);

			$Row->id_liquidacao 			= $dados["id_liquidacao"];
			$Row->cpf_cnpj 			        = $dados["cpf_cnpj"];
			$Row->ds_nome_beneficiario 	    = $dados["ds_nome_beneficiario"];
			$Row->cd_liquidacao_seguradora  = $dados["cd_liquidacao_seguradora"];
			$Row->dt_estimada_pagamento  	= $dados["dt_estimada_pagamento"] ? Agro_Util::formatDate($dados["dt_estimada_pagamento"], 'yyyy-MM-dd') : null;
			$Row->dt_confirmacao_pagamento 	= $dados["dt_confirmacao_pagamento"] ? Agro_Util::formatDate($dados["dt_pagamento"], 'yyyy-MM-dd') : null;
			$Row->vl_estimado_pagamento  	= $dados["vl_estimado_pagamento"] ? Agro_Util::formatCurrencyDb($dados["vl_estimado_pagamento"]) : null;
			$Row->vl_pagamento 				= $dados["vl_pagamento"] ? Agro_Util::formatCurrencyDb($dados["vl_pagamento"]) : null;
			$Row->fl_subvencao_descontada 	= ($dados["fl_subvencao_descontada"] ? 1 : 0);
			$Row->id_arquivo_processo       = ($dados['id_arquivo_processo'] ? $dados['id_arquivo_processo'] : null);

			return $Row->save();

		} catch (Exception $e) {
			throw new Exception($e->getMessage());
		}
	}

	public function deleteInformacoesPagamento($idLiquidacao) {
		return $this->_db->query("DELETE FROM sinistro.liquidacoes_pagamento_beneficiarios WHERE id_liquidacao = ".$idLiquidacao);
	}
	
	public function getList($id_liquidacao){

		$User = new Sistema_Model_Usuarios();
		$File = new Sinistro_Model_ProcessosArquivos();

		$Row     = $this->fetchRow("id_liquidacao = $id_liquidacao");
		$usuario = $User->find($Row['id_usuario_criacao'])->current();
		
		if ($Row['id_arquivo_processo']) {
			$arquivo = $File->fetchRow("id=".$Row['id_arquivo_processo']." AND fl_ativo = true");
		}

		$result = array(
			"id"                       => $Row['id'],
			"id_liquidacao"            => $Row['id_liquidacao'],
			"cpf_cnpj"                 => $Row['cpf_cnpj'],
			"ds_nome_beneficiario"     => $Row['ds_nome_beneficiario'],
			"cd_liquidacao_seguradora" => $Row['cd_liquidacao_seguradora'],
			"dt_estimada_pagamento"    => Agro_Util::formatDate($Row['dt_estimada_pagamento'], Zend_Date::DATES),
			"dt_confirmacao_pagamento" => Agro_Util::formatDate($Row['dt_confirmacao_pagamento'], Zend_Date::DATES),
			"vl_estimado_pagamento"    => Agro_Util::formatDbCurrency($Row['vl_estimado_pagamento']),
			"vl_pagamento"             => Agro_Util::formatDbCurrency($Row['vl_pagamento']),
			"fl_subvencao_descontada"  => ($Row['fl_subvencao_descontada'] ? "Sim" : "Não"),
			"comprovante"              => $arquivo['ds_nome_arquivo'],
			"id_comprovante"           => $arquivo['id'],
			"user"                     => $usuario['ds_nome_usuario']
		);

		return $result;
	}

}




