NFePHP\NFe\ToolsNFe::sefazStatus PHP Метод

sefazStatus() публичный Метод

sefazStatus Verifica o status do serviço da SEFAZ/SVC NOTA : Este serviço será removido no futuro, segundo da Receita/SEFAZ devido ao excesso de mau uso !!!
public sefazStatus ( string $siglaUF = '', string $tpAmb = '2', array &$aRetorno = [], $salvarMensagens = true ) : mixed
$siglaUF string sigla da unidade da Federação
$tpAmb string tipo de ambiente 1-produção e 2-homologação
$aRetorno array parametro passado por referencia contendo a resposta da consulta em um array
Результат mixed string XML do retorno do webservice, ou false se ocorreu algum erro
    public function sefazStatus($siglaUF = '', $tpAmb = '2', &$aRetorno = array(), $salvarMensagens = true)
    {
        if ($tpAmb == '') {
            $tpAmb = $this->aConfig['tpAmb'];
        }
        if ($siglaUF == '') {
            $siglaUF = $this->aConfig['siglaUF'];
        }
        //carrega serviço
        $servico = 'NfeStatusServico';
        $this->zLoadServico('nfe', $servico, $siglaUF, $tpAmb);
        if ($this->urlService == '') {
            $msg = "O status não está disponível na SEFAZ {$siglaUF}!!!";
            throw new Exception\RuntimeException($msg);
        }
        $cons = "<consStatServ xmlns=\"{$this->urlPortal}\" versao=\"{$this->urlVersion}\">" . "<tpAmb>{$tpAmb}</tpAmb><cUF>{$this->urlcUF}</cUF>" . "<xServ>STATUS</xServ></consStatServ>";
        //valida mensagem com xsd
        //validar mensagem com xsd
        //if (! $this->validarXml($cons)) {
        //    $msg = 'Falha na validação. '.$this->error;
        //    throw new Exception\RuntimeException($msg);
        //}
        //montagem dos dados da mensagem SOAP
        $body = "<nfeDadosMsg xmlns=\"{$this->urlNamespace}\">{$cons}</nfeDadosMsg>";
        //consome o webservice e verifica o retorno do SOAP
        $retorno = $this->oSoap->send($this->urlService, $this->urlNamespace, $this->urlHeader, $body, $this->urlMethod);
        $lastMsg = $this->oSoap->lastMsg;
        $this->soapDebug = $this->oSoap->soapDebug;
        if ($salvarMensagens) {
            $datahora = date('Ymd_His');
            $filename = $siglaUF . "_" . "{$datahora}-consStatServ.xml";
            $this->zGravaFile('nfe', $tpAmb, $filename, $lastMsg);
            $filename = $siglaUF . "_" . "{$datahora}-retConsStatServ.xml";
            $this->zGravaFile('nfe', $tpAmb, $filename, $retorno);
        }
        //tratar dados de retorno
        $aRetorno = ReturnNFe::readReturnSefaz($servico, $retorno);
        return (string) $retorno;
    }

Usage Example

Пример #1
0
<?php

error_reporting(E_ALL);
ini_set('display_errors', 'On');
require_once '../../bootstrap.php';
use NFePHP\NFe\ToolsNFe;
$nfe = new ToolsNFe('../../config/config.json');
//$nfe->ativaContingencia('GO','Contingência Ativada pela SEFAZ GO desde 08/10/2010 18:00:00','');
//$nfe->desativaContingencia();
$nfe->setModelo('55');
$aResposta = array();
$siglaUF = 'GO';
$tpAmb = '2';
$retorno = $nfe->sefazStatus($siglaUF, $tpAmb, $aResposta);
echo '<br><br><pre>';
echo htmlspecialchars($nfe->soapDebug);
echo '</pre><br><br><pre>';
print_r($aResposta);
echo "</pre><br>";