예제 #1
0
        public ArrayList Listar()
        {
            ArrayList Lista = new ArrayList();

            string[] filas = ClsNFichero.Leer("criterios.txt");
            for (int i = 0; i < filas.Length; i++)
            {
                ClsCriterio criterio = ClsNCriterio.Parse(filas[i]);
                Lista.Add(criterio);
            }
            return(Lista);
        }
예제 #2
0
        public ClsCriterio Buscar(int Id)
        {
            string fila = ClsNFichero.Buscar(Id.ToString(), "criterios.txt");

            if (fila != null)
            {
                return(ClsNCriterio.Parse(fila));
            }
            else
            {
                return(null);
            }
        }
예제 #3
0
        public bool Calificar(ClsIndicador indicadorActual)
        {
            double promedioIndicadores = 0;
            double promedioCriterios = 0;
            double promedioCapacidades = 0;
            double promedioNotas = 0;
            bool   modificoNotaFinal = false, modifocCapacidad = false,
                   modificoCriterio = false, modificoIndicador = false;

            //Actualizar nota indicador
            modificoIndicador = Modificar(indicadorActual);
            //Promediar Indicadores Hermanos
            ClsNCriterio ControladorCriterio = new ClsNCriterio();
            ClsCriterio  criterioPadre       = ControladorCriterio.Buscar(indicadorActual.CriterioId);
            ArrayList    listaIndicadores    = ControladorCriterio.ObtenerIndicadores(criterioPadre.Id);

            foreach (ClsIndicador indicador in listaIndicadores)
            {
                promedioIndicadores += indicador.Calificacion;
            }
            //Actualizar Criterio Padre de los indicador
            criterioPadre.Calificacion = promedioIndicadores / listaIndicadores.Count;
            modificoCriterio           = ControladorCriterio.Modificar(criterioPadre);
            //Promediar Criterios Hermanos
            ClsNCapacidad ControladorCapacidad = new ClsNCapacidad();
            ClsCapacidad  capacidadPadre       = ControladorCapacidad.Buscar(criterioPadre.CapacidadId);
            ArrayList     listaCriterios       = ControladorCapacidad.ObtenerCriterios(capacidadPadre.Id);

            foreach (ClsIndicador criterio in listaCriterios)
            {
                promedioCriterios += criterio.Calificacion;
            }
            //Actualizar Capacidad Padre de los Criterios
            capacidadPadre.Calificacion = promedioCriterios / listaCriterios.Count;
            modifocCapacidad            = ControladorCapacidad.Modificar(capacidadPadre);
            //Promediar Capacidades Hermanas
            ClsNNota  ControladorNota  = new ClsNNota();
            ClsNota   NotaPadre        = ControladorNota.Buscar(capacidadPadre.NotaId);
            ArrayList listaCapacidades = ControladorNota.ObtenerCapacidades(NotaPadre.Id);

            foreach (ClsIndicador nota in listaCapacidades)
            {
                promedioNotas += nota.Calificacion;
            }

            //Actualizar Nota Final
            NotaPadre.Calificacion = promedioCapacidades / listaCapacidades.Count;
            modificoNotaFinal      = ControladorNota.Modificar(NotaPadre);

            return(modificoIndicador && modificoCriterio && modifocCapacidad && modificoNotaFinal);
        }