Example #1
0
        public NovaNotaResposta NovaNota(NovaNotaRequisicao requisicao)
        {
            int      tentativa  = 0;
            bool     sucesso    = false;
            DateTime dataUpload = SystemTime.Now;
            var      nota       = NotaFiscal(requisicao, dataUpload);

            _notaFiscalRepositorio.Adicionar(nota);
            while (sucesso != true)
            {
                tentativa++;
                try
                {
                    _unitOfWork.Commit();
                    sucesso = true;
                }
                catch (Exception ex)
                {
                    if (tentativa >= 5)
                    {
                        throw ex;
                    }
                }
            }

            _repositorioDeArquivos.ArmazenarArquivo(requisicao.Arquivo, requisicao.NomeDoArquivo, dataUpload);
            return(new NovaNotaResposta {
                Sucesso = true
            });
        }
Example #2
0
        public NotaFiscal Adicionar(NotaFiscal notaFiscal)
        {
            notaFiscal.ValidarGeracao();

            notaFiscal = _notaFiscalRepositorio.Adicionar(notaFiscal);

            foreach (var produto in notaFiscal.Produtos)
            {
                produto.NotaFiscal.Id = notaFiscal.Id;
                _produtoNotaFiscalRepositorio.Adicionar(produto);
            }

            return(notaFiscal);
        }
Example #3
0
        public void NotaFiscal_InfraData_Adicionar_Sucesso()
        {
            Destinatario  destinatario  = ObjectMother.PegarDestinatarioValidoComCNPJSemDependencias();
            Emitente      emitente      = ObjectMother.PegarEmitenteValidoSemDependencias();
            Transportador transportador = ObjectMother.PegarTransportadorValidoSemDependencias();

            NotaFiscal notaFiscal = ObjectMother.PegarNotaFiscalValida(emitente, destinatario, transportador);

            _repositorio.Adicionar(notaFiscal);

            notaFiscal.Id.Should().BeGreaterThan(0);

            NotaFiscal notaFiscalResultadoDoGet = _repositorio.BuscarPorId(notaFiscal.Id);

            notaFiscalResultadoDoGet.NaturezaOperacao.Should().Be(notaFiscal.NaturezaOperacao);
        }
Example #4
0
        public long Adicionar(NotaFiscalAdicionarComando comando)
        {
            NotaFiscal notaFiscal = Mapper.Map <NotaFiscalAdicionarComando, NotaFiscal>(comando);

            return(_notaFiscalRepositorio.Adicionar(notaFiscal));
        }
Example #5
0
        public void NotaFiscal_InfraData_Adicionar_Sucesso()
        {
            NotaFiscal notaFiscalAdicionada = _repositorio.Adicionar(_notaFiscalValida);

            notaFiscalAdicionada.Id.Should().BeGreaterThan(0);
        }