コード例 #1
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            //int id = (int)dgvProdutos.CurrentRow.Cells[0].Value;

            if (listaproduto != null && listaproduto.Count > 0)
            {
                DALVenda          venda  = new DALVenda();
                Venda             ven    = new Venda();
                Cliente           cli    = new Cliente();
                List <ItensVenda> listiv = new List <ItensVenda>();
                ItensVenda        iv     = new ItensVenda();
                DALPessoa         dalpes = new DALPessoa();
                cli           = (dalpes.retornarCliente((int)cbCliente.SelectedValue));
                ven.idCliente = cli.id;//(int)cbCliente.SelectedValue;

                //ven.Valor = decimal.Parse(txtPreco.Text);
                ven.data = DateTime.Now;
                //ven.valorrestante = ven.Valor;
                ven.idCategoriaPagamento = (int)cbTipoPagamento.SelectedValue;
                ven.qtdParcelas          = int.Parse(nudParcelamento.Text);
                ven.valorrestante        = Convert.ToDecimal(txtPrecoFinal.Text);
                ven.Valor  = Convert.ToDecimal(txtPrecoFinal.Text);
                ven.status = "Faturado";
                foreach (ProdutoModel prod in listaproduto)
                {
                    ItensVenda iv2 = new ItensVenda();
                    iv2.idProduto = prod.id;


                    //foreach (ProdutoModel item in listaprodutocondicional)
                    //{
                    //    if (item.id == prod.id)
                    //    {
                    //        MessageBox.Show("Por favor, não selecione uma quantidade maior de um produto do que há");
                    //    }
                    //}



                    // ven.Valor = ven.Valor + prod.preco;
                    //ven.valorrestante = ven.valorrestante + prod.preco;
                    listiv.Add(iv2);
                }
                //if(nudParcelamento.Value > 0)
                //{
                //metodo diferente para parcelamentos
                //}
                bool resultado = venda.RealizarVenda(ven, listiv, cli);
                if (idCondicional != 0)
                {
                    //string status = "Vendido";
                    venda.ModificarStatusCondicionalVenda(idCondicional);
                    dgvListaCondicionais.DataSource = (new DALVenda().carregarCondicionais()).ToList();
                    idCondicional = 0;
                }

                if (resultado)
                {
                    //avisos.Text = "Venda completada !";
                    MessageBox.Show("Venda completada !");
                    limparTextBoxes(this.Controls);
                    limparTextBoxEMasked(tabPage1);
                    dgvVenda.DataSource = null;
                    //frmCADVenda_Load(sender,e);
                    listaproduto = null;
                }

                else
                {
                    MessageBox.Show("Venda não completada !");
                }
            }
            else
            {
                avisos.Text = "Selecine algum produto !";
            }
        }