Exemplo n.º 1
0
        public ObterConsultaPreviaNoMesResposta ObterConsultaPreviaNoMes(int mes, int ano, Programa programa)
        {
            //var infusoes = _infusaoRepositorio.ObterTodos();
            var infusoes        = _infusaoRepositorio.ObterTodasNoMes(mes, ano, programa);
            var totalPorClinica = from infusao in infusoes
                                  group infusao by infusao.Clinica.Codigo
                                  into i
                                  select new TotalPorClinica
            {
                QuantidadeDeInfusoes = i.Count(),
                ValorDasInfusoes     = i.Sum(it => it.Clinica.ValorDeInfusao),
                NomeDaClinica        = i.First().Clinica.Nome,
                CodigoDaClinica      = i.First().Clinica.Codigo
            };


            //var notas = _notaFiscalRepositorio.ObterTodasNoMes(mes, ano, programa);
            //var totalPorClinica = from nota in notas
            //                      group nota by nota.Clinica.Codigo
            //                          into g
            //                          select new TotalPorClinica
            //                                     {
            //                                         QuantidadeDeInfusoes = g.Sum(it => it.Infusoes.Count),
            //                                         ValorDasInfusoes = g.Sum(it => it.Valor),
            //                                         NomeDaClinica = g.First().Clinica.Nome,
            //                                         CodigoDaClinica = g.First().Clinica.Codigo
            //                                     };

            return(new ObterConsultaPreviaNoMesResposta
            {
                Clinicas = totalPorClinica,
                Sucesso = true
            });
        }