Beispiel #1
0
        async private void populateCalificacionCollection(string rubricaUid, string evaluacionUid)
        {
            IList <Estudiante> estudiantes = await FirebaseDB.getEstudiantesForAsignatura(asignaturaUid);

            Rubrica rubrica = await FirebaseDB.getRubricaForId(rubricaUid);

            List <Categoria> categorias = await FirebaseDB.getCategoriasForRubrica(rubricaUid);

            foreach (var estudiante in estudiantes)
            {
                System.Diagnostics.Debug.WriteLine(estudiante.Name);
                CalificacionEvaluacion calificacionEvaluacion = new CalificacionEvaluacion(estudiante);
                var calificacionItem = await firebase
                                       .Child(Utils.FireBase_Entity.ASIGNATURAS)
                                       .Child(asignaturaUid)
                                       .Child(Utils.FireBase_Entity.EVALUACIONES)
                                       .Child(evaluacionUid)
                                       .Child(Utils.FireBase_Entity.CALIFICACION)
                                       .PostAsync(calificacionEvaluacion);

                foreach (var categoria in categorias)
                {
                    CalificacionCategoria calificacionCategoria = new CalificacionCategoria(categoria);
                    var categoriaItem = await firebase
                                        .Child(Utils.FireBase_Entity.ASIGNATURAS)
                                        .Child(asignaturaUid)
                                        .Child(Utils.FireBase_Entity.EVALUACIONES)
                                        .Child(evaluacionUid)
                                        .Child(Utils.FireBase_Entity.CALIFICACION)
                                        .Child(calificacionItem.Key)
                                        .Child(Utils.FireBase_Entity.CATEGORIAS)
                                        .PostAsync(calificacionCategoria);

                    List <Elemento> elementos = await FirebaseDB.getElementosForCategoria(rubricaUid, categoria.Uid);

                    foreach (var elemento in elementos)
                    {
                        CalificacionElemento calificacionElemento = new CalificacionElemento(0, elemento);
                        var elementoItem = await firebase
                                           .Child(Utils.FireBase_Entity.ASIGNATURAS)
                                           .Child(asignaturaUid)
                                           .Child(Utils.FireBase_Entity.EVALUACIONES)
                                           .Child(evaluacionUid)
                                           .Child(Utils.FireBase_Entity.CALIFICACION)
                                           .Child(calificacionItem.Key)
                                           .Child(Utils.FireBase_Entity.CATEGORIAS)
                                           .Child(categoriaItem.Key)
                                           .Child(Utils.FireBase_Entity.ELEMENTOS)
                                           .PostAsync(calificacionElemento);
                    }
                }
            }
        }
Beispiel #2
0
        public static async Task <List <CalificacionCategoria> > getCategoriasForCalificacion(string asignaturaUid, string evaluacionUid, string calificacionUid)
        {
            var calificacionCategorias = new List <CalificacionCategoria>();
            var list = (await FIREBASE
                        .Child(Utils.FireBase_Entity.ASIGNATURAS)
                        .Child(asignaturaUid)
                        .Child(Utils.FireBase_Entity.EVALUACIONES)
                        .Child(evaluacionUid)
                        .Child(Utils.FireBase_Entity.CALIFICACION)
                        .Child(calificacionUid)
                        .Child(Utils.FireBase_Entity.CATEGORIAS)
                        .OnceAsync <CalificacionCategoria>());

            foreach (var item in list)
            {
                CalificacionCategoria calificacionCategoria = item.Object as CalificacionCategoria;
                calificacionCategoria.Uid = item.Key;
                calificacionCategorias.Add(calificacionCategoria);
            }
            return(calificacionCategorias);
        }