/** * Carrega as importações DES-IF na grid */ public function listarImportacaoDesifAction() { parent::noLayout(); $aParametro = $this->_request->getParam('form'); $oForm = new Contribuinte_Form_ConsultaImportacaoDesif(); $iCompetenciaInicial = null; if (!empty($aParametro['competencia_inicial'])) { $aCompetenciaInicial = explode('/', $aParametro['competencia_inicial']); $iCompetenciaInicial = $aCompetenciaInicial[1] . $aCompetenciaInicial[0]; } $iCompetenciaFinal = null; if (!empty($aParametro['competencia_final'])) { $aCompetenciaFinal = explode('/', $aParametro['competencia_final']); $iCompetenciaFinal = $aCompetenciaFinal[1] . $aCompetenciaFinal[0]; } $aRecord = array(); $iLimit = $this->_request->getParam('rows') ? $this->_request->getParam('rows') : 10; $iPage = $this->_request->getParam('page') ? $this->_request->getParam('page') : 0; $oContribuinte = $this->_session->contribuinte; $aIdContribuinte = $oContribuinte->getContribuintes(); $aImportacao = Contribuinte_Model_ImportacaoDesif::getImportacaoPorCompetencia($aIdContribuinte, $iCompetenciaInicial, $iCompetenciaFinal); $oPaginatorAdapter = new DBSeller_Controller_PaginatorArray($aImportacao); /** * Monta a paginação do GridPanel */ $oResultado = new Zend_Paginator($oPaginatorAdapter); $oResultado->setItemCountPerPage($iLimit); $oResultado->setCurrentPageNumber($iPage); $iTotal = $oResultado->getTotalItemCount(); $iTotalPages = $oResultado->getPages()->pageCount; $aRecord = array(); foreach ($oResultado as $oImportacaoDesif) { $sCompInicial = substr($oImportacaoDesif->getCompetenciaInicial(), 4, 2) . "/"; $sCompInicial .= substr($oImportacaoDesif->getCompetenciaInicial(), 0, 4); $sCompFinal = substr($oImportacaoDesif->getCompetenciaFinal(), 4, 2) . "/"; $sCompFinal .= substr($oImportacaoDesif->getCompetenciaFinal(), 0, 4); $oImportacaoRetorno = new StdClass(); $oImportacaoRetorno->id = $oImportacaoDesif->getId(); $oImportacaoRetorno->competencia_inicial = $sCompInicial; $oImportacaoRetorno->competencia_final = $sCompFinal; $oImportacaoRetorno->data_hora = $oImportacaoDesif->getDataImportacao()->format('d/m/Y H:i:s'); $aRecord[] = $oImportacaoRetorno; } /** * Parametros de retorno do AJAX */ $aRetornoJson = array('total' => $iTotalPages, 'page' => $iPage, 'records' => $iTotal, 'rows' => $aRecord); echo $this->getHelper('json')->sendJson($aRetornoJson); }