<?php

class Atendimento_Model_Proposta_Beneficiarios extends Agro_Db_Table_Abstract {
	protected $_name = 'propostas_beneficiarios';
	protected $_schema = 'seguro';
	protected $_primary = 'id';

	public function save($data) {
		if ($data['id_proposta']) {
			$this->getDefaultAdapter()->query("delete from seguro.propostas_beneficiarios where id_proposta = {$data['id_proposta']}");

			if (count($data['beneficiario'])) {
				foreach ($data['beneficiario'] as $beneficiario) {
					if ($beneficiario['ds_qualidade_beneficiario']) {
						$Row = $this->createRow();

						$Row->vl_limite_beneficio = Agro_Util::formatCurrencyDb($beneficiario['vl_limite_beneficio']);
						$Row->id_banco = ($beneficiario['id_banco'] ? $beneficiario['id_banco'] : null);
						$Row->ds_qualidade_beneficiario = $beneficiario['ds_qualidade_beneficiario'];
						$Row->ds_nome_beneficiarios = $beneficiario['ds_nome_beneficiarios'];
						$Row->ds_tipo_conta = strtolower($beneficiario['ds_tipo_conta']);
						$Row->ds_observacao = $beneficiario['ds_observacao'];
						$Row->nr_cpf_cnpj = $beneficiario['nr_cpf_cnpj'];
						$Row->ds_agencia = $beneficiario['ds_agencia'];
						$Row->ds_conta = $beneficiario['ds_conta'];
						$Row->id_proposta = $data['id_proposta'];
                        $Row->tp_pessoa = $data['tp_pessoa'];
                        $Row->id_tipo_beneficiario = $data['id_tipo_beneficiario'];
						$Row->dt_nascimento = ($beneficiario['dt_nascimento_beneficiario'] ? Agro_Util::formatDate($beneficiario['dt_nascimento_beneficiario'], 'Y-MM-dd') : null);

						if ($Row->save()) {
							$SeguroBeneficiarios = new Seguro_Model_Beneficiarios();
							$SeguroBeneficiarios->setValidado($Row->nr_cpf_cnpj);
						}
					}
				}
			}

			return true;
		}
	}
}
