private void dgvItemVendido_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e) { try { foreach (DataGridViewRow row in dgvItemVendido.Rows) { ItemVendido item = row.DataBoundItem as ItemVendido; Produto produto = new ProdutoDAO().Pesquisar(item.IdProduto); if (produto != null) { row.Cells["descricao"].Value = produto.Descricao; } } } catch (Exception ex) { MessageBox.Show("Ocorreu um erro: " + ex.ToString(), "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public List <ItemVendido> GetListaItensVendidos(int idVenda) { string query = "EXECUTE SP_OBTEM_ITENSVENDIDOS @IdVenda"; try { this.connection.Open(); SqlCommand cmd = new SqlCommand(query, this.connection); cmd.Parameters.AddWithValue("@IdVenda", idVenda); SqlDataReader dtr = cmd.ExecuteReader(); List <ItemVendido> listaItensVendidos = new List <ItemVendido>(); while (dtr.Read()) { ItemVendido itemVendido = new ItemVendido() { QtdVendida = float.Parse(dtr["qtdVendida"].ToString()), ValorVenda = Convert.ToDouble(dtr["valorVenda"].ToString()), IdProduto = Convert.ToInt32(dtr["idProduto"].ToString()), Produto = new Produto() { IdProduto = Convert.ToInt32(dtr["idProduto"].ToString()), Descricao = dtr["descricao"].ToString() } }; itemVendido.ValorTotal = itemVendido.QtdVendida * itemVendido.ValorVenda; listaItensVendidos.Add(itemVendido); } dtr.Close(); this.connection.Close(); return(listaItensVendidos); } catch (Exception ex) { MessageBox.Show("Erro: " + ex.Message); throw ex; } }
private void btnAdicionarProduto_Click(object sender, EventArgs e) { if (cmbProduto.SelectedItem != null) { if (txtQuantidade.Value > 0) { ItemVendido itemVendido = new ItemVendido() { Produto = (Produto)cmbProduto.SelectedItem, QtdVendida = Convert.ToDouble(txtQuantidade.Value), ValorVenda = Convert.ToDouble(txtPrecoVenda.Value), }; itemVendido.IdProduto = itemVendido.Produto.IdProduto; itemVendido.ValorTotal = itemVendido.QtdVendida * itemVendido.ValorVenda; ItemVendido itemVendidoExistente = null; //Novo foreach (ItemVendido item in listaItemVendido) { if (item.Produto.IdProduto == itemVendido.Produto.IdProduto) { itemVendidoExistente = item; break; } } if (itemVendidoExistente == null) //Novo { itemVendidoExistente = itemVendido; this.listaItemVendido.Add(itemVendido); this.listaItemVendidoNovo.Add(itemVendido); //MessageBox.Show("Adicionado na ListaItemVendidoNovo"); } else //Atualiza - Já existe { itemVendidoExistente.QtdVendida += itemVendido.QtdVendida; itemVendidoExistente.ValorVenda = itemVendido.ValorVenda; itemVendidoExistente.ValorTotal = itemVendidoExistente.QtdVendida * itemVendido.ValorVenda; ItemVendido ivNovo = listaItemVendidoNovo.Find(i => i.IdProduto == itemVendidoExistente.IdProduto); if (ivNovo != null) { ivNovo = itemVendidoExistente; } else { ItemVendido iv = this.listaItemVendidoAlterado.Find(i => i.IdProduto == itemVendidoExistente.IdProduto); if (iv != null) { iv = itemVendidoExistente; } else { listaItemVendidoAlterado.Add(itemVendidoExistente); } } //MessageBox.Show("Adicionado na ListaItemVendidoAlterado"); } //Verifica se item vendido adicionado havia sido removido foreach (var item in listaItemVendidoDeletado) { if (item.Produto.IdProduto == itemVendido.IdProduto) { listaItemVendidoDeletado.Remove(item); //MessageBox.Show("Removido da ListaItemVendidoDeletado"); listaItemVendidoAlterado.Add(itemVendidoExistente); //MessageBox.Show("Adicionado na ListaItemVendidoAlterado"); listaItemVendidoNovo.Remove(itemVendidoExistente); //MessageBox.Show("Removido da ListaItemVendidoNovo"); break; } } CarregaListaItemVendido(); } else { MessageBox.Show("Não foi possível realizar a operação.\nA QUANTIDADE deve ser maior que 0 (zero)!", "Fracasso", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { MessageBox.Show("Não foi possível realizar a operação.\nNão há nenhum PRODUTO selecionado!", "Fracasso", MessageBoxButtons.OK, MessageBoxIcon.Error); } }