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 !"; } }