public UtilRetorno excluir(ConciliacaoFinanceira OConciliacaoFinanceira) { OConciliacaoFinanceira.listaConciliacaoFinanceiraDetalhe.ForEach(item => { var flagReceita = true; var idLancamneto = UtilNumber.toInt32(item.idTituloReceitaPagamento); if (item.idTituloDespesaPagamento > 0) { flagReceita = false; idLancamneto = UtilNumber.toInt32(item.idTituloDespesaPagamento); } this.atualizaLancamentos(flagReceita, idLancamneto, null, null); }); var idUsuario = User.id(); db.ConciliacaoFinanceira.Where(x => x.id == OConciliacaoFinanceira.id).condicoesSeguranca() .Update(x => new ConciliacaoFinanceira { dtExclusao = DateTime.Now, idUsuarioExclusao = idUsuario }); return(UtilRetorno.newInstance(false)); }
public List <ConciliacaoFinanceira> gerarListaConciliacaoAgrupada(ConciliacaoAcaoForm viewModel) { var lista = new List <ConciliacaoFinanceira>(); var OConciliacaoFinanceira = new ConciliacaoFinanceira(); OConciliacaoFinanceira.descricao = viewModel.descricao; OConciliacaoFinanceira.dtConciliacao = viewModel.dtConciliacao; OConciliacaoFinanceira.listaConciliacaoFinanceiraDetalhe = new List <ConciliacaoFinanceiraDetalhe>(); var listaPagamentos = OReceitasDespesasVWBL.listar().Where(x => viewModel.idsLancamentos.Contains(x.idPagamento)).ToList(); for (int x = 0; x < viewModel.idsLancamentos.Count; x++) { var idPagamento = viewModel.idsLancamentos[x]; var flagTipoTitulo = viewModel.tiposLancamentos[x]; var OReceitaDespesa = listaPagamentos.FirstOrDefault(i => i.idPagamento == idPagamento && i.flagTipoTitulo == flagTipoTitulo); if (OReceitaDespesa == null) { continue; } var OConciliacaoFinanceiraDetalhe = new ConciliacaoFinanceiraDetalhe(); OConciliacaoFinanceiraDetalhe.idTituloReceitaPagamento = null; OConciliacaoFinanceiraDetalhe.idTituloDespesaPagamento = OReceitaDespesa.idPagamento; OConciliacaoFinanceiraDetalhe.valorConciliado = (OReceitaDespesa.valorRealizado - (OReceitaDespesa.valorTarifasTransacao + OReceitaDespesa.valorTarifasBancarias)).toDecimal(); if (OReceitaDespesa.flagTipoTitulo == "R") { OConciliacaoFinanceiraDetalhe.idTituloReceitaPagamento = OReceitaDespesa.idPagamento; OConciliacaoFinanceiraDetalhe.idTituloDespesaPagamento = null; } OConciliacaoFinanceira.listaConciliacaoFinanceiraDetalhe.Add(OConciliacaoFinanceiraDetalhe); } lista.Add(OConciliacaoFinanceira); return(lista); }
//Verificar se deve-se atualizar um registro existente ou criar um novo public bool salvar(ConciliacaoFinanceira OConciliacaoFinanceira) { OConciliacaoFinanceira.setDefaultInsertValues <ConciliacaoFinanceira>(); OConciliacaoFinanceira.idOrganizacao = User.idOrganizacao(); OConciliacaoFinanceira.listaConciliacaoFinanceiraDetalhe.ForEach(x => { x.setDefaultInsertValues(); x.idOrganizacao = User.idOrganizacao(); }); db.ConciliacaoFinanceira.Add(OConciliacaoFinanceira); db.SaveChanges(); var retorno = false; if (OConciliacaoFinanceira.id > 0) { OConciliacaoFinanceira.listaConciliacaoFinanceiraDetalhe.ForEach(item => { var flagReceita = true; var idLancamneto = UtilNumber.toInt32(item.idTituloReceitaPagamento); if (item.idTituloDespesaPagamento > 0) { flagReceita = false; idLancamneto = UtilNumber.toInt32(item.idTituloDespesaPagamento); } this.atualizaLancamentos(flagReceita, idLancamneto, OConciliacaoFinanceira.id, item.ConciliacaoFinanceira.dtConciliacao); }); retorno = true; } return(retorno); }