// SALVAR REGISTRO
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                ContaBLL cBLL = new ContaBLL();

                //--- SAVE: INSERT OR UPDATE
                if (_conta.IDConta == null)                 //--- save | Insert
                {
                    // create ajuste
                    objCaixaAjuste ajuste = null;

                    if (_conta.ContaSaldo > 0)
                    {
                        ajuste = CreateAjuste();
                        if (ajuste == null)
                        {
                            return;
                        }
                    }

                    //--- execute INSERT
                    int ID = cBLL.InsertConta(_conta, ajuste, ContaSaldoLocalUpdate, SetorSaldoLocalUpdate);

                    //--- define newID
                    _conta.IDConta = ID;
                }
                else                 //--- update
                {
                    cBLL.UpdateConta(_conta);
                }

                //--- change Sit
                Sit = EnumFlagEstado.RegistroSalvo;
                //--- emit massage
                AbrirDialog("Registro Salvo com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Conta..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        // 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;
            }
        }
Exemple #3
0
        private objCaixaAjuste CreateAjuste(decimal ajusteValue)
        {
            // get Setor de Entrada
            objSetor setor = null;

            Setores.frmSetorProcura frm = new Setores.frmSetorProcura(this);
            frm.ShowDialog();

            //--- check return
            if (frm.DialogResult == DialogResult.OK)
            {
                setor = frm.propEscolha;

                if (contaSelected.IDCongregacao != setor.IDCongregacao)
                {
                    var resp = AbrirDialog("A Congregação Padrão do Setor de Recursos escolhido é " +
                                           "diferente da congregação padrão da Conta do Caixa...\n" +
                                           "Deseja continuar assim mesmo?", "Congregação Divergente",
                                           DialogType.SIM_NAO, DialogIcon.Question, DialogDefaultButton.Second);

                    if (resp == DialogResult.No)
                    {
                        return(null);
                    }
                }
            }
            else
            {
                return(null);
            }

            objCaixaAjuste ajuste = new objCaixaAjuste(null)
            {
                AjusteDescricao = $"Ajuste de Nivelamento de Caixa: {_caixa.IDCaixa:D4}",
                IDAjusteTipo    = 2,
                IDSetor         = (int)setor.IDSetor,
                Setor           = setor.Setor,
                IDUserAuth      = (int)Program.usuarioAtual.IDUsuario,
                MovData         = _caixa.DataFinal,
                MovValor        = ajusteValue,
                MovValorReal    = Math.Abs(ajusteValue),
                IDConta         = _caixa.IDConta,
                Conta           = _caixa.Conta,
            };

            return(ajuste);
        }
Exemple #4
0
        private objCaixaAjuste CreateAjuste()
        {
            // get Setor de Entrada
            objSetor setor = null;

            Setores.frmSetorProcura frm = new Setores.frmSetorProcura(this);
            frm.ShowDialog();

            //--- check return
            if (frm.DialogResult == DialogResult.OK)
            {
                setor = frm.propEscolha;

                if (propConta.IDCongregacao != setor.IDCongregacao)
                {
                    var resp = AbrirDialog("A Congregação Padrão do Setor de Recursos escolhido é " +
                                           "diferente da congregação padrão da Nova Conta...\n" +
                                           "Deseja continuar assim mesmo?", "Congregação Divergente",
                                           DialogType.SIM_NAO, DialogIcon.Question, DialogDefaultButton.Second);

                    if (resp == DialogResult.No)
                    {
                        return(null);
                    }
                }
            }
            else
            {
                return(null);
            }

            objCaixaAjuste ajuste = new objCaixaAjuste(null)
            {
                AjusteDescricao = "Ajuste de Saldo Inicial Conta",
                IDConta         = (int)propConta.IDConta,
                Conta           = propConta.Conta,
                IDAjusteTipo    = 1,
                IDSetor         = (int)setor.IDSetor,
                Setor           = setor.Setor,
                IDUserAuth      = (int)Program.usuarioAtual.IDUsuario,
                MovData         = dtpDataInicial.Value,
                MovValor        = propConta.ContaSaldo,
                MovValorReal    = propConta.ContaSaldo
            };

            return(ajuste);
        }
