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));
        }
Example #5
0
        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);
        }
Example #7
0
        // 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;
            }
        }
Example #8
0
        // 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;
            }
        }
Example #9
0
        // 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();
        }
Example #12
0
        // 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);
        }
Example #13
0
        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);
        }