public void AtualizaPendencias(PendenciasCliente pendenciasCliente, Pagamento pagamento) { if (pendenciasCliente.CashGames != null) { foreach (var cash in pendenciasCliente.CashGames) { cash.Situacao = Dominio.Enumeradores.SituacaoVenda.Pago; cash.Pagamento = pagamento; CashGameRepositorio.Atualizar(cash); } } if (pendenciasCliente.TorneiosCliente != null) { foreach (var torneio in pendenciasCliente.TorneiosCliente) { torneio.Situacao = Dominio.Enumeradores.SituacaoVenda.Pago; torneio.Pagamento = pagamento; TorneioClienteRepositorio.Atualizar(torneio); } } if (pendenciasCliente.Vendas != null) { foreach (var vendaModel in pendenciasCliente.Vendas) { var venda = VendaRepositorio.Buscar(vendaModel.IdVenda); venda.Situacao = Dominio.Enumeradores.SituacaoVenda.Pago; venda.Pagamento = pagamento; VendaRepositorio.Atualizar(venda); } } }
public PendenciasCliente ObterPendenciaCliente(long idCliente) { var pendencias = new PendenciasCliente { CashGames = CashGameRepositorio.ObterCashGamesPendente(idCliente), TorneiosCliente = ObterItensTorneioModel(TorneioClienteRepositorio.ObterTorneioClientePendente(idCliente)), Vendas = VendaRepositorio.ObterVendaModelPendente(idCliente), Pagamentos = PagamentoRepositorio.ObterPagamentosPendentes(idCliente) }; pendencias.IdCliente = idCliente; var cliente = ClienteRepositorio.Filtrar(d => d.Id == idCliente).Select(d => new { Nome = d.Nome, Saldo = d.Saldo }).FirstOrDefault(); pendencias.NomeCliente = cliente.Nome; pendencias.Saldo = cliente.Saldo; pendencias.ValorTotal = pendencias.CashGames.Sum(d => d.Valor); pendencias.ValorTotal += pendencias.TorneiosCliente.Sum(d => d.ValorTotal - (d.ValorPago ?? 0)); pendencias.ValorTotal += pendencias.Vendas.Sum(d => d.Valor); return(pendencias); }
public PendenciasCliente ObterDetalhesPagamento(long idPagamento) { var detalhesPagamento = new PendenciasCliente(); detalhesPagamento.CashGames = CashGameRepositorio.Filtrar(d => d.IdComprovantePagamento == idPagamento).ToList(); detalhesPagamento.TorneiosCliente = PagamentosAplicacao.ObterItensTorneioModel(TorneiosClienteRepositorio.Filtrar(d => d.IdComprovantePagamento == idPagamento).ToList()); var idNomeCliente = PagamentoRepositorio.Filtrar(d => d.Id == idPagamento).Select(d => new { Nome = d.Cliente.Nome, Id = d.IdCliente, Saldo = d.Cliente.Saldo }).FirstOrDefault(); detalhesPagamento.IdCliente = idNomeCliente.Id; detalhesPagamento.NomeCliente = idNomeCliente.Nome; detalhesPagamento.Saldo = idNomeCliente.Saldo; var vendas = VendaRepositorio.Filtrar(d => d.IdComprovantePagamento == idPagamento).ToList(); detalhesPagamento.Vendas = new List <VendaModel>(); detalhesPagamento.Parcelamentos = ParcelamentoPagamentoRepositorio.Filtrar(d => d.IdPagamento == idPagamento).ToList(); //if (detalhesPagamento.Parcelamentos.Count() == 1) // detalhesPagamento.Parcelamentos = new List<ParcelamentoPagamento>(); foreach (var venda in vendas) { detalhesPagamento.Vendas.Add(new VendaModel(venda, PreVendaRepositorio)); } return(detalhesPagamento); }