示例#1
0
        public double Calcula(Orcamento orcamento)
        {
            IDesconto desconto1 = new SemDesconto();
            IDesconto desconto2 = new DescontoPorMaisDeQuinhentosReais(desconto1);
            IDesconto desconto3 = new DescontoPorCincoItens(desconto2);

            return(desconto3.CalculaDesconto(orcamento));
        }
        public double Calcula(Orcamento orcamento)
        {
            Desconto d1 = new DescontoCincoItens();
            Desconto d2 = new DescontoMaisQuinhetosReias();
            Desconto d3 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;
            return(d1.Desconta(orcamento));
        }
        public double Calcula(Orcamento orcamento)
        {
            var d1 = new DescontosPorCincoItens();
            var d2 = new DescontoPorMaisDeQuinhetosReais();
            var d3 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;
            return(d1.Desconta(orcamento));
        }
示例#4
0
        public double CalculaDesconto(Orcamento orcamento)
        {
            var primeiroDesconto = new DescontoValorMaiorQueQuinhentos();
            var segundoDesconto  = new DescontoCincoItens();
            var terceiroDesconto = new SemDesconto();

            primeiroDesconto.Proximo = segundoDesconto;
            segundoDesconto.Proximo  = terceiroDesconto;

            return(primeiroDesconto.CalculaDesconto(orcamento));
        }
        public double Calcula(Orcamento orcamento)
        {
            IDesconto descontoPorCincoItens = new DescontoPorCincoItens();
            IDesconto descontoPorMaisDeQuinhentosReais = new DescontoPorMaisDeQuinhentosReais();
            IDesconto semDesconto = new SemDesconto();

            descontoPorCincoItens.Proximo = descontoPorMaisDeQuinhentosReais;
            descontoPorMaisDeQuinhentosReais.Proximo = semDesconto;

            return descontoPorCincoItens.Desconta(orcamento);
        }
示例#6
0
        public double Calcular(Orcamento orcamento)
        {
            IDesconto descontoMaisCincoItens      = new DescontoPorMaisDeCincoItens();
            IDesconto descontoMaisQuinhentosReais = new DescontoPorMaisDeQuinhentosReais();
            IDesconto semDesconto = new SemDesconto();

            descontoMaisCincoItens.Proximo      = descontoMaisQuinhentosReais;
            descontoMaisQuinhentosReais.Proximo = semDesconto;

            return(descontoMaisCincoItens.Desconta(orcamento));
        }
示例#7
0
        public double CalcularDescontos(Orcamento orcamento)
        {
            IDesconto descontonumeroItens = new DescontoNumeroItens();
            IDesconto descontoValor       = new DescontoValor();
            IDesconto semDesconto         = new SemDesconto();

            descontonumeroItens.Proximo = descontoValor;
            descontoValor.Proximo       = semDesconto;

            return(descontonumeroItens.Calcular(orcamento));
        }
示例#8
0
        public double Calcular(Orcamento orcamento)
        {
            IDesconto descontoPorCincoItens            = new DescontoPorCincoItens();
            IDesconto descontoPorMaisDeSeiscentosReais = new DescontoPorMaisDeSeiscentoReais();
            IDesconto semDesconto = new SemDesconto();

            //Ligando Descontos
            descontoPorCincoItens.ProximoDesconto            = descontoPorMaisDeSeiscentosReais;
            descontoPorMaisDeSeiscentosReais.ProximoDesconto = semDesconto;

            return(descontoPorCincoItens.Descontar(orcamento));
        }
示例#9
0
        public static double AplicarDesconto(Compras.Compras compras)
        {
            IDesconto d1 = new DescontoCincoItens();
            IDesconto d2 = new DescontoMaisQuinhentosReais();
            IDesconto ultimo = new SemDesconto();

            d1.Proximo = d2;

            d2.Proximo = ultimo;

            return d1.CalcularDesconto(compras);
        }
示例#10
0
        public static double AplicarDesconto(Compras.Compras compras)
        {
            IDesconto d1     = new DescontoCincoItens();
            IDesconto d2     = new DescontoMaisQuinhentosReais();
            IDesconto ultimo = new SemDesconto();

            d1.Proximo = d2;

            d2.Proximo = ultimo;

            return(d1.CalcularDesconto(compras));
        }
