Ejemplo n.º 1
0
 private static void BaixaEstoque(ISession session, Mercearia pedido)
 {
     foreach (ProdutoPedido prods in pedido.Produtos)
     {
         if (prods.Produto.Ippt == Ippt.Propria)
         {
             if (prods.Produto.Receitas.Count > 0)
             {
                 foreach (Receita itemReceita in prods.Produto.Receitas)
                 {
                     decimal qtd = itemReceita.Quantidade * (prods.Quantidade *
                                                             prods.Produto.UnidadeVenda.Quantidade);
                     ProdutoRepository.BaixarQuantidadeProduto(itemReceita.MateriaPrima, qtd);
                 }
             }
             else
             {
                 ProdutoRepository.BaixarQuantidadeProduto(prods.Produto, prods.Quantidade);
             }
         }
         else
         {
             ProdutoRepository.BaixarQuantidadeProduto(prods.Produto, prods.Quantidade);
         }
     }
 }
 private static void BaixaEstoque(ISession session, PedidoRestaurante pedido)
 {
     // Entra dentro dos produtos.
     foreach (ComposicaoProduto prods in pedido.Produtos)
     {
         // Entra dentro das composições do produto.
         // Observação: os produtos são baixados por meio de sua composição nos pedidos de restaurante,
         // sejam eles produção própria ou de terceiros.
         foreach (ProdutoPedido composicao in prods.Composicao)
         {
             if (composicao.Produto.Ippt == Ippt.Propria)
             {
                 if (composicao.Produto.Receitas.Count > 0)
                 {
                     foreach (Receita itemReceita in composicao.Produto.Receitas)
                     {
                         decimal qtd = itemReceita.Quantidade * (composicao.Quantidade *
                                                                 composicao.Produto.UnidadeVenda.Quantidade);
                         ProdutoRepository.BaixarQuantidadeProduto(itemReceita.MateriaPrima, qtd);
                     }
                 }
                 else
                 {
                     decimal qtd = (composicao.Quantidade *
                                    composicao.Produto.UnidadeVenda.Quantidade);
                     ProdutoRepository.BaixarQuantidadeProduto(composicao.Produto, qtd);
                 }
             }
             else
             {
                 decimal qtd = (composicao.Quantidade *
                                composicao.Produto.UnidadeVenda.Quantidade);
                 ProdutoRepository.BaixarQuantidadeProduto(composicao.Produto, qtd);
             }
         }
     }
 }