<?php

class Seguro_TransmissaoController extends Agro_Controller_Proposta {
	protected $_paginator = false;
	public $wsdl;
	public $propostas_erros = array();
	public $propostas_enviadas = array();

	public function getModel() {
		return new Seguro_Model_Transmissao();
	}

	public function init() {

        ini_set('memory_limit','1024M');
		$this->view->title = 'Seguro » Transmissão';
		require_once(APPLICATION_PATH . "/../library/Agro/nusoap/nusoap.php");
	}

	/**
	 * Monta a tela de pesquisa de propostas
	 *
	 */
	public function indexAction() {
		$this->view->form = new Seguro_Form_TransmissaoSearch();
	}

	public function listAction() {
		$this->getHelper('layout')->disableLayout();
		$where = $this->getFilter();
		$Model = $this->getModel();

		$this->view->request = $this->getRequest()->getParams();

		// Habilita ou Desabilita a paginacao pelo combo na tela
		$this->_paginator = $this->getRequest()->getParam('show_paginacao');
		$recordsPerPage = ($this->recordsPerPage ? $this->recordsPerPage :  RECORDS_PER_PAGE);

		if ($this->getRequest()->getParam("o")) {
			$Model->_order = trim($this->getRequest()->getParam("o") .' '. $this->getRequest()->getParam("s"));
		}

		$this->view->form = $this->getForm();
		$Rs = $Model->fetchAllPaginator($where, $this->getRequest()->getParam('page'), $recordsPerPage, $this->_paginator);

		$this->view->paginator = $Rs;
	}

	public function getFilter() {
		$where = parent::getFilter();

		if ($this->getRequest()->getParam('pesquisar_por')) {
			$where[] = $this->getRequest()->getParam('pesquisar_por')." = ".$this->getRequest()->getParam('vl_pesquisar_por');
		}

		if ($this->getRequest()->getParam('filtro_acao')) {
			$acao = $this->getRequest()->getParam('filtro_acao');

			if ($acao == 'transmitir') {
				$where[] = " sst.ds_chave in ('AGUARDANDO_VISTORIA_PREVIA', 'AGUARDANDO_ENVIO_SEG', 'AGUARDANDO_VISTORIA_PREVIA') ";
				$where[] = "( ds_status_seguradora = 'Cancelada' or ds_status_seguradora is null or ds_status_seguradora='')";
			} elseif ($acao == 'liberar') {
				$where[] = array(
					'field' => 'sst.ds_chave',
					'operator' => '=',
					'value' => "TRANSMITIDA_SEGURADORA"
				);

				$where[] = " ds_status_seguradora in ('EmAnalise' , 'AguardandoCADIN', 'Adiada') ";
			} else if($acao == 'cancelar'){
				$where[] = " ds_chave in ('AGUARDANDO_VISTORIA_PREVIA', 'AGUARDANDO_EMISSAO', 'AGUARDANDO_ENVIO_SEG', 'TRANSMITIDA_SEGURADORA') ";
				$where[] = " ds_status_seguradora in ( 'EmAnalise' , 'AguardandoCADIN', 'Adiada', 'Liberada' )";
			} else if($acao == 'cancelar_canceladas'){
				$where[] = " ds_chave in ('NAO_ENVIADA', 'PROPOSTA_CANCELADA') ";
				$where[] = " ds_status_seguradora in ( 'EmAnalise' , 'AguardandoCADIN', 'Adiada', 'Liberada' )";
			}
		} else {
			$where[] = " sst.ds_chave in ('AGUARDANDO_VISTORIA_PREVIA', 'AGUARDANDO_ENVIO_SEG', 'AGUARDANDO_VISTORIA_PREVIA') ";
			$where[] = "( ds_status_seguradora = 'Cancelada' or ds_status_seguradora is null or ds_status_seguradora='')";
		}

		return $where;
	}

	public function transmitirAction(){

		$this->isAjax();

		$Propostas = new Seguro_Model_Propostas();
		$Transmissao = $this->getModel();

		$result = array("status"=>true, "dados"=>"", "message"=>"");
		$arquivo_OK   = time()."_TRANSMISSAO_OK.txt";
		$arquivo_ERRO = time()."_TRANSMISSAO_ERRO.txt";

		$propostas = $this->getRequest()->getParam("id_proposta");

		if ($this->getRequest()->getParam("id_proposta")){
			foreach($propostas as $chave => $proposta){

			    $ModelProposta = new Seguro_Model_Propostas();
			    $Proposta      = $ModelProposta->find($proposta)->current();
			    $Produto       = $Proposta->produto();

			    if($Produto['ds_nome_fantasia'] == 'ESSOR SEGUROS'){

			    	if (APPLICATION_ENV != 'production') {
			            $client = new nusoap_client(WSDL_DEV, true, false, false, false, false, 3600, 3600);
			        } else {
			            $client = new nusoap_client(WSDL_PROD, true, false, false, false, false, 3600, 3600);
			        }

			        $xml = $Transmissao->montaXMLTransmissaoEssor($proposta);
			        $mysoapmsg  = $client->serializeEnvelope($xml);

			        $this->geraSalvaXml($proposta, $proposta.".xml", $mysoapmsg);

			        $params     = array('Servico' => 'EMITIR_PROPOSTA', 'conteudoXML' => $mysoapmsg);
			        $result     = $client->call('ExecutarRow', array($params));

			        if($client->fault){
                        echo 'Fault 01:';
                        print_r($result);
                        die('1');
			        } else {
                        $err = $client->getError();
                        if ($err) {
                            echo 'Fault 02: '.$err;
                            die('2');
                        } else {
                            $result_xml = simplexml_load_string(utf8_encode($result['ExecutarRowResult']), 'SimpleXMLElement', LIBXML_NOCDATA);
                            if($result_xml->erro){
                                print_r($result_xml->erro);
                                die('retorno: '.$result_xml->erro->nm_retorno);
                                //die('erro');
                            } else {
                                $Propostas->update(array("ds_status_seguradora" => 'EmAnalise', "ds_identificador_seguradora" => $result_xml->id_endosso), "id = ".$proposta);
                                $Propostas->changeStatus(array('id_proposta' => $proposta), 'TRANSMITIDA_SEGURADORA');
                            }
                        }
                    }

			    } else {
			        $soapaction = "http://ws.nobre.com.br/EnviarPropostaSeguroAgricola";
			        $this->client = new nusoap_client('http://ws.nobre.com.br/Emissao.asmx?WSDL');

    				$xml = $this->montaXMLTransmissao($proposta);

    				$mysoapmsg  = $this->client->serializeEnvelope($xml);
    				$response   = $this->client->send($mysoapmsg, $soapaction, '', 300);

    				if($response['propostaSeguroAgricola']['Identificador']['descricao'] != "") {

    				    $dados = array();
    				    $dados['ds_identificador'] = $response['propostaSeguroAgricola']['Identificador']['descricao'];
    				    $dados['status'] = $response['propostaSeguroAgricola']['tipoEstado'];
    				    $dados['id_proposta'] = $id_proposta;
    				    $dados['ar_xml'] = $xml;

    				    $this->geraSalvaXml($proposta, $arquivo_OK, $proposta." - ".$dados['ds_identificador']." - ".$dados['status'].chr(13).chr(10));
    				    $this->geraSalvaXml($proposta, $proposta.".xml", $this->client->request.chr(13).chr(10).chr(13).chr(10));

    				    $Propostas->update(array("ds_status_seguradora" => $dados['status'], "ds_identificador_seguradora" => $dados['ds_identificador']), "id = ".$proposta);
    				    $Propostas->changeStatus(array('id_proposta' => $proposta), 'TRANSMITIDA_SEGURADORA');

    				    $result['arquivo_ok']   = $arquivo_OK;
    				} else {
    				    $this->propostas_erros[] = $id_proposta;
    				    $msg = "Proposta: ".$proposta."<br>".chr(13).chr(10).$response[faultcode]."<br>".chr(13).chr(10).$response[faultstring]."<br>".chr(13).chr(10).$response[detail]."<br>".chr(13).chr(10);
    				    $this->geraSalvaXml($proposta, $arquivo_ERRO, $msg);
    				    $this->geraSalvaXml($proposta, $proposta.".xml", $this->client->request.chr(13).chr(10).chr(13).chr(10));

    				    $result['arquivo_erro'] = $arquivo_ERRO;
    				}
			    }
			}
			$result['status'] = true;
			$result['message'] = "Processamento concluído com sucesso.";
		} else {
			$result['status'] = false;
			$result['message'] = "Marque ao menos uma proposta";
		}
		$this->getResponse()->setBody(Zend_Json::encode($result));

	}

	public function liberarAction(){
		$this->isAjax();

		$Model = new Seguro_Model_Propostas();

		$this->client = new nusoap_client('http://ws.nobre.com.br/Emissao.asmx?WSDL');

		if ($this->getRequest()->getParam("id_proposta")){

			$soapaction = "http://ws.nobre.com.br/LiberarPropostaSeguro";
			$propostas = $this->getRequest()->getParam("id_proposta");

			$arquivo_OK   = time()."_LIBERACAO_OK";
			$arquivo_ERRO = time()."_LIBERACAO_ERRO";

			foreach($propostas as $chave => $proposta){
				$Proposta = $Model->get($proposta);

				$xml = '
					<LiberarPropostaSeguro xmlns="http://ws.nobre.com.br/">
					  <identificador>
						<descricao>'.$Proposta->ds_identificador_seguradora.'</descricao>
					  </identificador>
					</LiberarPropostaSeguro>
					';
				$mysoapmsg = $this->client->serializeEnvelope( $xml );
				$response = $this->client->send( $mysoapmsg, $soapaction );

				if($response['LiberarPropostaSeguroResult'] == "true"){
					$Model->update(array("ds_status_seguradora" => 'Liberada'), "id = ".$proposta);
					$Model->changeStatus(array('id_proposta' => $proposta), 'AGUARDANDO_EMISSAO');

					$this->geraSalvaXml($proposta, $arquivo_OK, $proposta.' - Liberada'.chr(13).chr(10));
					//$this->geraSalvaXml($proposta, $proposta.".xml", $this->client->request.chr(13).chr(10).chr(13).chr(10));

					$result['arquivo_ok'] = $arquivo_OK;
				} else {
					$this->geraSalvaXml($proposta, $arquivo_ERRO, '<br>'.chr(13).chr(10).$proposta.' - Não Liberada - '.$response['faultstring'].chr(13).chr(10));
                    $this->geraSalvaXml($proposta, $proposta.".xml", $this->client->request.chr(13).chr(10).chr(13).chr(10));
					$result['arquivo_erro'] = $arquivo_ERRO;
				}
			}
			$result['status'] = true;
			$result['message'] = "Processamento concluído com sucesso.";
		} else {
			$result['status'] = false;
			$result['message'] = "Marque ao menos uma proposta";
		}

		$this->getResponse()->setBody(Zend_Json::encode($result));
	}

	public function cancelarAction(){
		$this->isAjax();

		$this->client = new nusoap_client('http://ws.nobre.com.br/Emissao.asmx?WSDL');

		$Model = new Seguro_Model_Propostas();

		if ($this->getRequest()->getParam("id_proposta")){

			$soapaction = "http://ws.nobre.com.br/CancelarPropostaSeguro";
			$propostas = $this->getRequest()->getParam("id_proposta");

			$arquivo_OK   = time()."_CANCELAMENTO_OK.txt";
			$arquivo_ERRO = time()."_CANCELAMENTO_ERRO.txt";

			foreach($propostas as $chave => $proposta){
				$Proposta = $Model->get($proposta);

				$xml = "
					<CancelarPropostaSeguro xmlns=\"http://ws.nobre.com.br/\">
					  <identificador>
						<descricao>".$Proposta->ds_identificador_seguradora."</descricao>
					  </identificador>
					  <motivo>Solicitação do corretor.</motivo>
					</CancelarPropostaSeguro>
				";

				$mysoapmsg = $this->client->serializeEnvelope( $xml );
				$response = $this->client->send( $mysoapmsg, $soapaction );

				if($response['CancelarPropostaSeguroResult'] == "true"){
					$Model->update(array("ds_status_seguradora" => 'Cancelada'), "id = ".$proposta);

					$this->geraSalvaXml($proposta, $arquivo_OK, $proposta.' - Cancelada'.chr(13).chr(10));

					if($Proposta->ds_chave_status != 'NAO_ENVIADA' && $Proposta->ds_chave_status != 'PROPOSTA_CANCELADA'){
						$Model->changeStatus(array('id_proposta' => $proposta), 'AGUARDANDO_ENVIO_SEG');
					}

					$result['arquivo_ok'] = $arquivo_OK;
				} else {
					$result['arquivo_erro'] = $arquivo_ERRO;
					$this->geraSalvaXml($proposta, $arquivo_ERRO, $proposta.' - NÃO Cancelada - '.$response['faultstring'].chr(13).chr(10));
					$this->geraSalvaXml($proposta, $proposta.".xml", $this->client->request.chr(13).chr(10).chr(13).chr(10));
				}
			}
			$result['status'] = true;
			$result['message'] = "Processamento concluído com sucesso.";
		} else {
			$result['status'] = false;
			$result['message'] = "Marque ao menos uma proposta";
		}
		$this->getResponse()->setBody(Zend_Json::encode($result));
	}

