// FIND AND SELECT IN LIST PROVIDED DEFAULT ID //------------------------------------------------------------------------------------------------------------ private void FindSelectDefautID(int?DefaultID) { if (DefaultID != null) { foreach (BetterListViewItem item in lstItens) { if (Convert.ToInt32(item.Text) == DefaultID) { item.Selected = true; propEscolha = GetSelectedItem(); } else { item.Selected = false; } } } else { if (lstItens.Items.Count > 0) { lstItens.Items[0].Selected = true; } } }
// CONTA SALDO RECALCULAR //------------------------------------------------------------------------------------------------------------ public bool ContaSaldoRecalcular(objConta conta) { try { AcessoDados db = new AcessoDados(); db.LimparParametros(); db.AdicionarParametros("@IDConta", conta.IDConta); DataTable dt = db.ExecutarConsulta(CommandType.StoredProcedure, "uspContaSaldoCorrect"); if (dt.Rows.Count == 0) { throw new Exception("Não houve retorno da função de Recalcular o Saldo..."); } decimal saldoAtual = (decimal)dt.Rows[0]["Saldo"]; if (conta.ContaSaldo != saldoAtual) { decimal oldSaldo = conta.ContaSaldo; conta.ContaSaldo = saldoAtual; throw new AppException("Valor do Saldo da Conta foi alterado\n" + $"de: {oldSaldo:c}\n" + $"para: {saldoAtual:c}"); } return(true); } catch (Exception ex) { throw ex; } }
public frmAPagarQuitar(objAPagar pag, Form formOrigem) { InitializeComponent(); _formOrigem = formOrigem; _apagar = pag; propSaida = new objMovimentacao(null); CarregaComboMes(); HandlerKeyDownControl(this); numSaidaAno.KeyDown += control_KeyDown; numSaidaAno.Enter += Control_Enter; numSaidaDia.KeyDown += control_KeyDown; numSaidaDia.Enter += Control_Enter; // get default Conta and Setor ContaSelected = ContaPadrao(); // get SETOR if (SetorPadrao().IDSetor == pag.IDSetor) { SetorSelected = SetorPadrao(); } else { SetorSelected = GetSetor(pag.IDSetor); } if (ContaSelected == null | SetorSelected == null) { return; } DefineValoresIniciais(); }
// OPEN PROCURA FORM //------------------------------------------------------------------------------------------------------------ private void btnSetConta_Click(object sender, EventArgs e) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; Contas.frmContaProcura frm = new Contas.frmContaProcura(this, ContaSelected.IDConta); frm.ShowDialog(); //--- check return if (frm.DialogResult == DialogResult.OK) { entradasList.ForEach(ent => ent.IDConta = (int)frm.propEscolha.IDConta); ContaSelected = frm.propEscolha; txtConta.Text = frm.propEscolha.Conta; lblContaDetalhe.Text = $"Saldo da Conta: {frm.propEscolha.ContaSaldo.ToString("c")} \n" + $"Data de Bloqueio até: {frm.propEscolha.BloqueioData?.ToString() ?? ""}"; } //--- select txtConta.Focus(); txtConta.SelectAll(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao abrir o formulário de procura..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private void DefineConta(objConta conta) { propContaEscolhida = conta; txtConta.Text = propContaEscolhida.Conta; lblContaDetalhe.Text = $"Saldo da Conta: {propContaEscolhida.ContaSaldo:c} \n" + $"Data de Bloqueio até: {propContaEscolhida.BloqueioData?.ToShortDateString() ?? ""}"; }
// UPDATE //------------------------------------------------------------------------------------------------------------ public bool UpdateConta(objConta conta) { try { AcessoDados db = new AcessoDados(); //--- clear Params db.LimparParametros(); //--- define Params db.AdicionarParametros("@IDConta", conta.IDConta); db.AdicionarParametros("@Conta", conta.Conta); db.AdicionarParametros("@ContaSaldo", conta.ContaSaldo); db.AdicionarParametros("@BloqueioData", conta.BloqueioData); db.AdicionarParametros("@Bancaria", conta.Bancaria); db.AdicionarParametros("@OperadoraCartao", conta.OperadoraCartao); db.AdicionarParametros("@IDCongregacao", conta.IDCongregacao); db.AdicionarParametros("@Ativa", conta.Ativa); //--- convert null parameters db.ConvertNullParams(); //--- create query string query = db.CreateUpdateSQL("tblConta", "IDConta"); //--- update db.ExecutarManipulacao(CommandType.Text, query); return(true); } catch (Exception ex) { throw ex; } }
// EDITAR CONTA ESCOLHIDA //------------------------------------------------------------------------------------------------------------ private void btnEditar_Click(object sender, EventArgs e) { //--- check selected item if (dgvListagem.SelectedRows.Count == 0) { AbrirDialog("Favor selecionar um registro para Editar...", "Selecionar Registro", DialogType.OK, DialogIcon.Information); return; } //--- get Selected item objConta item = (objConta)dgvListagem.SelectedRows[0].DataBoundItem; //--- open edit form if (_formOrigem == null) { frmConta frm = new frmConta(item); frm.MdiParent = Application.OpenForms.OfType <frmPrincipal>().FirstOrDefault(); DesativaMenuPrincipal(); Close(); frm.Show(); } else { propEscolha = item; DialogResult = DialogResult.Yes; } }
// VERIFICA CONTA and CONGREGACAO INICIAL //================================================================================================= private objConta VerificaAndGet_ContaAndCongregacao() { objConta conta = new objConta(null); if (!CheckContaPadrao(ref conta)) { MessageBox.Show("Ainda não foi encontrada nenhuma CONTA PADRÃO no sistema...\n\n" + "Favor inserir e escolher uma CONTA padrão no arquivo do sistema", "Conta Padrão", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); // abre o form de config Config.frmConfig frmC = new Config.frmConfig(this); frmC.ShowDialog(); // testa novamente if (!CheckContaPadrao(ref conta)) { MessageBox.Show("Ainda não foi encontrado nenhuma Conta Padrão no sistema!\n" + "A aplicação será fechada...", "Conta Inespecífica", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return(null); } } return(conta); }
// CHECK CONTA PADRAO //------------------------------------------------------------------------------------------------------------ private bool CheckContaPadrao(ref objConta conta) { //--- VERIFICA CONTA string ContaPadrao = ObterDefault("ContaPadrao"); if (string.IsNullOrEmpty(ContaPadrao)) { return(false); } else { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; ContaBLL cBLL = new ContaBLL(); conta = cBLL.GetConta(Convert.ToInt32(ContaPadrao)); return(conta != null && conta.IDConta != null); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Obter Conta Padrao..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); return(false); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } } }
// DEFINE CONTA BY ID //------------------------------------------------------------------------------------------------------------ private void txtConta_Validating(object sender, System.ComponentModel.CancelEventArgs e) { Control control = (Control)sender; if (int.TryParse(control.Text, out int IDConta)) // check is numeric { if (!DefineContaByID(IDConta, control)) { e.Cancel = true; ((TextBox)sender).Text = string.Empty; } } else if (string.IsNullOrEmpty(control.Text)) // se for vazio { if (control.Name == "txtContaSaida" && contaSaida != null) { contaSaida = null; } else if (control.Name == "txtContaEntrada" && contaEntrada != null) { contaEntrada = null; } return; } }
private void btnSaldoInicial_Click(object sender, EventArgs e) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; objConta conta = (objConta)dgvListagem.SelectedRows[0].DataBoundItem; var frm = new frmContaSaldoInicial(conta, this); frm.ShowDialog(); // get result if (frm.DialogResult != DialogResult.OK) { return; } // get new saldo and Data inicial ObterDados(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Inserir o saldo inicial da conta..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// UPDATE SALDO DA CONTA LOCAL //------------------------------------------------------------------------------------------------------------ public static void ContaSaldoLocalUpdate(int IDConta, decimal Valor) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; // execute frmPrincipal principal = Application.OpenForms.OfType <frmPrincipal>().First(); objConta conta = principal.propContaPadrao; if (conta.IDConta == IDConta) { conta.ContaSaldo += Valor; } } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao ALTERAR o saldo da CONTA local..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); throw ex; } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private List <objCongregacao> congregacaoList; // = CongBLL.GetListCongregacao(); #region SUB NEW | PROPERTIES // SUB NEW //------------------------------------------------------------------------------------------------------------ public frmConta(objConta obj) { InitializeComponent(); _conta = obj; bind.DataSource = _conta; BindingCreator(); _conta.PropertyChanged += RegistroAlterado; if (_conta.IDConta == null) { Sit = EnumFlagEstado.NovoRegistro; } else { Sit = EnumFlagEstado.RegistroSalvo; } // get list of congregacao GetCongregacaoList(); AtivoButtonImage(); HandlerKeyDownControl(this); txtConta.Validating += (a, b) => PrimeiraLetraMaiuscula(txtConta); // controle do focus dos checkboxes chkBancaria.GotFocus += chkBox_ControleFocus; chkBancaria.LostFocus += chkBox_ControleFocus; chkOperadoraCartao.GotFocus += chkBox_ControleFocus; chkOperadoraCartao.LostFocus += chkBox_ControleFocus; }
// SUB NEW | CONSTRUCTOR public frmConfigGeral() { InitializeComponent(); LoadConfig(); HandlerKeyDownControl(this); _Conta = Application.OpenForms.OfType <frmPrincipal>().First().propContaPadrao; _Setor = Application.OpenForms.OfType <frmPrincipal>().First().propSetorPadrao; }
private void AtivarDesativar_Conta_Click(object sender, EventArgs e) { //--- verifica se existe alguma cell if (dgvListagem.SelectedRows.Count == 0) { return; } //--- Verifica o item objConta conta = (objConta)dgvListagem.SelectedRows[0].DataBoundItem; //--- check saldo existente if (conta.ContaSaldo > 0) { AbrirDialog("Não é possivel desastivar uma CONTA que possui SALDO...", "Saldo Existente", DialogType.OK, DialogIcon.Exclamation); return; } //---pergunta ao usuário var reponse = AbrirDialog($"Deseja realmente {(conta.Ativa ? "DESATIVAR " : "ATIVAR")} essa Conta?\n" + conta.Conta.ToUpper(), (conta.Ativa ? "DESATIVAR " : "ATIVAR"), DialogType.SIM_NAO, DialogIcon.Question); if (reponse == DialogResult.No) { return; } //--- altera o valor conta.Ativa = !conta.Ativa; //--- Salvar o Registro try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; cBLL.UpdateConta(conta); //--- altera a imagem ObterDados(); FiltrarListagem(sender, e); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Alterar Conta..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private void dgvListagem_RowEnter(object sender, DataGridViewCellEventArgs e) { try { objConta conta = (objConta)dgvListagem.Rows[e.RowIndex].DataBoundItem; btnSaldoInicial.Visible = conta.Ativa == true && conta.ContaSaldo == 0 && conta.BloqueioData == null; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
// INSERIR NOVO REGISTRO //------------------------------------------------------------------------------------------------------------ private void btnNovo_Click(object sender, EventArgs e) { if (Sit != EnumFlagEstado.RegistroSalvo) { return; } _conta = new objConta(null); Sit = EnumFlagEstado.NovoRegistro; AtivoButtonImage(); bind.DataSource = _conta; txtConta.Focus(); }
// SUB NEW //------------------------------------------------------------------------------------------------------------ public frmContaSaldoInicial(objConta conta, Form formOrigem) { InitializeComponent(); propConta = conta; _formOrigem = formOrigem; bind.DataSource = propConta; BindingCreator(); HandlerKeyDownControl(this); this.Activated += form_Activated; this.FormClosed += form_FormClosed; }
// INSERT //------------------------------------------------------------------------------------------------------------ public int InsertConta(objConta conta, objCaixaAjuste ajuste = null, Action <int, decimal> ContaSldUpdate = null, Action <int, decimal> SetorSldUpdate = null) { AcessoDados db = null; try { db = new AcessoDados(); db.BeginTransaction(); //--- clear Params db.LimparParametros(); //--- define Params db.AdicionarParametros("@Conta", conta.Conta); db.AdicionarParametros("@ContaSaldo", 0.0m); db.AdicionarParametros("@BloqueioData", conta.BloqueioData); db.AdicionarParametros("@Bancaria", conta.Bancaria); db.AdicionarParametros("@OperadoraCartao", conta.OperadoraCartao); db.AdicionarParametros("@IDCongregacao", conta.IDCongregacao); db.AdicionarParametros("@Ativa", conta.Ativa); //--- convert null parameters db.ConvertNullParams(); //--- create query string query = db.CreateInsertSQL("tblConta"); //--- insert var newID = (int)db.ExecutarInsertAndGetID(query); //--- check Saldo INICIAL and insert if (ajuste != null) { ajuste.IDConta = newID; new AjusteBLL().InsertAjuste(ajuste, ContaSldUpdate, SetorSldUpdate, null, db); } db.CommitTransaction(); return(newID); } catch (Exception ex) { db.RollBackTransaction(); throw ex; } }
// CONTROL IMAGES OF LIST DATAGRID //------------------------------------------------------------------------------------------------------------ private void dgvListagem_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { if (e.ColumnIndex == clnImage.Index) { objConta item = (objConta)dgvListagem.Rows[e.RowIndex].DataBoundItem; if (item.Ativa) { e.Value = ImgAtivo; } else { e.Value = ImgInativo; } } }
private void btnSetContaEntrada_Click(object sender, EventArgs e) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; frmContaProcura frm = new frmContaProcura(this, _transf.IDContaEntrada); frm.ShowDialog(); //--- check return if (frm.DialogResult == DialogResult.OK) { // check same CONTA ENTRADA SAIDA if (frm.propEscolha.IDConta == _transf.IDContaSaida) { AbrirDialog("A conta de Entrada não pode ser igual à conta de Saída...", "Conta de Entrada", DialogType.OK, DialogIcon.Exclamation); return; } if (Sit != EnumFlagEstado.NovoRegistro && _transf.IDContaEntrada != frm.propEscolha.IDConta) { Sit = EnumFlagEstado.Alterado; } _transf.IDContaEntrada = (int)frm.propEscolha.IDConta; txtContaEntrada.Text = frm.propEscolha.Conta; contaEntrada = frm.propEscolha; lblContaEntradaDetalhe.Text = $"Saldo da Conta: {frm.propEscolha.ContaSaldo.ToString("c")} \n" + $"Data de Bloqueio até: {frm.propEscolha.BloqueioData?.ToString() ?? ""}"; } //--- select txtContaEntrada.Focus(); txtContaEntrada.SelectAll(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao abrir o formulário de procura..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private void btnEscolher_Click(object sender, EventArgs e) { objConta item = GetSelectedItem(); //--- check selected item if (item == null) { AbrirDialog("Favor selecionar um registro para Editar...", "Selecionar Registro", DialogType.OK, DialogIcon.Information); return; } //--- open edit form propEscolha = item; DialogResult = DialogResult.OK; }
// ADICIONAR CONTA //------------------------------------------------------------------------------------------------------------ private void btnAdicionar_Click(object sender, EventArgs e) { if (_formOrigem == null) { frmConta frm = new frmConta(new objConta(null)); frm.MdiParent = Application.OpenForms.OfType <frmPrincipal>().FirstOrDefault(); DesativaMenuPrincipal(); Close(); frm.Show(); } else { propEscolha = new objConta(null); DialogResult = DialogResult.Yes; } }
// CONVERT ROW IN CLASS //------------------------------------------------------------------------------------------------------------ public objConta ConvertRowInClass(DataRow row) { objConta conta = new objConta((int)row["IDConta"]) { }; conta.Conta = (string)row["Conta"]; conta.ContaSaldo = row["ContaSaldo"] == DBNull.Value ? 0 : (decimal)row["ContaSaldo"]; conta.BloqueioData = row["BloqueioData"] == DBNull.Value ? null : (DateTime?)row["BloqueioData"]; conta.OperadoraCartao = row["OperadoraCartao"] == DBNull.Value ? false : (bool)row["OperadoraCartao"]; conta.Bancaria = row["Bancaria"] == DBNull.Value ? false : (bool)row["Bancaria"]; conta.IDCongregacao = row["IDCongregacao"] == DBNull.Value ? null : (int?)row["IDCongregacao"]; conta.Congregacao = row["Congregacao"] == DBNull.Value ? "" : (string)row["Congregacao"]; conta.Ativa = (bool)row["Ativa"]; return(conta); }
// ALTERAR CONTA //------------------------------------------------------------------------------------------------------------ private void btnContaAlterar_Click(object sender, EventArgs e) { frmConfig config = Application.OpenForms.OfType <frmConfig>().First(); frmContaProcura frm = new frmContaProcura(this, _Conta?.IDConta); // disable forms this.lblTitulo.BackColor = Color.Silver; config.panel1.BackColor = Color.Silver; // show frm.ShowDialog(); // return this.lblTitulo.BackColor = Color.SlateGray; config.panel1.BackColor = Color.Goldenrod; if (frm.DialogResult == DialogResult.OK) { Application.OpenForms.OfType <frmPrincipal>().First().propContaPadrao = frm.propEscolha; _Conta = frm.propEscolha; txtContaPadrao.Text = frm.propEscolha.Conta; // check SETOR if (_Setor != null) { if (_Setor.IDCongregacao != _Conta.IDCongregacao) { // user message AbrirDialog("A CONTA escolhida pertence a uma congregação diferente do SETOR padrão escolhido:\n" + _Setor.Setor.ToUpper() + "\nO Setor padrão atual será descartado. Favor definir um novo Setor...", "Redefinir Setor", DialogType.OK, DialogIcon.Exclamation); // clear controls txtSetorPadrao.Clear(); _Setor = null; Application.OpenForms.OfType <frmPrincipal>().First().propSetorPadrao = null; } } } // focus control txtContaPadrao.Focus(); }
// DEFINDA DATA PADRAO PELA DATA DE BLOQUEIO //------------------------------------------------------------------------------------------------------------ private void DefineDataPadraoPelaDataBloqueio(objConta contaInicial) { if (contaInicial.BloqueioData != null) { //-- define a propriedade DATA PADRAO propDataPadrao = (DateTime)contaInicial.BloqueioData; } else { AbrirDialog("A CONTA PADRÃO escolhida: " + contaInicial.Conta.ToUpper() + "\n" + "ainda não tem data de bloqueio definida...\n" + "Logo a DATA PADRÃO do sistema será escolhida para " + "DATA ATUAL: " + string.Format("dd de MMMM de yyyy", DateTime.Now), "Data Padrão", DialogType.OK, DialogIcon.Exclamation); propDataPadrao = DateTime.Today; } }
// INTERNAL PROPERTY CONTA private void DefineConta(objConta conta) { ContaSelected = conta; txtConta.Text = ContaSelected.Conta; lblContaDetalhe.Text = $"Saldo da Conta: {conta.ContaSaldo.ToString("c")} \n" + $"Data de Bloqueio até: {conta.BloqueioData?.ToString() ?? ""}"; _provisoria.IDConta = (int)conta.IDConta; _provisoria.Conta = conta.Conta; if (conta.BloqueioData != null) { if (_provisoria.RetiradaData < conta.BloqueioData) { AbrirDialog("A data da Despesa Provisória não pode ser anterior à Data de Bloqueio da Conta escolhida..." + "\nA Data da Despesa Provisória será alterada.", "Data de Bloqueio"); _provisoria.RetiradaData = (DateTime)conta.BloqueioData; } dtpRetiradaData.MinDate = (DateTime)conta.BloqueioData; } }
// GET CONTA CAIXA //------------------------------------------------------------------------------------------------------------ private void ObterConta(object dbTran) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; contaSelected = new ContaBLL().GetConta(_caixa.IDConta, dbTran); lblContaDetalhe.Text = $"Saldo da Conta: {contaSelected.ContaSaldo.ToString("c")} \n" + $"Data de Bloqueio até: {contaSelected.BloqueioData?.ToString() ?? ""}"; } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao obter a conta do Caixa..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// RECALCULAR O SALDO DA CONTA //------------------------------------------------------------------------------------------------------------ private void btnSaldo_Click(object sender, EventArgs e) { //--- check selected item if (dgvListagem.SelectedRows.Count == 0) { AbrirDialog("Favor selecionar um registro para Recalcular o Saldo da Conta...", "Selecionar Registro", DialogType.OK, DialogIcon.Information); return; } //--- get Selected item objConta conta = (objConta)dgvListagem.SelectedRows[0].DataBoundItem; try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; cBLL.ContaSaldoRecalcular(conta); AbrirDialog($"Não houve qualquer alteração no Saldo da Conta:\n" + $"{conta.Conta.ToUpper()}\n" + $"Valor: {conta.ContaSaldo:c}", "Saldo Correto"); } catch (AppException ex) { dgvListagem.SelectedRows[0].Cells[4].Value = conta.ContaSaldo; AbrirDialog(ex.Message, "Saldo Alterado", DialogType.OK, DialogIcon.Information); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Recalcular o Saldo..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private void dgvListagem_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { Control c = (Control)sender; DataGridView.HitTestInfo hit = dgvListagem.HitTest(e.X, e.Y); dgvListagem.ClearSelection(); //---VERIFICAÇÕES NECESSARIAS if (hit.Type != DataGridViewHitTestType.Cell) { return; } // seleciona o ROW dgvListagem.Rows[hit.RowIndex].Cells[0].Selected = true; dgvListagem.Rows[hit.RowIndex].Selected = true; // mostra o MENU ativar e desativar if (dgvListagem.Columns[hit.ColumnIndex].Name == "Ativa") { objConta Conta = (objConta)dgvListagem.Rows[hit.RowIndex].DataBoundItem; if (Conta.Ativa == true) { AtivarToolStripMenuItem.Enabled = false; DesativarToolStripMenuItem.Enabled = true; } else { AtivarToolStripMenuItem.Enabled = true; DesativarToolStripMenuItem.Enabled = false; } // revela menu MenuListagem.Show(c.PointToScreen(e.Location)); } } }