// CONTROL IMAGES OF LIST DATAGRID //------------------------------------------------------------------------------------------------------------ private void dgvListagem_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { if (e.ColumnIndex == clnImprimir.Index) { objMembro item = (objMembro)dgvListagem.Rows[e.RowIndex].DataBoundItem; if (item.Imprimir) { e.Value = ImgPrint; } else { e.Value = ImgNPrint; } } else if (e.ColumnIndex == clnEmissaoData.Index) { if (e.Value == null) { e.Value = "---"; dgvListagem.Rows[e.RowIndex].Cells[e.ColumnIndex + 1].Value = "---"; } else { dgvListagem.Rows[e.RowIndex].Cells[e.ColumnIndex + 1].Value = ((DateTime)e.Value).AddYears(_validade); } } }
// CONVERT ROW IN CLASS //------------------------------------------------------------------------------------------------------------ public objMembro ConvertRowInClass(DataRow row) { objMembro membro = new objMembro((int?)row["IDMembro"]) { IDMembro = (int?)row["IDMembro"], RGMembro = (int?)row["RGMembro"], MembroNome = (string)row["MembroNome"], NascimentoData = row["NascimentoData"] == DBNull.Value ? null : (DateTime?)row["NascimentoData"], IDCongregacao = (byte)row["IDCongregacao"], Congregacao = (string)row["Congregacao"], Sexo = (byte)row["Sexo"], EmissaoData = row["EmissaoData"] == DBNull.Value ? null : (DateTime?)row["EmissaoData"], IDEstadoCivil = (byte)row["IDEstadoCivil"], IDFuncao = (byte)row["IDFuncao"], Funcao = (string)row["Funcao"], ImagemCartaoFrente = row["ImagemCartaoFrente"] == DBNull.Value ? string.Empty : (string)row["ImagemCartaoFrente"], ImagemCartaoVerso = row["ImagemCartaoVerso"] == DBNull.Value ? string.Empty : (string)row["ImagemCartaoVerso"], IDSituacao = (byte)row["IDSituacao"], Situacao = (string)row["Situacao"], MembresiaData = row["MembresiaData"] == DBNull.Value ? null : (DateTime?)row["MembresiaData"], BatismoData = row["BatismoData"] == DBNull.Value ? null : (DateTime?)row["BatismoData"], ValidadeData = row["ValidadeData"] == DBNull.Value ? null : (DateTime?)row["ValidadeData"], Imprimir = (bool)row["Imprimir"], NaLista = (bool)row["NaLista"], }; membro.EstadoCivil = membro.Sexo == 1 ? (string)row["EstadoCivilM"] : (string)row["EstadoCivilF"]; return(membro); }
private void EscolherRegistro() { //--- 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 propEscolha = (objMembro)dgvListagem.SelectedRows[0].DataBoundItem; DialogResult = DialogResult.OK; }
private void btnAdicionar_Click(object sender, EventArgs e) { if (_formOrigem == null) { frmMembro frm = new frmMembro(new objMembro(null), this); frm.MdiParent = Application.OpenForms.OfType <Main.frmPrincipal>().FirstOrDefault(); DesativaMenuPrincipal(); Visible = false; frm.Show(); } else { propEscolha = new objMembro(null); DialogResult = DialogResult.Yes; } }
// REMOVE MEMBRO LIST //------------------------------------------------------------------------------------------------------------ private void btnRemover_Click(object sender, EventArgs e) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; //--- 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 objMembro item = (objMembro)dgvListagem.SelectedRows[0].DataBoundItem; var resp = AbrirDialog("Deseja realmente remover o membro:\n" + item.MembroNome.ToUpper() + "\n" + "da lista de impressão?", "Remover Impressão", DialogType.SIM_NAO, DialogIcon.Question, DialogDefaultButton.Second); if (resp == DialogResult.No) { return; } //--- save membro item.NaLista = false; mBLL.UpdateMembro(item); //--- Get Data ObterDados(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Remover Membro na lista de impressão..." + "\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; objMembro membro = (objMembro)dgvListagem.Rows[hit.RowIndex].DataBoundItem; if (membro.Imprimir == true) { mnuImprimir.Enabled = false; mnuNaoImprimir.Enabled = true; } else { mnuImprimir.Enabled = true; mnuNaoImprimir.Enabled = false; } if (membro.IDSituacao == 1) { mnuAtivar.Enabled = false; mnuDesativar.Enabled = true; } else { mnuAtivar.Enabled = true; mnuDesativar.Enabled = false; } // revela menu MenuListagem.Show(c.PointToScreen(e.Location)); } }
// EDIT MEMBRO DATA //------------------------------------------------------------------------------------------------------------ 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 objMembro item = (objMembro)dgvListagem.SelectedRows[0].DataBoundItem; //--- open edit form Membros.frmMembro frm = new Membros.frmMembro(item, this); frm.MdiParent = Application.OpenForms.OfType <Main.frmPrincipal>().FirstOrDefault(); DesativaMenuPrincipal(); frm.Show(); }
private void ImprimirMarcarDesmarcar_Click(object sender, EventArgs e) { ToolStripMenuItem menu = (ToolStripMenuItem)sender; bool print = bool.Parse(menu.Tag.ToString()); //--- verifica se existe alguma cell if (dgvListagem.SelectedRows.Count == 0) { return; } //--- Verifica o item objMembro membro = (objMembro)dgvListagem.SelectedRows[0].DataBoundItem; //--- altera o valor membro.Imprimir = print; dgvListagem.Refresh(); //--- Salvar o Registro try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; MembroBLL cBLL = new MembroBLL(DBPath()); cBLL.UpdateMembro(membro); //--- altera a imagem FiltrarListagem(sender, e); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Alterar a Situação do Membro..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// SUB NEW //------------------------------------------------------------------------------------------------------------ public frmMembro(objMembro obj, Form formOrigem = null) { InitializeComponent(); _membro = obj; _formOrigem = formOrigem; bind.DataSource = _membro; BindingCreator(); _membro.PropertyChanged += RegistroAlterado; if (_membro.IDMembro == null) { Sit = EnumFlagEstado.NovoRegistro; DefineFotoEstado(EnumDefineFoto.SEM_FOTO); _SemDataBatismo = false; DefineDataBatismo(true); } else { Sit = EnumFlagEstado.RegistroSalvo; ObterFotoServidor(); _SemDataBatismo = _membro.BatismoData == null; DefineDataBatismo(true); } //--- Nascimento Date Controlling dtpMembresiaData.MaxDate = DateTime.Today; dtpNascimentoData.MaxDate = DateTime.Today.AddYears(-1); //--- Funcao label text lblFuncNumber.Text = $"(nº 1 a {Program.lstFuncao.Count})"; // ADD HANDLERS HandlerKeyDownControl(this); txtRGMembro.LostFocus += TxtIDMembro_LostFocus; txtRGMembro.GotFocus += TxtIDMembro_GotFocus; txtCongregacao.Enter += text_Enter; chkDtBatismo.CheckedChanged += chkDtBatismo_CheckedChanged; txtMembroNome.Validating += (a, b) => PrimeiraLetraMaiuscula(txtMembroNome); }
// NOVO REGISTRO INSERIR //------------------------------------------------------------------------------------------------------------ private void btnNovo_Click(object sender, EventArgs e) { if (Sit != EnumFlagEstado.RegistroSalvo) { return; } _membro = new objMembro(null); _SemDataBatismo = false; DefineDataBatismo(true); Sit = EnumFlagEstado.NovoRegistro; bind.DataSource = _membro; txtRGMembro.Focus(); txtRGMembro.SelectAll(); if (FotoImage != null) { FotoImage.Dispose(); } picFoto.Image = Properties.Resources.sem_foto; }
// INSERT MEMBRO LIST //------------------------------------------------------------------------------------------------------------ private void btnAdicionar_Click(object sender, EventArgs e) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; Membros.frmMembroListagem frm = new Membros.frmMembroListagem(this); frm.ShowDialog(); if (frm.DialogResult != DialogResult.OK) { return; } objMembro membro = frm.propEscolha; if (membro.NaLista) { AbrirDialog("O membro escolhido:\n" + membro.MembroNome.ToUpper() + "\n" + "já está na listagem de impressão...", "Na Lista"); return; } if (!membro.Imprimir) { var resp = AbrirDialog("O membro escolhido:\n" + membro.MembroNome.ToUpper() + "\n" + "não está marcado para imprimir\n" + "Deseja marcar para impressão e inserir na listagem?", "Marcar para Impressão", DialogType.SIM_NAO, DialogIcon.Question); if (resp == DialogResult.No) { return; } membro.Imprimir = true; } //--- save membro membro.NaLista = true; mBLL.UpdateMembro(membro); //--- Get Data ObterDados(); foreach (DataGridViewRow row in dgvListagem.Rows) { if ((int)row.Cells[0].Value == membro.RGMembro) { row.Selected = true; } else { row.Selected = false; } } } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Adicionar Membro na lista de impressão..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private void mnuAlterarSituacao_Click(object sender, EventArgs e) { ToolStripMenuItem menu = (ToolStripMenuItem)sender; byte newSit = byte.Parse(menu.Tag.ToString()); string acao = ""; switch (newSit) { case 1: acao = "ATIVO"; break; case 2: acao = "DESLIGADO"; break; case 3: acao = "TRANSFERIDO"; break; case 4: acao = "FALECIDO"; break; default: break; } //--- verifica se existe alguma cell if (dgvListagem.SelectedRows.Count == 0) { return; } //--- Verifica o item objMembro membro = (objMembro)dgvListagem.SelectedRows[0].DataBoundItem; //---pergunta ao usuário var response = AbrirDialog($"Deseja realmente alterar a situação do membro para: {acao}?\n", (membro.IDSituacao == 1 ? "DESATIVAR " : "ATIVAR"), DialogType.SIM_NAO, DialogIcon.Question); if (response == DialogResult.No) { return; } //--- altera o valor membro.IDSituacao = newSit; //--- Salvar o Registro try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; MembroBLL cBLL = new MembroBLL(DBPath()); cBLL.UpdateMembro(membro); //--- altera a imagem ObterDados(); FiltrarListagem(sender, e); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Alterar a Situação do Membro..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// UPDATE //------------------------------------------------------------------------------------------------------------ public bool UpdateMembro(objMembro membro) { AcessoDados db = null; try { db = new AcessoDados(_DBPath); db.BeginTransaction(); //--- check duplicated MEMBRO //------------------------------------------------------------------------------------------------------------ db.LimparParametros(); db.AdicionarParametros("@MembroNome", membro.MembroNome); db.AdicionarParametros("@IDMembro", membro.IDMembro); db.ConvertNullParams(); //--- create and execute query string query = "SELECT * FROM tblMembro WHERE MembroNome = @MembroNome AND IDMembro <> @IDMembro"; DataTable dt = db.ExecutarConsulta(CommandType.Text, query); if (dt.Rows.Count > 0) { throw new AppException("Já existe um Membro cadastrado que possui o mesmo nome..."); } //--- check duplicated RG //------------------------------------------------------------------------------------------------------------ db.LimparParametros(); db.AdicionarParametros("@RGMembro", membro.RGMembro); db.AdicionarParametros("@IDMembro", membro.IDMembro); db.ConvertNullParams(); //--- create and execute query query = "SELECT * FROM tblMembro WHERE RGMembro = @RGMembro AND IDMembro <> @IDMembro"; dt = db.ExecutarConsulta(CommandType.Text, query); if (dt.Rows.Count > 0) { throw new AppException("Já existe um Membro cadastrado que possui o mesmo Número de Registro..."); } //--- UPDATE //------------------------------------------------------------------------------------------------------------//--- clear Params db.LimparParametros(); //--- define Params db.AdicionarParametros("@RGMembro", membro.RGMembro); db.AdicionarParametros("@MembroNome", membro.MembroNome); db.AdicionarParametros("@NascimentoData", membro.NascimentoData); db.AdicionarParametros("@IDFuncao", membro.IDFuncao); db.AdicionarParametros("@Sexo", membro.Sexo); db.AdicionarParametros("@EmissaoData", membro.EmissaoData); db.AdicionarParametros("@MembresiaData", membro.MembresiaData); db.AdicionarParametros("@BatismoData", membro.BatismoData); db.AdicionarParametros("@ValidadeData", membro.ValidadeData); db.AdicionarParametros("@IDEstadoCivil", membro.IDEstadoCivil); db.AdicionarParametros("@IDCongregacao", membro.IDCongregacao); db.AdicionarParametros("@IDSituacao", membro.IDSituacao); db.AdicionarParametros("@Imprimir", membro.Imprimir); db.AdicionarParametros("@NaLista", membro.NaLista); db.AdicionarParametros("@IDMembro", membro.IDMembro); //--- convert null parameters db.ConvertNullParams(); //--- create query query = db.CreateUpdateSQL("tblMembro", "@IDMembro"); //--- update db.ExecutarManipulacao(CommandType.Text, query); db.CommitTransaction(); return(true); } catch (OleDbException ex) { //--- ROLLBACK db.RollBackTransaction(); throw new AppException(ex.Message); } catch (Exception ex) { //--- ROLLBACK db.RollBackTransaction(); throw ex; } }
// INSERT //------------------------------------------------------------------------------------------------------------ public long InsertMembro(objMembro membro) { AcessoDados db = null; try { db = new AcessoDados(_DBPath); db.BeginTransaction(); //--- check duplicated MEMBRO //------------------------------------------------------------------------------------------------------------ db.LimparParametros(); db.AdicionarParametros("@MembroNome", membro.MembroNome.ToLower()); db.ConvertNullParams(); //--- create and execute query string query = "SELECT * FROM tblMembro WHERE LCase(MembroNome) = @MembroNome"; DataTable dt = db.ExecutarConsulta(CommandType.Text, query); if (dt.Rows.Count > 0) { throw new AppException("Já existe um Membro cadastrado que possui o mesmo nome..."); } //--- check duplicated RG //------------------------------------------------------------------------------------------------------------ db.LimparParametros(); db.AdicionarParametros("@RGMembro", membro.RGMembro); db.ConvertNullParams(); //--- create and execute query query = "SELECT * FROM tblMembro WHERE RGMembro = @RGMembro"; dt = db.ExecutarConsulta(CommandType.Text, query); if (dt.Rows.Count > 0) { throw new AppException("Já existe um Membro cadastrado que possui o mesmo Número de Registro..."); } // INSERT Membro //------------------------------------------------------------------------------------------------------------ db.LimparParametros(); //--- define Params db.AdicionarParametros("@RGMembro", membro.RGMembro); db.AdicionarParametros("@MembroNome", membro.MembroNome); db.AdicionarParametros("@NascimentoData", membro.NascimentoData); db.AdicionarParametros("@IDFuncao", membro.IDFuncao); db.AdicionarParametros("@Sexo", membro.Sexo); db.AdicionarParametros("@EmissaoData", membro.EmissaoData); db.AdicionarParametros("@MembresiaData", membro.MembresiaData); db.AdicionarParametros("@BatismoData", membro.BatismoData); db.AdicionarParametros("@ValidadeData", membro.ValidadeData); db.AdicionarParametros("@IDEstadoCivil", membro.IDEstadoCivil); db.AdicionarParametros("@IDCongregacao", membro.IDCongregacao); db.AdicionarParametros("@IDSituacao", membro.IDSituacao); db.AdicionarParametros("@Imprimir", membro.Imprimir); db.AdicionarParametros("@NaLista", membro.NaLista); //--- convert null parameters db.ConvertNullParams(); //--- create query query = db.CreateInsertSQL("tblMembro"); //--- insert long newID = db.ExecutarInsertAndGetID(query); //--- COMMIT and RETURN db.CommitTransaction(); return(newID); } catch (OleDbException ex) { //--- ROLLBACK db.RollBackTransaction(); throw new AppException(ex.Message); } catch (Exception ex) { //--- ROLLBACK db.RollBackTransaction(); throw ex; } }