Example #1
0
        private decimal PromocaoMuitoQueijo()
        {
            var queijo = Ingredientes.FirstOrDefault(i => i.Descricao.ToUpper() == "QUEIJO");

            int qtdePorcoesPromocao = 0;

            TemMuitoQueijo = false;

            if (queijo != null)
            {
                for (int i = 1; i <= queijo.Quantidade; i++)
                {
                    var calculo1 = i % promocaoPorcaoQueijo;

                    if (calculo1 == 0)
                    {
                        qtdePorcoesPromocao++;
                        TemMuitoQueijo = true;
                    }
                }

                var desconto = qtdePorcoesPromocao * queijo.Valor;

                return(desconto);
            }
            else
            {
                return(0);
            }
        }
Example #2
0
        private decimal PromocaoMuitoHamburguer()
        {
            Ingrediente hamburguer = Ingredientes.FirstOrDefault(i =>
            {
                return(i.Descricao.ToUpper() == "HAMBÚRGUER DE CARNE");
            });

            int qtdePorcoesPromocao = 0;

            TemMuitoHamburguer = false;

            if (hamburguer != null)
            {
                for (int i = 1; i <= hamburguer.Quantidade; i++)
                {
                    var calculo1 = i % promocaoPorcaoHamburguerCarne;

                    if (calculo1 == 0)
                    {
                        qtdePorcoesPromocao++;
                        TemMuitoHamburguer = true;
                    }
                }

                var desconto = qtdePorcoesPromocao * hamburguer.Valor;

                return(desconto);
            }
            else
            {
                return(0);
            }
        }
Example #3
0
        public override decimal Calcular(decimal valorPedido)
        {
            var ingredienteCarne  = Ingredientes.FirstOrDefault(x => x.Nome.ToLower().Contains("carne"));
            var ingredienteQueijo = Ingredientes.FirstOrDefault(x => x.Nome.ToLower().Contains("queijo"));

            var valorDescontoCarne  = (Pedido.ItensPedido.FirstOrDefault(x => x.IdIngrediente == ingredienteCarne?.Id)?.Quantidade / 3) * ingredienteCarne?.Valor;
            var valorDescontoQueijo = (Pedido.ItensPedido.FirstOrDefault(x => x.IdIngrediente == ingredienteQueijo?.Id)?.Quantidade / 3) * ingredienteQueijo?.Valor;

            return(valorDescontoCarne ?? 0 + valorDescontoQueijo ?? 0);
        }
Example #4
0
        public override decimal Calcular(decimal valorPedido)
        {
            var ingredienteAlface = Ingredientes.FirstOrDefault(x => x.Nome.ToLower().Contains("alface"));
            var ingredienteBacon  = Ingredientes.FirstOrDefault(x => x.Nome.ToLower().Contains("bacon"));

            if (this.Pedido.ItensPedido.Any(x => x.IdIngrediente == ingredienteAlface?.Id) && !this.Pedido.ItensPedido.Any(x => x.IdIngrediente == ingredienteBacon?.Id))
            {
                return((valorPedido * 10) / 100);
            }

            return(0);
        }
Example #5
0
        private decimal PromocaoLight()
        {
            var alface = Ingredientes.FirstOrDefault(i => i.Descricao.ToUpper() == "ALFACE");
            var bacon  = Ingredientes.FirstOrDefault(i => i.Descricao.ToUpper() == "BACON");

            int QuantidadeAlface = alface == null ? 0 : alface.Quantidade;
            int QuantidadeBacon  = bacon == null ? 0 : bacon.Quantidade;

            if (QuantidadeAlface > 0 && QuantidadeBacon == 0)
            {
                return(this.ValorLanche * percentualDescontoLancheLight);
            }
            else
            {
                return(0);
            }
        }