示例#11
0
        public double Calcula(Orcamento orcamento)
        {
            IDesconto d1 = new Desconto5Itens();
            IDesconto d2 = new DescontoACimade500();
            IDesconto d3 = new DescontoProVendaCasada();
            IDesconto d4 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;
            d3.Proximo = d4;

            return(d1.Desconta(orcamento));
        }
示例#12
0
        public double Calcula(Orcamento orcamento)
        {
            IDesconto d1 = new DescontoPor5Itens();
            IDesconto d2 = new DescontoPorMais500Reais();
            IDesconto d3 = new DecontoLapisCaneta();
            IDesconto d4 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;
            d3.Proximo = d4;

            return(d1.Desconta(orcamento));
        }
示例#13
0
        public static double Calcula(Orcamento orcamento)
        {
            IDesconto d1 = new DescontoMais5Itens();
            IDesconto d2 = new DescontoMaisDe500();
            IDesconto d3 = new DescontoPorVendaCasada();
            IDesconto d4 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;
            d3.Proximo = d4;

            return(d1.Calcula(orcamento));
        }
示例#14
0
        public decimal Calcula(Orcamento orcamento)
        {
            IDesconto d1 = new DescontoPorCincoItens();
            IDesconto d2 = new DescontoPorMaisDeQuinhentosReais();
            IDesconto d3 = new DescontoPorVendaCasada();
            IDesconto d4 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;
            d3.Proximo = d4;

            return(d1.Desconta(orcamento));
        }
        public double CalculaDesconto(Orcamento orcamento)
        {
            var desconto1 = new DescontoPorCintoItens();
            var desconto2 = new DescontoPorMaisDeQuinhentosReais();
            var desconto3 = new DescontoPorVendaCasada();
            var desconto4 = new SemDesconto();

            desconto1.Proximo = desconto2;
            desconto2.Proximo = desconto3;
            desconto3.Proximo = desconto4;

            return(desconto1.Desconta(orcamento));
        }
        public double Calcula(Orcamento orcamento)
        {
            var d1 = new DescontoPorCincoItens();
            var d2 = new DescontoPorMaisDeQuihentosReais();
            var d3 = new DescontoPorVendaCasada();
            var d4 = new SemDesconto();

            d1.Desconto = d2;
            d2.Desconto = d3;
            d3.Desconto = d4;

            return(d1.Desconta(orcamento));
        }
        public double CalcularDesconto(Orcamento orcamento)
        {
            IDesconto d1      = new DescontoMaisQuinhentosReais();
            IDesconto d2      = new DescontoPorCincoItens();
            IDesconto d3      = new DescontoVendaCasada();
            IDesconto semDesc = new SemDesconto();

            d1.ProximoDesconto = d2;
            d2.ProximoDesconto = d3;
            d3.ProximoDesconto = semDesc;

            return(d1.Descontar(orcamento));
        }
示例#18
0
        public double Calcula(Orcamento orcamento)
        {
            IDescontos cintoItens        = new DescontoPorCincoItems();
            IDescontos maisQuientosReais = new DescontoPorMaisQuinhetosReais();
            IDescontos itemMaiorQueMil   = new SomaDosItensMaiorQueMil();
            IDescontos semDesconto       = new SemDesconto();

            cintoItens.ProximoDesconto        = maisQuientosReais;
            maisQuientosReais.ProximoDesconto = itemMaiorQueMil;
            itemMaiorQueMil.ProximoDesconto   = semDesconto;

            return(cintoItens.Desconta(orcamento));
        }
示例#19
0
        public double Calcular(Orcamento orcamento)
        {
            var descontoCincoItens      = new DescontoCincoItens();
            var descontoQuinhentosReais = new DescontoQuinhentosReais();
            var descontoVendaCasada     = new DescontoVendaCasada();
            var semDesconto             = new SemDesconto();

            descontoCincoItens.Proximo      = descontoQuinhentosReais;
            descontoQuinhentosReais.Proximo = descontoVendaCasada;
            descontoVendaCasada.Proximo     = semDesconto;

            var descontoResult = descontoCincoItens.Descontar(orcamento);

            return(descontoResult);
        }
示例#20
0
        private static void ExecuteChainOfResponsability()
        {
            IDesconto d1 = new DescontoPorCincoItens();
            IDesconto d2 = new DescontoPorMaisDeQuinhentosReais();
            IDesconto d3 = new SemDesconto();

            d1.Proximo = d2;
            d2.Proximo = d3;

            Orcamento orcamento = new Orcamento(500.0);

            double desconto = d1.Desconta(orcamento);

            Console.WriteLine(desconto);
        }