Exemplo n.º 1
0
        // INSERT ENTRADA | ARECEBER CHEQUE
        //------------------------------------------------------------------------------------------------------------
        private objAReceber insertAReceberCheque(
            objAReceber receber,
            objMovimentacao entrada,
            Action <int, decimal> contaSaldoUpdate,
            AcessoDados dbTran)
        {
            // create TRANSFER SAIDA
            objMovimentacao transfSaida = new objMovimentacao(null)
            {
                MovTipo         = 3,                      // TRANSFERENCIA
                Origem          = EnumMovOrigem.AReceber, // tblAReceber
                IDOrigem        = (long)receber.IDAReceber,
                IDConta         = receber.IDContaProvisoria,
                IDSetor         = null,
                MovData         = entrada.MovData,
                MovValor        = entrada.MovValor * (-1),
                DescricaoOrigem = "TRANSFERÊNCIA: Depósito de Cheque",
            };

            // create TRANSFER ENTRADA
            objMovimentacao transfEntrada = new objMovimentacao(null)
            {
                MovTipo         = 3,                      // TRANSFERENCIA
                Origem          = EnumMovOrigem.AReceber, // tblAReceber
                IDOrigem        = (long)receber.IDAReceber,
                IDConta         = entrada.IDConta,
                IDSetor         = null,
                MovData         = entrada.MovData,
                MovValor        = entrada.MovValor,
                DescricaoOrigem = "TRANSFERÊNCIA: Compensação de Cheque",
            };

            try
            {
                MovimentacaoBLL mBLL = new MovimentacaoBLL();

                // Update FIRST Entrada: CONSOLIDADO = TRUE
                mBLL.UpdateConsolidado(receber.IDMovProvisoria, true, dbTran);

                // Insert transf saida
                mBLL.InsertMovimentacao(transfSaida, contaSaldoUpdate, null, dbTran);

                // Insert transf entrada
                mBLL.InsertMovimentacao(transfEntrada, contaSaldoUpdate, null, dbTran);

                // update AReceber
                UpdateAReceber(receber, dbTran);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(receber);
        }
Exemplo n.º 2
0
        // ESTORNA ARECEBER
        //------------------------------------------------------------------------------------------------------------
        public objAReceber estornaAReceber(objAReceber receber,
                                           Action <int, decimal> contaSaldoUpdate,
                                           Action <int, decimal> setorSaldoUpdate)
        {
            AcessoDados db = null;

            // UPDATE CONSOLIDADO ENTRADA = FALSE
            // DELETE TRANSFER ENTRADA / SAIDA
            // DELETE COMISSAO SAIDA
            // UPDATE A RECEBER
            try
            {
                db = new AcessoDados();
                db.BeginTransaction();

                MovimentacaoBLL mBLL = new MovimentacaoBLL();

                // Update FIRST Entrada: CONSOLIDADO = FALSE
                mBLL.UpdateConsolidado(receber.IDMovProvisoria, false, db);

                // REMOVE transf saida entrada
                mBLL.DeleteMovsByOrigem(EnumMovOrigem.AReceber, (long)receber.IDAReceber, contaSaldoUpdate, setorSaldoUpdate, db);

                // UPDATE Contribuicao
                var cBLL = new ContribuicaoBLL();
                cBLL.UpdateValorRecebidoEstorno(receber.IDContribuicao, receber.ValorRecebido, db);

                // UPDATE AReceber
                receber.ValorRecebido = 0;
                receber.IDSituacao    = 1;
                receber.Situacao      = "Em Aberto";
                UpdateAReceber(receber, db);

                // COMMIT
                db.CommitTransaction();
            }
            catch (Exception ex)
            {
                db.RollBackTransaction();
                throw ex;
            }

            return(receber);
        }