Exemple #5
0
        // SALVAR UPDATE SALDO INICIAL
        //------------------------------------------------------------------------------------------------------------
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                //--- check data
                if (!CheckSaveData())
                {
                    return;
                }

                // create ajuste
                objCaixaAjuste ajuste = null;

                if (propConta.ContaSaldo > 0)
                {
                    ajuste = CreateAjuste();
                    if (ajuste == null)
                    {
                        return;
                    }
                }

                //--- execute INSERT
                ContaBLL cBLL = new ContaBLL();
                cBLL.InsertSaldoInicialConta(ajuste, dtpDataInicial.Value, ContaSaldoLocalUpdate, SetorSaldoLocalUpdate);

                //--- emit massage
                AbrirDialog("Saldo Inicial e Data de Bloqueio inicial inseridos com sucesso!",
                            "Registro Salvo", DialogType.OK, DialogIcon.Information);

                DialogResult = DialogResult.OK;
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Salvar Registro de Saldo Inicial..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        // INSERT SALDO INICIAL DA CONTA
        //------------------------------------------------------------------------------------------------------------
        public void InsertSaldoInicialConta(objCaixaAjuste ajuste,
                                            DateTime DataBloqueio,
                                            Action <int, decimal> ContaSldUpdate = null,
                                            Action <int, decimal> SetorSldUpdate = null)
        {
            AcessoDados dbTran = null;

            try
            {
                // create transaction
                dbTran = new AcessoDados();
                dbTran.BeginTransaction();

                // check exists movs in conta
                dbTran.LimparParametros();
                dbTran.AdicionarParametros("@IDConta", ajuste.IDConta);

                string    query = "SELECT * FROM tblMovimentacao WHERE IDConta = @IDConta";
                DataTable dt    = dbTran.ExecutarConsulta(CommandType.Text, query);

                if (dt.Rows.Count > 0)
                {
                    throw new AppException("Não é possível alterar o Saldo Inicial porque a Conta Selecionada já possui movimentações de entradas e/ou saídas...");
                }

                // update Data de Bloqueio inicial da Conta
                UpdateContaBloqueioData(ajuste.IDConta, DataBloqueio, dbTran);

                // update Valor Inicial da Conta
                new AjusteBLL().InsertAjuste(ajuste, ContaSldUpdate, SetorSldUpdate, null, dbTran);

                // Commit transactiom
                dbTran.CommitTransaction();
            }
            catch (Exception ex)
            {
                dbTran.RollBackTransaction();
                throw ex;
            }
        }
Exemple #7
0
        private void Ajuste_Insert()
        {
            try
            {
                // --- Ampulheta ON
                Cursor.Current = Cursors.WaitCursor;

                frmAjusteCaixa frm = new frmAjusteCaixa(_TEntradas + _TSaidas + _TTransf, _caixa.Conta, this);
                frm.ShowDialog();

                if (frm.DialogResult != DialogResult.OK)
                {
                    return;
                }

                //--- create ajuste
                objCaixaAjuste ajuste = CreateAjuste(frm.propAjusteValue);

                if (ajuste == null)
                {
                    return;
                }

                //--- insert
                objMovimentacao newMov = new AjusteBLL().InsertAjuste(ajuste, ContaSaldoLocalUpdate, SetorSaldoLocalUpdate, _caixa.IDCaixa);
                bindMovs.Add(newMov);
                CalculaTotais();
            }
            catch (Exception ex)
            {
                AbrirDialog("Uma exceção ocorreu ao Inserir Ajuste..." + "\n" +
                            ex.Message, "Exceção", DialogType.OK, DialogIcon.Exclamation);
            }
            finally
            {
                // --- Ampulheta OFF
                Cursor.Current = Cursors.Default;
            }
        }
        // INSERT AJUSTE
        //------------------------------------------------------------------------------------------------------------
        public objMovimentacao InsertAjuste(
            objCaixaAjuste ajuste,
            Action <int, decimal> ContaSldUpdate,
            Action <int, decimal> SetorSldUpdate,
            long?IDCaixa  = null,
            object dbTran = null)
        {
            AcessoDados db = dbTran == null ? new AcessoDados() : (AcessoDados)dbTran;

            try
            {
                if (dbTran == null)
                {
                    db.BeginTransaction();
                }

                // 1. INSERT AJUSTE
                //------------------------------------------------------
                //--- clear Params
                db.LimparParametros();

                //--- define Params
                db.AdicionarParametros("@AjusteDescricao", ajuste.AjusteDescricao);
                db.AdicionarParametros("@IDAjusteTipo", ajuste.IDAjusteTipo);
                db.AdicionarParametros("@IDUserAuth", ajuste.IDUserAuth);

                //--- convert null parameters
                db.ConvertNullParams();

                //--- create query
                string query = db.CreateInsertSQL("tblCaixaAjuste");

                //--- insert AJUSTE
                var newID = (int)db.ExecutarInsertAndGetID(query);
                ajuste.IDAjuste = newID;

                // 2. INSERT MOVIMENTACAO
                //------------------------------------------------------
                var movimentacao = new objMovimentacao(null)
                {
                    MovTipo          = ajuste.MovValor >= 0 ? (byte)1 : (byte)2,
                    MovTipoDescricao = ajuste.MovValor >= 0 ? "E" : "S",
                    Consolidado      = true,
                    IDConta          = ajuste.IDConta,
                    IDSetor          = ajuste.IDSetor,
                    Setor            = ajuste.Setor,
                    MovData          = ajuste.MovData,
                    MovValor         = ajuste.MovValor,
                    IDOrigem         = (long)ajuste.IDAjuste,
                    Origem           = EnumMovOrigem.CaixaAjuste,           // origem ajuste
                    DescricaoOrigem  = ajuste.AjusteDescricao,
                    IDCaixa          = IDCaixa,
                };

                //--- insert MOVIMENTACAO
                var movID = new MovimentacaoBLL().InsertMovimentacao(movimentacao, ContaSldUpdate, SetorSldUpdate, dbTran);
                movimentacao.IDMovimentacao = movID;

                // 3. COMMIT AND RETURN
                //------------------------------------------------------
                if (dbTran == null)
                {
                    db.CommitTransaction();
                }

                return(movimentacao);
            }
            catch (Exception ex)
            {
                if (dbTran == null)
                {
                    db.RollBackTransaction();
                }
                throw ex;
            }
        }