public async Task <IActionResult> Classes(TeacherClassesViewModel teacherClasses)
        {
            if (!ModelState.IsValid)
            {
                return(RedirectToAction("Classes"));
            }

            await _teacherClassesService.SetTeacherSubjectClasses(teacherClasses, User.Identity.Name);

            return(RedirectToAction("Classes"));
        }
        public async Task SetTeacherSubjectClasses(TeacherClassesViewModel teacherClasses, string user)
        {
            var subject = await _db.Subjects.FirstOrDefaultAsync(x => x.Name == teacherClasses.Subject);

            var classes = await _db.Classes.FirstOrDefaultAsync(x => x.Identification == teacherClasses.Class);

            var teacher = await _db.Teachers.FirstOrDefaultAsync(x => x.Mail == user);

            var teacherSubjectsClasses = await _db.TeacherSubjectClasses.FirstOrDefaultAsync(x => x.ClassID == classes.ClassID &&
                                                                                             x.SubjectID == subject.SubjectID);

            teacherSubjectsClasses.TeacherID = teacher.TeacherID;
            await _db.SaveChangesAsync();
        }
        public async Task <TeacherClassesViewModel> GetTeacherSubjectClasses(string user)
        {
            var subject = await _db.Subjects.ToListAsync();

            var classes = await _db.Classes.ToListAsync();

            var teacher = await _db.Teachers.Include(x => x.TeacherSubject).Include(x => x.TeachersSubjectsClasses).FirstOrDefaultAsync(x => x.Mail == user);

            var teacherClassesViewModel = new TeacherClassesViewModel
            {
                Subjects = subject,
                Teacher  = teacher,
                Classes  = classes
            };

            return(teacherClassesViewModel);
        }