// 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); }
// 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); }