public NotaFiscal GerarNotaFiscal(Pedido pedido) { NotaFiscal validacaoNF = new NotaFiscal(); validacaoNF.EmitirNotaFiscal(pedido); return(validacaoNF); }
public void GerarXMLNota() { string _diretorio = ConfigurationManager.AppSettings.Get("CaminhoNota").ToString(); _service = new NotaFiscalService(); DataTable dados = _service.PrepararItensPedido(); DataRow linha = dados.NewRow(); linha[0] = "Sabonete"; linha[1] = "100101"; linha[2] = 10.00; linha[3] = false; dados.Rows.Add(linha); Pedido pedido = _service.GerarPedido("Willian Rodrigues", "SP", "MG", dados); NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); _service.GerarXMLNota(_diretorio, notaFiscal); if (pedido != null) { Console.Write("Pedido para " + notaFiscal.NumeroNotaFiscal); } }
public void TestSudeste() { Pedido ped = new Pedido(); ped.clientePedido.nomeCliente = "Maria"; ped.EstadoOrigem.siglaEstado = "SP"; ped.EstadoDestino.siglaEstado = "RJ"; PedidoItem item1 = new PedidoItem(); item1.NomeProduto = "Alicate"; item1.CodigoProduto = "125-172"; item1.ValorItemPedido = 18.05; item1.Brinde = false; ped.ItensDoPedido.Add(item1); PedidoItem item2 = new PedidoItem(); item2.NomeProduto = "Chave de Fenda"; item2.CodigoProduto = "125-185"; item2.ValorItemPedido = 10.79; item2.Brinde = true; ped.ItensDoPedido.Add(item2); NotaFiscal nf = new NotaFiscal(); nf.EmitirNotaFiscal(ped); Assert.AreEqual(nf.ClienteNF, ped.clientePedido); // mesmo cliente Assert.AreEqual(nf.EstadoOrigem, ped.EstadoOrigem); // estados iguais entre NF e Pedido Assert.AreEqual(nf.EstadoDestino, ped.EstadoDestino); Assert.IsTrue(nf.ItensDaNotaFiscal[0].Cfop == "6.000"); Assert.IsTrue(nf.ItensDaNotaFiscal[0].TipoIcms == "10"); Assert.IsTrue(nf.ItensDaNotaFiscal[0].BaseIcms == ped.ItensDoPedido[0].ValorItemPedido); Assert.IsTrue(nf.ItensDaNotaFiscal[0].AliquotaIcms == 0.17); Assert.IsTrue(nf.ItensDaNotaFiscal[0].ValorIcms == (nf.ItensDaNotaFiscal[0].BaseIcms * nf.ItensDaNotaFiscal[0].AliquotaIcms)); Assert.IsTrue(nf.ItensDaNotaFiscal[0].BaseIpi == ped.ItensDoPedido[0].ValorItemPedido); Assert.IsTrue(nf.ItensDaNotaFiscal[0].AliquotaIpi == 0.1); Assert.IsTrue(nf.ItensDaNotaFiscal[0].ValorIPI == (nf.ItensDaNotaFiscal[0].BaseIpi * nf.ItensDaNotaFiscal[0].AliquotaIpi)); Assert.IsTrue(nf.ItensDaNotaFiscal[0].Desconto == 0.1); Assert.IsTrue(nf.ItensDaNotaFiscal[1].Cfop == "6.000"); Assert.IsTrue(nf.ItensDaNotaFiscal[1].TipoIcms == "60"); Assert.IsTrue(nf.ItensDaNotaFiscal[1].BaseIcms == ped.ItensDoPedido[1].ValorItemPedido); Assert.IsTrue(nf.ItensDaNotaFiscal[1].AliquotaIcms == 0.18); Assert.IsTrue(nf.ItensDaNotaFiscal[1].ValorIcms == (nf.ItensDaNotaFiscal[1].BaseIcms * nf.ItensDaNotaFiscal[1].AliquotaIcms)); Assert.IsTrue(nf.ItensDaNotaFiscal[1].BaseIpi == ped.ItensDoPedido[1].ValorItemPedido); Assert.IsTrue(nf.ItensDaNotaFiscal[1].AliquotaIpi == 0); Assert.IsTrue(nf.ItensDaNotaFiscal[1].ValorIPI == (nf.ItensDaNotaFiscal[1].BaseIpi * nf.ItensDaNotaFiscal[1].AliquotaIpi)); Assert.IsTrue(nf.ItensDaNotaFiscal[1].Desconto == 0.1); }
public NotaFiscal notaFiscal; // retirada a variável para fora de GerarNotaFiscal para ser usada em outras funções public void GerarNotaFiscal(Pedido pedido) { if (notaFiscal == null) { notaFiscal = new NotaFiscal(); } notaFiscal.EmitirNotaFiscal(pedido); }
public void GerarNotaFiscal(Domain.Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); SaveDB(notaFiscal); SaveXML(notaFiscal); }
public void EmitirNota_QuandoPassarUFsDiferentes_NaodeveExistirMsgDeRetorno() { // Arrange NotaFiscal notaFiscal = new NotaFiscal(); Pedido pedido = CriarPedido("Maria", "SP", "RJ"); string resultadoEsperado = ""; // Act string resultadoAtual = notaFiscal.EmitirNotaFiscal(pedido); // Assert Assert.AreEqual(resultadoEsperado, resultadoAtual); }
public string GerarNotaFiscal(Domain.Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); if (!GerarXML(notaFiscal)) { return("ATENÇÃO! Ocorreu um erro ao gerar o arquivo XML. A Nota fiscal não foi salva."); } notaFiscal.Id = Repository.GravarNotaFiscal(notaFiscal); notaFiscal.ItensDaNotaFiscal.ForEach(i => i.IdNotaFiscal = notaFiscal.Id); notaFiscal.ItensDaNotaFiscal.ForEach(i => Repository.GravarNotaFiscalItem(i)); return(""); }
public void GerarNotaFiscal(Pedido pedido) { var notaFiscal = new NotaFiscal(); try { notaFiscal.EmitirNotaFiscal(pedido); new XML().Save <NotaFiscal>(notaFiscal); } catch (System.Exception) { throw new Exception("Xml não gerado"); } CallProcNotaFiscalItem(CallProcNotaFiscal(notaFiscal), notaFiscal.ItensDaNotaFiscal); }
public StringBuilder GerarNotaFiscal(Pedido pedido, string caminhoXml) { var criticas = ValidarNotaFiscal(pedido); if (criticas.Length > 0) { return(criticas); } NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); SalvarXml(notaFiscal, caminhoXml); repository.PersistirNotaFiscal(notaFiscal); return(new StringBuilder()); }
public void GerarArquivo() { notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); string path = ConfigurationManager.AppSettings["SavePath"]; string filePath = $"{path}\\NF_{notaFiscal.NumeroNotaFiscal}.xml"; try { string file = nfService.GerarArquivoXml(filePath, notaFiscal, new string[] { "NotaFiscal" }, new string[] { "ItensDaNotaFiscal" }, new string[] { "Item" }); Assert.IsNotNull(file); } catch (Exception ex) { throw ex; } }
public void GerarNotaFiscal(Domain.Pedido pedido, string diretorio) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); foreach (NotaFiscalItem item in notaFiscal.ItensDaNotaFiscal) { if (String.IsNullOrEmpty(item.Cfop)) { throw new Exception("CFOP não foi atribuído ao item: " + item.CodigoProduto); } } if (GerarXMLNota(diretorio, notaFiscal)) { Data.NotaFiscalRepository repositorio = new Data.NotaFiscalRepository(); repositorio.SalvarNota(notaFiscal); } }
public void GerarNotaFiscal(Domain.Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); var gerouXML = _notaFiscalRepository.GerarArquivoXML(notaFiscal); if (gerouXML) { var notaFiscalId = _notaFiscalRepository.Salvar(notaFiscal); if (notaFiscalId > 0) { foreach (var item in notaFiscal.ItensDaNotaFiscal) { item.IdNotaFiscal = notaFiscalId; _notaFiscalItemRepository.Salvar(item); } } } }
public void GerarNotaFiscal(Domain.Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); string path = ConfigurationManager.AppSettings["SavePath"]; string filePath = $"{path}\\NF_{notaFiscal.NumeroNotaFiscal}.xml"; string file = GerarArquivoXml(filePath, notaFiscal, new string[] { "NotaFiscal" }, new string[] { "ItensDaNotaFiscal" }, new string[] { "Item" }); if (File.Exists(file)) { var repository = new NotaFiscalRepository(); notaFiscal.Id = repository.P_NOTA_FISCAL(notaFiscal); foreach (var item in notaFiscal.ItensDaNotaFiscal) { item.IdNotaFiscal = notaFiscal.Id; repository.P_NOTA_FISCAL_ITEM(item); } } }
public void GerarNotaFiscal(Domain.Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); NotaFiscalItemService notaFiscalItemService = new NotaFiscalItemService(); notaFiscalItemService.PreencherItensNF(pedido, notaFiscal); //Método responsável pela geração da classe em XML utilizando Serializer if (GerarXMLNotaFiscal(notaFiscal)) { NotaFiscalRepository repo = new NotaFiscalRepository(); notaFiscal.Id = repo.SalvarNotaFiscal(notaFiscal); //Atualizando os itens da NF com o ID salvo no BD notaFiscal.ItensDaNotaFiscal.ForEach(q => q.IdNotaFiscal = notaFiscal.Id); NotaFiscalItemRepository repoItem = new NotaFiscalItemRepository(); repoItem.SalvarItensNF(notaFiscal.ItensDaNotaFiscal); } }
public void TestarDesconto() { _service = new NotaFiscalService(); DataTable dados = _service.PrepararItensPedido(); DataRow linha = dados.NewRow(); linha[0] = "Sabonete"; linha[1] = "100101"; linha[2] = 10.00; linha[3] = false; dados.Rows.Add(linha); Pedido pedido = _service.GerarPedido("Willian Rodrigues", "SP", "MG", dados); NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); if (notaFiscal.ItensDaNotaFiscal[0].Desconto == 10) { Console.Write("Desconto foi aplicado!"); } }
public void Emitir_NotaFiscal_Aliquota_Valor_IPI_100() { NotaFiscal nf = new NotaFiscal(); Pedido pedido = new Pedido(); pedido.EstadoOrigem = "SP"; pedido.EstadoDestino = "RO"; pedido.NomeCliente = "teste1"; pedido.ItensDoPedido.Add( new PedidoItem() { Brinde = false, CodigoProduto = "100", NomeProduto = "Produto1", ValorItemPedido = 10 }); nf.EmitirNotaFiscal(pedido); Assert.AreEqual(nf.ItensDaNotaFiscal[0].ValorIPI, 100); }
public void Emitir_NotaFiscal_Sem_Desconto_Estado_Destino_Sudeste() { NotaFiscal nf = new NotaFiscal(); Pedido pedido = new Pedido(); pedido.EstadoOrigem = "SP"; pedido.EstadoDestino = "SE"; pedido.NomeCliente = "teste1"; pedido.ItensDoPedido.Add( new PedidoItem() { Brinde = true, CodigoProduto = "100", NomeProduto = "Produto1", ValorItemPedido = 10 }); nf.EmitirNotaFiscal(pedido); Assert.AreEqual(nf.ItensDaNotaFiscal[0].Desconto, 0); }
public void Emitir_NotaFiscal_Estado_Origem_Igual_Estado_Destino_AliquotaIcms_Igual_18() { NotaFiscal nf = new NotaFiscal(); Pedido pedido = new Pedido(); pedido.EstadoOrigem = "SP"; pedido.EstadoDestino = "SP"; pedido.NomeCliente = "teste1"; pedido.ItensDoPedido.Add( new PedidoItem() { Brinde = true, CodigoProduto = "100", NomeProduto = "Produto1", ValorItemPedido = 10 }); nf.EmitirNotaFiscal(pedido); Assert.AreEqual(nf.ItensDaNotaFiscal[0].AliquotaIcms, 0.18); }
public void Emitir_NotaFiscal_Origem_SP_Destino_RO() { NotaFiscal nf = new NotaFiscal(); Pedido pedido = new Pedido(); pedido.EstadoOrigem = "SP"; pedido.EstadoDestino = "RO"; pedido.NomeCliente = "teste1"; pedido.ItensDoPedido.Add( new PedidoItem() { Brinde = true, CodigoProduto = "100", NomeProduto = "Produto1", ValorItemPedido = 200 }); nf.EmitirNotaFiscal(pedido); Assert.AreEqual(nf.ItensDaNotaFiscal[0].Cfop, "6.006"); }
public void GerarNotaFiscal(Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); notaFiscal.EmitirNotaFiscal(pedido); }
public int GerarNotaFiscal(Domain.Pedido pedido) { NotaFiscal notaFiscal = new NotaFiscal(); return(notaFiscal.EmitirNotaFiscal(pedido)); }