Пример #1
0
        public List <CourseInQuiryInfos> GetCourseInQuiryInfosList(int schoolYear, string semester, string loginId)
        {
            List <CourseInQuiryInfos> courseInQuiryInfosList = new List <CourseInQuiryInfos>();
            SchoolContext             db = new SchoolContext();
            Semester semester1           = Semester.F;

            if (semester == "第一學期")
            {
                semester1 = Semester.F;
            }
            else if (semester == "第二學期")
            {
                semester1 = Semester.S;
            }

            var Electives = db.Elective.Where(x => x.LogonId == loginId && x.StartingSchoolYear == schoolYear && x.Semester == semester1).OrderBy(x => x.ID).ToList();



            foreach (var e in Electives)
            {
                string requiredElective = "";
                string status1          = GetStatusProgress(e.Course.SignupBeginDate, e.Course.SignupEndDate);

                if (e.Course.RequiredElective == RequiredElective.E)
                {
                    requiredElective = "選";
                }
                else if (e.Course.RequiredElective == RequiredElective.R)
                {
                    requiredElective = "必";
                }

                string schoolNumber = "";

                if (e.Course.ClassroomId != null)
                {
                    schoolNumber = e.Course.Classroom.SchoolNumber;
                }

                CourseInQuiryInfos courseInQuiryInfos = new CourseInQuiryInfos
                {
                    CourseID          = e.Course.CourseID,
                    Subject           = e.Course.Subject,
                    SubjectNumber     = e.Course.SubjectNumber,
                    Credits           = e.Credits,
                    ClassYear         = schoolYear + " " + semester,
                    GradeClass        = e.Course.SectionDepartment.Section + e.Course.SectionDepartment.DepartmentAbbreviation + e.Course.Grade + e.Course.Class,
                    RequiredElective  = requiredElective,
                    TimeLocation      = GetTimeLocation(e.Course.ClassTimeId, e.Course.NumberOfHours, schoolNumber),
                    Instructor        = e.Course.ApplicationUser.UserName,
                    MaximumNum        = e.Course.MinNumber + "-" + e.Course.MaxNumber,
                    CurrentNum        = GetCurrentNum(e.Course.CourseID),
                    ApplicationUserId = e.Course.ApplicationUserId,
                    Status            = status1
                };
                courseInQuiryInfosList.Add(courseInQuiryInfos);
            }

            return(courseInQuiryInfosList);
        }
Пример #2
0
        public List <CourseInQuiryInfos> GetCourseInQuiryInfosList(int schoolYear, string semester, string courseSpecie, string section, string status, string loginId)
        {
            List <CourseInQuiryInfos> courseInQuiryInfosList = new List <CourseInQuiryInfos>();
            SchoolContext             db = new SchoolContext();
            Semester semester1           = Semester.F;

            if (semester == "第一學期")
            {
                semester1 = Semester.F;
            }
            else if (semester == "第二學期")
            {
                semester1 = Semester.S;
            }


            if (courseSpecie == "系所課程")
            {
                var Courses = db.Course.Where(x => x.StartingSchoolYear == schoolYear && x.Semester == semester1 && x.SectionDepartment.CourseSorts == CourseSorts.C &&
                                              x.SectionDepartment.Section == section && x.IsActive == true && x.LogonId == loginId).OrderBy(x => x.CourseID).ToList();


                foreach (var c in Courses)
                {
                    string requiredElective = "";
                    string status1          = GetStatusProgress(c.SignupBeginDate, c.SignupEndDate);

                    if (c.RequiredElective == RequiredElective.E)
                    {
                        requiredElective = "選";
                    }
                    else if (c.RequiredElective == RequiredElective.R)
                    {
                        requiredElective = "必";
                    }

                    string schoolNumber = "";

                    if (c.ClassroomId != null)
                    {
                        schoolNumber = c.Classroom.SchoolNumber;
                    }

                    if (status == status1 || status == null)
                    {
                        CourseInQuiryInfos courseInQuiryInfos = new CourseInQuiryInfos
                        {
                            CourseID          = c.CourseID,
                            Subject           = c.Subject,
                            SubjectNumber     = c.SubjectNumber,
                            Credits           = c.Credits,
                            ClassYear         = schoolYear + " " + semester,
                            GradeClass        = c.SectionDepartment.Section + c.SectionDepartment.DepartmentAbbreviation + c.Grade + c.Class,
                            RequiredElective  = requiredElective,
                            TimeLocation      = GetTimeLocation(c.ClassTimeId, c.NumberOfHours, schoolNumber),
                            Instructor        = c.ApplicationUser.UserName,
                            MaximumNum        = c.MinNumber + "-" + c.MaxNumber,
                            CurrentNum        = GetCurrentNum(c.CourseID),
                            ApplicationUserId = c.ApplicationUserId,
                            Status            = status1
                        };
                        courseInQuiryInfosList.Add(courseInQuiryInfos);
                    }
                }
            }
            else if (courseSpecie == "共同課程")
            {
                var Courses = db.Course.Where(x => x.StartingSchoolYear == schoolYear && x.Semester == semester1 && x.SectionDepartment.CourseSorts == CourseSorts.G &&
                                              x.SectionDepartment.Section == section && x.IsActive == true && x.LogonId == loginId).OrderBy(x => x.CourseID).ToList();


                foreach (var c in Courses)
                {
                    string requiredElective = "";
                    string status1          = GetStatusProgress(c.SignupBeginDate, c.SignupEndDate);

                    if (c.RequiredElective == RequiredElective.E)
                    {
                        requiredElective = "選";
                    }
                    else if (c.RequiredElective == RequiredElective.R)
                    {
                        requiredElective = "必";
                    }

                    string schoolNumber = "";

                    if (c.ClassroomId != null)
                    {
                        schoolNumber = c.Classroom.SchoolNumber;
                    }

                    if (status == status1 || status == null)
                    {
                        CourseInQuiryInfos courseInQuiryInfos = new CourseInQuiryInfos
                        {
                            CourseID          = c.CourseID,
                            Subject           = c.Subject,
                            SubjectNumber     = c.SubjectNumber,
                            Credits           = c.Credits,
                            ClassYear         = schoolYear + " " + semester,
                            GradeClass        = c.SectionDepartment.Section + c.SectionDepartment.DepartmentAbbreviation + c.Grade,
                            RequiredElective  = requiredElective,
                            TimeLocation      = GetTimeLocation(c.ClassTimeId, c.NumberOfHours, schoolNumber),
                            Instructor        = c.ApplicationUser.UserName,
                            MaximumNum        = c.MinNumber + "-" + c.MaxNumber,
                            CurrentNum        = GetCurrentNum(c.CourseID),
                            ApplicationUserId = c.ApplicationUserId,
                            Status            = status1
                        };


                        courseInQuiryInfosList.Add(courseInQuiryInfos);
                    }
                }
            }

            return(courseInQuiryInfosList);
        }