////CHECHKING PART OF CODE////



        //Get Teacher by SchoolClass and Subject
        public async Task <Teacher> GetTeacherBySubjectAndSchoolClass(int subjectId, int schoolClassId)
        {
            SchoolClassSubject result = await _context.SchoolClassSubjects.Where(x => x.SchoolClass.Id == schoolClassId && x.Subject.Id == subjectId).FirstOrDefaultAsync();

            if (result != null)
            {
                var resultTeacher = await _context.TeacherSchoolClassSubjects.Include("Teacher").Where(x => x.SchoolClassSubjectId == result.Id).Select(x => x.Teacher).FirstOrDefaultAsync();

                return(resultTeacher);
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 2
0
        protected override void Seed(ApplicationDbContext context)
        {
            var userManager = new ApplicationUserManager(new UserStore <ApplicationUser>(context));
            var roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(context));

            // Default roles
            var adminRole        = new IdentityRole("admin");
            var teacherRole      = new IdentityRole("teacher");
            var classteacherRole = new IdentityRole("classteacher");

            roleManager.Create(adminRole);
            roleManager.Create(teacherRole);
            roleManager.Create(classteacherRole);

            // Admin
            var userAdmin = new ApplicationUser
            {
                Email    = "*****@*****.**",
                UserName = "******"
            };

            string passwordAdmin = "123456";

            var result = userManager.Create(userAdmin, passwordAdmin);

            if (result.Succeeded)
            {
                userManager.AddToRole(userAdmin.Id, adminRole.Name);
            }

            // Teacher
            var userTeacher = new ApplicationUser
            {
                Email    = "*****@*****.**",
                UserName = "******"
            };

            string passwordTeacher = "123456";

            result = userManager.Create(userTeacher, passwordTeacher);

            if (result.Succeeded)
            {
                userManager.AddToRole(userTeacher.Id, teacherRole.Name);
            }

            var teacher = new Teacher
            {
                FirstName = "Ucha",
                LastName  = "Uchilkina",
                UserId    = userTeacher.Id
            };

            context.Teachers.Add(teacher);

            var sc5A = new SchoolClass {
                Name = "5A"
            };

            context.SchoolClasses.Add(sc5A);

            // Students
            var st1 = new Student
            {
                FirstName   = "Fedir",
                LastName    = "Melnychenko",
                SchoolClass = sc5A
            };

            context.Students.Add(st1);

            var st2 = new Student
            {
                FirstName   = "Ostap",
                LastName    = "Myronenko",
                SchoolClass = sc5A
            };

            context.Students.Add(st2);

            // Subjects
            var math = new Subject {
                Name = "Mathematic"
            };

            context.Subjects.Add(math);

            var geom = new Subject {
                Name = "Geometry"
            };

            context.Subjects.Add(geom);

            // Relations
            var sc5Amath = new SchoolClassSubject
            {
                SchoolClass = sc5A,
                Subject     = math
            };
            var sc5Ageom = new SchoolClassSubject
            {
                SchoolClass = sc5A,
                Subject     = geom
            };

            context.SchoolClassSubjects.Add(sc5Amath);
            context.SchoolClassSubjects.Add(sc5Ageom);

            context.TeacherSchoolClassSubjects.Add(new TeacherSchoolClassSubject
            {
                Teacher            = teacher,
                SchoolClassSubject = sc5Amath
            });
            context.TeacherSchoolClassSubjects.Add(new TeacherSchoolClassSubject
            {
                Teacher            = teacher,
                SchoolClassSubject = sc5Ageom
            });

            context.SaveChanges();

            // Marks
            var marks = new List <Mark>
            {
                new Mark {
                    Date      = DateTime.Today,
                    StudentId = st1.Id,
                    SubjectId = math.Id,
                    Value     = 10
                },
                new Mark {
                    Date      = DateTime.Today.AddDays(-1),
                    StudentId = st1.Id,
                    SubjectId = math.Id,
                    Value     = 11
                },
                new Mark {
                    Date      = DateTime.Today.AddDays(-5),
                    StudentId = st1.Id,
                    SubjectId = math.Id,
                    Value     = 3
                },
                new Mark {
                    Date      = DateTime.Today,
                    StudentId = st2.Id,
                    SubjectId = math.Id,
                    Value     = 9
                }
            };

            context.Marks.AddRange(marks);

            context.SaveChanges();
            base.Seed(context);
        }