private void mnuImprimirRecibo_Click(object sender, EventArgs e) { //--- check selected item if (dgvListagem.SelectedRows.Count == 0) { AbrirDialog("Favor selecionar um registro para Imprimir o Recibo de Comissão...", "Selecionar Registro", DialogType.OK, DialogIcon.Information); return; } //--- get Selected item objComissao comissao = (objComissao)dgvListagem.SelectedRows[0].DataBoundItem; try { if (comissao.IDDespesa == null) { throw new AppException("A Despesa anexada à essa Comissão foi Excluída..."); } // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; //--- Get created Despesa and Convert to List var dadosIgreja = ObterDadosIgreja(); var despesa = ObterDespesa(comissao); var listDespesa = new List <objDespesa>() { despesa }; //--- Create Data Text string DataTexto = $"{dadosIgreja.Cidade}, {despesa.DespesaData.Day} de {despesa.DespesaData:MMMM} de {despesa.DespesaData:yyyy}"; //--- convert list List <object> dstPrimario = listDespesa.Cast <object>().ToList(); //--- create and ADD params var param = new List <Microsoft.Reporting.WinForms.ReportParameter>(); param.Add(new Microsoft.Reporting.WinForms.ReportParameter("ReciboTexto", CreateReciboTexto(comissao, dadosIgreja))); param.Add(new Microsoft.Reporting.WinForms.ReportParameter("DataTexto", DataTexto)); param.Add(new Microsoft.Reporting.WinForms.ReportParameter("ComissaoValor", comissao.ValorComissao.ToString())); //--- create Report Global and Show var frm = new Main.frmReportGlobal("CamadaUI.Comissoes.Reports.rptComissaoRecibo.rdlc", "Recibo de Auxílio Colaborador", dstPrimario, null, param); frm.ShowDialog(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Abrir o Formulário de Impresão..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// EXCLUIR COMISSAO //------------------------------------------------------------------------------------------------------------ private void ExcluirComissao() { //--- check selected item if (dgvListagem.SelectedRows.Count == 0) { AbrirDialog("Favor selecionar um registro para Excluir...", "Selecionar Registro", DialogType.OK, DialogIcon.Information); return; } //--- get Selected item objComissao comissao = (objComissao)dgvListagem.SelectedRows[0].DataBoundItem; //--- VERIFICA SE EXISTE DESPESA ANEXADA if (comissao.IDDespesa != null) { AbrirDialog("Não é possível excluir essa Comissão porque ainda existe uma despesa vinculada..." + $"O registro da despesa é {comissao.IDDespesa:D4}" + $"É necessário Excluir a Despesa anexada para remover a comissão.", "Despesa Anexada", DialogType.OK, DialogIcon.Exclamation); return; } // --- ask USER var resp = AbrirDialog("Você deseja realmente EXCLUIR definitivamente a Comissão abaixo?\n" + $"\nREG: {comissao.IDComissao:D4}\nVALOR: {comissao.ValorComissao:c}", "Excluir Comissão", DialogType.SIM_NAO, DialogIcon.Question, DialogDefaultButton.Second); if (resp != DialogResult.Yes) { return; } try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; //--- execute cBLL.ComissaoExcluir(comissao); //--- REQUERY LIST ObterDados(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Excluir a Comissao..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// CREATE DESCRICAO TEXTO PARA RECIBO //------------------------------------------------------------------------------------------------------------ private string CreateReciboTexto(objComissao comissao, objDadosIgreja dadosIgreja) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; string Extenso = EscreverExtenso(comissao.ValorComissao); string texto = $"Eu, {comissao.Credor} recebi da " + $"{(dadosIgreja.RazaoSocial.Trim().Length == 0 ? "Instituição " : dadosIgreja.RazaoSocial)} " + $"o valor de {comissao.ValorComissao:C} ({Extenso}) a título de PREBENDA. "; return(texto); } catch (Exception ex) { throw ex; } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
private void dgvListagem_MouseDown(object sender, MouseEventArgs e) { // check button if (e.Button != MouseButtons.Right) { return; } Control c = (Control)sender; DataGridView.HitTestInfo hit = dgvListagem.HitTest(e.X, e.Y); dgvListagem.ClearSelection(); if (hit.Type != DataGridViewHitTestType.Cell) { return; } // seleciona o ROW dgvListagem.SelectionMode = DataGridViewSelectionMode.FullRowSelect; dgvListagem.CurrentCell = dgvListagem.Rows[hit.RowIndex].Cells[2]; dgvListagem.Rows[hit.RowIndex].Selected = true; // mostra o MENU ativar e desativar objComissao comissao = (objComissao)dgvListagem.Rows[hit.RowIndex].DataBoundItem; // mnuDefinir Setor mnuImprimirRecibo.Enabled = comissao.IDSituacao == 3; // revela menu mnuOperacoes.Show(c.PointToScreen(e.Location)); }
private void btnEfetuar_Click(object sender, EventArgs e) { var resp = AbrirDialog("Tem certeza que deseja inicializar um registro de cálculo de comissão para: " + $"\n{Colaborador.Credor}" + $"\nSETOR: {Colaborador.Setor}", "Inicializar Registro de Comissão", DialogType.SIM_NAO, DialogIcon.Question); if (resp != DialogResult.Yes) { return; } List <objContribuicao> listFinal = list.Where(x => x.ContribuicaoData <= _DataFinal).ToList(); decimal soma = listFinal.Sum(x => x.ValorRecebido); decimal vlComissao = soma * (decimal)Colaborador.ComissaoTaxa / 100; var Comissao = new objComissao(null) { ComissaoTaxa = (decimal)Colaborador.ComissaoTaxa, IDCredor = (int)Colaborador.IDCredor, Credor = Colaborador.Credor, DataFinal = _DataFinal, DataInicial = (DateTime)_MinDate, IDDespesa = null, IDSetor = (int)Colaborador.IDSetor, Setor = Colaborador.Setor, IDSituacao = 1, ValorContribuicoes = soma, ValorDescontado = 0, ValorComissao = vlComissao, }; //--- INSERT NEW COMISSAO try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; Comissao.IDComissao = cBLL.InsertComissao(Comissao, listFinal); //--- open form var frm = new frmComissao(Comissao, listFinal, this); frm.Show(); Close(); } catch (Exception ex) { AbrirDialog("Uma exceção ocorreu ao Inserir um novo registro de Comissão..." + "\n" + ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation); } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// SUB NEW //------------------------------------------------------------------------------------------------------------ public frmComissaoQuitarInfo(objComissao comissao, decimal ValorTotal, Form formOrigem) { InitializeComponent(); _formOrigem = formOrigem; _ValorTotal = ValorTotal; lblValorTotal.Text = ValorTotal.ToString("C"); lblColaborador.Text = comissao.Credor; lblSetor.Text = comissao.Setor; DefineConta(ContaPadrao()); // handlers HandlerKeyDownControl(this); }
// INSERT //------------------------------------------------------------------------------------------------------------ public int InsertComissao(objComissao comissao, List <objContribuicao> lstContribuicao) { AcessoDados db = null; try { db = new AcessoDados(); db.BeginTransaction(); //--- clear Params db.LimparParametros(); //--- define Params db.AdicionarParametros("@IDCredor", comissao.IDCredor); db.AdicionarParametros("@IDSetor", comissao.IDSetor); db.AdicionarParametros("@DataInicial", comissao.DataInicial); db.AdicionarParametros("@DataFinal", comissao.DataFinal); db.AdicionarParametros("@ValorContribuicoes", comissao.ValorContribuicoes); db.AdicionarParametros("@ValorDescontado", comissao.ValorDescontado); db.AdicionarParametros("@ValorComissao", comissao.ValorComissao); db.AdicionarParametros("@ComissaoTaxa", comissao.ComissaoTaxa); db.AdicionarParametros("@IDSituacao", comissao.IDSituacao); //--- convert null parameters db.ConvertNullParams(); //--- create query string query = db.CreateInsertSQL("tblComissoes"); //--- insert int newID = (int)db.ExecutarInsertAndGetID(query); comissao.IDComissao = newID; //--- insert Contribuicao List InsertComissaoContribuicaoList(newID, lstContribuicao, db); //--- COMMIT and RETURN db.CommitTransaction(); return(newID); } catch (Exception ex) { //--- ROOLBACK db.RollBackTransaction(); throw ex; } }
// UPDATE //------------------------------------------------------------------------------------------------------------ public bool UpdateComissao(objComissao comissao) { AcessoDados db = null; try { db = new AcessoDados(); db.BeginTransaction(); //--- clear Params db.LimparParametros(); //--- define Params db.AdicionarParametros("@IDComissao", comissao.IDComissao); db.AdicionarParametros("@IDCredor", comissao.IDCredor); db.AdicionarParametros("@IDSetor", comissao.IDSetor); db.AdicionarParametros("@DataInicial", comissao.DataInicial); db.AdicionarParametros("@DataFinal", comissao.DataFinal); db.AdicionarParametros("@ValorContribuicoes", comissao.ValorContribuicoes); db.AdicionarParametros("@ValorDescontado", comissao.ValorDescontado); db.AdicionarParametros("@ValorComissao", comissao.ValorComissao); db.AdicionarParametros("@ComissaoTaxa", comissao.ComissaoTaxa); db.AdicionarParametros("@IDSituacao", comissao.IDSituacao); db.AdicionarParametros("@IDDespesa", comissao.IDDespesa); //--- convert null parameters db.ConvertNullParams(); //--- create query string query = db.CreateUpdateSQL("tblComissao", "IDComissao"); //--- UPDATE db.ExecutarManipulacao(CommandType.Text, query); //--- COMMIT db.CommitTransaction(); return(true); } catch (Exception ex) { //--- ROOLBACK db.RollBackTransaction(); throw ex; } }
// EXCLUIR COMISSAO //------------------------------------------------------------------------------------------------------------ public void ComissaoExcluir(objComissao comissao) { AcessoDados dbTran = null; try { //--- VERIFICA SE EXISTE DESPESA ANEXADA if (comissao.IDDespesa != null) { string message = "Não é possível excluir essa Comissão porque ainda existe uma despesa vinculada..." + $"O registro da despesa é {comissao.IDDespesa:D4}" + $"É necessário Excluir a Despesa anexada para remover a comissão."; throw new AppException(message); } //--- INIT DB dbTran = new AcessoDados(); dbTran.BeginTransaction(); //--- remove Contribuicao <=> Comissao associate dbTran.LimparParametros(); dbTran.AdicionarParametros("@IDComissao", comissao.IDComissao); string query = "DELETE tblContribuicaoComissionada WHERE IDComissao = @IDComissao"; dbTran.ExecutarManipulacao(CommandType.Text, query); //--- delete Comissao dbTran.LimparParametros(); dbTran.AdicionarParametros("@IDComissao", comissao.IDComissao); query = "DELETE tblComissoes WHERE IDComissao = @IDComissao"; dbTran.ExecutarManipulacao(CommandType.Text, query); //--- COMMIT dbTran.CommitTransaction(); } catch (Exception ex) { dbTran.RollBackTransaction(); throw ex; } }
// OBTER DESPESA REFERENTE PARA RECIBO //------------------------------------------------------------------------------------------------------------ private objDespesa ObterDespesa(objComissao comissao) { try { // --- Ampulheta ON Cursor.Current = Cursors.WaitCursor; return(new DespesaComumBLL().GetDespesa((long)comissao.IDDespesa)); } catch (Exception ex) { throw ex; } finally { // --- Ampulheta OFF Cursor.Current = Cursors.Default; } }
// ABRIR CONTRIBUICAO ESCOLHIDA //------------------------------------------------------------------------------------------------------------ private void btnVisualizar_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 objComissao item = (objComissao)dgvListagem.SelectedRows[0].DataBoundItem; frmComissao frm = new frmComissao(item); frm.MdiParent = Application.OpenForms.OfType <frmPrincipal>().FirstOrDefault(); DesativaMenuPrincipal(); Close(); frm.Show(); }
// CONVERT ROW IN CLASS //------------------------------------------------------------------------------------------------------------ public objComissao ConvertRowInClass(DataRow row) { objComissao comissao = new objComissao((int)row["IDComissao"]) { IDCredor = (int)row["IDCredor"], Credor = (string)row["Credor"], IDSetor = (int)row["IDSetor"], Setor = (string)row["Setor"], ComissaoTaxa = (decimal)row["ComissaoTaxa"], DataInicial = (DateTime)row["DataInicial"], DataFinal = (DateTime)row["DataFinal"], ValorContribuicoes = (decimal)row["ValorContribuicoes"], ValorDescontado = (decimal)row["ValorDescontado"], ValorComissao = (decimal)row["ValorComissao"], IDSituacao = (byte)row["IDSituacao"], IDDespesa = row["IDDespesa"] == DBNull.Value ? null : (long?)row["IDDespesa"], }; return(comissao); }
public frmComissao( objComissao comissao, List <objContribuicao> lstContribuicao = null, Form formOrigem = null) { InitializeComponent(); _formOrigem = formOrigem; _comissao = comissao; bind.DataSource = _comissao; BindingCreator(); DefineSituacao(); list = lstContribuicao; ObterDadosListagem(); // HANDLER to use TAB for ENTER HandlerKeyDownControl(this); }