예제 #1
0
        public IEnumerable <Familia> Classificar(FamiliaDto[] familiasDto)
        {
            var criterios = _criterioRepositorio.ObterTodos();
            var familias  = familiasDto.Where(f => f.Status == Status.CadastroValido)
                            .Select(MapeadorDeFamilia.Mapear).ToList();
            var pontuadorDeFamilias = new PontuacaoDeFamilias();

            foreach (var familia in familias)
            {
                foreach (var criterio in criterios)
                {
                    pontuadorDeFamilias.Pontuar(criterio, familia);
                }
            }

            var familiasOrdenadasPorPontuacao = familias.OrderByDescending(f => f.Pontuacao).ToList();

            EnviarParaOContemplados(familiasOrdenadasPorPontuacao);
            return(familiasOrdenadasPorPontuacao);
        }
예제 #2
0
 public PontuacaoDeFamiliasTeste()
 {
     _pontuacaoDeFamilias         = new PontuacaoDeFamilias();
     _criterioDeRendaInferiorA900 = new CriterioDeRendaInferiorA900();
 }