private Library.Cartao[] ReturnCartao(DataGridView dataGrid, long idVendaAtual) { try { int cartaoCount = dataGrid.Rows.Count; Library.Cartao[] cartaoArray = new Library.Cartao[cartaoCount]; for (int i = 0; i < cartaoCount; i++) { cartaoArray[i] = new Library.Cartao(); cartaoArray[i].Venda = Library.VendaBD.FindById(idVendaAtual); cartaoArray[i].Data = DateTime.Parse(dataGrid.Rows[i].Cells[1].Value.ToString()); cartaoArray[i].Tipo = "Crédito"; cartaoArray[i].Valor = (decimal)dataGrid.Rows[i].Cells[0].Value; } return(cartaoArray); } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex); } return(null); }
static public Library.Cartao FindCartaoById(long idCartao) { SqlConnection conexao = null; SqlDataAdapter dap = null; DataSet ds = null; Library.Cartao cartao = null; try { conexao = new SqlConnection(global::Connection.Connection.String()); dap = new SqlDataAdapter("SELECT * FROM Cartao WHERE id=" + idCartao + "", conexao); ds = new DataSet(); dap.Fill(ds, "Cartao"); if (ds.Tables["Cartao"].Rows.Count == 1) { cartao = new Cartao(); cartao.Id = (long)ds.Tables["Cartao"].Rows[0]["id"]; cartao.Data = (DateTime)ds.Tables["Cartao"].Rows[0]["data"]; cartao.Valor = (decimal)ds.Tables["Cartao"].Rows[0]["valor"]; cartao.Tipo = ds.Tables["Cartao"].Rows[0]["tipo"].ToString(); cartao.Parcelas = (int)ds.Tables["Cartao"].Rows[0]["parcelas"]; if (!string.IsNullOrEmpty(ds.Tables["Cartao"].Rows[0]["idVenda"].ToString())) { cartao.Venda = Library.VendaBD.FindVendaById((long)ds.Tables["Cartao"].Rows[0]["idVenda"]); } else { cartao.Venda = null; } } return(cartao); } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex);; } finally { conexao.Close(); dap.Dispose(); ds.Dispose(); } return(null); }
static public void Save(Library.Cartao cartao) { SqlConnection conexao = null; try { conexao = new SqlConnection(global::Connection.Connection.String()); SqlCommand comando = conexao.CreateCommand(); comando.CommandText = "INSERT INTO Cartao (data, valor, tipo, parcelas, idVenda) VALUES (@data, @valor, @tipo, @parcelas, @idVenda)" + "SELECT CAST(scope_identity() AS bigint)"; comando.Parameters.AddWithValue("@data", cartao.Data); comando.Parameters.AddWithValue("@valor", cartao.Valor); comando.Parameters.AddWithValue("@tipo", cartao.Tipo); comando.Parameters.AddWithValue("@parcelas", cartao.Parcelas); if (cartao.Venda != null) { comando.Parameters.AddWithValue("@idVenda", cartao.Venda.Id); } else { comando.Parameters.AddWithValue("@idVenda", DBNull.Value); } conexao.Open(); //comando.ExecuteNonQuery(); cartao.Id = (long)comando.ExecuteScalar(); } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex);; } finally { conexao.Close(); } }
private void transacoesDGV_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { try { DataGridViewRow rowSelected = transacoesDGV.SelectedRows[0]; Library.Cartao cartao = Library.CartaoBD.FindCartaoById((long)rowSelected.Cells[0].Value); if (cartao != null) { cq = new Forms.Cartao.CartaoDetail(); cq.Cartao = cartao; cq.ShowDialog(this); } } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex); } }
static public void Update(Library.Cartao cartao) { SqlConnection conexao = null; try { conexao = new SqlConnection(global::Connection.Connection.String()); SqlCommand comando = conexao.CreateCommand(); comando.CommandText = "UPDATE Cartao SET data = @data, valor = @valor, tipo = @tipo, parcelas = @parcelas, idVenda = @idVenda WHERE (id= " + cartao.Id + ")"; comando.Parameters.AddWithValue("@data", cartao.Data); comando.Parameters.AddWithValue("@valor", cartao.Valor); comando.Parameters.AddWithValue("@tipo", cartao.Tipo); comando.Parameters.AddWithValue("@parcelas", cartao.Parcelas); if (cartao.Venda != null) { comando.Parameters.AddWithValue("@idVenda", cartao.Venda.Id); } else { comando.Parameters.AddWithValue("@idVenda", DBNull.Value); } conexao.Open(); comando.ExecuteNonQuery(); } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex);; } finally { conexao.Close(); } }
static public void Delete(Library.Cartao cartao) { SqlConnection conexao = null; try { conexao = new SqlConnection(global::Connection.Connection.String()); SqlCommand comando = conexao.CreateCommand(); comando.CommandText = "DELETE FROM Cartao WHERE id='" + cartao.Id + "'"; conexao.Open(); comando.ExecuteNonQuery(); } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex);; } finally { conexao.Close(); } }
private void salvarButton_Click(object sender, EventArgs e) { this.Cursor = Cursors.WaitCursor; try { if (ValidateForm()) { if (ValidadePrecoVenda()) { //instanciando nova forma de pagamento e definindo seu valor formaPagamento = new Forms.FormaPagamento(); Library.Cliente cliente = (Library.Cliente) this.idClienteCB.SelectedItem; if (cliente.AptoVendaAPrazo == 1) { formaPagamento.aptoAPrazo = true; } else { formaPagamento.aptoAPrazo = false; } formaPagamento.diaPagamento = cliente.VencimentoVendaAPrazo; formaPagamento.ValorTotal = this.valorTotalTextBox.Text.ConvertToDecimal(); formaPagamento.ValorTotalAVista = this.produtos1.ValorProdutosAVista; //mostrando texto na toolbar this.toolbarStatusTSSL.Text = this.fvVendaToolbarAbrindoFormaPagamento; //abrindo forma de pagamento formaPagamento.ShowDialog(this); //se confirnada forma de pagamento if (formaPagamento.DialogResult == DialogResult.OK) { //mostrando texto na toolbar this.toolbarStatusTSSL.Text = this.fvVendaToolbarSalvandoVenda; //salvando venda this.venda = this.ReturnVendaFromForm(); this.venda.Pago = 0; this.venda.FormaPagamento = ""; this.venda.Entrada = formaPagamento.Entrada; Library.VendaBD.Save(this.venda); //mostrando texto na toolbar this.toolbarStatusTSSL.Text = this.fvVendaToolbarSalvandoProdutos; //salvando produtos foreach (Library.VendaProduto a in ReturnVendaProdutoFromForm(long.Parse(this.codigoTB.Text))) { Library.VendaProdutoBD.Save(a); Library.Produto produtoTMP = a.Produto; produtoTMP.Estoque -= (double)a.Quantidade; produtoTMP.Vendido += (double)a.Quantidade; Library.ProdutoBD.Update(produtoTMP); } //instanciando e definindo valores de uma transação Library.CaixaTransacao caixaTransacao = new Library.CaixaTransacao(); caixaTransacao.Venda = this.venda; caixaTransacao.Caixa = Library.CaixaBD.GetCaixaToday(); caixaTransacao.Hora = TimeSpan.Parse(this.venda.Data.GetValueOrDefault().ToShortTimeString()); caixaTransacao.Tipo = "Venda"; caixaTransacao.Valor = (decimal)this.venda.Valor; //coletando a forma de pagamento switch (formaPagamento.Forma) { case "avista": //atualisando venda this.venda.FormaPagamento = "avista"; this.venda.Pago = 1; this.venda.Valor = formaPagamento.ValorTotalTextBox; Library.VendaBD.Update(this.venda); //salvando transacao caixaTransacao.Valor = this.venda.Valor; Library.CaixaTransacaoBD.Save(caixaTransacao); break; case "aprazo": //atualisando venda this.venda.FormaPagamento = "aprazo"; Library.VendaBD.Update(this.venda); //mostrando texto na toolbar this.toolbarStatusTSSL.Text = this.fvVendaToolbarSalvandoParcelas; //salvando parcelas foreach (Library.VendaParcela a in this.ReturnVendaParcela(formaPagamento.ParcelasDGV, long.Parse(this.codigoTB.Text))) { Library.VendaParcelaBD.Save(a); } //salvando transacao if (formaPagamento.Entrada != 0) { caixaTransacao.Valor = formaPagamento.Entrada; Library.CaixaTransacaoBD.Save(caixaTransacao); } break; case "cartao": //atualisando venda this.venda.FormaPagamento = "cartao"; //this.venda.Pago = 1; Library.VendaBD.Update(this.venda); Library.Cartao cartao = new Library.Cartao(); //cartao.Servico = Library.ServicoBD.FindServicoById(idServicoAtual); cartao.Venda = this.venda; cartao.Data = this.venda.Data.GetValueOrDefault(DateTime.MinValue); cartao.Tipo = formaPagamento.CartaoTipo; cartao.Valor = this.venda.Valor - formaPagamento.Entrada; cartao.Parcelas = formaPagamento.Quantidade; Library.CartaoBD.Save(cartao); //salvando transacao if (formaPagamento.Entrada != 0) { caixaTransacao.Valor = formaPagamento.Entrada; Library.CaixaTransacaoBD.Save(caixaTransacao); } break; case "cheque": //atualisando venda this.venda.FormaPagamento = "cheque"; Library.VendaBD.Update(this.venda); //mostrando texto na toolbar this.toolbarStatusTSSL.Text = this.fvVendaToolbarSalvandoParcelas; //salvando parcelas foreach (Library.Cheque a in this.ReturnCheque(formaPagamento.ParcelasDGV, long.Parse(this.codigoTB.Text))) { Library.ChequeBD.Save(a); } //salvando transacao if (formaPagamento.Entrada != 0) { caixaTransacao.Valor = formaPagamento.Entrada; Library.CaixaTransacaoBD.Save(caixaTransacao); } break; } //************************************* // COMISSÂO // if (this.venda.Funcionario.Comissao == 1) { Library.Comissao comissao = new Library.Comissao(); comissao.Funcionario = venda.Funcionario; comissao.Venda = venda; comissao.Tipo = "Venda"; comissao.Pago = 0; decimal valor = 0; decimal comissaoPadrao = venda.Funcionario.ComissaoVenda; if (comissaoPadrao != 0) { valor = (decimal)(venda.Valor * (comissaoPadrao / 100)); comissao.Porcentagem = venda.Funcionario.ComissaoVenda; comissao.Valor = (decimal)valor; Library.ComissaoBD.Save(comissao); } } // // END COMISSÂO //************************************* //vai imprimir? if (MessageBox.Show(this.fvVendaImprimirMsg, this.fvVendaImprimirMsgTitle, MessageBoxButtons.YesNo) == DialogResult.Yes) { this.toolbarStatusTSSL.Text = "Imprimindo"; //print = new Library.Windows.Forms.Print(Library.Classes.Print.PrintVenda(this.venda), "Venda"); //print.ShowDialog(this); //notav = new Reports.nota_venda(); //notav.Venda = this.venda; //notav.ShowDialog(this); Library.Classes.Print.PrintVenda(this.venda); } //limpando produtos this.produtos1.Clear(); //limpando form this.RefreshForm(); //atualizar forms externos this.RefreshChilds(); } } } } catch (Exception ex) { Library.Diagnostics.Logger.Error(ex); } finally { } this.Cursor = Cursors.Default; }