public function indexAction()
 {
     $user = Zend_Registry::get('zend_auth_user');
     $noticia = new Application_Model_DbTable_Noticias();
     $beneficiario = new Application_Model_DbTable_Beneficiario();
     $select = $noticia->select();
     $select->order('idNoticias desc')->limit(15);
     $this->view->teste = $noticia->fetchall($select);
     $dbCardio = Zend_Registry::get('dbcardio');
     $select_tit = $dbCardio->select();
     $select_tit->from(array('b' => 'Beneficiario'), array('b.AutoId'))->where('b.contrato = ? and b.RDP=0', $user->contrato)->where('not exists( select 1 from suspensaovinculo sv
                                   where sv.vinculorescindido=1 and sv.Beneficiario=b.AutoId)');
     $tab_tit = $dbCardio->fetchAll($select_tit);
     $tab_tit = count($tab_tit);
     $this->view->tab_tit = $tab_tit;
     $select_dep = $dbCardio->select();
     $select_dep->from(array('b' => 'Beneficiario'), array('b.AutoId'))->where('b.contrato = ? and b.RDP<>0', $user->contrato)->where('not exists( select 1 from suspensaovinculo sv
                                   where sv.vinculorescindido=1 and sv.Beneficiario=b.AutoId)');
     $tab_dep = $dbCardio->fetchAll($select_dep);
     $tab_dep = count($tab_dep);
     $this->view->tab_dep = $tab_dep;
     $select_inat = $dbCardio->select();
     $select_inat->from(array('b' => 'Beneficiario'), array('b.AutoId'))->where('b.contrato = ?', $user->contrato)->where('exists( select 1 from suspensaovinculo sv
                                   where sv.vinculorescindido=1 and sv.Beneficiario=b.AutoId)');
     $tab_inat = $dbCardio->fetchAll($select_inat);
     $tab_inat = count($tab_inat);
     $this->view->tab_inat = $tab_inat;
     $select = $beneficiario->select();
     $select->where('contrato = ?', $user->contrato)->where('status is not null')->order('idBeneficiario desc')->limit(15);
     $this->view->ultima = $beneficiario->fetchAll($select);
     /*
     	$unicontrato = new Application_Model_DbTable_Unicontrato();
     	$reg = $unicontrato->find(6);
     	$reg=$reg->current();
     	$this->view->contrato =$reg ;
     
     	$this->view->benefs = $reg->findDependentRowset('Application_Model_DbTable_Unibeneficiario');
     */
 }
Exemple #2
0
 public function testardpAction()
 {
     $user = Zend_Registry::get('zend_auth_user');
     $contrato = $user->contrato;
     //TESTE DE RDP
     $beneficiario = new Application_Model_DbTable_Beneficiario();
     //BD UNIMED
     $unibeneficiario = new Application_Model_DbTable_Unibeneficiario();
     //pegando parametros enviados
     $request = $this->getRequest();
     //familia
     $familia = $request->getParam('Familia');
     //PEGA O IDBENEFICIARIO
     $select = $beneficiario->select();
     $select->where('RDP = ?', $request->getParam('RDP'))->where('Familia = ?', $familia)->where('Contrato = ?', $contrato);
     $select_uni = $unibeneficiario->select();
     $select_uni->where('RDP = ?', $request->getParam('RDP'))->where('Familia = ?', $familia)->where('Contrato = ?', $contrato);
     $select1 = $beneficiario->fetchall($select);
     $select2 = $unibeneficiario->fetchall($select_uni);
     if ($select1->count() >= 1 or $select2->count() >= 1) {
         echo "1";
     }
     exit;
 }
