/** * Processa o arquivo de importação no ecidade * * @param integer $iIdUsuario identificador do usuario * @param string $sArquivoBase64 Texto do arquivo encodado em base64 * @return mixed */ public static function processarArquivo($oContador, $oContribuinte, $sArquivoBase64) { $sCpfCnpjContador = NULL; $iInscricaoMunicipalContribuinte = NULL; if ($oContador instanceof Administrativo_Model_Usuario) { $sCpfCnpjContador = $oContador->getCnpj(); } if ($oContribuinte instanceof Contribuinte_Model_ContribuinteAbstract) { $iInscricaoMunicipalContribuinte = $oContribuinte->getInscricaoMunicipal(); } /** * @todo O parâmetro $iIdUsuario foi inserido para pode importar arquivos por contador, analisar * melhor para tratar por um identificador que existam tanto no contador como no contribuinte */ $aParametros = array('sCpfCnpjContador' => $sCpfCnpjContador, 'iInscricaoMunicipalContribuinte' => $iInscricaoMunicipalContribuinte, 'sArquivoEmBase64' => $sArquivoBase64); $oRetornoWebService = WebService_Model_Ecidade::processar('processamentoArquivoDMS', $aParametros); return $oRetornoWebService; }
/** * Retorna os dados da prefeitura do webservice * * @tutorial Campos de Retorno para exemplo: * $oRetorno->sDescricao = PREFEITURA MUNICIPAL DE TESTE DO SUL * $oRetorno->sDescricaoAbreviada = PM TESTE DO SUL * $oRetorno->sCnpj = XXXXXXXXXXXXXXX * $oRetorno->sLogradouro = LOGRADOURO DA PREFEITURA * $oRetorno->sMunicipio = MUNICIPIO * $oRetorno->sBairro = BAIRRO * $oRetorno->sTelefone = XX XXXXXXXX * $oRetorno->sSite = www.prefeitura.rs.gov.br * $oRetorno->sEmail = contato@prefeitura.rs.gov.br * $oRetorno->iCodigoMunicipio = 531654 * $oRetorno->iNumeroCgm = 5 * $oRetorno->sLogoPrefeituraBaseEncode = files/imagens/brasao_5249e01492774.jpg * @return mixed * @throws Exception */ public static function getDadosPrefeituraWebService() { try { $aValores = array('lprefeitura' => TRUE); $oDadosRetorno = WebService_Model_Ecidade::processar('DadosPrefeitura', $aValores); if ($oDadosRetorno->sLogoPrefeituraBaseEncode != '') { $sImagem = $oDadosRetorno->sLogoPrefeituraBaseEncode; $sImagem = str_replace('data:image/png;base64,', '', $sImagem); $sImagem = str_replace(' ', '+', $sImagem); $oImagemDados = base64_decode($sImagem); $sNomeArquivo = 'brasao.jpg'; $lSucesso = file_put_contents('global/img/' . $sNomeArquivo, $oImagemDados); unset($oDadosRetorno->sLogoPrefeituraBaseEncode); if (!$lSucesso) { DBSeller_Plugin_Notificacao::addErro('W005', 'Problemas ao importar o arquivo logo da prefeitura.'); throw new Exception('Problemas ao importar o arquivo logo da prefeitura.'); } } return $oDadosRetorno; } catch (Exception $oErro) { DBSeller_Plugin_Notificacao::addErro('W006', "Erro para carregar dados da Prefeitura: {$oErro->getMessage()}"); throw new Exception("Erro para carregar dados da Prefeitura: {$oErro->getMessage()}"); } }
/** * Método para alterar o logo do contribuinte no e-cidade * * @param $iInscricaoMunicipal * @param $aFiles * * @return bool */ public static function setLogoByIm($iInscricaoMunicipal, $aFiles) { $bRetorno = TRUE; if (is_array($aFiles)) { $aArquivoLogo = array(); $aImagemLogo = $aFiles['imagem_logo']; $iFileSize = !empty($aImagemLogo['size']) ? $aImagemLogo['size'] : 0; if ($iFileSize > 0) { $aArquivoLogo['encode'] = base64_encode(file_get_contents($aImagemLogo['tmp_name'])); $aParametros = array('inscricao_municipal' => $iInscricaoMunicipal, 'arquivo' => $aArquivoLogo['encode']); $bRetorno = parent::processar('setEmpresaFotoPrincipal', $aParametros); if (empty($sRetorno)) { $bRetorno = FALSE; } } } return $bRetorno; }
/** * Cancela requisição de aidof * * @param integer $iCodigoRequisicao * @return StdClass */ public static function cancelar($iCodigoRequisicao) { $aValores = array('codigorequisicao' => $iCodigoRequisicao); return parent::processar('cancelarRequisicaoAidof', $aValores); }
/** * Classe responsável por remover o cgm * @param integer $iCodigoCgm * @throws Exception */ public static function removerCgm($iCodigoCgm) { if ($iCodigoCgm == NULL) { throw new Exception('Código do Cgm não informado.'); } $aDados = array('codigo_cgm' => $iCodigoCgm); return WebService_Model_Ecidade::processar('excluirCgm', $aDados); }
/** * Retorna os dados do contribuinte atraves do Cnpj/cpf vindos do WebService * @param $sCpfCnpj * * @return mixed * @throws Exception */ public static function getByCpfCnpjWebService($sCpfCnpj) { if ($sCpfCnpj == '') { throw new Exception('CPF / CNPJ não informados.'); } $aParametros = array('cpfcnpj' => $sCpfCnpj); return WebService_Model_Ecidade::processar('pesquisaCgmByCpfCnpj', $aParametros); }
/** * Gera declaracao de insencao de ISSQN Variavel (Declaracao de Sem Movimento) * * @return array|null * @throws Exception */ public function gerarDeclaracaoSemMovimento() { try { $aParamentos = array('inscricaomunicipal' => $this->oContribuinte->getInscricaoMunicipal(), 'mes' => $this->iMesCompetencia, 'ano' => $this->iAnoCompetencia); $aRetorno = WebService_Model_Ecidade::processar('CancelamentoISSQNVariavel', $aParamentos); } catch (Exception $oErro) { DBSeller_Plugin_Notificacao::addErro('W007', "Erro ao declarar sem movimento: {${$oErro}->getMessage()}"); throw new Exception(sprintf($this->translate->_('Erro ao declarar sem movimento: %s'), $oErro->getMessage())); } return $aRetorno; }
/** * Pesquisa a situação da guia informando um conjunto de numpre e numpar * * @param $aDadosSituacao * @return array * @throws Exception */ public static function pesquisaSituacaoGuias($aDadosSituacao) { // Verifica se foi informado uma coleção de numpre, numpar para consultar a situação if (!is_array($aDadosSituacao)) { throw new Exception('Informe os dados da guia para consultar a situação!'); } $aParametros = array('aDadosSituacao' => $aDadosSituacao); $aRetornoSituacao = WebService_Model_Ecidade::processar('PesquisaSituacaoGuias', $aParametros); return $aRetornoSituacao; }