static void Main(string[] args) { var criador = new NotaFiscalBuilder(); var criadorItem = new ItemDaNotaBuilder(); criador.ParaEmpresa("Thiago") .ComCnpj("23.456.789/0001-12") .ComItem(criadorItem.ComNome("Item1").ComValor(100).Controi()) .ComItem(criadorItem.ComNome("Item2").ComValor(200).Controi()) .NaData(DateTime.Now) .ComObs("uma obs qualquer"); criador.AdicionaAcao(new EnviadorDeEmail()); criador.AdicionaAcao(new EnviadorDeSms()); criador.AdicionaAcao(new NotaFiscalDao()); criador.AdicionaAcao(new Multiplicador(2)); var nf = criador.Constroi(); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); Console.WriteLine(nf.DataDeEmissao); Console.ReadKey(); }
private static void TestaNotaBuilder() //Builder { var listaAcoes = new List <AcaoAposGerarNota>() { new EnviadorDeEmail(), new NotaFiscalDao(), new EnviadorDeSms(), new Impressora(), new Multiplicador(2) }; NotaFiscalBuilder builder = new NotaFiscalBuilder(listaAcoes); NotaFiscal nf = builder.ParaEmpresa("Caelum") .ComCnpj("123.456.789/0001-10") .Com(new ItemDaNotaBuilder() .ComNome("item 1") .ComValor(100.0) .Constroi()) .Com(new ItemDaNotaBuilder() .ComNome("item 2") .ComValor(200.0) .Constroi()) .Com(new ItemDaNotaBuilder() .ComNome("item 3") .ComValor(300.0) .Constroi()) .ComObservacoes("entregar nf pessoalmente") .Constroi(); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); }
static void Main(string[] args) { //AULA 1 //IImposto iss = new ISS(); //IImposto icms = new ICMS(); //Orcamento orcamento = new Orcamento(500.0); //CalculadorDeImpostos calculador = new CalculadorDeImpostos(); //calculador.RealizaCalculo(orcamento, iss); //calculador.RealizaCalculo(orcamento, icms); //AULA 2 //CalculadorDeDescontos calculador = new CalculadorDeDescontos(); //Orcamento orcamento = new Orcamento(500); //orcamento.AdicionaItem(new Item("CANETA", 500)); //orcamento.AdicionaItem(new Item("LAPIS", 500)); //double desconto = calculador.Calcula(orcamento); //Console.WriteLine(desconto); //AULA 4 //Imposto iss = new ISS(new ICMS()); //Orcamento orcamento = new Orcamento(500); //double valor = iss.Calcula(orcamento); //Console.WriteLine(valor); //AULA 5 //Orcamento reforma = new Orcamento(500); //Console.WriteLine(reforma.Valor); //reforma.AplicaDescontoExtra(); //Console.WriteLine(reforma.Valor); //reforma.Aprova(); //reforma.AplicaDescontoExtra(); //Console.WriteLine(reforma.Valor); //reforma.Finaliza(); //reforma.AplicaDescontoExtra(); //AULA 6 NotaFiscalBuilder criador = new NotaFiscalBuilder(); criador .ParaEmpresa("Fillipe Partiu Portugal") .ComCNPJ("12.234.456/0001-78") .ComItem(new ItemDaNota("item 1", 200.0)) .ComItem(new ItemDaNota("item 2", 200.0)); criador.AdicionaAcao(new EnviadorDeEmail()); criador.AdicionaAcao(new NotaFiscalDAO()); criador.AdicionaAcao(new EnviadorDeSms()); NotaFiscal nf = criador.Constroi(); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); }
private static void Builder1() { var criadorDeNotaFiscal = new NotaFiscalBuilder(); var itens = new ItemDaNotaBuilder(); criadorDeNotaFiscal .ParaEmpresa("LG") .ComCnpj("999.999.99-99") .ComItem(itens.ComNome("Sapato").ComValor(100).Controi()) .ComItem(itens.ComNome("Calça").ComValor(500).Controi()) .NaData(new DateTime(2017, 1, 18)) .ComObservacoes("Teste obs "); var nf = criadorDeNotaFiscal.Constroi(); Console.WriteLine(nf); }
private static void MotraNotaFiscal() { NotaFiscalBuilder criador = new NotaFiscalBuilder(); criador.ParaEmpresa("Empresa 1") .ComCnpj("12039102930193") .ComItem(new ItemDaNota("Lapis", 100.00)) .ComItem(new ItemDaNota("caneta", 1000.00)) .NaDataAtual() .ComObservacoes("obs qualquer"); NotaFiscal.NotaFiscal nf = criador.Constroi(); Console.WriteLine(nf.Itens.Count); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); }
static void Main(string[] args) { NotaFiscalBuilder criador = new NotaFiscalBuilder(); criador .ParaEmpresa("Caelum Ensino e Inovacao") .ComCnpj("23.456.789/0001-12") .ComItem(new ItemDaNota("item 1", 100.0)) .ComItem(new ItemDaNota("item 2", 200.0)) .NaDataAtual() .ComObservacoes("uma obs qualquer"); NotaFiscal nf = criador.Constroi(); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); Console.ReadKey(); /*demorar o tempo um pouco*/ }
private static void Observer1() { var listaDeAcoes = new List <IAcaoAposGerarNota>() { new EnviadorDeEmail(), new NotaFiscalDao(), new EnviadorPorSMS(), new Multiplicador(10) }; var criadorDeNotaFiscal = new NotaFiscalBuilder(listaDeAcoes); var itens = new ItemDaNotaBuilder(); criadorDeNotaFiscal .ParaEmpresa("LG") .ComCnpj("999.999.99-99") .ComItem(itens.ComNome("Sapato").ComValor(100).Controi()) .ComItem(itens.ComNome("Calça").ComValor(500).Controi()) .NaData(new DateTime(2017, 1, 18)) .ComObservacoes("Teste obs "); var nf = criadorDeNotaFiscal.Constroi(); Console.WriteLine(nf); }
static void Main(string[] args) { NotaFiscalBuilder criador = new NotaFiscalBuilder(); criador .ParaEmpresa("Caelum Ensino e Inovação") .ComCnpj("23.456.789/0001-12") .comItem(new ItemDaNota("item 1", 100.0)) .comItem(new ItemDaNota("item 2", 200.0)) .NaDataAtual() .ComObservacoes("Uma obs qualquer"); criador.AdicionaAcao(new EnviadorDeEmail()); criador.AdicionaAcao(new NotaFiscalDAO()); criador.AdicionaAcao(new EnviadorDeSms()); NotaFiscal nf = criador.Constroi(); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); Console.ReadKey(); }
static void Main(string[] args) { /*Imposto iss = new ISS(); * Imposto icms = new ICMS(); * * * Orcamento orcament = new Orcamento(500.0); * CalculadorDeImpostos calculador = new CalculadorDeImpostos(); * * calculador.RealizaCalculo(orcament, icms); * calculador.RealizaCalculo(orcament, iss); * * * Imposto iccc = new ICCC(); * * Orcamento orcamento = new Orcamento(1500.00); * //calculador.RealizaCalculo(orcament, iccc); * * Console.WriteLine(iccc.Calcula(orcament));*/ /* * EstrategiaDeInvestimento convervador = new Conservador(); * Conta conta = new Conta(); * conta.Deposita(1000); * * RealizadorDeInvestimentos investimento = new RealizadorDeInvestimentos(); * investimento.Investir(conta, convervador);*/ /* * CalculadorDeDescontos calculador = new CalculadorDeDescontos(); * Orcamento orcamento = new Orcamento(500); * * orcamento.AdicionaItem(new Item("CANETA", 250)); * orcamento.AdicionaItem(new Item("LAPIS", 250)); * orcamento.AdicionaItem(new Item("GELADEIRA", 250)); * orcamento.AdicionaItem(new Item("FOGAO", 250)); * orcamento.AdicionaItem(new Item("MICROONDAS", 250)); * orcamento.AdicionaItem(new Item("XBOX", 250)); * * double desconto = calculador.Calcula(orcamento); * * Console.WriteLine(desconto);*/ /* * Conta conta = new Conta("Artur Dent"); * conta.Deposita(969.0); * * Requisicao requisicao = new Requisicao(Formato.CSV); * Resposta r1 = new RespostaEmCsv(); * Resposta r2 = new RespostaXML(); * Resposta r3 = new RespostaEmPorcento(); * Resposta r4 = new SemFormato(); * * r1.OutraResposta = r2; * r2.OutraResposta = r3; * r3.OutraResposta = r4; * * r1.Responde(requisicao, conta);*/ /* * Conta c1 = new Conta("Artur Dent"); * c1.Deposita(969.0); * * Conta c2 = new Conta("Ford"); * c2.Deposita(5.66); * * Conta c3 = new Conta("Zhanphord"); * c3.Deposita(964841889.32); * * TemplateRelatorio RSimples = new RelatorioSimples(); * TemplateRelatorio RComplexo = new RelatorioComplexos(); * * IList<Conta> contas = new List<Conta>(); * * contas.Add(c1); * contas.Add(c2); * contas.Add(c3); * * RSimples.Imprimir(contas); * RComplexo.Imprimir(contas);*/ /* * Imposto iss = new ISS(new ImpostoMuitoAlto()); * Orcamento orcamento = new Orcamento(500); * double valor = iss.Calcula(orcamento); * * Console.WriteLine(valor); */ /* * Orcamento reforma = new Orcamento(500); * Console.WriteLine(reforma.Valor); * reforma.AplicaDescontoExtra(); * reforma.AplicaDescontoExtra(); * Console.WriteLine(reforma.Valor); * * reforma.Aprova(); * * reforma.AplicaDescontoExtra(); * Console.WriteLine(reforma.Valor); * * reforma.Finaliza();*/ /* * Conta c1 = new Conta("Artur Dent"); * c1.Deposita(100); * * Console.WriteLine(c1.Status.ToString()); * Console.WriteLine(c1.Saldo); * * c1.Saca(99); * * Console.WriteLine(c1.Status.ToString()); * Console.WriteLine(c1.Saldo); * * c1.Deposita(100); * * Console.WriteLine(c1.Status.ToString()); * Console.WriteLine(c1.Saldo);*/ /* IList<ItemDaNota> itens = new List<ItemDaNota>(); * * double valorTotal = 0; * * foreach (ItemDaNota item in itens) * { * valorTotal += item.Valor; * } * * double impostos = valorTotal + 0.05; * * NotaFiscal nf = new NotaFiscal("razão", "cnpj", DateTime.Now, valorTotal, impostos, itens, "obs qualquer");*/ NotaFiscalBuilder criador = new NotaFiscalBuilder(); criador.ParaEmpresa("Caelum Ensino e Inovação") .ComCnpj("23.456.789/0001-12") .Com(new ItemDaNota("item 1", 100.0)) .Com(new ItemDaNota("item 2", 200.0)) .ComObservacoes("uma obs qualquer"); criador.AdicionaAcao(new EnviadorDeEmail()); criador.AdicionaAcao(new NotaFiscalDAO()); criador.AdicionaAcao(new EnviadorDeSMS()); criador.AdicionaAcao(new Multiplicador(2)); NotaFiscal nf = criador.Constroi(); Console.WriteLine(nf.ValorBruto); Console.WriteLine(nf.Impostos); Console.ReadKey(); }
static void Main(string[] args) { /*Imposto iss = new ISS(); * Imposto icms = new ICMS(); * Imposto iccc = new ICCC(); * * Orcamento orcamento = new Orcamento(3001); * * CalculadorDeImpostos calculadora = new CalculadorDeImpostos(); */ /*Investimento conservador = new Conservador(); * Investimento moderado = new Moderado(); * Investimento arrojado = new Arrojado(); * * Conta marcelo = new Conta(); * * marcelo.Deposita(50); * * RealizadorDeInvestimentos calInvest = new RealizadorDeInvestimentos(); * * calInvest.Realiza(marcelo, conservador); * calInvest.Realiza(marcelo, moderado); * calInvest.Realiza(marcelo, arrojado); */ /* * CalculadorDeDescontos calculador = new CalculadorDeDescontos(); * Orcamento orcamento = new Orcamento(500); * orcamento.AdicionaItem(new Item("CANETA", 250)); * orcamento.AdicionaItem(new Item("LAPIS", 250)); * orcamento.AdicionaItem(new Item("copo", 250)); * * double desconto = calculador.Calcula(orcamento); * Console.WriteLine(desconto); */ /* * Conta marcelo = new Conta(100, "Marcelo"); * * //CorrenteArquivo d4 = new CorrenteSemArquivo(); * CorrenteArquivo d3 = new CorrenteXML(); * CorrenteArquivo d2 = new CorrentePORCENTO(d3); * CorrenteArquivo d1 = new CorrenteCSV(d2); * * * * * d1.OutroResultado = d2; * d2.OutroResultado = d3; * d3.OutroResultado = d4; * * d1.Resultado(new Requisicao(Formato.PORCENTO), marcelo); * d1.Resultado(new Requisicao(Formato.XML), marcelo); * d1.Resultado(new Requisicao(Formato.CSV), marcelo); */ /* * Imposto ikcv = new IKCV(); * Imposto icpp = new ICPP(); * Imposto ihit = new IHIT(); * * * Orcamento orcamento = new Orcamento(100); * orcamento.AdicionaItem(new Item("CANETA", 250)); * orcamento.AdicionaItem(new Item("LAPIS", 250)); * orcamento.AdicionaItem(new Item("copo1", 250)); * orcamento.AdicionaItem(new Item("copo6", 250)); * orcamento.AdicionaItem(new Item("copo3", 250)); * orcamento.AdicionaItem(new Item("copo2", 250)); * orcamento.AdicionaItem(new Item("copo4", 250)); * orcamento.AdicionaItem(new Item("copo5", 250)); * orcamento.AdicionaItem(new Item("copo6", 250)); * orcamento.AdicionaItem(new Item("copo7", 250)); * * * CalculadorDeImpostos calculadora = new CalculadorDeImpostos(); * * calculadora.RealizaCalculo(orcamento, ikcv); * calculadora.RealizaCalculo(orcamento, icpp); * calculadora.RealizaCalculo(orcamento, ihit); */ /*IList<Conta> Contas; * Contas = new List<Conta>(); * Contas.Add(new Conta(100, "Marcelo")); * Contas.Add(new Conta(200, "Gabriele")); * Contas.Add(new Conta(300, "Marco")); * Contas.Add(new Conta(400, "Marilene")); * Contas.Add(new Conta(500, "Ivani")); * * Relatorio complexo = new RelatorioComplexo(); * Relatorio simples = new RelatorioSimples(); * * Console.WriteLine("Complexo\n"); * complexo.Impressao(Contas); * * Console.WriteLine("\n\nSimples\n" + simples); * simples.Impressao(Contas); */ /* * Imposto impostoComplexo = new IMA(new ISS(new ICMS())); * Orcamento orcamento = new Orcamento(500.0); * double valor = impostoComplexo.Calcula(orcamento); * Console.WriteLine(valor); */ /* * IList<Conta> Contas; * Contas = new List<Conta>(); * Contas.Add(new Conta(100, "Marcelo")); * Contas.Add(new Conta(200, "Gabriele")); * Contas.Add(new Conta(300, "Marco")); * Contas.Add(new Conta(400, "Marilene")); * Contas.Add(new Conta(500, "Ivani")); * Filtro Filtro1 = new FiltroContaAberturaNoMes(); * IList<Conta> ContasFiltradas; */ /* * Orcamento reforma = new Orcamento(500.0); * * reforma.AplicaDescontoExtra(); * Console.WriteLine(reforma.Valor); * * reforma.Aprova(); * * reforma.AplicaDescontoExtra(); * Console.WriteLine(reforma.Valor); * * reforma.Finaliza(); * * // reforma.AplicaDescontoExtra(); lancaria excecao, pois não pode dar desconto nesse estado * // reforma.Aprova(); lança exceção, pois não pode ir para aprovado */ /* * Conta marcelo = new Conta(500,"Marcelo"); * * marcelo.Saca(100); * Console.WriteLine(marcelo.Saldo + " " + marcelo.Estado); * * marcelo.Saca(500); * Console.WriteLine(marcelo.Saldo + " " + marcelo.Estado); * * marcelo.Saca(500); * Console.WriteLine(marcelo.Saldo + " " + marcelo.Estado); * * marcelo.Deposita(300); * Console.WriteLine(marcelo.Saldo + " " + marcelo.Estado); */ NotaFiscalBuilder criador = new NotaFiscalBuilder(); criador.AdicionaAcao(new EnviadorDeEmail()); criador.AdicionaAcao(new NotaFiscalDao()); criador.AdicionaAcao(new EnviadorDeSms()); criador.AdicionaAcao(new Impressora()); criador.AdicionaAcao(new Multiplicador(2)); criador.ParaEmpresa("Caelum") .ComCnpj("123.456.789/0001-10") .ComItem(new ItemDaNota("item 1", 100.0)) .ComItem(new ItemDaNota("item 2", 200.0)) .ComItem(new ItemDaNota("item 3", 300.0)) .ComObservacoes("entregar nf pessoalmente"); //.NaData(); NotaFiscal nf = criador.Constroi(); Console.WriteLine(nf); Console.ReadLine(); }