public function indexAction() { $user = Zend_Registry::get('zend_auth_user'); $contrato = $user->contrato; $lote = new Application_Model_DbTable_Lote(); $pdf = new Application_Model_DbTable_Pdf(); $select = $pdf->select(); $select->where('contrato = ?', $contrato)->order('idPdf desc'); $dado = $pdf->fetchall($select); $this->view->lotes = $dado; }
public function indexAction() { //echo $local = 'layouts/pequeno.png'; //exit; $request = $this->getRequest(); $contrato = $request->getParam('contrato'); $lote = $request->getParam('lote'); $beneficiario = new Application_Model_DbTable_Beneficiario(); $select = $beneficiario->select(); $select->setIntegrityCheck(false); $select->from(array('b' => 'beneficiario'), array('*'))->joinleft(array('m' => 'modulo'), 'b.idBeneficiario = m.idBeneficiario', array('Nome as Modulo'))->joinleft(array('l' => 'lotacao'), 'b.idBeneficiario = l.idBeneficiario', array('Nome as Lotacao'))->where('b.lote = ? ', $lote); $tab_beneficiario = $beneficiario->fetchall($select); //N TENDEMO $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()); $user = Zend_Registry::get('zend_auth_user'); //escreve na página $page[$n]->setFont($font, 10)->drawText('Comprovante - Movimentações cadastrais', 160, 730)->setFont($font, 12)->drawText('Contrato: ' . $contrato, 90, 690)->drawText('Empresa: ' . $user->nome, 90, 670)->drawText('Numero do comprovante: ' . $lote, 90, 650)->setFont($font, 11)->drawText('Data: ' . date("d/m/Y"), 90, 630)->drawText('Beneficiarios: ', 90, 600)->setFont($font, 8); $pdf->pages[] = $page[$n]; $altura = 585; //$pagina = -1; 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]; } $row['RDP'] == 0 ? $grau = "Titular" : ($grau = "Dependente"); $row['Lotacao'] == null ? $NomeLotacao = "Sem lotacao" : ($NomeLotacao = $row['Lotacao']); $row['status'] == 1 ? $Movtipo = "Inclusao" : $row['status'] == 2 ? $Movtipo = "Alteracao" : ($Movtipo = "Exclusao"); $page[$n]->setFont($font, 8)->drawText('Nome: ' . $row['Nome'], 90, $altura -= 10)->drawText('CPF: ' . $row['Cnp'], 90, $altura -= 10)->drawText('Grau dependencia: ' . $grau, 90, $altura -= 10)->drawText('Plano: ' . $row['Modulo'], 90, $altura -= 10)->drawText('Lotação: ' . $NomeLotacao, 90, $altura -= 10)->drawText('Tipo: ' . $Movtipo, 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[$n]; $diretorio = "listapdf/" . $contrato . "/"; chmod($diretorio, 0777); if (@opendir($diretorio) == false) { mkdir($diretorio, 0777); } //salva PDF $pdf->save($diretorio . $lote . '.pdf'); echo $nomePDF = $diretorio . $lote . '.pdf'; /* cadastrar na tabela PDF com as seguintes informações o numero desse lote o contrato (ver sessão) a data (hoje) o caminho $nomePDF */ $pdf = new Application_Model_DbTable_Pdf(); $inserir = array("contrato" => $contrato, "lote" => $lote, "data" => date('Y-m-d'), "caminho" => $nomePDF); $pdf->insert($inserir); exit; } catch (Zend_Pdf_Exception $e) { die('PDF error: ' . $e->getMessage()); } catch (Exception $e) { die('Application error: ' . $e->getMessage()); } }