Example #1
0
        public VendaItem Cadastre(int codigoVenda, int codigoProduto, int quantidade)
        {
            var servicoVenda   = FabricaDeServico.Crie <Venda>();
            var servicoProduto = FabricaDeServico.Crie <Produto>();

            var venda   = servicoVenda.Consulte(codigoVenda);
            var produto = servicoProduto.Consulte(codigoProduto);

            var validacaoDeVendaItem = FabricaDeValidacao.Crie <VendaItem>() as ValidacaoVendaItem;

            validacaoDeVendaItem.Cadastre(produto, venda, quantidade);

            var vendaItem = new VendaItem
            {
                Desconto  = 0m,
                IdVenda   = venda.Id,
                IdProduto = produto.Id,
                Quntidade = quantidade
            };

            vendaItem.ValorTotal = (produto.Valor * quantidade) - vendaItem.Desconto;

            if (quantidade >= 10)
            {
                vendaItem.Desconto = vendaItem.ValorTotal * 10 / 100;
            }

            vendaItem.ValorTotal -= vendaItem.Desconto;

            Cadastre(vendaItem);

            return(vendaItem);
        }
Example #2
0
        public ProdutoNaVenda Cadastre(int codigoDaVenda, int codigoDoProduto, int quantidade)
        {
            var servicoDeVenda            = FabricaDeServico.Crie <Venda>();
            var servicoDeProduto          = FabricaDeServico.Crie <Produto>();
            var validacaoDeProdutoNaVenda = FabricaDeValidacao.Crie <ProdutoNaVenda>() as ValidacaoDeProdutoNaVenda;

            var venda   = servicoDeVenda.Consulte(codigoDaVenda);
            var produto = servicoDeProduto.Consulte(codigoDoProduto);

            validacaoDeProdutoNaVenda.Cadastre(produto, venda, quantidade);

            var produtoNaVenda = new ProdutoNaVenda
            {
                IdVenda    = venda.Id,
                IdProduto  = produto.Id,
                Quantidade = quantidade
            };

            produtoNaVenda.ValorTotal = produto.Valor * quantidade;

            var desconto = 0m;

            if (quantidade >= 10)
            {
                desconto = (produtoNaVenda.ValorTotal * 10) / 100;
            }
            produtoNaVenda.Desconto    = desconto;
            produtoNaVenda.ValorTotal -= desconto;

            Cadastre(produtoNaVenda);

            return(produtoNaVenda);
        }