private void DesnormalizarContas(List<ContaDTO> contasDTO, DespesaDeViagem despesaFiltrada) { var contaDTO = ObterContaPreenchidaPor(despesaFiltrada); var despesasOrdenadasPorMes = ObterDespesasOrdenadasPorMes(despesaFiltrada, despesaDeViagens); AdicionarTodasAsDespesasOrdenadasPorMesEmConta(contaDTO, despesasOrdenadasPorMes); contasDTO.Add(contaDTO); }
private ContaDTO ObterContaPreenchidaPor(DespesaDeViagem despesa) { ContaDTO contaDTO = new ContaDTO() { Despesas = new List<DespesaDTO>(), Despesa = despesa.Despesa, Conta = despesa.NomeCidade, ContaId = despesa.Id, DespesaOperacionalId = this.orcamentoDeViagemId, ValorTotal = this.orcamentoDeViagem.ObterTotalFiltradoPor(despesa) }; return contaDTO; }
private DespesaDTO TransformarDespesaEmDespesaDTO(DespesaDeViagem despesa) { return new DespesaDTO { Mes = (short)despesa.Mes, Valor = despesa.Quantidade, DespesaId = despesa.Id }; }
private IOrderedEnumerable<DespesaDeViagem> ObterDespesasOrdenadasPorMes(DespesaDeViagem despesaFiltrada, IList<DespesaDeViagem> despesas) { return despesas.Where( x => x.Despesa == despesaFiltrada.Despesa && x.NomeCidade == despesaFiltrada.NomeCidade).OrderBy (x => (short)x.Mes); }