/// <summary>
        /// Algoritmo que calcula la valoracion de la necesidad
        /// </summary>
        /// <param name="necesidad"></param>
        /// <returns>Necesidades</returns>
        public Necesidades calcularValoracion(Necesidades necesidad)
        {
            ServicioNecesidadValoraciones servicioNecesidadValoraciones = new ServicioNecesidadValoraciones(contexto);

            List <NecesidadesValoraciones> valoracionesObtenidas = servicioNecesidadValoraciones.obtenerValoracionesPorIDNecesidad(necesidad.IdNecesidad);
            decimal cantidadLikes        = 0;
            decimal cantidadDeVotaciones = valoracionesObtenidas.Count;
            decimal resultado            = 0;

            //   foreach (var item in valoracionesObtenidas)
            foreach (var item in necesidad.NecesidadesValoraciones)
            {
                if (item.Valoracion == "Like")
                {
                    cantidadLikes++;
                }
                resultado = (cantidadLikes / cantidadDeVotaciones * 100);
            }

            necesidad.Valoracion = Math.Round(resultado, 2);

            // necesidad.Valoracion = valoracion;


            Necesidades necesidadBD = necesidadesDAO.Actualizar(necesidad);

            if (necesidadBD == null)
            {
                return(null);
            }
            return(necesidadBD);
        }
示例#2
0
        /// <summary>
        /// Algoritmo que calcula la valoracion de la necesidad
        /// </summary>
        /// <param name="necesidad"></param>
        /// <returns>Necesidades</returns>
        public Necesidades calcularValoracion(Necesidades necesidad)
        {
            ServicioNecesidadValoraciones  servicioNecesidadValoraciones = new ServicioNecesidadValoraciones();
            List <NecesidadesValoraciones> valoracionesObtenidas         = servicioNecesidadValoraciones.obtenerValoracionesPorIDNecesidad(necesidad.IdNecesidad);
            decimal cantidadLikes        = 0;
            decimal cantidadDeVotaciones = valoracionesObtenidas.Count;

            foreach (var item in valoracionesObtenidas)
            {
                if (item.Valoracion == "Like")
                {
                    cantidadLikes++;
                }
            }

            decimal valoracion = cantidadLikes * cantidadDeVotaciones / 100;

            necesidad.Valoracion = valoracion;

            NecesidadesDAO necesidadesDAO = new NecesidadesDAO();
            Necesidades    necesidadBD    = necesidadesDAO.Actualizar(necesidad);

            if (necesidadBD == null)
            {
                return(null);
            }
            return(necesidadBD);
        }