private void btn_cancelar_Click(object sender, EventArgs e) { if (Convert.ToBoolean(dataGridViewEnt.CurrentRow.Cells["Entrada Ativa ?"].Value)) { EntradaCancel EntCancel = new EntradaCancel(); if (Application.OpenForms.OfType <MotivoCancel>().Count() == 0) { MotivoCancel motCancel = new MotivoCancel(); motCancel.ShowDialog(); EntCancel.motivo = motCancel.motivo; EntCancel.id_entrada = Convert.ToInt32(dataGridViewEnt.CurrentRow.Cells[0].Value); EntCancel.data = DateTime.Now.Date; // busca registro de entrada para diminuir no estoque Entrada entrada = EntradaDataAcess.BuscaEntrada(Convert.ToInt32(dataGridViewEnt.CurrentRow.Cells[0].Value)); List <Estoque> estoque = new List <Estoque>(); Estoque est = new Estoque(); est.qtde_C = 0; est.qtde_S = 0; if (entrada.C_ou_S.Equals('S')) { est.qtde_S = entrada.qtde; } if (entrada.C_ou_S.Equals('C')) { est.qtde_C = entrada.qtde; } est.id_produto = entrada.id_produto; estoque.Add(est); //grava na tabela Entrada_Cancel bool a = EntradaCancelDataAcess.Inserir(EntCancel); //atualiza regristro na Entrada bool b = EntradaDataAcess.CancelaEntrada(Convert.ToInt32(dataGridViewEnt.CurrentRow.Cells[0].Value)); //diminui no estoque bool c = EstoqueDataAcess.DiminuiEstoque(estoque); if (a && b && c) { MessageBox.Show("Cancelamento realizado com sucesso ! ", "Concluído", MessageBoxButtons.OK, MessageBoxIcon.Information); preencheGrid(EntradaDataAcess.ConsultaEnt(dataInicial.Date, dataFinal.Date)); } else { MessageBox.Show("Erro ao cancelar a Entrada ! ", "Atenção !", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } else { MessageBox.Show("Essa Entrada já foi Cancelada ! ", "Atenção !", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btn_finalizaVenda_Click(object sender, EventArgs e) { if (dataGridViewVend.RowCount == 0) { MessageBox.Show("Adicione pelo menos um produto para realizar a venda !", "Atenção !", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else if (validaQtde()) { Venda venda = new Venda(); calculaTotal(); venda.valortotal = total; venda.data = DateTime.Now.Date; venda.ativo = true; if (cliente.id != 0) { venda.id_cliente = cliente.id; } //grava na tabela vendas int idVenda = VendaDataAcess.Inserir(venda); if (idVenda != 0) { List <ItensVenda> itens = new List <ItensVenda>(); List <Estoque> estoque = new List <Estoque>(); foreach (DataGridViewRow row in this.dataGridViewVend.Rows) { ItensVenda item = new ItensVenda(); item.id_produto = Convert.ToInt32(row.Cells["Id"].Value); item.valor_venda = Convert.ToDecimal(row.Cells["Preço de Venda"].Value); item.id_venda = idVenda; item.qtde = Convert.ToInt32(row.Cells["Quantidade"].Value); item.C_ou_S = Convert.ToChar(Convert.ToString(row.Cells["\"C\" ou \"S\""].Value).ToUpper()); itens.Add(item); Estoque est = new Estoque(); est.id_produto = Convert.ToInt32(row.Cells["Id"].Value); est.qtde_C = 0; est.qtde_S = 0; if (item.C_ou_S == 'C') { est.qtde_C = item.qtde; } if (item.C_ou_S == 'S') { est.qtde_S = item.qtde; } estoque.Add(est); } //grava itens na tabela itens venda bool a = ItensVendaDataAcess.Inserir(itens); //atualiza a quantidade no estoque (diminui) o estoque. bool b = EstoqueDataAcess.DiminuiEstoque(estoque); if (a && b) //colocar o B { MessageBox.Show("Venda realizada com sucesso ! ", "Concluído", MessageBoxButtons.OK, MessageBoxIcon.Information); tbox_nroVenda.Text = idVenda.ToString(); btn_finalizaVenda.Enabled = false; } else { MessageBox.Show("Problema ao realizar a Venda ! ", "Atenção !", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }