/** * Emite e gera as guias conforme a receita e aliquota informadas */ public function emitirGuiaAction() { parent::noTemplate(); $aParametros = $this->getAllParams(); try { $iIdImportacao = $aParametros['id']; $fAliquota = $aParametros['aliq_issqn'] ? $aParametros['aliq_issqn'] : NULL; $oContribuinte = $this->_session->contribuinte; $aReceitaDesif = Contribuinte_Model_ImportacaoDesif::getTotalReceitaGuiaDesif($oContribuinte, $iIdImportacao, $fAliquota); $sTotalReceita = DBSeller_Helper_Number_Format::toMoney($aReceitaDesif->total_receita, 2, 'R$ '); $sTotalIss = DBSeller_Helper_Number_Format::toMoney($aReceitaDesif->total_iss, 2, 'R$ '); $oFormEmitirGuia = new Contribuinte_Form_GuiaCompetencia(); $oFormEmitirGuia->setName('form-emitir-guia'); $oFormEmitirGuia->setAction('/contribuinte/guia-desif/emitir-guia'); $oFormEmitirGuia->getElement('ano')->setValue($aReceitaDesif->ano_competencia); $oFormEmitirGuia->getElement('mes')->setValue($aReceitaDesif->mes_competencia); $oFormEmitirGuia->getElement('aliq_issqn')->setValue($fAliquota); $oFormEmitirGuia->getElement('total_servico')->setValue($sTotalReceita); $oFormEmitirGuia->getElement('total_iss')->setValue($sTotalIss); $oFormEmitirGuia->getElement('data_guia')->setValue(date('d/m/Y')); $this->view->form = $oFormEmitirGuia; // Verifica se for enviado os dados via $_POST if ($this->getRequest()->isPost()) { // Formata a data de pagamento da guia $sDataInvertida = DBSeller_Helper_Date_Date::invertDate($this->getRequest()->getParam('data_guia')); $oDataPagamento = new DateTime($sDataInvertida); // Gera a guia e emite o PDF da geração $oGuia = Contribuinte_Model_GuiaEcidade::gerarGuiaDesif($oContribuinte, $aParametros['ano'], $aParametros['mes'], $oDataPagamento, $fAliquota, true); $this->view->arquivo = $oGuia->arquivo_guia; } } catch (Exception $oErro) { $this->view->mensagem_erro = $oErro->getMessage(); } }
/** * Reemite a guia de pagamento das Guias de DMS */ public function reemitirDmsGuiaAction() { parent::noTemplate(); $iIdGuia = $this->getRequest()->getParam('guia', NULL); $sDataGuia = $this->getRequest()->getParam('data_guia', NULL); $oGuia = Contribuinte_Model_Guia::getById($iIdGuia); $oDadosGuia = $oGuia->getEntity(); if ($this->getRequest()->isPost()) { $oValidaDatas = new Zend_Validate_Date(); $sDataValidacao = DBSeller_Helper_Date_Date::invertDate($sDataGuia, ''); if ($sDataValidacao < date('Ymd')) { $this->view->message = $this->translate->_('Informe uma data posterior a data atual.'); } else { if (!$oValidaDatas->isValid($sDataGuia)) { $this->view->message = $this->translate->_('Informe uma data para pagamento válida.'); } else { $aNovaGuia = $oGuia->reemitir($sDataGuia); $this->view->arquivo = $aNovaGuia['arquivo']; $this->view->guia = $aNovaGuia['objeto']; } } } $oFormCompetencia = new Contribuinte_Form_GuiaCompetencia(); $oFormCompetencia->setAction('/contribuinte/guia/reemitir-dms-guia'); $oFormCompetencia->removeElement('total_iss'); $oFormCompetencia->removeElement('total_servico'); $oFormCompetencia->getElement('data_guia')->setValue(date('d/m/Y')); $oFormCompetencia->preencheDms($oDadosGuia); $this->view->form = $oFormCompetencia; }