public ConsultaSessaoResposta(string retorno, Encoding encoding) : base(retorno, encoding)
        {
            // ReSharper disable once SwitchStatementMissingSomeCases
            switch (CodigoDeRetorno)
            {
            case 6000:
                if (RetornoLst.Count < 6)
                {
                    return;
                }

                using (var stream = new MemoryStream(Convert.FromBase64String(RetornoLst[6])))
                    Venda = CFe.Load(stream, encoding);

                QRCode = $"{RetornoLst[8].OnlyNumbers()}|{RetornoLst[7]}|{RetornoLst[9]}|{RetornoLst[10]}|{RetornoLst[11]}";
                break;

            case 7000:
                if (RetornoLst.Count < 6)
                {
                    return;
                }

                using (var stream = new MemoryStream(Convert.FromBase64String(RetornoLst[6])))
                    Cancelamento = CFeCanc.Load(stream, encoding);

                QRCode = $"{RetornoLst[8].OnlyNumbers()}|{RetornoLst[7]}|{RetornoLst[9]}|{RetornoLst[10]}|{RetornoLst[11]}";
                break;
            }
        }
Beispiel #2
0
        /// <summary>
        /// Imprimir o extrato de cancelamento do CFe.
        /// </summary>
        /// <param name="cfe">The cfe.</param>
        /// <param name="cFeCanc">The c fe canc.</param>
        public void ImprimirExtratoCancelamento(CFe cfe, CFeCanc cFeCanc)
        {
            Guard.Against <ACBrException>(!Ativo, "Componente não está ativo.");
            Guard.Against <ArgumentNullException>(Extrato == null, "Componente de Impressão não definido !");

            Extrato.ImprimirExtratoCancelamento(cfe, cFeCanc);
        }
Beispiel #3
0
        /// <summary>
        /// Cancela a venda relacionada a classe de cancelamento informada.
        /// </summary>
        /// <param name="cfeCanc">The cfe canc.</param>
        /// <returns>CancelamentoSatResposta.</returns>
        public CancelamentoSatResposta CancelarUltimaVenda(CFeCanc cfeCanc)
        {
            Guard.Against <ArgumentNullException>(cfeCanc.IsNull(), nameof(cfeCanc));

            var dados = GetXml(cfeCanc, false, false);

            return(CancelarUltimaVenda(cfeCanc.InfCFe.ChCanc, dados));
        }
Beispiel #4
0
        /// <summary>
        /// Cancelar o CFe Informado
        /// </summary>
        /// <param name="cfe">CFe para cancelar.</param>
        /// <returns>CancelamentoSatResposta.</returns>
        public CancelamentoSatResposta CancelarUltimaVenda(CFe cfe)
        {
            Guard.Against <ACBrException>(!Ativo, "Componente não está ativo.");
            Guard.Against <ArgumentNullException>(cfe == null, nameof(cfe));

            var cfeCanc = new CFeCanc(cfe);

            return(CancelarUltimaVenda(cfeCanc));
        }
Beispiel #5
0
        public CancelamentoSatResposta(string retorno, Encoding encoding) : base(retorno, encoding)
        {
            if (CodigoDeRetorno != 7000 || RetornoLst.Count < 6)
            {
                return;
            }

            using (var stream = new MemoryStream(Convert.FromBase64String(RetornoLst[6])))
                Cancelamento = CFeCanc.Load(stream, encoding);
        }
        /// <summary>
        /// Inicializar uma nova instancida da classe <see cref="CancelamentoSatResposta"/>.
        /// </summary>
        /// <param name="retorno">O retorno.</param>
        /// <param name="encoding">O encoding.</param>
        public CancelamentoSatResposta(string retorno, Encoding encoding) : base(retorno, encoding)
        {
            if (CodigoDeRetorno != 7000 || RetornoLst.Count < 6)
            {
                return;
            }

            using (var stream = new MemoryStream(Convert.FromBase64String(RetornoLst[6])))
            {
                Cancelamento = CFeCanc.Load(stream, encoding);
            }

            QRCode = $"{RetornoLst[8].OnlyNumbers()}|{RetornoLst[7]}|{RetornoLst[9]}|{RetornoLst[10]}|{RetornoLst[11]}";
        }
Beispiel #7
0
        /// <summary>
        /// Cancela a venda relacionada a classe de cancelamento informada.
        /// </summary>
        /// <param name="cfeCanc">The cfe canc.</param>
        /// <returns>CancelamentoSatResposta.</returns>
        public CancelamentoSatResposta CancelarUltimaVenda(CFeCanc cfeCanc)
        {
            Guard.Against <ArgumentNullException>(cfeCanc == null, nameof(cfeCanc));

            var options = DFeSaveOptions.OmitDeclaration | DFeSaveOptions.DisableFormatting;

            if (Configuracoes.RemoverAcentos)
            {
                options |= DFeSaveOptions.RemoveAccents;
            }

            var dados = cfeCanc.GetXml(options);

            return(CancelarUltimaVenda(cfeCanc.InfCFe.ChCanc, dados));
        }
        public ConsultaSessaoResposta(string retorno, Encoding encoding) : base(retorno, encoding)
        {
            if (CodigoDeRetorno == 6000)
            {
                if (RetornoLst.Count >= 6)
                {
                    using (var stream = new MemoryStream(Convert.FromBase64String(RetornoLst[6])))
                        Venda = CFe.Load(stream, encoding);
                }
            }

            if (CodigoDeRetorno != 7000)
            {
                return;
            }

            if (RetornoLst.Count < 6)
            {
                return;
            }

            using (var stream = new MemoryStream(Convert.FromBase64String(RetornoLst[6])))
                Cancelamento = CFeCanc.Load(stream, encoding);
        }
 public abstract void ImprimirExtratoCancelamento(CFeCanc cFeCanc, DFeTipoAmbiente ambiente);
Beispiel #10
0
 public string GetXml(CFeCanc cfeCanc)
 {
     throw new NotImplementedException();
 }
Beispiel #11
0
 public string GetXml(CFeCanc cfeCanc)
 {
     return(GetXml <CFeCanc>(cfeCanc));
 }
Beispiel #12
0
 public abstract void ImprimirExtratoCancelamento(CFe cfe, CFeCanc cFeCanc);