	public function geraSalvaXml(int $idProposta, $nomeArquivo, $msg)
    {
        $nomeArquivo = Agro_File::clearFileName($nomeArquivo);

		$file = fopen(APPLICATION_PATH."/upload_files/xml_transmissao_error/{$nomeArquivo}", "a+");
	    fwrite($file, $msg);
	    fclose($file);
	}

	public function formataData( $dtData ){
	 	$arData = explode( "-", $dtData );
	 	if( strlen($arData[0]) == 4 ){
			return $dtData;
		}

		$dia = substr( $dtData, 0, 2 );
		$mes = substr( $dtData, 3, 2 );
		$ano = substr( $dtData, 6, 4 );
	    $dtDataFormatada = $ano.'-'.$mes.'-'.$dia;
	    return $dtDataFormatada;
	}

	public function montaXMLTransmissao($id_proposta) {

		$Model = new Seguro_Model_Propostas();

		$Proposta      = $Model->find($id_proposta)->current();
		$Proponente    = $Proposta->proponente();
		$Propriedade   = $Proposta->propriedade();
		$Corretor      = $Proposta->corretor(true);
		$Produto       = $Proposta->produto();
		$Cobranca      = $Proposta->cobranca();
		$Questionario  = $Proposta->questionario();
		$Beneficiarios = $Proposta->beneficiarios();
		$Safra         = $Proposta->safra();

		$propostaDoc = str_replace('-','',str_replace('.','',$Proposta->doc()));

		$subvencaoFederal = ($Proposta->subvencao_federal() > 0) ? 'true' : 'false';
		$subvencaoEstadual = ($Proposta->subvencao_estadual() > 0) ? 'true' : 'false';

		$anoSafra = substr($Safra['ds_nome_safra'],0,4);

		$propostaDoc = strlen($propostaDoc) > 15 ? substr($propostaDoc,0, 15-strlen($propostaDoc)) : $propostaDoc;

		$dataAux = !empty($Proposta->dt_transmissao) ? $Proposta->dt_transmissao : $Proposta->dt_criacao;
		$aplicarNovaLeiSeguro = strtotime($dataAux) >= strtotime(DATA_INICIO_NOVA_LEI_SEGURO)
			|| $Proposta->id_status == Seguro_Enum_PropostaStatus::ID_NAO_ENVIADA;

		$xml = "
			<EnviarPropostaSeguroAgricola xmlns=\"http://ws.nobre.com.br/\">
			<propostaSeguroAgricola xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">
			<safra>{$anoSafra}</safra>
			<codigoPropostaCorretor>".$propostaDoc."</codigoPropostaCorretor>
			<codigo>3</codigo>
			<tipoApolice>Nenhum</tipoApolice>
			<tipo>Nova</tipo>
			<indicadorSubvencaoFederal>$subvencaoFederal</indicadorSubvencaoFederal>
			<indicadorSubvencaoSuspensa>false</indicadorSubvencaoSuspensa>
			<indicadorSubvencaoEstadual>$subvencaoEstadual</indicadorSubvencaoEstadual>
			<indicadorAdiada>false</indicadorAdiada>
			<municipioCliente>
				<codigo>{$Propriedade['cd_bacen']}</codigo>
			</municipioCliente>

			<cliente>";
			//retira pontos, barras e traços do cpf_cnpj e doc_numero
			$cpf_cnpj = str_replace('.', '', str_replace('/', '', str_replace('-', '', $Proponente['cpf_cnpj'])));
			$doc_numero = str_replace('.', '', str_replace('/', '', str_replace('-', '', $Proponente['ds_documento_numero'])));

			if(substr($Proponente['ds_nome_orgao'],0,3) != "SSP"){
				$stDocOrgExp = substr($Proponente['ds_nome_orgao'],0,3);
				$stDocOrgExpUF = "BR";
			} else {
				$stDocOrgExp = substr($Proponente['ds_nome_orgao'],0,3);
				$stDocOrgExpUF = substr($Proponente['ds_nome_orgao'],4,2);
		    }

			//decide entre fisica ou juridica
			if($Proponente['tp_pessoa'] == 'F') {
				$dsNomeSocial = !empty($Proponente['ds_nome_social']) ? $Proponente['ds_nome_social'] : null;

				$numeroDocumento = $Proponente['ds_documento_numero'];
                $orgaoExpedidor = $stDocOrgExp;
                $dataOrgaoExpedicao = $Proponente['dt_documento_exp'];
                $tipoDocumento = 'RG';
                $estadoExpedicaoDocumento = $stDocOrgExpUF;
                
                if ($Proponente['ds_documento_numero'] == '') {
                    $numeroDocumento = '';
                    $orgaoExpedidor = '';
                    $dataOrgaoExpedicao = '';
                    $tipoDocumento = '';
                    $estadoExpedicaoDocumento = '';
                }

				$estadoCivil = $aplicarNovaLeiSeguro
					? 'Não informado'
					: ucwords(strtolower($Proponente['ds_nome_estado_civil']));

				$xml .= "
					<tipo>Fisica</tipo>
					<nome>{$Proponente['ds_nome_proponente']}</nome>
					<nm_pessoa_social>{$dsNomeSocial}</nm_pessoa_social>
					<detalhe xsi:type=\"DetalhePessoaFisica\">
					  <cpf>$cpf_cnpj</cpf>
					  <IsCPFProprio>true</IsCPFProprio>
					  <dataNascimento>{$Proponente['dt_nascimento']}</dataNascimento>
					  <genero>Não informado</genero>
					  <estadoCivil>{$estadoCivil}</estadoCivil>
					  <documentoIdentificacao>
						<orgaoExpedidor>
						  <sigla>{$orgaoExpedidor}</sigla>
						</orgaoExpedidor>
						<numero>{$numeroDocumento}</numero>
						<dataExpedicao>{$dataOrgaoExpedicao}</dataExpedicao>
						<estado>
						  <uf>{$estadoExpedicaoDocumento}</uf>
						</estado>
						<tipo>{$tipoDocumento}</tipo>
					  </documentoIdentificacao>
					</detalhe>
					";
			} else {
				$ds_nome_proponente = str_replace("&", "e", $Proponente['ds_nome_proponente']);
				$xml .="
					<tipo>Juridica</tipo>
					<nome>{$ds_nome_proponente}</nome>
					<detalhe xsi:type=\"DetalhePessoaJuridica\">
					  <cnpj>$cpf_cnpj</cnpj>
					  <nomeFantasia>{$ds_nome_proponente}</nomeFantasia>
					</detalhe>
					";
			}

			$tipo_corretor = ($Corretor['tp_pessoa'] == 'J') ? 'Juridica' : 'Fisica';

			$cpf_cnpj_corr = str_replace('.', '', str_replace('/', '', str_replace('-', '', $Corretor['cpf_cnpj'])));
			$cep = str_replace('-', '', $Proponente['ds_endereco_cep']);

			//endereco e corretor
			$xml .="
				<enderecos>
					<endereco>
						<numero>{$Proponente['ds_endereco_nro']}</numero>
						<complemento>{$Proponente['ds_endereco_complem']}</complemento>
						<logradouro>
							<nome>{$Proponente['ds_endereco_rua']}</nome>
							<cep>$cep</cep>
							<bairro>
								<nome>" . $Proponente['ds_endereco_bairro'] . "</nome>
								<localidade>
									<codigo>0</codigo>
									<nome>{$Proponente['ds_nome_municipio']}</nome>
									<estado>
										<codigo>0</codigo>
										<nome>{$Proponente['ds_nome_estado']}</nome>
										<uf>{$Proponente['ds_sigla']}</uf>
									</estado>
								</localidade>
							</bairro>
						</logradouro>
						<utilizacoes>
							<utilizacao>Residencial</utilizacao>
						</utilizacoes>
					</endereco>
				</enderecos>

				<emails />";

				$ds_nome_corretor = str_replace("&", "e", $Corretor['ds_nome_corretor']);

				if($Corretor['tp_pessoa'] == 'J'){

					$xml .= "
					<corretor>
						<tipo>$tipo_corretor</tipo>
						<detalhe xsi:type=\"DetalhePessoaJuridica\">
							<cnpj>$cpf_cnpj_corr</cnpj>
							<nomeFantasia>{$ds_nome_corretor}</nomeFantasia>
						</detalhe>
						<inspetor>
							<codigo>1854</codigo>
						</inspetor>
					</corretor>
					";
				} else {
					$xml .= "
					<corretor>
						<tipo>$tipo_corretor</tipo>
						<detalhe xsi:type=\"DetalhePessoaFisica\">
							<cpf>$cpf_cnpj_corr</cpf>
							<nome>{$ds_nome_corretor}</nome>
						</detalhe>
						<inspetor>
							<codigo>1854</codigo>
						</inspetor>
					</corretor>
					";
				}

				$xml .= "
				<contratos />
			</cliente>";

			$SubProduto = $Produto['cd_produto_seguradora'];

			// Subproduto específico para PASQUALOTTO
			if($Proposta->preposto() == 780 || $Proposta->preposto() == 1298){
				switch($Produto['id']){
					//Uva de Vinho
					case 425: $SubProduto = 74; break;
					//Uva de Vinho Master
					case 431: $SubProduto = 78; break;
					default:  $SubProduto = 51;
				}
			}

			// Subproduto específico para FISCHER (coalizao.fischer)
			if($Proposta->preposto() == 1449){
				switch($Produto['id']){
					//Maça
					case 385: $SubProduto = 37; break;
					//Maça Master
					case 428: $SubProduto = 79; break;
				}
			}

			$xml .= "
			<produto>
				<codigo>{$Produto['cd_produto_geral_seguradora']}</codigo>
				<subProduto>
					<codigo>{$SubProduto}</codigo>
				</subProduto>
			</produto>

			<vigenciaSeguro>
				<tipo>Anual</tipo>
				<dataInicio>" . substr($Proposta->dt_vigencia_inicio, 0, 10) . "</dataInicio>
				<dataFim>" . substr($Proposta->dt_vigencia_fim, 0, 10) . "</dataFim>
			</vigenciaSeguro>

			<dataBaseCalculo>" . (substr($Proposta->dt_vigencia_inicio, 0, 10)) . "</dataBaseCalculo>

			<corretagem>
				<coeficienteComissao>0</coeficienteComissao>
				<percentual>" . number_format($Proposta->comissaoCorretor(),2, '.', '') . "</percentual>
				<participantes>
				  <participante>
					<percentualParticipacao>100</percentualParticipacao>
					<tipo>$tipo_corretor</tipo>";

			        if($Corretor['tp_pessoa'] == 'J'){

						$xml .= "
						<detalhe xsi:type=\"DetalhePessoaJuridica\">
							<cnpj>$cpf_cnpj_corr</cnpj>
							<nomeFantasia>{$ds_nome_corretor}</nomeFantasia>
						</detalhe>
						";

					} else {
						$xml .= "
						<detalhe xsi:type=\"DetalhePessoaFisica\">
							<cpf>$cpf_cnpj_corr</cpf>
							<nome>{$ds_nome_corretor}</nome>
						</detalhe>
						";
					}

					$xml .= "
					<inspetor>
					  <codigo>1854</codigo>
					</inspetor>
				  </participante>
				</participantes>
			</corretagem>";

			$valorTotal   = $Cobranca['premio_liquido'] + $Proposta->vl_custo_apolice;
			$valorLiquido = number_format($valorTotal - $Proposta->vl_custo_apolice,2, '.', '');
			$valorTotal   = number_format($valorTotal, 2, '.', '');
			$percentualCarregamento = 45 - $Proposta->comissaoCorretor();
            $valorLiquidoteste = $valorLiquido;

			$xml .= "
			<premio>
				<valorLiquido>$valorLiquido</valorLiquido>
				<valorTotal>$valorTotal</valorTotal>
				<valorIof>0.00</valorIof>
				<valorJuros>0.00</valorJuros>
				<valorTarifario>$valorLiquido</valorTarifario>
				<valorCustoApolice>" . number_format($Proposta->vl_custo_apolice,2, '.', '') . "</valorCustoApolice>
				<percentualIof>0.00</percentualIof>
				<valorCustoVistoria>0.00</valorCustoVistoria>
				<percentualJuros>0.00</percentualJuros>
				<percentualDesconto>0.00</percentualDesconto>
				<percentualAgravamento>0.00</percentualAgravamento>
				<valorDesconto>0.00</valorDesconto>
				<valorAgravamento>0.00</valorAgravamento>
				<percentualCarregamento>$percentualCarregamento</percentualCarregamento>
				<formaPagamento>
					<codigo>100</codigo>
					<tipoRegraDataVencimentoParcela>DataInicioVigencia</tipoRegraDataVencimentoParcela>
				</formaPagamento>
			</premio>";

			if (is_array($Cobranca['parcelamento'])) {
				$parcelas = '';
				$primeiraParcela        = true;
				$subvencaoEstadual      = 'false';
				$subvencaoFederal       = 'false';
				$totalSubvencaoFederal  = 0;
				$totalSubvencaoEstadual = 0;

				foreach($Cobranca['parcelamento'] as $parcela) {

					$totalSubvencaoEstadual += $parcela['vl_subvencao_estadual'];
					if($parcela['vl_subvencao_estadual'] != '') {
						$subvencaoEstadual = 'true';
					}
					$totalSubvencaoFederal += $parcela['vl_subvencao_federal'];
					if($parcela['vl_subvencao_federal'] != '') {
						$subvencaoFederal = 'true';
					}

					$valorTotal = $parcela['vl_segurado'] + $parcela['vl_subvencao_federal'] + $parcela['vl_subvencao_estadual'];
					$valorLiquido = $valorTotal;
					$valorTarifario = $valorTotal;
					$valorSegurado = $parcela['vl_segurado'];
					$valorCustoApolice = '0.00';

					if($primeiraParcela) {
						$primeiraParcela = false;
						$valorLiquido    = $valorLiquido - $Proposta->vl_custo_apolice;
						$valorSegurado   = $parcela['vl_segurado'] - $Proposta->vl_custo_apolice;
						$valorTarifario  = $valorTotal - $Proposta->vl_custo_apolice;
						$valorCustoApolice = $Proposta->vl_custo_apolice;
					}

					$percentualCarregamento = 45 - $Proposta->comissaoCorretor();

					$parcelas .="
						<parcela>
							<numero>{$parcela['nr_parcela']}</numero>
							<premio>
								<valorLiquido>" . number_format($valorLiquido,2, '.', '') ."</valorLiquido>
								<valorTotal>" . number_format($valorTotal,2, '.', '') ."</valorTotal>
								<valorIOF>0.00</valorIOF>
								<valorJuros>0.00</valorJuros>
								<valorTarifario>" . number_format($valorTarifario, 2, '.', '') ."</valorTarifario>
								<valorCustoApolice>" . number_format($valorCustoApolice,2, '.', '') ."</valorCustoApolice>
								<percentualIOF>0.00</percentualIOF>
								<valorCustoVistoria>0.00</valorCustoVistoria>
								<percentualJuros>0.00</percentualJuros>
								<percentualDesconto>0.00</percentualDesconto>
								<percentualAgravamento>0.00</percentualAgravamento>
								<valorDesconto>0.00</valorDesconto>
								<valorAgravamento>0.00</valorAgravamento>
								<percentualCarregamento>$percentualCarregamento</percentualCarregamento>";

								if($parcela['nu_boleto']) {
									$parcelas .=
									"<documentoPagamento xsi:type=\"BoletoCobranca\">
									<numeroDocumento>{$parcela['nu_boleto']}</numeroDocumento>
									<identificador>
										<descricao>{$parcela['ds_identificador']}</descricao>
										<utilizacao>DocumentoPagamento</utilizacao>
									</identificador>
							    	</documentoPagamento>";
								}

					$parcelas .="
								<valorSubvencaoEstadual>{$parcela['vl_subvencao_estadual']}</valorSubvencaoEstadual>
								<valorSubvencaoFederal>{$parcela['vl_subvencao_federal']}</valorSubvencaoFederal>
								<valorSegurado>{$valorSegurado}</valorSegurado>
							</premio>
							<dataVencimento>{$parcela['dt_vencimento']}</dataVencimento>
						</parcela>
						";
				}
				$xml .= "<parcelas>$parcelas</parcelas>";
			}


			$PropEnderecoNro = ($Propriedade['ds_endereco_nro'] > 0 ) ? $Propriedade['ds_endereco_nro'] : '1';

			$xml .= "

			<valorSubvencaoFederal>{$Proposta->subvencao_federal()}</valorSubvencaoFederal>
			<valorSubvencaoEstadual>{$Proposta->subvencao_estadual()}</valorSubvencaoEstadual>

			<locais>
				<local>
					<numero>{$PropEnderecoNro}</numero>
					<nome>".str_replace("&","E",$Propriedade['ds_nome_propriedade'])."</nome>
					<complemento></complemento>
					<logradouro>
						<nome>{$Propriedade['ds_endereco']}</nome>
						<cep>" . str_replace('-', '', $Propriedade['ds_endereco_cep']) ."</cep>
						<bairro>
						  <nome>{$Propriedade['ds_endereco_bairro']}</nome>
						  <localidade>
							<nome>{$Propriedade['ds_nome_municipio']}</nome>
							<estado>
							  <nome>{$Propriedade['ds_nome_estado']}</nome>
							  <uf>{$Propriedade['ds_sigla']}</uf>
							</estado>
						  </localidade>
						</bairro>
					</logradouro>
					<municipio>
						<codigo>{$Propriedade['cd_bacen']}</codigo>
					</municipio>
					<utilizacoes>
						<utilizacao>Residencial</utilizacao>
					</utilizacoes>
				";

				$stCoordenada = str_replace(" ,", "", $Propriedade['ds_coordenadas']);
                $stCoordenada = str_replace(",", "", $stCoordenada);
                $stCoordenada = str_replace("-", "", $stCoordenada);
                $arCoordenada = explode(" ",$stCoordenada);
                $xml .= "
					<geo>
					    <latitude>
					      <grau>".$arCoordenada[0]."</grau>
					      <minuto>".$arCoordenada[1]."</minuto>
					      <segundo>".$arCoordenada[2]."</segundo>
					      <posicao>S</posicao>
					    </latitude>
					    <longitude>
					      <grau>".$arCoordenada[3]."</grau>
					      <minuto>".$arCoordenada[4]."</minuto>
					      <segundo>".$arCoordenada[5]."</segundo>
					      <posicao>W</posicao>
					    </longitude>
					  </geo>
                ";


				//monta o questionario
				foreach($Questionario as $questionario) {

					if($questionario['ds_chave_rn'] == 'QUEST_SUBVENCAO_FEDERAL') {

						$perguntas .= "
							<pergunta>
							  <codigo>101</codigo>
							  <descricao>Deseja aderir ao Programa de Subvenção ao Prêmio de Seguro Rural do Governo Federal?</descricao>
							  <respostas>
								<resposta>
								  <pontuacao>0.00</pontuacao>";
							if($Proposta->respostas($questionario['ds_chave_rn']) == 0) {
								  $perguntas .= "
								  <justificativa></justificativa>
								  	<descricao>Não</descricao>
								  	<codigo>2</codigo>
								  	</resposta>
							  		</respostas>
								</pergunta>";
							} else {
								$perguntas .= "
								  <justificativa>No entanto, se por qualquer motivo não for possívell receber a subvenção, responsabilizo-me pelo pagamento integral do prêmio.</justificativa>
								  <descricao>Sim</descricao>
								  <codigo>1</codigo>
								  </resposta>
							  </respostas>
							</pergunta>";

							$QUEST_ZONEAMENTO = '';

							foreach($Questionario as $questionario_tmp) {
								if($questionario_tmp['ds_chave_rn'] == 'QUEST_ZONEAMENTO_UTILIZADO'){
									switch($Proposta->respostas($questionario_tmp['ds_chave_rn'])){
										case 1: $QUEST_ZONEAMENTO = 'MAPA'; break;
										case 2: $QUEST_ZONEAMENTO = 'EMATER'; break;
										case 3: $QUEST_ZONEAMENTO = 'IAC'; break;
										case 4: $QUEST_ZONEAMENTO = 'EPAGRI'; break;
										case 5: $QUEST_ZONEAMENTO = 'OUTROS'; break;

									}

								}
							}
							//adiciona a pergunta vinculada
							$perguntas .= "<pergunta>
								  <codigo>102</codigo>
								  <descricao>Zoneamento Utilizado:</descricao>
								  <respostas>
									<resposta>
									  <pontuacao>0.00</pontuacao>
									  <justificativa>$QUEST_ZONEAMENTO</justificativa>
									  <descricao></descricao>
									  <codigo>1</codigo>
									</resposta>
								  </respostas>
								</pergunta>
								";
						}
					}

					if($questionario['ds_chave_rn'] == 'QUEST_DANOS_GRANIZO' or  $questionario['ds_chave_rn'] == 'QUEST_DANOS_OUTROS_EVENTOS') {
						$codigo = 2;
						$resposta = 'Não';
						if($Proposta->respostas($questionario['ds_chave_rn']) != 0) {
							$codigo = 1;
							$resposta = 'Sim';
						}

						$perguntas .="
								<pergunta>
								  <codigo>103</codigo>
								  <descricao>Há danos de granizo?</descricao>
								  <respostas>
									<resposta>
									  <pontuacao>0.00</pontuacao>
									  <justificativa></justificativa>
									  <descricao>$resposta</descricao>
									  <codigo>$codigo</codigo>
									</resposta>
								  </respostas>
								</pergunta>";
					}

					if($questionario['ds_chave_rn'] == 'QUEST_OUTRA_LAVOURA') {
						//default pra nao
						$codigo = 2;
						$resposta = 'Não';
						if($Proposta->respostas($questionario['ds_chave_rn']) != 0) {
							$codigo = 1;
							$resposta = 'Sim';
						}
						$perguntas .="
								<pergunta>
								  <codigo>106</codigo>
								  <descricao>O Segurado possui outra plantação na mesma praça?</descricao>
								  <respostas>
									<resposta>
									  <pontuacao>0.00</pontuacao>
									  <justificativa></justificativa>
									  <descricao>$resposta</descricao>
									  <codigo>$codigo</codigo>
									</resposta>
								  </respostas>
								</pergunta>";
					}

					if($questionario['ds_chave_rn'] == 'QUEST_OUTRO_SEGURO') {
						$codigo = 2;
						$resposta = 'Não';
						$justificativa = '';
						if($Proposta->respostas($questionario['ds_chave_rn']) != 0) {
							$codigo = 1;
							$resposta = 'Sim';

							foreach($Questionario as $questionario_tmp) {
								if($questionario_tmp['ds_chave_rn'] == 'QUEST_LMGA'){
									$QUEST_LMGA = $Proposta->respostas($questionario['ds_chave_rn']) ? 'Sim' : 'Não';
								}
								if($questionario_tmp['ds_chave_rn'] == 'QUEST_NUMERO_APOLICE'){
									$QUEST_NUMERO_APOLICE = $Proposta->respostas($questionario_tmp['ds_chave_rn']) ? 'Sim' : 'Não';
								}
								if($questionario_tmp['ds_chave_rn'] == 'QUEST_SEGURADORA'){
									$QUEST_SEGURADORA = $Proposta->respostas($questionario_tmp['ds_chave_rn']) ? 'Sim' : 'Não';
								}
							}
							$justificativa = "IS: $QUEST_LMGA - APÓLICE: $QUEST_NUMERO_APOLICE - SEGURADORA - $QUEST_SEGURADORA";
						}

						$perguntas .="
							<pergunta>
							  <codigo>107</codigo>
							  <descricao>Há outro seguro sobre a mesma área?</descricao>
							  <respostas>
								<resposta>
								  <pontuacao>0.00</pontuacao>
								  <justificativa>$justificativa</justificativa>
								  <descricao>$resposta</descricao>
								  <codigo>$codigo</codigo>
								</resposta>
							  </respostas>
							</pergunta>";
					}
				}

				$PROD_PRODUCAO_GARANTIDA = false;
				$IS_NRO_PLANTAS_M_LINEAR = false;

				if($Proposta->atributos('PROPRIEDADE','PROD_PRODUCAO_GARANTIDA') != 0){
					$PROD_PRODUCAO_GARANTIDA = true;
				}
				if($Proposta->atributos('UNIDADE_SEGURADA','IS_NRO_PLANTAS_M_LINEAR')) {
					$IS_NRO_PLANTAS_M_LINEAR = true;
				}

				$coberturaPrincipal = false;

				foreach($Proposta->unidades(false) as $item) {

					$inCodFranquia = 0;
					unset($coberturas);
					$Coberturas = $Proposta->valoresCoberturas();

					foreach($Coberturas as $cobertura) {

						//seta a coberturaPrincipal para referencia futura
						if($cobertura->fl_principal) {
							$coberturaPrincipal = $cobertura;
							$franquiaPrincipal = $cobertura->vl_franquia;

							if($PROD_PRODUCAO_GARANTIDA) {
								//Codigo de acordo com o Nivel de cobertura (Franquia principal da proposta)
								$codigo = 0;
								switch($cobertura->vl_franquia) {
									case '50.00': $codigo = 1; break;
									case '55.00': $codigo = 2; break;
									case '60.00': $codigo = 3; break;
									case '65.00': $codigo = 4; break;
									case '70.00': $codigo = 5; break;
									case '75.00': $codigo = 6; break;
									case '80.00': $codigo = 7; break;
								}
							}
						}

						$coberturas .= "<cobertura>
										<codigo>". Produto_Model_ProdutosCoberturas::deParaI4Pro($id_proposta, $cobertura->cd_cobertura_seguradora) ."</codigo>
										<indicadorFacultativa>".($cobertura->fl_principal ? 'false' : 'true')."</indicadorFacultativa>
										<indicadorGratuita>".($cobertura->vl_taxa == 0 ? 'true' : 'false'). "</indicadorGratuita>
										<verbas>
										  <verba>
											<codigo>100</codigo>
											<IsContratada>true</IsContratada>
											<franquia>
											";
											if($PROD_PRODUCAO_GARANTIDA) {
												$coberturas .= "<codigo>1</codigo>
												<valor>0</valor>";
											} else {
												switch($cobertura->vl_franquia) {
													case 0 : $inCodFranquia = 1; break;
													case 5 : $inCodFranquia = 2; break;
													case 10: $inCodFranquia = 3; break;
													case 15: $inCodFranquia = 4; break;
													case 20: $inCodFranquia = 5; break;
													case 25: $inCodFranquia = 6; break;
													case 30: $inCodFranquia = 7; break;
													case 35: $inCodFranquia = 8; break;
													case 40: $inCodFranquia = 9; break;
												}

												if($cobertura->id_cobertura == 15 || $cobertura->id_cobertura == 16 || $cobertura->id_cobertura == 11 || $cobertura->id_cobertura == 5){
													$inCodFranquia = 1;
													$cobertura->vl_franquia = 0;
												}

												$coberturas .= "<codigo>$inCodFranquia</codigo>
						 						<valor>$cobertura->vl_franquia</valor>";
											}
						$coberturas .= "<tabela>
									<codigo>100</codigo>
									<tipo>FQ</tipo>
								  </tabela>
								</franquia>
								<importanciaSegurada>
							";

						if($cobertura->fl_principal) {
							$coberturas .=	"<valor>".number_format($item['IS_LMGA_PARCIAL'],2,'.','')."</valor>";
						} else {
							//Calculo de Importancia Seguradora para cobertura Fitossanitaria
							if($cobertura->id_cobertura == 16){
								if($item['IS_LMGA_PARCIAL'] > 0){
								    $valor = $item['IS_AREA'] * 100;
								    $valor = number_format($valor, 2, '.', '');
								} else {
									$valor = 0;
								}
							} else {
								$valor = ($item['IS_LMGA_PARCIAL'] * $cobertura->vl_lmi) / 100;
								$valor = number_format($valor, 2, '.', '');
							}
							$coberturas .="<valor>$valor</valor>";
						}

						$valor = Agro_Util::round((($item['IS_LMGA_PARCIAL'] * $cobertura->vl_taxa)/100), 2);
						$somaParcial += $valor;
						$valor = number_format($valor,2, '.', '');




						$coberturas .="
								<taxa>{$cobertura->vl_taxa}</taxa>
								</importanciaSegurada>
								<premio>
								  <valorTarifario>$valor</valorTarifario>
								  <valorLiquido>$valor</valorLiquido>
								  <valorTotal>$valor</valorTotal>
								  <percentualDesconto>0.00</percentualDesconto>
								  <percentualAgravamento>0</percentualAgravamento>
								  <valorDesconto>0.00</valorDesconto>
								  <valorAgravamento>0</valorAgravamento>
								  <percentualCarregamento>$percentualCarregamento</percentualCarregamento>
								  <taxaComercial>" . ($cobertura->vl_taxa ? $cobertura->vl_taxa : 0)  . "</taxaComercial>
								  <taxaPura>" . ($cobertura->vl_taxa ? $cobertura->vl_taxa : 0)  . "</taxaPura>
								</premio>
							  </verba>
							</verbas>
							<valorPremioBasico>0</valorPremioBasico>
						</cobertura>";
					}

					$xmlItem .=	"<item xsi:type=\"ItemAgricola\">";
								if($item['IS_NRO_PLANTAS_M_LINEAR']){
									$xmlItem .=	"<numeroSementeLinear>{$item['IS_NRO_PLANTAS_M_LINEAR']}</numeroSementeLinear>";
								}
								if($PROD_PRODUCAO_GARANTIDA){
										$xmlItem .= "<produtividadeGarantida>{$item['IS_PRODUCAO_GARANTIDA']}</produtividadeGarantida>";
										$xmlItem .= "<nivelCobertura><codigo>$codigo</codigo></nivelCobertura>";
								}else {
										$xmlItem .= "<produtividadeGarantida>{$item['IS_PRODUTIVIDADE']}</produtividadeGarantida>";
								}

					$xmlItem .=	"
								<codigo>{$item['IS_ITEM']}</codigo>
								<descricao>{$item['IS_DESCRICAO_ITEM']}</descricao>
								<questionario>
									<coeficiente>0</coeficiente>
									<perguntas>$perguntas</perguntas>
									<tipoResposta>Alfanumerico</tipoResposta>
								</questionario>
								<tipo>Agricola</tipo>
								";

					$xmlItem .= "
						<coberturas>$coberturas</coberturas>
						<vigencia>
							<tipo>Anual</tipo>
							<dataInicio>".substr($Proposta->dt_vigencia_inicio, 0, 10)."</dataInicio>
							<dataFim>".substr($Proposta->dt_vigencia_fim, 0, 10)."</dataFim>
						</vigencia>";

				$is_valor_tonelada = str_replace(".","",$item['IS_VALOR_TONELADA']);
				$is_valor_tonelada = str_replace(",",".",$is_valor_tonelada);

				$xmlItem .= "
						<idade>" .($item['IS_IDADE'] ? $item['IS_IDADE'] : 0) . "</idade>
						<area>". ($item['IS_AREA'] ? $item['IS_AREA'] : 0 ) . "</area>
						<valorTonelada>" . ($is_valor_tonelada ? $is_valor_tonelada : 0) . "</valorTonelada>
						<valorRedimentoTonelada>" . ($is_valor_tonelada ? $is_valor_tonelada : 0) . "</valorRedimentoTonelada>
						<valorRendimentoEstimado>" . ($item['IS_PRODUTIVIDADE'] ? $item['IS_PRODUTIVIDADE'] : 0) . "</valorRendimentoEstimado>
						<valorToneladaCultura>" . ($is_valor_tonelada ? $is_valor_tonelada : 0) . "</valorToneladaCultura>";

				if( $item['IS_VALOR_TONELADA'] > 0 && $item['IS_PRODUTIVIDADE'] > 0) {
					$indicador = 'true';
				} else {
					$indicador = 'false';
				}
				if($item['IS_ESPACAMENTO_SIMPLES']){
					$espacamento = $item['IS_ESPACAMENTO_SIMPLES'];
				} else {
					$espacamento = $item['IS_ESPACAMENTO_COMPOSTO'][0]."X".$item['IS_ESPACAMENTO_COMPOSTO'][1];
				}
				$xmlItem .=	"
					<indicadorCobertura>$indicador</indicadorCobertura>
					<descricao></descricao>
					<espacamento>{$espacamento}</espacamento>";

				if($item['IS_IDADE_TELA']) {
					$xmlItem .= "<idadeTela >{$item['IS_IDADE_TELA']}</idadeTela >";
				}
				if($item['IS_DATA_SEMEADURA']) {
					$xmlItem .= "<dataSemeadura >".$this->formataData($item['IS_DATA_SEMEADURA'])."</dataSemeadura >";
				}
				if($item['IS_DATA_PLANTIO_TRANSPLANTE']) {
					$xmlItem .= "<dataPlantio >{$this->formataData($item['IS_DATA_PLANTIO_TRANSPLANTE'])}</dataPlantio >";
				}
				if($item['IS_DATA_PODA']) {
					$xmlItem .= "<dataPoda >{$this->formataData($item['IS_DATA_PODA'])}</dataPoda >";
				}
				if($item['IS_PORTAENXERTO']) {
					$xmlItem .= "<portaEnxerto><codigo>{$item['IS_PORTAENXERTO']}</codigo></portaEnxerto>";
				}
				if($item['IS_PRODUCAO_MINIMA']) {
					$xmlItem .= "
					<numeroFrutoGarantido>{$item['IS_PRODUCAO_MINIMA']}</numeroFrutoGarantido>";
				}
				if($item['IS_TIPO_CONDUCAO']) {
					$valor = 'Latada';
					if($item['IS_TIPO_CONDUCAO'] == 'E'){
						$valor = 'Espaldeira';
					}
					$xmlItem .= "<sistemaConducao >$valor</sistemaConducao >";
				}
				//$cultura = $Model->getCulturasVariedades($item['id_variedade']);

				if(!$Produto['cd_cultura_seguradora']){
					$Produto['cd_cultura_seguradora'] = '0';
				}

				$Produto = $Proposta->produto();
				$xmlItem .= "
					<cultura>
					  <codigo>{$Produto['cd_bacen']}</codigo>
					  <nome>{$Produto['ds_nome_cultura']}</nome>
					  <codigoSubCultura>".($Produto['cd_cultura_seguradora'] ? $Produto['cd_cultura_seguradora'] : '0')."</codigoSubCultura>
					  <variedade>
					   <codigo>{$item['CD_VARIEDADE_SEGURADORA']}</codigo>
				   		<nome>{$item['IS_NOME_VARIEDADES']}</nome>";
						if($item['CD_CICLO_SEGURADORA']){
                       		$xmlItem .= "<ciclo><codigo>{$item['CD_CICLO_SEGURADORA']}</codigo></ciclo>";
						}
                $xmlItem .= "
					  </variedade>
					</cultura>
					</item>";
			}
			$xml .= "	<itens>$xmlItem</itens>
			</local>
		</locais>";

		if(is_array($Beneficiarios)){

			$xml .= "<beneficiarios>";
			foreach($Beneficiarios as $beneficiario){
				if($beneficiario['vl_limite_beneficio'] > 0){
					$nuBenefPercentual = round(($beneficiario['vl_limite_beneficio'] * 100) / $Proposta->lmga(), 6);
					if($nuBenefPercentual > 100){
						$nuBenefPercentual = 100;
                    }
					if($beneficiario['ds_tipo_conta'] == 's'){
						$stBenefNome = $beneficiario['ds_nome_banco'];
					} else {
						$stBenefNome = str_replace("&", "E", $beneficiario['ds_nome_beneficiarios']);
					}
					$cpf_cnpj_benef = str_replace('.', '', str_replace('/', '', str_replace('-', '', $beneficiario['nr_cpf_cnpj'])));
					$tp_pessoa = ($beneficiario['tp_pessoa'] == 'J') ? 'Juridica' : 'Fisica';
					$dsNomeSocial = !empty($beneficiario['ds_nome_social']) ? $beneficiario['ds_nome_social'] : null;
					
					$xml .= '
					<beneficiario>
					    <percentualParticipacao>'.$nuBenefPercentual.'</percentualParticipacao>
						<tipo>'.$tp_pessoa.'</tipo>
						<nome>'.$stBenefNome.'</nome>
						<nm_pessoa_social>'.$dsNomeSocial.'</nm_pessoa_social>
						<detalhe xsi:type="DetalhePessoa'.$tp_pessoa.'">';
						if($tp_pessoa == "Juridica"){
						$xml .= '
						     <cnpj>'.$cpf_cnpj_benef.'</cnpj>
						     <nomeFantasia>'.$stBenefNome.'</nomeFantasia>';
						} else {
						$xml .= '
						    <cpf>'.$cpf_cnpj_benef.'</cpf>
						    <nome>'.$stBenefNome.'</nome>';
						}
					$xml .= '
						</detalhe>
					</beneficiario>';
				}
			}
			$xml .= "</beneficiarios>";
		}

		$xml .= "
			</propostaSeguroAgricola>
		</EnviarPropostaSeguroAgricola>";

		return $xml;
	}

	public function marcapropostasAction() {
		$this->isAjax();

		$Adapter = new Zend_File_Transfer_Adapter_Http();
		$Adapter->setDestination(APPLICATION_PATH.'/upload_files/temp/');

		$file = $Adapter->getFileInfo();
		if(!$Adapter->receive($file['propostas']['name'])){
			$result['status'] = false;
		} else {
			$dados = file_get_contents(APPLICATION_PATH.'/upload_files/temp/' . $file['propostas']['name']);
			$dados = str_replace("\r\n", ",", $dados);
			$result['propostas'] = $dados;
			$result['status'] = true;
		}
		$this->getResponse()->setBody(Zend_Json::encode($result));
	}
}