Esempio n. 1
0
        public static List <RecursoValioso> CalcularResultadosMatriz(List <MatrizValoracion> Matriz, short IdEmpresa)
        {
            List <EscalaValoracion> escalaValoracion = MaestrosDA.ConsultarEscalaValoracion(IdEmpresa);
            List <RecursosEmpresa>  recursosEmpresa  = MaestrosDA.ConsultarRecursos(IdEmpresa);
            List <RecursoValioso>   RecursosValiosos = new List <RecursoValioso>();

            foreach (RecursosEmpresa item in recursosEmpresa)
            {
                List <MatrizValoracion> MatrizRecurso = Matriz.Where(p => p.IdRecurso == item.IdRecursoEmpresa).Distinct().ToList();
                decimal ValorTotalRecurso             = 0;

                foreach (MatrizValoracion itemRecurso in MatrizRecurso)
                {
                    decimal ValorClasificacion  = escalaValoracion.Where(p => p.IdClasificacion == itemRecurso.IdClasificacion).Sum(p => p.Valor);
                    decimal ValorCaracteristica = escalaValoracion.Where(p => p.IdCaracteristica == itemRecurso.IdCaracteristica).Single().Valor;
                    if (ValorClasificacion == ValorCaracteristica)
                    {
                        ValorTotalRecurso += itemRecurso.Valor * (ValorClasificacion / 100);
                    }
                    else
                    {
                        ValorTotalRecurso += itemRecurso.Valor * (ValorCaracteristica / 100); //* (ValorClasificacion / 100);
                    }
                }
                RecursosValiosos.Add(new RecursoValioso {
                    IdRecursoEmpresa = item.IdRecursoEmpresa, NombreRecurso = item.NombreRecurso, Valor = ValorTotalRecurso, IdTipoRecurso = item.TipoRecurso.IdTipoRecurso, TipoRecurso = item.TipoRecurso.NombreTipoRecurso
                });
            }
            return(RecursosValiosos);
        }
Esempio n. 2
0
        public static List <RecursoValioso> CalcularResultadosCaracteritica(List <MatrizValoracion> Matriz, short IdEmpresa)
        {
            List <EscalaValoracion> escalaValoracion = MaestrosDA.ConsultarEscalaValoracion(IdEmpresa);
            List <RecursosEmpresa>  recursosEmpresa  = MaestrosDA.ConsultarRecursos(IdEmpresa);
            List <RecursoValioso>   RecursosValiosos = new List <RecursoValioso>();

            foreach (EscalaValoracion item in escalaValoracion)
            {
                List <MatrizValoracion> MatrizCaracteristica = Matriz.Where(p => p.IdCaracteristica == item.IdCaracteristica).Distinct().ToList();
                decimal ValorTotalCaracteristica             = 0;
                foreach (MatrizValoracion itemCaracteristica in MatrizCaracteristica)
                {
                    decimal ValorClasificacion  = escalaValoracion.Where(p => p.IdClasificacion == itemCaracteristica.IdClasificacion).Sum(p => p.Valor);
                    decimal ValorCaracteristica = item.Valor;

                    ValorTotalCaracteristica += itemCaracteristica.Valor * (ValorCaracteristica / 100); //* (ValorClasificacion / 100);
                }
                RecursosValiosos.Add(new RecursoValioso {
                    Valor = ValorTotalCaracteristica, NombreCaracteristica = escalaValoracion.Where(p => p.IdCaracteristica == item.IdCaracteristica).Single().Caracteristica
                });
            }
            return(RecursosValiosos);
        }