private List <SqlParametros> PreencheCondicoesDevolucao(SaldoClientes saldoClientes) { List <SqlParametros> lstParametrosCondicionais = new List <SqlParametros>(); lstParametrosCondicionais.Add(new SqlParametros("Devolucao", saldoClientes.Devolucao)); return(lstParametrosCondicionais); }
private List <SqlParametros> PreencheCondicoesPedido(SaldoClientes saldoClientes) { List <SqlParametros> lstParametrosCondicionais = new List <SqlParametros>(); lstParametrosCondicionais.Add(new SqlParametros("VendasId", saldoClientes.VendasId)); return(lstParametrosCondicionais); }
private List <SqlParametros> PreencheCondicoesReceitasDespesas(SaldoClientes saldoClientes) { List <SqlParametros> lstParametrosCondicionais = new List <SqlParametros>(); lstParametrosCondicionais.Add(new SqlParametros("ReceitasDespesasId", saldoClientes.ReceitasDespesasId)); return(lstParametrosCondicionais); }
private List <SqlParametros> PreencheParametrosAtualizarSituacao(SaldoClientes saldoClientes) { List <SqlParametros> lstParametros = new List <SqlParametros>(); lstParametros.Add(new SqlParametros("Situacao", saldoClientes.Situacao)); return(lstParametros); }
//Situação do saldo do cliente public void DescontarSaldoCliente(SaldoClientes requisicao) { SaldoClientes utilizado = PesquisarSaldoClienteUtilizado(Convert.ToInt32(requisicao.ClientesId)); decimal saldoADescontar = utilizado.Valor + utilizado.SaldoUtilizado; decimal valorADescontar = requisicao.Valor * -1; if (valorADescontar < saldoADescontar) { //DESCONTAR O SALDO requisicao.Devolucao = utilizado.Devolucao; requisicao.Referencia = utilizado.SaldoClientesId; Inserir(requisicao); } else if (valorADescontar == saldoADescontar) { //DESCONTAR O SALDO requisicao.Devolucao = utilizado.Devolucao; requisicao.Referencia = utilizado.SaldoClientesId; Inserir(requisicao); //ATUALIZAR O STATUS DO SALDO PRINCIPAL SaldoClientes atualizaStatus = new SaldoClientes(); atualizaStatus.Situacao = "PG"; atualizaStatus.SaldoClientesId = utilizado.SaldoClientesId; AlterarSituacaoPorID(atualizaStatus); } else if (valorADescontar > saldoADescontar) { //DESCONTAR O SALDO requisicao.Valor = (saldoADescontar * -1); requisicao.Devolucao = utilizado.Devolucao; requisicao.Referencia = utilizado.SaldoClientesId; Inserir(requisicao); //ATUALIZAR O STATUS DO SALDO PRINCIPAL SaldoClientes atualizaStatus = new SaldoClientes(); atualizaStatus.Situacao = "PG"; atualizaStatus.SaldoClientesId = utilizado.SaldoClientesId; AlterarSituacaoPorID(atualizaStatus); //CHAMAR O MÉTODO RECURSIVO requisicao.Valor = (saldoADescontar - valorADescontar); DescontarSaldoCliente(requisicao); } }
private List <SqlParametros> PreencheParametros(SaldoClientes saldoClientes) { List <SqlParametros> lstParametros = new List <SqlParametros>(); lstParametros.Add(new SqlParametros("ClientesId", saldoClientes.ClientesId)); lstParametros.Add(new SqlParametros("Operacao", saldoClientes.Operacao)); lstParametros.Add(new SqlParametros("Valor", saldoClientes.Valor.ToString().Replace(".", "").Replace(",", "."))); if (saldoClientes.FuncionarioId > 0) { lstParametros.Add(new SqlParametros("FuncionarioId", saldoClientes.FuncionarioId)); } lstParametros.Add(new SqlParametros("Observacao", saldoClientes.Observacao)); lstParametros.Add(new SqlParametros("DataHora", saldoClientes.DataHora.ToString("yyyy-MM-dd"))); if (saldoClientes.VendasId > 0) { lstParametros.Add(new SqlParametros("VendasId", saldoClientes.VendasId)); } if (saldoClientes.CaixaId > 0) { lstParametros.Add(new SqlParametros("CaixaId", saldoClientes.CaixaId)); } if (saldoClientes.ReceitasDespesasId > 0) { lstParametros.Add(new SqlParametros("ReceitasDespesasId", saldoClientes.ReceitasDespesasId)); } if (saldoClientes.Devolucao > 0) { lstParametros.Add(new SqlParametros("Devolucao", saldoClientes.Devolucao)); } lstParametros.Add(new SqlParametros("Situacao", !string.IsNullOrEmpty(saldoClientes.Situacao) ? saldoClientes.Situacao : "AB")); if (saldoClientes.Referencia > 0) { lstParametros.Add(new SqlParametros("Referencia", saldoClientes.Referencia)); } return(lstParametros); }
public SaldoClientes PesquisarSaldoClienteUtilizado(int clientesId) { string qry = string.Format(@"SELECT TOP 1 S.SaldoClientesId,S.ClientesId,S.Operacao,S.Valor,S.Situacao,S.DataHora,ISNULL(S.VendasId,0) AS VendasId,ISNULL(S.CaixaId,0) AS CaixaId,ISNULL(S.ReceitasDespesasId,0) AS ReceitasDespesasId,ISNULL(S.Devolucao,0) AS Devolucao,ISNULL(S.Referencia,0) AS Referencia,ISNULL(( SELECT SUM (SC.Valor) FROM SaldoClientes SC WHERE S.Referencia =S.SaldoClientesId AND S.Operacao = 2),0) AS SaldoUtilizado FROM SaldoClientes S WHERE (S.Situacao ='AB' OR S.Situacao IS NULL) AND S.Operacao = 1 AND S.ClientesId = {0} ORDER BY S.DataHora ASC ", clientesId); DataTable ds = conexao.Pesquisar(qry); SaldoClientes SaldoClientes = new SaldoClientes(); SaldoClientes.SaldoClientesId = Convert.ToInt32(ds.Rows[0]["SaldoClientesId"].ToString()); SaldoClientes.ClientesId = Convert.ToInt32(ds.Rows[0]["ClientesId"].ToString()); SaldoClientes.Operacao = Convert.ToInt32(ds.Rows[0]["Operacao"].ToString()); SaldoClientes.Valor = Convert.ToDecimal(Convert.ToDecimal(ds.Rows[0]["Valor"].ToString())); SaldoClientes.Situacao = ds.Rows[0]["Situacao"].ToString(); SaldoClientes.DataHora = Convert.ToDateTime(ds.Rows[0]["DataHora"].ToString()); SaldoClientes.VendasId = Convert.ToInt32(ds.Rows[0]["VendasId"].ToString()); SaldoClientes.CaixaId = Convert.ToInt32(ds.Rows[0]["CaixaId"].ToString()); SaldoClientes.ReceitasDespesasId = Convert.ToInt32(ds.Rows[0]["ReceitasDespesasId"].ToString()); SaldoClientes.Referencia = Convert.ToInt32(ds.Rows[0]["Referencia"].ToString()); SaldoClientes.Devolucao = Convert.ToInt32(ds.Rows[0]["Devolucao"].ToString()); SaldoClientes.SaldoUtilizado = Convert.ToDecimal(ds.Rows[0]["SaldoUtilizado"].ToString()); return(SaldoClientes); }
private void btnConfirmar_Click(object sender, EventArgs e) { if (clienteId.Equals(0)) { MessageBox.Show("Por favor, informe o cliente!", "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); btnPesquisaCliente.Focus(); return; } if (Convert.ToDecimal(txtValor.Text) <= 0) { MessageBox.Show("Por favor, informe o valor!", "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); txtValor.Focus(); return; } if (txtSenhaFuncionario.Visible) { if (string.IsNullOrEmpty(lblNomeFuncionario.Text)) { MessageBox.Show("Por favor, informe a senha do funcionário!", "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); txtSenhaFuncionario.Focus(); return; } } //Acho que aqui só uma linha serve int ultimaAbertura = caixaNegocios.VerificarSeCaixaEstaAberto(); if (ultimaAbertura.Equals(0)) { MessageBox.Show("Por favor, Efetue a abertura do caixa!", "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } //if (objPermissaoInfo.PermSalv) //{ decimal saldoAtual = saldoClientesNegocios.PesquisarSaldoCliente(clienteId); decimal SaldoAposOperacao = 0; if (cbbOperacao.Text.Equals("Somar")) { SaldoAposOperacao = saldoAtual + Convert.ToDecimal(txtValor.Text); } else { SaldoAposOperacao = saldoAtual - Convert.ToDecimal(txtValor.Text); } if (SaldoAposOperacao < 0) { MessageBox.Show("Não é possivel efetuar a operação, saldo após a operação será negativo!\n\nSaldo Atual: " + saldoAtual.ToString("N2") + "\nValor da operação: " + txtValor.Text + "\nApós operação: " + SaldoAposOperacao.ToString("N2"), "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } else { if (MessageBox.Show("Saldo atual: " + saldoAtual.ToString("N2") + "\n\nValor da operação: " + txtValor.Text + "\n\nApós operação: " + SaldoAposOperacao.ToString("N2") + "\n\n\nConfirma a operação?", "Pergunta do Sistema", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { SaldoClientes saldoClientes = new SaldoClientes(); saldoClientes.ClientesId = clienteId; saldoClientes.FuncionarioId = funcionarioId; if (!string.IsNullOrEmpty(txtObservacao.Text.TrimEnd().TrimStart())) { saldoClientes.Observacao = "Saldo lançado manualmente - " + txtObservacao.Text; } else { saldoClientes.Observacao = "Saldo lançado manualmente"; } saldoClientes.Operacao = cbbOperacao.Text.Equals("Somar") ? 1 : 2; // 1 = Somar 2 = Subtrair saldoClientes.Valor = cbbOperacao.Text.Equals("Somar") ? Convert.ToDecimal(txtValor.Text) : Convert.ToDecimal(txtValor.Text) * (-1); saldoClientes.DataHora = DateTime.Now; saldoClientes.CaixaId = caixaNegocios.VerificarSeCaixaEstaAberto(); // Aqui grava o saldo do cliente if (saldoClientes.Operacao == 1) { saldoClientesNegocios.Inserir(saldoClientes); } else { saldoClientesNegocios.DescontarSaldoCliente(saldoClientes); } // Aqui grava a movimentação de vendas int ultimoLancamentoSaldoID = conexao.RetornarUltimoId("SaldoClientes", "SaldoClientesId"); MovimentacaoVendas movimentacaoVendas = new MovimentacaoVendas(); movimentacaoVendas.MovimentacaoVendasId = ultimoLancamentoSaldoID; movimentacaoVendas.DataHora = DateTime.Now; if (cbbOperacao.Text.Equals("Somar")) { movimentacaoVendas.Tipo = "R"; movimentacaoVendas.Observacao = "Saldo lançado para o cliente " + txtCliente.Text; } else { movimentacaoVendas.Tipo = "D"; movimentacaoVendas.Observacao = "Saldo lançado para o cliente " + txtCliente.Text; } movimentacaoVendas.StatusMovimentacao = "N"; movimentacaoVendas.Valor = Convert.ToDecimal(txtValor.Text); movimentacaoVendas.ReceitasDespesasId = 0; movimentacaoVendas.MovimentacaoVendasId = caixaNegocios.VerificarSeCaixaEstaAberto(); movimentacaoVendasNegocios.InserirNovo(movimentacaoVendas); // Aqui grava a movimentação do caixa int ultimoId = conexao.RetornarUltimoId("MovimentacaoVendas", "MovimentacaoVendasId"); movimentacaoCaixaNegocios.MovimentoCaixa(ultimoId, cbbOperacao.Text.Equals("Somar") ? movimentacaoVendas.Valor : movimentacaoVendas.Valor * -1); MessageBox.Show("Operação efetuada com sucesso!", "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Information); // PABLO - Imprimir comprovante saldo do cliente //if (chkImprimirComprovante.Checked) //ImpressaoComprovante(ultimoLancamentoSaldoID); LimpaCampos(); btnPesquisaCliente.Focus(); } } //} //else //{ // MessageBox.Show("Você não tem permissão para executar esta ação, entre em contato com o administrador!", "Informação do sistema", MessageBoxButtons.OK, MessageBoxIcon.Error); //} }
public Boolean ExcluirSaldoPedido(SaldoClientes saldoClientes) { return(conexao.Excluir(nomeTabela, PreencheCondicoesPedido(saldoClientes))); }
public Boolean AlterarSituacaoPorDevolucaoID(SaldoClientes saldoClientes) { return(conexao.Atualizar(nomeTabela, PreencheParametrosAtualizarSituacao(saldoClientes), PreencheCondicoesDevolucao(saldoClientes))); }
public Boolean Alterar(SaldoClientes saldoClientes) { return(conexao.Atualizar(nomeTabela, PreencheParametros(saldoClientes), PreencheCondicoes(saldoClientes))); }
public Boolean Inserir(SaldoClientes saldoClientes) { return(conexao.Inserir(nomeTabela, PreencheParametros(saldoClientes))); }
public Boolean ExcluirSaldoClientePorReceitaDespesa(SaldoClientes saldoClientes) { return(conexao.Excluir(nomeTabela, PreencheCondicoesReceitasDespesas(saldoClientes))); }