Ejemplo n.º 1
0
        public static EventoCancelamento Assina(this EventoCancelamento cancelamento, X509Certificate2 certificate)
        {
            cancelamento.CalculaId();
            var xml = new XmlDocument();

            xml.LoadXml(cancelamento.Serialize().LimpaNamespaces());
            cancelamento.Signature = AssinadorXml.GeraAssinatura(xml, "infEvento", certificate);

            return(cancelamento);
        }
Ejemplo n.º 2
0
        public static TNFe GeraAssinatura(this TNFe nfe, X509Certificate2 certificate)
        {
            if (string.IsNullOrEmpty(nfe.infNFe.Id))
            {
                nfe.CalculaChave();
            }

            var nfeXml = new XmlDocument();

            nfeXml.LoadXml(nfe.Serialize().LimpaNamespaces());
            nfe.Signature = AssinadorXml.GeraAssinatura(nfeXml, "infNFe", certificate);
            return(nfe);
        }
Ejemplo n.º 3
0
        public void ComecarAssinarEventos(int idEmpresa)
        {
            if (this._jobService.GetStatusJob(TipoJobEnum.Assinatura, idEmpresa) == StatusJobEnum.Executando)
            {
                throw new ExecucaoJobInvalidaException("Assinatura em andamento");
            }
            this._jobService.ComecarJob(TipoJobEnum.Assinatura, idEmpresa);

            var evento = base.EventoRespository.GetEventoNaoAssinados(idEmpresa);

            while (evento != null && StatusJobEnum.Executando == this._jobService.GetStatusJob(TipoJobEnum.Assinatura, idEmpresa))
            {
                evento.XmlEvento = AssinadorXml.Assinar(evento.XmlEvento);
                base.EventoRespository.Update(evento);
                evento = base.EventoRespository.GetEventoNaoAssinados(idEmpresa);
            }
            this._jobService.AtualizarStatusJob(TipoJobEnum.Assinatura, idEmpresa, StatusJobEnum.Concluido);
        }