Ejemplo n.º 1
0
        /// <summary>
        /// Executar o serviço
        /// </summary>
        public override void Executar()
        {
            new AssinaturaDigital().Assinar(ConteudoXML, Configuracoes.TagAssinatura, Configuracoes.TagAtributoID, Configuracoes.CertificadoDigital, AlgorithmType.Sha1, true, "", "Id");
            InutNFe = InutNFe.LerXML <InutNFe>(ConteudoXML);

            base.Executar();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Definir o valor de algumas das propriedades do objeto "Configuracoes"
        /// </summary>
        protected override void DefinirConfiguracao()
        {
            InutNFe xml = InutNFe;

            if (!Configuracoes.Definida)
            {
                Configuracoes.Servico      = Servico.NFeInutilizacao;
                Configuracoes.CodigoUF     = (int)xml.InfInut.CUF;
                Configuracoes.TipoAmbiente = xml.InfInut.TpAmb;
                Configuracoes.Modelo       = xml.InfInut.Mod;
                Configuracoes.TipoEmissao  = TipoEmissao.Normal; //Inutilização só funciona no tipo de emissão Normal, ou seja, não tem inutilização em SVC-AN ou SVC-RS
                Configuracoes.SchemaVersao = xml.Versao;

                base.DefinirConfiguracao();
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Definir o valor de algumas das propriedades do objeto "Configuracoes"
        /// </summary>
        protected override void DefinirConfiguracao()
        {
            InutNFe xml = new InutNFe();

            xml.Ler(ConteudoXML);

            if (!Configuracoes.Definida)
            {
                Configuracoes.cUF          = xml.infInut.cUF;
                Configuracoes.tpAmb        = xml.infInut.tpAmb;
                Configuracoes.mod          = xml.infInut.mod;
                Configuracoes.tpEmis       = 1; //Inutilização só funciona no tipo de emissão Normal, ou seja, não tem inutilização em SVC-AN ou SVC-RS
                Configuracoes.SchemaVersao = xml.versao;

                base.DefinirConfiguracao();
            }
        }
Ejemplo n.º 4
0
        async void AdicionarInutilizacao(object sender, RoutedEventArgs e)
        {
            var caixa = new InfoInutilizacao();

            if (await caixa.ShowAsync() == ContentDialogResult.Primary)
            {
                var envio = new InutNFe(new InfInut(caixa.Homologacao, caixa.Serie, caixa.InicioNum, caixa.FimNum, caixa.Justificativa));

                var uf          = DefinicoesTemporarias.EmitenteAtivo.SiglaUF;
                var gerenciador = new GerenciadorGeral <InutNFe, RetInutNFe>(uf, Operacoes.Inutilizacao, caixa.Homologacao, isNFCe);

                AssinaFacil assinador = new AssinaFacil();
                Progresso   progresso = null;
                progresso = new Progresso(async x =>
                {
                    var cert         = (X509Certificate2)x;
                    var resultAssina = await envio.PrepararEvento(assinador, cert);
                    if (!resultAssina.Item1)
                    {
                        return(resultAssina);
                    }
                    await progresso.Update(1);

                    var resultado = await gerenciador.EnviarAsync(envio);
                    var sucesso   = resultado.Info.StatusResposta == 102;
                    if (sucesso)
                    {
                        Concluir(resultado, caixa.Homologacao);
                        await progresso.Update(6);
                    }
                    return(sucesso, resultado.Info.DescricaoResposta);
                }, assinador.CertificadosDisponiveis, "Subject",
                                          "Assinar documentos para envio",
                                          "Preparar conexão",
                                          "Obter conteúdo da requisição",
                                          "Enviar requisição",
                                          "Processar resposta",
                                          "Salvar retorno no banco de dados");
                gerenciador.ProgressChanged += async(x, y) => await progresso.Update(y + 1);

                await progresso.ShowAsync();
            }
        }
Ejemplo n.º 5
0
 public Inutilizacao(InutNFe inutNFe, Configuracao configuracao) : this(inutNFe.GerarXML(), configuracao)
 {
     InutNFe = inutNFe;
 }