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); }
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); }