public void FormCreate() { List <TipoPagamentoVO> ListaTipoPagamento; PodeFechar = false; AbreMovimento = true; FechouMovimento = false; Movimento = MovimentoController.VerificaMovimento(); LabelTurno.Text = Movimento.DescricaoTurno; LabelTerminal.Text = Movimento.NomeCaixa; LabelOperador.Text = Movimento.LoginOperador; LabelImpressora.Text = Movimento.IdentificacaoImpressora; TotalizaFechamento(); try { ListaTipoPagamento = TipoPagamentoController.TabelaTipoPagamento(); for (int i = 0; i <= ListaTipoPagamento.Count - 1; i++) { ComboTipoPagamento.Items.Add(ListaTipoPagamento[i].Descricao); } ComboTipoPagamento.SelectedIndex = 0; } catch (Exception eError) { Log.write(eError.ToString()); } }
public void ImprimeAbertura() { Movimento = MovimentoController.VerificaMovimento(Movimento.Id, "A"); FDataModule.ACBrECF.AbreRelatorioGerencial(FCaixa.Configuracao.GerencialX); FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48)); FDataModule.ACBrECF.LinhaRelatorioGerencial(" ABERTURA DE CAIXA "); FDataModule.ACBrECF.PulaLinhas(1); FDataModule.ACBrECF.LinhaRelatorioGerencial("DATA DE ABERTURA : " + Movimento.DataAbertura); FDataModule.ACBrECF.LinhaRelatorioGerencial("HORA DE ABERTURA : " + Movimento.HoraAbertura); FDataModule.ACBrECF.LinhaRelatorioGerencial(Movimento.NomeCaixa + " OPERADOR: " + Movimento.LoginOperador); FDataModule.ACBrECF.LinhaRelatorioGerencial("MOVIMENTO: " + Convert.ToString(Movimento.Id)); FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48)); FDataModule.ACBrECF.PulaLinhas(1); FDataModule.ACBrECF.LinhaRelatorioGerencial("SUPRIMENTO...: " + Convert.ToDecimal(editValorSuprimento.Text).ToString("0.00")); FDataModule.ACBrECF.PulaLinhas(3); FDataModule.ACBrECF.LinhaRelatorioGerencial(" ________________________________________ "); FDataModule.ACBrECF.LinhaRelatorioGerencial(" VISTO DO CAIXA "); FDataModule.ACBrECF.PulaLinhas(3); FDataModule.ACBrECF.LinhaRelatorioGerencial(" ________________________________________ "); FDataModule.ACBrECF.LinhaRelatorioGerencial(" VISTO DO SUPERVISOR "); FDataModule.ACBrECF.FechaRelatorio(); UPAF.GravaR06("RG"); }
private void grdLancamento_CellClick(object sender, DataGridViewCellEventArgs e) { if (grdLancamento.RowCount > 0) { MovimentoVO objlinha = (MovimentoVO)grdLancamento.CurrentRow.DataBoundItem; //cria uma variavel do tipo tb_movimento para subir as infp tb_movimento objMovEditar = objlinha.objMov; //subir as info txtCod.Text = objMovEditar.id_movimento.ToString(); txtbObservacao.Text = objMovEditar.ob_movimento; txtValor.Text = objMovEditar.valor_movimento.ToString(); cbCategoria.SelectedValue = objMovEditar.id_categoria; cbEmpresa.SelectedValue = objMovEditar.id_empresa; cbConta.SelectedValue = objMovEditar.id_conta; cbTipoLanc.SelectedIndex = objMovEditar.tipo_movimento; dtpDataLancameto.Value = objMovEditar.data_movimento; btnSalvar.Enabled = false; btnExcluir.Visible = true; CamposTravar(false); } }
public MovimentoVO IniciaMovimento(MovimentoVO pMovimento) { ConsultaSQL = "insert into ECF_MOVIMENTO (" + "ID_ECF_EMPRESA," + "ID_ECF_TURNO," + "ID_ECF_IMPRESSORA," + "ID_ECF_OPERADOR," + "ID_ECF_CAIXA," + "ID_GERENTE_SUPERVISOR," + "DATA_ABERTURA," + "HORA_ABERTURA," + "TOTAL_SUPRIMENTO," + "STATUS_MOVIMENTO," + "SINCRONIZADO) values (" + "?pEmpresa," + "?pTurno," + "?pImpressora," + "?pOperador," + "?pCaixa," + "?pGerenteSupervisor," + "?pDataAbertura," + "?pHoraAbertura," + "?pTotalSuprimento," + "?pStatus," + "?pSincronizado)"; try { comando = new MySqlCommand(ConsultaSQL, conexao); comando.Parameters.AddWithValue("?pTurno", pMovimento.IdTurno); comando.Parameters.AddWithValue("?pImpressora", pMovimento.IdImpressora); comando.Parameters.AddWithValue("?pOperador", pMovimento.IdOperador); comando.Parameters.AddWithValue("?pCaixa", pMovimento.IdCaixa); comando.Parameters.AddWithValue("?pEmpresa", pMovimento.IdEmpresa); comando.Parameters.AddWithValue("?pGerenteSupervisor", pMovimento.IdGerenteSupervisor); comando.Parameters.AddWithValue("?pDataAbertura", pMovimento.DataAbertura); comando.Parameters.AddWithValue("?pHoraAbertura", pMovimento.HoraAbertura); comando.Parameters.AddWithValue("?pTotalSuprimento", pMovimento.TotalSuprimento); comando.Parameters.AddWithValue("?pStatus", pMovimento.Status); comando.Parameters.AddWithValue("?pSincronizado", pMovimento.Sincronizado); comando.ExecuteNonQuery(); return(VerificaMovimento()); } catch (Exception eError) { Log.write(eError.ToString()); return(null); } finally { if (leitor != null) { leitor.Close(); } } }
private void Confirma() { try { OperadorVO Operador = new OperadorVO(); OperadorVO Gerente = new OperadorVO(); // verifica se senha do operador esta correta Operador = OperadorController.ConsultaUsuario(Movimento.LoginOperador, editSenhaOperador.Text); if (Operador != null) { // verifica se senha do gerente esta correta Gerente = OperadorController.ConsultaUsuario(editLoginGerente.Text, editSenhaGerente.Text); if (Gerente != null) { if ((Gerente.Nivel == "G") || (Gerente.Nivel == "S")) { // encerra movimento Movimento.DataFechamento = FDataModule.ACBrECF.DataHora; Movimento.HoraFechamento = FDataModule.ACBrECF.DataHora.ToString("hh:mm:ss"); Movimento.Status = "F"; MovimentoController.EncerraMovimento(Movimento); Movimento = MovimentoController.VerificaMovimento(Movimento.Id); ImprimeFechamento(); FCaixa.Movimento = Movimento; MessageBox.Show("Movimento encerrado com sucesso.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); FechouMovimento = true; PodeFechar = true; botaoConfirma.DialogResult = DialogResult.OK; this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("Gerente ou Supervisor: nivel de acesso incorreto.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); editLoginGerente.Focus(); } } else { MessageBox.Show("Gerente ou Supervisor: dados incorretos.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); editLoginGerente.Focus(); } } else { MessageBox.Show("Operador: dados incorretos.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); editSenhaOperador.Focus(); } } catch (Exception eError) { Log.write(eError.ToString()); } }
public FMovimentoAberto() { // Required for Windows Form Designer support InitializeComponent(); this.editSenhaOperador.Focus(); this.PodeFechar = false; Movimento = new MovimentoController().VerificaMovimento(); LabelTurno.Text = Movimento.DescricaoTurno; LabelTerminal.Text = Movimento.NomeCaixa; LabelOperador.Text = Movimento.LoginOperador; LabelImpressora.Text = Movimento.IdentificacaoImpressora; LabelData.Text = Movimento.DataAbertura.ToString(); LabelHora.Text = Movimento.HoraAbertura; }
public void RetornoOperador(MovimentoVO pMovimento) { ConsultaSQL = "update ECF_MOVIMENTO set STATUS_MOVIMENTO=" + Biblioteca.QuotedStr("A") + " where ID = ?pId"; try { comando = new MySqlCommand(ConsultaSQL, conexao); comando.Parameters.AddWithValue("?pId", pMovimento.Id); comando.ExecuteNonQuery(); } catch (Exception eError) { Log.write(eError.ToString()); } }
public ActionResult Gravar(int?cod, string categoria_movimento, string data_movimento, string valor_movimento, string tipo_movimento, string empresa_movimento, string obs_movimento) { if (tipo_movimento == "" || categoria_movimento == "" || empresa_movimento == "" || data_movimento == "") { ViewBag.ret = 0; } else { MovimentoDAO dao = new MovimentoDAO(); MovimentoVO vo = new MovimentoVO(); vo.TipoMovimento = Convert.ToInt32(tipo_movimento); vo.DataMovimento = Convert.ToDateTime(data_movimento); vo.ValorMovimento = Convert.ToDecimal(valor_movimento); vo.ObsMovimento = obs_movimento; vo.CodigoEmpresa = Convert.ToInt32(empresa_movimento); vo.CodigoCategoria = Convert.ToInt32(categoria_movimento); vo.CodigoMovimento = (cod == null ? 0 : Convert.ToInt32(cod)); vo.CodigoUsuario = 1; if (cod == null) { ViewBag.ret = dao.RealizarMovimento(vo); } else { ViewBag.ret = dao.AlterarMovimento(vo); ViewBag.Tipo = tipo_movimento; ViewBag.Data = data_movimento; ViewBag.Valor = valor_movimento; ViewBag.Empresa = empresa_movimento; ViewBag.Obs = obs_movimento; ViewBag.Categoria = categoria_movimento; ViewBag.Codigo = cod; } } CarregarCombos(); MontarTitulo(cod == null ? 1 : 2); return(View(cod == null ? "RealizarMovimento" : "AlterarMovimento")); }
public List <MovimentoVO> RealizarConsulta(int cod_usuario, string tipo_movimento, string cod_categoria, string data_entrada, string data_saida) { Banco objBanco = new Banco(); List <MovimentoVO> lstRetorno = new List <MovimentoVO>(); List <tb_movimento> lstConsulta = new List <tb_movimento>(); DateTime dtInicial = Convert.ToDateTime(data_entrada); DateTime dtFinal = Convert.ToDateTime(data_saida); Int16 tipo; int categoria; if (tipo_movimento == string.Empty) { if (cod_categoria == string.Empty) { lstConsulta = objBanco.tb_movimento.Include("tb_conta").Include("tb_empresa") .Include("tb_categoria").Where(p => p.cod_usuario == cod_usuario && p.data_movimento >= dtInicial && p.data_movimento <= dtFinal).ToList(); } else { categoria = Convert.ToInt32(cod_categoria); lstConsulta = objBanco.tb_movimento.Include("tb_conta").Include("tb_empresa") .Include("tb_categoria").Where(p => p.cod_usuario == cod_usuario && p.data_movimento >= dtInicial && p.data_movimento <= dtFinal && p.cod_categoria == categoria).ToList(); } } else { tipo = Convert.ToInt16(tipo_movimento); if (cod_categoria == string.Empty) { lstConsulta = objBanco.tb_movimento.Include("tb_conta").Include("tb_empresa") .Include("tb_categoria").Where(p => p.cod_usuario == cod_usuario && p.data_movimento >= dtInicial && p.data_movimento <= dtFinal && p.tipo_movimento == tipo).ToList(); } else { categoria = Convert.ToInt32(cod_categoria); lstConsulta = objBanco.tb_movimento.Include("tb_conta").Include("tb_empresa") .Include("tb_categoria").Where(p => p.cod_usuario == cod_usuario && p.data_movimento >= dtInicial && p.data_movimento <= dtFinal && p.tipo_movimento == tipo && p.cod_categoria == categoria).ToList(); } } for (int i = 0; i < lstConsulta.Count; i++) { MovimentoVO objMov = new MovimentoVO(); objMov.DataMovimento = lstConsulta[i].data_movimento.ToShortDateString(); objMov.NomeCategoria = lstConsulta[i].tb_categoria.nome_categoria; objMov.NomeEmpresa = lstConsulta[i].tb_empresa.nome_empresa; objMov.NumeroConta = lstConsulta[i].tb_conta.numero_conta; objMov.ObsMovimento = lstConsulta[i].obs_movimento; objMov.ValorMovimento = lstConsulta[i].valor_movimento.ToString(); if (lstConsulta[i].tipo_movimento == 1) { objMov.TipoMovimento = "Entrada"; } else { objMov.TipoMovimento = "Saída"; } lstRetorno.Add(objMov); } return(lstRetorno); }
//TODO: Realize diversos testes com o método abaixo e corrija os erros encontrados public static void ReducaoZ() { MovimentoController MovimentoController = new MovimentoController(); ImpressoraController ImpressoraController = new ImpressoraController(); PreVendaController PreVendaController = new PreVendaController(); MovimentoVO Movimento = new MovimentoVO(); ImpressoraVO Impressora = new ImpressoraVO(); string Estado, DataMovimento; if (ImpressoraOK(1)) { DateTime ADate = FDataModule.ACBrECF.DataMovimento; Estado = FDataModule.ACBrECF.Estado.ToString(); if (Estado != "RequerZ") { try { Movimento = MovimentoController.VerificaMovimento(); if (Movimento != null) { Impressora = ImpressoraController.PegaImpressora(Movimento.IdImpressora); FEncerraMovimento FEncerraMovimento = new FEncerraMovimento(); FEncerraMovimento.AbreMovimento = false; if (FEncerraMovimento.ShowDialog() != DialogResult.OK) { MessageBox.Show("É Necessário Encerrar o Movimento Para Emitir a Redução Z!", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } else { PreVendaController.CancelaPreVendasPendentes(ADate); } FCaixa.StatusCaixa = 3; } } catch (Exception eError) { Log.write(eError.ToString()); } } FCaixa.LabelMensagens.Text = "Redução Z - Aguarde!"; FDataModule.ACBrECF.Desativar(); FDataModule.ACBrECF.Ativar(); UPAF.GravaR02R03(); FDataModule.ACBrECF.ReducaoZ(); Estado = FDataModule.ACBrECF.Estado.ToString(); if (Estado != "Bloqueada") { try { PreVendaController.CancelaPreVendasPendentes(ADate); Movimento = MovimentoController.VerificaMovimento(); if (Movimento != null) { Impressora = ImpressoraController.PegaImpressora(Movimento.IdImpressora); Movimento.DataFechamento = FDataModule.ACBrECF.DataHora; Movimento.HoraFechamento = FDataModule.ACBrECF.DataHora.ToString("hh:mm:ss"); Movimento.Status = "F"; MovimentoController.EncerraMovimento(Movimento); FEncerraMovimento FEncerraMovimento = new FEncerraMovimento(); FEncerraMovimento.Movimento = MovimentoController.VerificaMovimento(Movimento.Id); FEncerraMovimento.ImprimeFechamento(); FIniciaMovimento FIniciaMovimento = new FIniciaMovimento(); FIniciaMovimento.ShowDialog(); } } catch (Exception eError) { Log.write(eError.ToString()); } } try { DataMovimento = ADate.ToString("dd/MM/yyyy"); UPAF.GeraMovimentoECF(DataMovimento, DataMovimento, DataMovimento, Impressora); } catch (Exception eError) { Log.write(eError.ToString()); } if (!FDataModule.ACBrECF.MFD) { PrimeiraReducaoDoMes(); } FCaixa.LabelMensagens.Text = "Movimento do ECF Encerrado."; } }
private void Confirma() { try { // verifica se senha e o nivel do operador estáo corretos OperadorVO Operador = OperadorController.ConsultaUsuario(editLoginOperador.Text, editSenhaOperador.Text); if (Operador != null) { // verifica se senha do gerente esta correta OperadorVO Gerente = OperadorController.ConsultaUsuario(editLoginGerente.Text, editSenhaGerente.Text); if (Gerente != null) { // verifica nivel de acesso do gerente/supervisor if ((Gerente.Nivel == "G") || (Gerente.Nivel == "S")) { if (UECF.ImpressoraOK(2)) { DataRow Registro = DTTurno.Rows[GridTurno.CurrentRow.Index]; // insere movimento Movimento = new MovimentoVO(); Movimento.IdTurno = Convert.ToInt32(Registro["ID"]); Movimento.IdImpressora = FCaixa.Configuracao.IdImpressora; Movimento.IdEmpresa = FCaixa.Configuracao.IdEmpresa; Movimento.IdOperador = Operador.Id; Movimento.IdCaixa = FCaixa.Configuracao.IdCaixa; Movimento.IdGerenteSupervisor = Gerente.Id; Movimento.DataAbertura = FDataModule.ACBrECF.DataHora; Movimento.HoraAbertura = FDataModule.ACBrECF.DataHora.ToString("hh:mm:ss"); Movimento.TotalSuprimento = Convert.ToDecimal(editValorSuprimento.Text); Movimento.Status = "A"; Movimento.Sincronizado = "N"; Movimento = MovimentoController.IniciaMovimento(Movimento); } else { MessageBox.Show("Não foi possivel abrir o movimento!.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); FCaixa.StatusCaixa = 3; this.Close(); } // insere suprimento if (Convert.ToDecimal(editValorSuprimento.Text) != 0) { try { SuprimentoVO Suprimento = new SuprimentoVO(); Suprimento.IdMovimento = Movimento.Id; Suprimento.DataSuprimento = FDataModule.ACBrECF.DataHora; Suprimento.Valor = Convert.ToDecimal(editValorSuprimento.Text); MovimentoController.Suprimento(Suprimento); } catch (Exception eError) { Log.write(eError.ToString()); } } FCaixa.LabelMensagens.Text = "CAIXA ABERTO"; if (Movimento != null) { FCaixa.LabelCaixa.Text = "Terminal: " + Movimento.NomeCaixa; FCaixa.LabelOperador.Text = "Operador: " + Movimento.LoginOperador; MessageBox.Show("Movimento aberto com sucesso.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); FCaixa.Movimento = Movimento; ImprimeAbertura(); } Application.DoEvents(); this.Close(); } else { MessageBox.Show("Gerente ou Supervisor: nivel de acesso incorreto.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); editLoginGerente.Focus(); } } else { MessageBox.Show("Gerente ou Supervisor: dados incorretos.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); editLoginGerente.Focus(); } } else { MessageBox.Show("Operador: dados incorretos.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); editSenhaOperador.Focus(); } } catch (Exception eError) { Log.write(eError.ToString()); } }
public MovimentoVO VerificaMovimento(int pId, string pStatusMovimento) { ConsultaSQL = "select " + " M.ID as MID, " + " M.ID_GERENTE_SUPERVISOR, " + " M.DATA_ABERTURA, " + " M.HORA_ABERTURA, " + " M.DATA_FECHAMENTO, " + " M.HORA_FECHAMENTO, " + " M.TOTAL_SUPRIMENTO, " + " M.TOTAL_SANGRIA, " + " M.TOTAL_NAO_FISCAL, " + " M.TOTAL_VENDA, " + " M.TOTAL_DESCONTO, " + " M.TOTAL_ACRESCIMO, " + " M.TOTAL_FINAL, " + " M.TOTAL_RECEBIDO, " + " M.TOTAL_TROCO, " + " M.TOTAL_CANCELADO, " + " M.STATUS_MOVIMENTO, " + " T.ID as TID, " + " T.DESCRICAO, " + " C.ID as CID, " + " C.NOME, " + " O.ID as OID, " + " O.LOGIN, " + " I.ID as IID, " + " I.IDENTIFICACAO " + "from " + " ECF_MOVIMENTO M, ECF_TURNO T, ECF_CAIXA C, ECF_OPERADOR O, ECF_IMPRESSORA I " + "where " + " M.ID = " + Convert.ToString(pId) + " AND " + " M.ID_ECF_TURNO = T.ID AND " + " M.ID_ECF_IMPRESSORA = I.ID AND " + " M.ID_ECF_OPERADOR = O.ID AND " + " M.ID_ECF_CAIXA = C.ID AND" + " (STATUS_MOVIMENTO=" + Biblioteca.QuotedStr(pStatusMovimento) + ")"; try { comando = new MySqlCommand(ConsultaSQL, conexao); leitor = comando.ExecuteReader(); if (leitor.Read()) { MovimentoVO Movimento = new MovimentoVO(); Movimento.Id = Convert.ToInt32(leitor["MID"]); Movimento.IdGerenteSupervisor = Convert.ToInt32(leitor["ID_GERENTE_SUPERVISOR"]); Movimento.DataAbertura = (DateTime)(leitor["DATA_ABERTURA"]); Movimento.HoraAbertura = Convert.ToString(leitor["HORA_ABERTURA"]); Movimento.DataFechamento = leitor["DATA_FECHAMENTO"] as DateTime?; Movimento.HoraFechamento = Convert.ToString(leitor["HORA_FECHAMENTO"]); Movimento.TotalSuprimento = leitor["TOTAL_SUPRIMENTO"] as decimal?; Movimento.TotalSangria = leitor["TOTAL_SANGRIA"] as decimal?; Movimento.TotalNaoFiscal = leitor["TOTAL_NAO_FISCAL"] as decimal?; Movimento.TotalVenda = leitor["TOTAL_VENDA"] as decimal?; Movimento.TotalDesconto = leitor["TOTAL_DESCONTO"] as decimal?; Movimento.TotalAcrescimo = leitor["TOTAL_ACRESCIMO"] as decimal?; Movimento.TotalFinal = leitor["TOTAL_FINAL"] as decimal?; Movimento.TotalRecebido = leitor["TOTAL_RECEBIDO"] as decimal?; Movimento.TotalTroco = leitor["TOTAL_TROCO"] as decimal?; Movimento.TotalCancelado = leitor["TOTAL_CANCELADO"] as decimal?; Movimento.Status = Convert.ToString(leitor["STATUS_MOVIMENTO"]); Movimento.IdTurno = Convert.ToInt32(leitor["TID"]); Movimento.DescricaoTurno = Convert.ToString(leitor["DESCRICAO"]); Movimento.IdCaixa = Convert.ToInt32(leitor["CID"]); Movimento.NomeCaixa = Convert.ToString(leitor["NOME"]); Movimento.IdOperador = Convert.ToInt32(leitor["OID"]); Movimento.LoginOperador = Convert.ToString(leitor["LOGIN"]); Movimento.IdImpressora = Convert.ToInt32(leitor["IID"]); Movimento.IdentificacaoImpressora = Convert.ToString(leitor["IDENTIFICACAO"]); return(Movimento); } else { return(null); } } catch (Exception eError) { Log.write(eError.ToString()); return(null); } finally { if (leitor != null) { leitor.Close(); } } }
public void EncerraMovimento(MovimentoVO pMovimento) { ConsultaSQL = "update ECF_MOVIMENTO set " + "DATA_FECHAMENTO = ?pDataFechamento," + "HORA_FECHAMENTO = ?pHoraFechamento," + "TOTAL_SUPRIMENTO = ?pTotalSuprimento," + "TOTAL_SANGRIA = ?pTotalSangria," + "TOTAL_NAO_FISCAL = ?pTotalNaoFiscal," + "TOTAL_VENDA = ?pTotalVenda," + "TOTAL_DESCONTO = ?pTotalDesconto," + "TOTAL_ACRESCIMO = ?pTotalAcrescimo," + "TOTAL_FINAL = ?pTotalFinal," + "TOTAL_RECEBIDO = ?pTotalRecebido," + "TOTAL_TROCO = ?pTotalTroco," + "TOTAL_CANCELADO = ?pTotalCancelado," + "STATUS_MOVIMENTO = ?pStatus " + " where ID = ?pId"; try { // total de suprimentos comando = new MySqlCommand("select sum(VALOR) as TOTAL from ECF_SUPRIMENTO where ID_ECF_MOVIMENTO=" + Convert.ToString(pMovimento.Id), conexao); leitor = comando.ExecuteReader(); leitor.Read(); pMovimento.TotalSuprimento = leitor["TOTAL"] as decimal?; leitor.Close(); // total de sangrias comando = new MySqlCommand("select sum(VALOR) as TOTAL from ECF_SANGRIA where ID_ECF_MOVIMENTO=" + Convert.ToString(pMovimento.Id), conexao); leitor = comando.ExecuteReader(); leitor.Read(); pMovimento.TotalSangria = leitor["TOTAL"] as decimal?; leitor.Close(); // total de recebimentos nao fiscais comando = new MySqlCommand("select sum(VALOR) as TOTAL from ECF_RECEBIMENTO_NAO_FISCAL where ID_ECF_MOVIMENTO=" + Convert.ToString(pMovimento.Id), conexao); leitor = comando.ExecuteReader(); leitor.Read(); pMovimento.TotalNaoFiscal = leitor["TOTAL"] as decimal?; leitor.Close(); // totais das vendas string consulta = "select sum(VALOR_VENDA) as VALOR_VENDA, sum(DESCONTO) as DESCONTO, " + " sum(ACRESCIMO) as ACRESCIMO, sum(VALOR_FINAL) as VALOR_FINAL, " + " sum(VALOR_RECEBIDO) as VALOR_RECEBIDO, sum(TROCO) as TROCO, " + " sum(VALOR_CANCELADO) as VALOR_CANCELADO " + "from ECF_VENDA_CABECALHO " + "where ID_ECF_MOVIMENTO=" + Convert.ToString(pMovimento.Id); comando = new MySqlCommand(consulta, conexao); leitor = comando.ExecuteReader(); leitor.Read(); pMovimento.TotalVenda = leitor["VALOR_VENDA"] as decimal?; pMovimento.TotalDesconto = leitor["DESCONTO"] as decimal?; pMovimento.TotalAcrescimo = leitor["ACRESCIMO"] as decimal?; pMovimento.TotalFinal = (leitor["VALOR_FINAL"] as decimal?) + pMovimento.TotalSuprimento - pMovimento.TotalSangria; pMovimento.TotalRecebido = leitor["VALOR_RECEBIDO"] as decimal?; pMovimento.TotalTroco = leitor["TROCO"] as decimal?; pMovimento.TotalCancelado = leitor["VALOR_CANCELADO"] as decimal?; leitor.Close(); comando = new MySqlCommand(ConsultaSQL, conexao); comando.Parameters.AddWithValue("?pId", pMovimento.Id); comando.Parameters.AddWithValue("?pDataFechamento", pMovimento.DataFechamento); comando.Parameters.AddWithValue("?pHoraFechamento", pMovimento.HoraFechamento); comando.Parameters.AddWithValue("?pTotalSuprimento", pMovimento.TotalSuprimento); comando.Parameters.AddWithValue("?pTotalSangria", pMovimento.TotalSangria); comando.Parameters.AddWithValue("?pTotalNaoFiscal", pMovimento.TotalNaoFiscal); comando.Parameters.AddWithValue("?pTotalVenda", pMovimento.TotalVenda); comando.Parameters.AddWithValue("?pTotalDesconto", pMovimento.TotalDesconto); comando.Parameters.AddWithValue("?pTotalAcrescimo", pMovimento.TotalAcrescimo); comando.Parameters.AddWithValue("?pTotalFinal", pMovimento.TotalFinal); comando.Parameters.AddWithValue("?pTotalRecebido", pMovimento.TotalRecebido); comando.Parameters.AddWithValue("?pTotalCancelado", pMovimento.TotalCancelado); comando.Parameters.AddWithValue("?pTotalTroco", pMovimento.TotalTroco); comando.Parameters.AddWithValue("?pStatus", pMovimento.Status); comando.ExecuteNonQuery(); } catch (Exception eError) { Log.write(eError.ToString()); } finally { if (leitor != null) { leitor.Close(); } } }