Exemple #3
0
 public function xmlAction()
 {
     //AÇÃO PARA GERAR PDF do XML
     $lote_obj = new Application_Model_DbTable_Lote();
     $beneficiario = new Application_Model_DbTable_Beneficiario();
     //RECEBE O ID DO LOTE
     $request = $this->getRequest();
     $lote = $request->getParam('lote');
     $contrato = $request->getParam('contrato');
     $select = $beneficiario->select();
     $select->where('lote = ? ', $lote);
     $tab_beneficiario = $beneficiario->fetchall($select);
     //COMEÇO A MONTAR O MALDITO PDF
     $loader = Zend_Loader_Autoloader::getInstance();
     try {
         //cria pdf
         $pdf = new Zend_Pdf();
         //cria formato A4
         $n = 0;
         $page[$n] = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
         //Define a fonte
         $font = Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA);
         //buscando imagem
         $imagem = Zend_Pdf_Image::imageWithPath('imagens/pequeno.png');
         //Colocando imagem no PDF
         $page[$n]->drawImage($imagem, 20, 750, $imagem->getPixelWidth() + 20, 750 + $imagem->getPixelHeight());
         //escreve na página
         $page[$n]->setFont($font, 10)->drawText('Relatorios XML ', 160, 730)->setFont($font, 12)->drawText('Contrato: ' . $contrato, 90, 690)->drawText('Empresa: ', 90, 670)->drawText('Numero do lote: ' . $lote, 90, 650)->setFont($font, 11)->drawText('Data: ' . date("d/m/Y"), 90, 630)->drawText('Beneficiarios: ', 90, 600)->setFont($font, 8);
         //CRIANDO LAÇO
         $altura = 585;
         foreach ($tab_beneficiario as $key => $row) {
             if ($altura < 80) {
                 $altura = 780;
                 $n = $n + 1;
                 $page[$n] = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
                 $pdf->pages[] = $page[$n];
             }
             $page[$n]->setFont($font, 8)->drawText('Nome: ' . $row['Nome'], 90, $altura -= 10)->drawText('CPF: ' . $row['Cnp'], 90, $altura -= 10)->drawText('  ', 90, $altura -= 10);
         }
         $page[$n]->setFont($font, 8)->drawText('Unimed Santos - Av. Dona Ana Costa, 211 - Encruzilhada - Santos - SP', 150, 20)->drawText('Cep: 11.060-001 - Tels.: (13) 2102-8100 / 8300 ', 150, 10);
         //adiciona página ao documento
         //$pdf->pages[] = $page;
         $diretorio = "pdfxml/" . $contrato . "/";
         if (@opendir($diretorio) == false) {
             mkdir($diretorio, 0777);
         }
         //salva PDF
         $pdf->save($diretorio . $lote . '.pdf');
         //Por fim, setamos a header como um PDF, e renderizamos o nosso $pdf;
         header('Content-type: application/pdf');
         echo $pdf->render();
         //$this->_redirect('/xml');
     } catch (Zend_Pdf_Exception $e) {
         die('PDF error: ' . $e->getMessage());
     } catch (Exception $e) {
         die('Application error: ' . $e->getMessage());
     }
     echo $lote;
     exit;
 }
Exemple #4
0
 public function gerarAction()
 {
     $request = $this->getRequest();
     $lote = $request->getParam('lote');
     $lote_obj = new Application_Model_DbTable_Lote();
     $lote_tab = $lote_obj->find($lote)->current();
     $contrato = $lote_tab['contrato'];
     //DADOS DO BENEFICIARIO
     $beneficiario = new Application_Model_DbTable_Beneficiario();
     $select = $beneficiario->select();
     $select->where('lote = ? ', $lote);
     $tab_beneficiario = $beneficiario->fetchall($select);
     //encoding='ISO-8859-1'
     $dadosXml = "<?xml version='1.0' standalone='yes'?>\n";
     $dadosXml .= "<MovimentacaoCadastralAtualizacaoCompleta xmlns='MovimentacaoCadastralAtualizacaoCompleta.xsd'>\n";
     //ABRE NÓ PAI PRINCIPAL
     $unicontrato = new Application_Model_DbTable_Unicontrato();
     foreach ($tab_beneficiario as $key => $row) {
         $dadosXml .= "<AtualizacaoCompleta>\n";
         #CRIA O LOTE
         //GERANDO XML  PARTIR DOS DADOS ACIMA
         $objcontrato = $unicontrato->find($row['Contrato'])->current();
         //TEM QUE PEGAR O CONTRATO
         $dadosXml .= "<Contrato>" . $objcontrato['Codigo'] . "</Contrato>\n";
         #CODIGO DO BENEFICIARIO
         $dadosXml .= "<RDP>" . $row['RDP'] . "</RDP>\n ";
         #RDP
         $dadosXml .= "<Familia>" . $row['Familia'] . "</Familia>\n ";
         #CODIGO DA FAMILIA
         if ($row['Matricula'] != null) {
             $dadosXml .= "<Matricula>" . $row['Matricula'] . "</Matricula>\n ";
             #CODIGO DA FAMILIA
         }
         //$dadosXml.="<IncluidoComoRN>".$this->true_ou_false($row['IncluidoComoRN'])."</IncluidoComoRN>\n"; #INCLUINDO COM RN
         $dadosXml .= "<IncluidoComoRN>false</IncluidoComoRN>\n";
         #INCLUINDO COM RN
         $dadosXml .= "<GrauDependencia>" . $this->graudependencia($row['RDP']) . "</GrauDependencia>\n";
         #GrauDependencia
         $dadosXml .= "<InicioVigencia>" . $this->dataXml($row['InicioVigencia']) . "</InicioVigencia>\n ";
         #Inicio de vigencia
         $dadosXml .= "<FimVigencia>" . $this->dataXml($row['FimVigencia']) . "</FimVigencia>\n ";
         #Fim de vigencia
         $dadosXml .= "<CodigoExterno>" . $this->codcarteira($objcontrato['Codigo'], $row['Familia'], $row['RDP']) . "</CodigoExterno>\n";
         #NAO SABEMOS COMO PEGAR ESSE CODIGO
         $dadosXml .= "<Pessoa>\n";
         #INICIA PESSOA
         $dadosXml .= "<Nome>" . $row['Nome'] . "</Nome>\n";
         $dadosXml .= "<DataNascimento>" . $this->dataXml($row['DataNascimento']) . "</DataNascimento>\n";
         $dadosXml .= "<Cnp>" . $this->soNumero($row['Cnp']) . "</Cnp>\n";
         $dadosXml .= "<Tipo>2</Tipo>\n";
         $dadosXml .= "<Sexo>" . strtolower($row['Sexo']) . "</Sexo>\n";
         $dadosXml .= "<EstadoCivil>" . $row['EstadoCivil'] . "</EstadoCivil>\n";
         if ($row['Naturalidade'] != null and $row['Naturalidade'] != 0) {
             $dadosXml .= "<Naturalidade>" . $row['Naturalidade'] . "</Naturalidade>\n";
         }
         if ($row['NomePai'] != null or $row['NomePai'] != '') {
             $dadosXml .= "<NomePai>" . $row['NomePai'] . "</NomePai>\n";
         } else {
             $dadosXml .= "<NomePai>NAO INFORMADO</NomePai>\n";
         }
         $dadosXml .= "<NomeMae>" . $row['NomeMae'] . "</NomeMae>\n";
         if ($row['NomeConjuge'] != null and $row['NomeConjuge'] != '') {
             $dadosXml .= "<NomeConjuge>" . $row['NomeConjuge'] . "</NomeConjuge>\n";
         }
         $dadosXml .= "<Invalidez>false</Invalidez>\n";
         //Emails
         $beneficiarioEmail = new Application_Model_DbTable_Email();
         $select = $beneficiarioEmail->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_beneficiarioEmail = $beneficiarioEmail->fetchall($select);
         //VERIFICAR STATUS
         foreach ($tab_beneficiarioEmail as $k => $r) {
             if ($r['status'] == 1) {
                 if ($r['Email'] != '') {
                     $dadosXml .= "<Emails>\n";
                     $dadosXml .= "<Email>" . $r['Email'] . "</Email>\n";
                     $dadosXml .= "<Seq>" . $r['Seq'] . "</Seq>\n";
                     $dadosXml .= "<InicioVigencia>" . $this->dataXml($r['InicioVigencia']) . "</InicioVigencia>\n";
                     $dadosXml .= "<FimVigencia>" . $this->dataXml($r['FimVigencia']) . "</FimVigencia>\n";
                     $dadosXml .= "</Emails>\n";
                 }
             }
         }
         //Registros
         $beneficiarioRegistro = new Application_Model_DbTable_Registro();
         $select = $beneficiarioRegistro->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_beneficiarioRegistro = $beneficiarioRegistro->fetchall($select);
         if (count($tab_beneficiarioRegistro) == 1) {
             $rg = $tab_beneficiarioRegistro[0]['RG'];
             $pis = $tab_beneficiarioRegistro[0]['PIS'];
             if ($rg != '') {
                 $dadosXml .= "<Registro>\n";
                 $dadosXml .= "<Tipo>1</Tipo>\n";
                 $dadosXml .= "<Numero>" . $rg . "</Numero>\n";
                 //OrgaoExp
                 //UFExp
                 //DataExp
                 $dadosXml .= "</Registro>\n";
             }
             if ($pis != '') {
                 $dadosXml .= "<Registro>\n";
                 $dadosXml .= "<Tipo>9</Tipo>\n";
                 $dadosXml .= "<Numero>" . $pis . "</Numero>\n";
                 $dadosXml .= "</Registro>\n";
             }
         }
         //outro select aqui para pegar endereco desse BENEficiario
         $beneficiarioEnd = new Application_Model_DbTable_Endereco();
         $select = $beneficiarioEnd->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_beneficiarioEnd = $beneficiarioEnd->fetchall($select);
         //$dadosXml.="<enderecocount>".$tab_beneficiarioEnd->count()."</enderecocount>";
         //  FIM DA CONSULTA QUE PEGA ENDERECO
         //
         foreach ($tab_beneficiarioEnd as $k => $r) {
             //VERIFICAR STATUS
             //  if ($r['status'] == 1) {
             $dadosXml .= "<Endereco>\n";
             #INICIA ENDEREÇO DA PESSOA
             $dadosXml .= "<Seq>" . $r['Seq'] . "</Seq>\n";
             if ($r['NumLogradouro'] != '') {
                 $dadosXml .= "<NumLogradouro>" . $r['NumLogradouro'] . "</NumLogradouro>\n";
             }
             $dadosXml .= "<NomeLogradouro>" . $r['Logradouro'] . "</NomeLogradouro>\n";
             $dadosXml .= "<ComplLogradouro>" . $r['ComplLogradouro'] . "</ComplLogradouro>\n";
             $dadosXml .= "<Bairro>" . $r['Bairro'] . "</Bairro>\n";
             $dadosXml .= "<Cidade>" . $r['Cidade'] . "</Cidade>\n";
             $dadosXml .= "<Cep>" . $this->soNumero($r['CEP']) . "</Cep>\n";
             if ($r['PontoReferencia'] != null or $r['PontoReferencia'] != '') {
                 $dadosXml .= "<PontoReferencia>" . $r['PontoReferencia'] . "</PontoReferencia>\n";
             }
             if ($r['CaixaPostal'] != '' or $r['CaixaPostal'] != null) {
                 $dadosXml .= "<CaixaPostal>" . $r['CaixaPostal'] . "</CaixaPostal>\n";
             }
             $dadosXml .= "<Tipo>" . ($r['Tipo'] == "" ? "1" : $r['Tipo']) . "</Tipo>\n";
             $dadosXml .= "<ParaCorrespondencia>true</ParaCorrespondencia>\n";
             $dadosXml .= "<ParaCobranca>true</ParaCobranca>\n";
             $dadosXml .= "<ParaFaturamento>true</ParaFaturamento>\n";
             $dadosXml .= "<ParaPublicacao>true</ParaPublicacao>\n";
             $dadosXml .= "<InicioVigencia>" . $this->dataXml($r['InicioVigencia']) . "</InicioVigencia>\n";
             $dadosXml .= "<FimVigencia>" . $this->dataXml($r['FimVigencia']) . "</FimVigencia>\n";
             //if ( $r['AutoId'] != '' )
             //$dadosXml.="<CardioAutoId>".$r['AutoId']."</CardioAutoId>\n";
             //$dadosXml.="<CardioAutoId>".$r['CardioAutoId']."</CardioAutoId>\n";
             $dadosXml .= "</Endereco>\n";
             #FECHA ENDEREÇO DA PESSOA
             // }
         }
         $beneficiarioTel = new Application_Model_DbTable_Telefone();
         $select = $beneficiarioTel->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_beneficiarioTel = $beneficiarioTel->fetchall($select);
         //VERIFICAR STATUS
         foreach ($tab_beneficiarioTel as $k => $r) {
             if ($r['Numero'] != '') {
                 $dadosXml .= "<Telefone>\n";
                 $dadosXml .= "<Seq>" . ($r['Seq'] == '' ? '1' : $r['Seq']) . "</Seq>\n";
                 $dadosXml .= "<Tipo>" . $r['Tipo'] . "</Tipo>\n";
                 $dadosXml .= "<DDD>" . $r['DDD'] . "</DDD>\n";
                 $dadosXml .= "<Numero>" . $this->soNumero($r['Numero']) . "</Numero>\n";
                 $dadosXml .= "<InicioVigencia>" . $this->dataXml($r['InicioVigencia']) . "</InicioVigencia>\n";
                 $dadosXml .= "<FimVigencia>" . $this->dataXml($r['FimVigencia']) . "</FimVigencia>\n";
                 if ($r['AutoId'] != '') {
                     //$dadosXml.="<CardioAutoId>".$r['AutoId']."</CardioAutoId>\n";
                     $dadosXml .= "<SeqEnd>" . ($r['SeqEnd'] == '' ? '1' : $r['SeqEnd']) . "</SeqEnd>\n";
                 }
                 $dadosXml .= "</Telefone>\n";
             }
         }
         $dadosXml .= "</Pessoa>\n ";
         #FECHA PESSOA
         $beneficiarioModulo = new Application_Model_DbTable_Modulo();
         $select = $beneficiarioModulo->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_beneficiarioModulo = $beneficiarioModulo->fetchall($select);
         foreach ($tab_beneficiarioModulo as $k => $r) {
             //PERGUNTA SE STATUS É 1, SE SIM INFORMA MODULO
             if ($r['status'] == 1) {
                 if ($r['FimVigencia'] != '' or $r['FimVigencia'] != null) {
                     //ENTÃO FECHA OS ACESSÓRIOS
                     $unibeneficiario = new Application_Model_DbTable_Unibeneficiario();
                     $select = $unibeneficiario->select();
                     $select->setIntegrityCheck(false);
                     $select->from(array('b' => 'Beneficiario'), array('*'))->joinLeft(array('m' => 'ModuloBeneficiario'), 'b.AutoId = m.Beneficiario', array('m.InicioVigencia'))->joinLeft(array('o' => 'ModuloOperadora'), 'm.Modulo = o.AutoId', array('o.Codigo'))->where('b.AutoId = ? and m.fimvigencia is null and o.tipo=9', $row['AutoId']);
                     $modulos = $unibeneficiario->fetchAll($select);
                     foreach ($modulos as $iModulo => $rModulo) {
                         $dadosXml .= "<Modulos>\n";
                         #ABRE MODULO
                         $dadosXml .= "<Codigo>" . $rModulo['Codigo'] . "</Codigo>\n";
                         $dadosXml .= "<DataBaseCob>" . $this->dataPhp($rModulo['InicioVigencia']) . "</DataBaseCob>\n";
                         $dadosXml .= "<InicioVigencia>" . $this->dataPhp($rModulo['InicioVigencia']) . "</InicioVigencia>\n";
                         $dadosXml .= "<QteMensRetr>0</QteMensRetr>\n";
                         $dadosXml .= "<FimVigencia>" . $this->dataPhp($r['FimVigencia']) . "</FimVigencia>\n";
                         $dadosXml .= "</Modulos>\n";
                         #FECHA MODULO
                     }
                 }
                 $dadosXml .= "<Modulos>\n";
                 #ABRE MODULO
                 $dadosXml .= "<Codigo>" . $r['Codigo'] . "</Codigo>\n";
                 $dadosXml .= "<DataBaseCob>" . $this->dataXml($r['InicioVigencia']) . "</DataBaseCob>\n";
                 $dadosXml .= "<InicioVigencia>" . $this->dataXml($r['InicioVigencia']) . "</InicioVigencia>\n";
                 $dadosXml .= "<QteMensRetr>0</QteMensRetr>\n";
                 if ($r['FimVigencia'] != '') {
                     $dadosXml .= "<FimVigencia>" . $this->dataXml($r['FimVigencia']) . "</FimVigencia>\n";
                 }
                 $dadosXml .= "</Modulos>\n";
                 #FECHA MODULO
             }
         }
         // SE FOR DEPENDENTE, PASSAR O TITULAR
         if ($row['RDP'] > 0) {
             $dadosXml .= "<Titular>\n";
             $dadosXml .= "<Codigo>" . $this->codcarteira($objcontrato['Codigo'], $row['Familia'], 0) . "</Codigo>\n";
             $dadosXml .= "</Titular>\n";
         }
         //LOTACAO
         $lotacao = new Application_Model_DbTable_Lotacao();
         $select = $lotacao->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_lotacao = $lotacao->fetchall($select);
         $tabtemp = new Application_Model_DbTable_Unibeneficiario();
         foreach ($tab_lotacao as $local => $valores) {
             //VERIFICAR STATUS
             if ($valores['status'] == 1) {
                 // Troca o código autoid, pelo campo código
                 /*
                  $select = $tabtemp->select();
                  $select ->setIntegrityCheck(false);
                  $select	->from(array('b' => 'lotacaocontrato'),array('Codigo'))
                  ->where('contrato = ?', $contrato )
                  ->where('AutoId = ?', $valores['Codigo'] );
                  $res_temp = $tabtemp->fetchAll($select);
                  if ( count($res_temp) == 1 ){
                 */
                 if ($valores['Codigo'] != null || $valores['Codigo'] != '') {
                     $dadosXml .= "<Lotacao>\n";
                     #ABRE LOTACAO
                     $dadosXml .= "<Codigo>" . $valores['Codigo'] . "</Codigo>\n";
                     $dadosXml .= "<InicioVigencia>" . $this->dataXml($valores['InicioVigencia']) . "</InicioVigencia>\n";
                     if ($valores['FimVigencia'] != '' || $valores['FimVigencia'] != null) {
                         $dadosXml .= "<FimVigencia>" . $this->dataXml($valores['FimVigencia']) . "</FimVigencia>\n";
                     }
                     $dadosXml .= "</Lotacao>\n";
                     #FECHA LOTACAO
                 }
             }
             //}
         }
         //LOCAL DE ATENDIMENTO DO BENEFICIARIO
         $LocalAtendimento = new Application_Model_DbTable_LocalAtendimento();
         $select = $LocalAtendimento->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_localAtendimento = $LocalAtendimento->fetchall($select);
         //VERIFICAR STATUS
         foreach ($tab_localAtendimento as $local => $valores) {
             if ($valores['status'] == 1) {
                 if ($valores['Codigo'] != '') {
                     $unipessoa = new application_model_DbTable_Unipessoa();
                     $select = $unipessoa->select();
                     $select->setIntegrityCheck(false);
                     $select->from(array('pes' => 'Pessoa'), array())->join(array('pse' => 'PrestadorServico'), 'pes.autoid = pse.pessoa', array())->join(array('nre' => 'negociacaorepasse'), 'nre.lcat = pse.autoid', array('tipo'))->where('nre.contrato = ?', $row['Contrato'])->where('pse.codigo = ?', $valores['Codigo']);
                     $resultado = $unipessoa->fetchAll($select)->current();
                     $dadosXml .= "<LocalAtendimento>\n";
                     #ABRE LOCAL ATENDIMENTO
                     $dadosXml .= "<LcAt>" . $valores['Codigo'] . "</LcAt>\n";
                     $dadosXml .= "<Tipo>" . $resultado['tipo'] . "</Tipo>\n";
                     $dadosXml .= "<InicioVigencia>" . $this->dataXml($valores['InicioVigencia']) . "</InicioVigencia>\n";
                     if ($valores['FimVigencia'] != '') {
                         $dadosXml .= "<FimVigencia>" . $this->dataXml($valores['FimVigencia']) . "</FimVigencia>\n";
                     }
                     $dadosXml .= "</LocalAtendimento>\n";
                     #FECHA LOCAL ATENDIMENTO
                 }
             }
         }
         $dadosXml .= "</AtualizacaoCompleta> \n";
         #FECHA O AtualizacaoCompleta
     }
     //FECHA LAÇO DO FOREACH
     $dadosXml .= "</MovimentacaoCadastralAtualizacaoCompleta>";
     // FECHA NÓ PAI PRINCIPAL
     //GRAVA
     file_put_contents(APPLICATION_PATH . '/xml/uniweb_' . $lote . ".xml", $dadosXml);
     $this->view->nomeXml = APPLICATION_PATH . '/xml/uniweb_' . $lote . ".xml";
     $this->view->lote = $lote;
     // ALTERA STATUS DO LOTE PARA 0
     $tab_lote = new Application_Model_DbTable_Lote();
     $atualizaLote = array("status" => 0);
     $where = "AutoId = " . $lote;
     $tab_lote->update($atualizaLote, $where);
     // ALTERA STATUS DO BENEFICIARIO PARA 0
     $atualizaBeneficiario = array("status" => 0);
     $where = "lote = " . $lote;
     $beneficiario->update($atualizaBeneficiario, $where);
 }
 public function deletarAction()
 {
     $benef = new Application_Model_DbTable_Beneficiario();
     $telefone = new Application_Model_DbTable_Telefone();
     $endereco = new Application_Model_DbTable_Endereco();
     $email = new Application_Model_DbTable_Email();
     $modulo = new Application_Model_DbTable_Modulo();
     $local = new Application_Model_DbTable_LocalAtendimento();
     $lotacao = new Application_Model_DbTable_Lotacao();
     $registro = new Application_Model_DbTable_Registro();
     $request = $this->getRequest();
     $idBeneficiario = $request->getParam('id');
     $where = "idBeneficiario = " . $idBeneficiario;
     $telefone->delete($where);
     $endereco->delete($where);
     $email->delete($where);
     $modulo->delete($where);
     $local->delete($where);
     $lotacao->delete($where);
     $registro->delete($where);
     $benef->delete($where);
     $this->_redirect('/beneficiario/enviaralteracoes');
 }
 public function gerarAction()
 {
     $request = $this->getRequest();
     $lote = $request->getParam('lote');
     $lote_obj = new Application_Model_DbTable_Lote();
     $lote_tab = $lote_obj->find($lote)->current();
     $contrato = $lote_tab['contrato'];
     //DADOS DO BENEFICIARIO
     $beneficiario = new Application_Model_DbTable_Beneficiario();
     $select = $beneficiario->select();
     $select->where('lote = ? ', $lote);
     $tab_beneficiario = $beneficiario->fetchall($select);
     $dadosXml = "<?xml version='1.0' encoding='ISO-8859-1' standalone='yes'?>\n";
     $dadosXml .= "<MovimentacoesCadastrais xmlns='MovimentacoesCadastrais.xsd'>\n";
     //ABRE NÓ PAI PRINCIPAL
     $dadosXml .= "<Lote>\n";
     #CRIA O LOTE
     foreach ($tab_beneficiario as $key => $row) {
         //GERANDO XML  PARTIR DOS DADOS ACIMA
         $dadosXml .= $row['AutoId'] != "" ? "<Alteracao>\n" : "<Inclusao>\n";
         #TIPO ALTERACAO
         $dadosXml .= "<Beneficiario>\n";
         #BENEFICIARIO
         $dadosXml .= "<Codigo>" . $row['idBeneficiario'] . "</Codigo>\n ";
         #CODIGO DO BENEFICIARIO
         $dadosXml .= "<Familia>" . $row['Familia'] . "</Familia>\n ";
         #CODIGO DA FAMILIA
         $dadosXml .= "<InicioVigencia>" . $row['InicioVigencia'] . "</InicioVigencia>\n ";
         #Inicio de vigencia
         $dadosXml .= "<Tipo>1</Tipo>\n ";
         #TIPO
         $dadosXml .= "<IncluidoComoRn>FALSE</IncluidoComoRn>\n ";
         #INCLUIDO COMO RN
         $dadosXml .= "<RDP>" . $row['RDP'] . "</RDP>\n ";
         #RDP
         $dadosXml .= "<GrauDependencia>00</GrauDependencia>\n ";
         #GrauDependencia
         $dadosXml .= "<Importado>TRUE</Importado>\n ";
         #Importado
         $dadosXml .= "<Pessoa>\n ";
         #INICIA PESSOA
         $dadosXml .= "<Nome>" . $row['Nome'] . "</Nome>\n";
         $dadosXml .= "<NomeReduzido>" . $row['Nome'] . "</NomeReduzido>\n";
         $dadosXml .= "<DataNascimento>" . $row['DataNascimento'] . "</DataNascimento>\n";
         $dadosXml .= "<Sexo>" . $row['Sexo'] . "</Sexo>\n";
         $dadosXml .= "<Cnp>" . $row['Cnp'] . "</Cnp>\n";
         $dadosXml .= "<EstadoCivil>" . $row['EstadoCivil'] . "</EstadoCivil>\n";
         #O CERTO DO ESTADO CIVIL É EXIBIR LETRA
         $dadosXml .= "<NomeMae>" . $row['NomeMae'] . "</NomeMae>\n";
         $dadosXml .= "<Tipo>2</Tipo>\n";
         //outro select aqui para pegar endereco desse BENEficiario
         $beneficiarioEnd = new Application_Model_DbTable_Endereco();
         $select = $beneficiarioEnd->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_beneficiarioEnd = $beneficiarioEnd->fetchall($select);
         //$dadosXml.="<enderecocount>".$tab_beneficiarioEnd->count()."</enderecocount>";
         //  FIM DA CONSULTA QUE PEGA ENDERECO
         //
         foreach ($tab_beneficiarioEnd as $k => $r) {
             $dadosXml .= "<Endereco>\n";
             #INICIA ENDEREÇO DA PESSOA
             $dadosXml .= "<NomeLogradouro>" . $r['Logradouro'] . "</NomeLogradouro>\n";
             $dadosXml .= "<Bairro>" . $r['Bairro'] . "</Bairro>\n";
             $dadosXml .= "<Cidade>" . $r['Cidade'] . "</Cidade>\n";
             $dadosXml .= "<CEP>" . $r['CEP'] . "</CEP>\n";
             $dadosXml .= "<NumLogradouro>" . $r['NumLogradouro'] . "</NumLogradouro>\n";
             $dadosXml .= "<UF>SP</UF>\n";
             /*** CRIAR NO BD ***/
             $dadosXml .= "<Tipo>1</Tipo>\n";
             /*** CRIAR NO BD ***/
             $dadosXml .= "<InicioVigencia>" . $r['inicioVigencia'] . "</InicioVigencia>\n";
             $dadosXml .= "</Endereco>\n";
             #FECHA ENDEREÇO DA PESSOA
         }
         /* ESSE REGISTRO TEM TIPO Q EH PARA SABER Q TIPO DE REGISTRO
          * 
          * POR EXEMPLO: O REGISTRO TIPO 9 É O PIS O 11 É O INSS
          * SABEMOS O TIPO PELO CARDIO NA TABELA 'TipoRegPessoa'
          * 
          */
         $dadosXml .= "<Registro>\n";
         # INICIA REGISTRO
         $dadosXml .= "<Numero>12779406242</Numero>\n";
         $dadosXml .= "<Tipo>9</Tipo>\n";
         $dadosXml .= "</Registro>\n";
         # FECHA REGISTRO
         $dadosXml .= "<Registro>\n";
         # INICIA REGISTRO2
         $dadosXml .= " <Numero>48649209-6</Numero>\n";
         $dadosXml .= "<Tipo>1</Tipo>\n";
         $dadosXml .= "<UfRg>SP</UfRg>\n";
         $dadosXml .= "</Registro>\n";
         # FECHA REGISTRO2
         $dadosXml .= "</Pessoa>\n ";
         #FECHA PESSOA
         $dadosXml .= "<Modulo>\n";
         #ABRE MODULO
         $dadosXml .= "<Codigo>001314410</Codigo>\n";
         $dadosXml .= "<InicioVigencia>01/03/2010</InicioVigencia>\n";
         $dadosXml .= "<DataBaseCob>01/03/2010</DataBaseCob>\n";
         $dadosXml .= "</Modulo>\n";
         #FECHA MODULO
         $dadosXml .= "<LotacaoBeneficiario>\n";
         #INICIA LOTAÇÃO DO BENEFICIARIO
         $dadosXml .= "<Codigo>31440001</Codigo>\n";
         $dadosXml .= "<InicioVigenciLot>01/03/2010</InicioVigenciLot>\n";
         $dadosXml .= "</LotacaoBeneficiario>\n";
         # FECHA LOTAÇÃO DO BENEFICIARIO
         //LOCAL DE ATENDIMENTO DO BENEFICIARIO
         $LocalAtendimento = new Application_Model_DbTable_LocalAtendimento();
         $select = $LocalAtendimento->select()->where('lote = ? ', $lote)->where('idBeneficiario = ?', $row['idBeneficiario']);
         $tab_localAtendimento = $LocalAtendimento->fetchall($select);
         $dadosXml .= "<AberturaRepasse>\n";
         #INICIA ABERTURA REPASSE
         foreach ($tab_localAtendimento as $local => $valores) {
             $dadosXml .= "<LcAt>" . $valores['AutoId'] . "</LcAt>\n";
             $dadosXml .= "<InicioVigencia>" . $valores['inicioVigencia'] . "</InicioVigencia>\n";
             $dadosXml .= "<Tipo>TIPOOO</Tipo>\n";
         }
         $dadosXml .= " </AberturaRepasse>\n";
         #FECHA ABERTURA REPASSE
         $dadosXml .= "</Beneficiario>\n";
         #FECHA BENEFICIARIO
         $dadosXml .= $row['AutoId'] != "" ? "</Alteracao>\n" : "</Inclusao>\n";
         #FECHA TIPO ALTERACAO
     }
     //FECHA LAÇO DO FOREACH
     $dadosXml .= "</Lote> ";
     #FECHA O LOTE
     $dadosXml .= "</MovimentacoesCadastrais>";
     // FECHA NÓ PAI PRINCIPAL
     //GRAVA
     file_put_contents($contrato . ".xml", $dadosXml);
 }