Ejemplo n.º 1
0
        public ActionResult SearchMarksBySurname(string Person)
        {
            string[] parts = Person.Split(' ');
            List <PupilWithClass> pupils = new List <PupilWithClass>();

            if (parts.Length == 3)
            {
                string part1 = parts[0];
                string part2 = parts[1];
                string part3 = parts[2];

                pupils = PupilsDB.SearchPupilByThreeParametersAndClass(part1, part2, part3, TeacherController.classID);
            }
            else if (parts.Length == 2)
            {
                string part1 = parts[0];
                string part2 = parts[1];

                pupils = PupilsDB.SearchPupilByTwoParametersAndClass(part1, part2, TeacherController.classID);
            }

            if (pupils.Count != 0)
            {
                ViewBag.Pupil = pupils[0];
            }

            List <Pupil> pupilsInClass = PupilsDB.GetPupilsInClass(TeacherController.classID);

            ViewBag.Pupils = PupilsDB.GetPupilsInClass(TeacherController.classID);

            List <List <Subject> > subjects = new List <List <Subject> >();

            for (int i = 0; i < pupilsInClass.Count; i++)
            {
                subjects.Add(SubjectsDB.GetPupilSubjects(pupilsInClass[i].Pupil_ID));
            }

            // Предметы по которым у ученика есть оценки.
            ViewBag.Subjects = subjects;

            List <List <List <Mark> > > marks = new List <List <List <Mark> > >();

            for (int i = 0; i < pupilsInClass.Count; i++)
            {
                marks.Add(new List <List <Mark> >(subjects[i].Count));
                for (int j = 0; j < subjects[i].Count; j++)
                {
                    marks[i].Add(MarksDB.GetPupilSubjectMark(pupilsInClass[i].Pupil_ID, subjects[i][j].Subject_ID));
                }
            }

            ViewBag.Marks = marks;

            return(PartialView());
        }