/** * Retorna uma lista de gráficas em array de objetos * * @return array|null */ public static function listar() { $aFiltro = array(); $aCampos = array('cgm_grafica', 'nome_grafica'); $aRetorno = parent::consultar('getGraficas', array($aFiltro, $aCampos)); return is_array($aRetorno) ? $aRetorno : NULL; }
/** * Retorna todos os estados de um pais * * @return array */ public static function getRuas() { $aRuas = parent::consultar('getRuas', array(array(), self::$aCampos)); $aRetorno = array(); if (count($aRuas) > 0) { foreach ($aRuas as $oRua) { $aRetorno[trim($oRua->cod_logradouro)] = trim($oRua->logradouro); } } return $aRetorno; }
/** * Busca generica no webservice * * @param array $aFiltro * @return multitype:Contribuinte_Model_EmpresaEcidade */ private static function get($aFiltro) { $aEmpresa = parent::consultar('getDadosTomador', array($aFiltro, self::$aCampos)); $aRetorno = array(); if (is_array($aEmpresa)) { foreach ($aEmpresa as $oEmpresa) { $aRetorno[] = new self($oEmpresa); } } return $aRetorno; }
/** * Retorna a lista dos bairros da prefeitura * * @return array */ public static function getBairros() { $aBairros = parent::consultar('getBairros', array(array(), self::$aCampos)); $aRetorno = array(); if (count($aBairros) > 0) { foreach ($aBairros as $oBairro) { $aRetorno[trim($oBairro->cod_bairro)] = trim($oBairro->bairro); } } return $aRetorno; }
/** * 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 que busca do e-cidade os dados da empresa agruapada por Inscrição Municipal * @param string $sCnpj * @return array $aContribuinte * @throws Exception */ public function getInscricaoMunicipalByCpjCnpj($sCnpj) { try { if ($sCnpj != NULL) { // Limpa máscaras $iCnpj = DBSeller_Helper_Number_Format::getNumbers($sCnpj); // Consulta WebService $aParametros = array(array('cnpj' => $iCnpj), self::$aCampos['getDadosEmpresa']); $aContribuinte = WebService_Model_Ecidade::consultar('getDadosEmpresa', $aParametros); return $aContribuinte; } } catch (Exception $oError) { DBSeller_Plugin_Notificacao::addErro('W009', "Erro ao consultar as Inscrições Municipais do Contribuinte: {$oError->getMessage()}"); throw new Exception("Erro ao consultar as Inscrições Municipais do Contribuinte: {$oError->getMessage()}"); } }
/** * 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); }
public function __construct($o = NULL) { parent::__construct($o); }
/** * 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; }
/** * 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; }
private static function get($filtro) { return parent::consultar('getContadores', array($filtro, self::$campos)); }
/** * Captura a versão do e-cidade e adiciona na sessão * * @return Zend_Session_Namespace */ protected static function capturaSessaoVersaoEcidade() { $oSessao = new Zend_Session_Namespace('sessao'); if (!isset($oSessao->versaoecidade)) { $aCampos = array('ecidadeVersao'); $oWebService = WebService_Model_Ecidade::consultar('getVersaoEcidade', array(array(), $aCampos)); // Camptura a versão do e-cidade if (!empty($oWebService[0]->ecidadeversao)) { $oSessao->versaoecidade = $oWebService[0]->ecidadeversao; } } return $oSessao; }
/** * 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; }
/** * Lista de requisicoes e aidofs emitidas * pela empresa conforme tipo de documento * * @param string $iInscricaoMunicipal * @param integer $iTipoDocumento * @param string $sGrupoNotaIss * @throws Zend_Exception * @return array|NULL */ public static function getRequisicoeseAidofs($iInscricaoMunicipal, $iTipoDocumento = NULL, $sGrupoNotaIss) { if (!$iInscricaoMunicipal) { throw new Zend_Exception('Informe a inscrição municipal'); } if ($sGrupoNotaIss) { $aFiltro['codigo_grupo'] = $sGrupoNotaIss; } $aFiltro['inscricao_municipal'] = $iInscricaoMunicipal; $aCampos = array('codigo_requisicaoaidof', 'inscricao_municipal', 'data_lancamento', 'quantidade_solicitada', 'quantidade_liberada', 'status', 'observacao', 'tipo_nota', 'cgm_grafica', 'nome_grafica', 'codigo_usuario', 'nome_usuario', 'descricao_nota', 'codigo_nota', 'nota_inicial', 'nota_final'); $aRetorno = parent::consultar('getRequisicoeseAidofs', array($aFiltro, $aCampos)); return is_array($aRetorno) ? $aRetorno : NULL; }
/** * Busca a lista de serviços * * @param bool $lLerDaSessao * @return Contribuinte_Model_Servico[] */ public static function getAll($lLerDaSessao = TRUE) { // Sessão $oSessaoServicos = new Zend_Session_Namespace('webservice_servicos'); // Retorna os serviços do contribuinte na sessão, caso exista if (isset($oSessaoServicos->lista) && $lLerDaSessao) { return $oSessaoServicos->lista; } $aCampos = array('cod_atividade', 'atividade', 'deducao', 'estrut_cnae', 'desc_cnae', 'aliq', 'estrutural'); $aRetorno = array(); $aFiltro = array(); $aResultado = parent::consultar('getServicos', array($aFiltro, $aCampos)); if (is_array($aResultado)) { foreach ($aResultado as $uResultado) { $aRetorno[] = new self($uResultado); } } // Salva na sessão para evitar consultas no web service $oSessaoServicos->lista = $aRetorno; return $aRetorno; }
/** * Retorna a quantidade de AIDOFs liberadas para emissão conforme tipo de documento * * @param null $iCodigoContribuinte * @param null $iTipoNota * @return int * @throws Zend_Exception */ public static function getQuantidadeNotasPendentesByContribuinteAndTipoNota($iCodigoContribuinte = NULL, $iTipoNota = NULL) { if (!$iCodigoContribuinte) { throw new Zend_Exception('Informe o código do contribuinte'); } if (!$iTipoNota) { throw new Zend_Exception('Informe o tipo de documento'); } $oContribuinte = Contribuinte_Model_Contribuinte::getById($iCodigoContribuinte); $aFiltro = array('inscricao_municipal' => $oContribuinte->getInscricaoMunicipal(), 'tipo_documento' => $iTipoNota); $aCampos = array('qntLiberadas'); $oRetorno = WebService_Model_Ecidade::consultar('getQuantidadeAidofsLiberadas', array($aFiltro, $aCampos)); if (is_array($oRetorno) && isset($oRetorno[0])) { return $oRetorno[0]->quantidade_aidofs_liberadas; } return 0; }
/** * 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); }
/** * Retorna todas guias pagas pelo contribuinte optante pelo simples nacional * @param Contribuinte_Model_ContribuinteAbstract $oContribuinte contribuinte optante pelo simples * @return array */ public static function getGuiasPagasOptanteSimples(Contribuinte_Model_ContribuinteAbstract $oContribuinte) { $aCampos = array('competencia', 'data_vencimento', 'valor_historico', 'valor_corrigido', 'valor_pago'); $aParametros = array(array('inscricao_municipal' => $oContribuinte->getInscricaoMunicipal(), 'tipo_debito' => 3), $aCampos); $aGuiasPagas = WebService_Model_Ecidade::consultar('getPagamentosEfetuadosOptanteSimples', $aParametros); $sRetorno = ''; if (empty($aGuiasPagas)) { $aGuiasPagas = array(); } else { $sRetorno = print_r($aGuiasPagas, true); if (count($aGuiasPagas) == 1 && trim($aGuiasPagas[0]) == 'N') { $aGuiasPagas = array(); } else { if (trim($sRetorno) === "Não houve retorno do WebService") { $aGuiasPagas = array(); } else { //Reverte a ordenação para DESC $aGuiasPagas = array_reverse($aGuiasPagas); } } } return $aGuiasPagas; }
/** * @return null|Zend_Soap_Client */ public static function getSoapClient() { if (self::$oSoapClient != NULL) { return self::$oSoapClient; } $config = Zend_Registry::get('config'); self::$oSoapClient = new Zend_Soap_Client(NULL, array('location' => $config->webservice->client->location, 'uri' => $config->webservice->client->uri, 'login' => $config->webservice->cliente->user)); return self::$oSoapClient; }