Esempio n. 1
0
        private void deletarItem()
        {
            if (pedidoItens != null && pedidoItens.Count > 0)
            {
                try
                {
                    PedidoItem itemDeletado = dbgListaProdutos.SelectedRows[0].DataBoundItem as PedidoItem;

                    DialogResult resultado = MessageBox.Show("Deseja remover este item da lista de produtos? " + itemDeletado.ProdutoNome, "Remover Item!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);


                    if (resultado == DialogResult.Yes)
                    {
                        pedido.ValorTotal            -= itemDeletado.ValorTotal;
                        pedido.ValorTotalComDesconto -= itemDeletado.ValorTotalComDesconto;
                        txtValorTotal.Text            = pedido.ValorTotal.ToString();
                        txtValorFinal.Text            = pedido.ValorTotalComDesconto.ToString();

                        pedidoItens.Remove(itemDeletado);

                        dbgListaProdutos.DataSource = null;

                        dbgListaProdutos.DataSource = pedidoItens;

                        dbgListaProdutos.Update();
                        dbgListaProdutos.Refresh();

                        //Retirar item do estoque reservado
                        try
                        {
                            EstoqueReservadoNegocio estoqueReservadoNegocio = new EstoqueReservadoNegocio();
                            EstoqueReservado        estoqueReservado        = new EstoqueReservado();

                            estoqueReservado.IDFilial   = filialLogada.IDFilial;
                            estoqueReservado.IDProduto  = itemDeletado.IDProduto;
                            estoqueReservado.Quantidade = itemDeletado.Quantidade * (-1);

                            string retorno = estoqueReservadoNegocio.Inserir(estoqueReservado);

                            int IDProduto;
                            if (int.TryParse(retorno, out IDProduto))
                            {
                                return;
                            }
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Erro ao remover produto do estoque reservado. Detalhes: " + ex.Message);
                        }
                    }
                    else
                    {
                        return;
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Erro ao excluir item da lista. Detalhes: " + ex.Message);
                }
            }
            else
            {
                MessageBox.Show("Não existe produto na lista para ser removido.");
            }
        }