// Add all visible subject public List <string> SubjectsToInsert() { using (ClassbookEntities context = new ClassbookEntities()) { return(StudentSubjects.Select(w => w.Name).ToList()); } }
public async Task <IActionResult> Edit(int id, [Bind("ID,studentID,subjectID")] StudentSubjects studentSubjects) { if (id != studentSubjects.ID) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(studentSubjects); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!StudentSubjectsExists(studentSubjects.ID)) { return(NotFound()); } else { throw; } } return(RedirectToAction("Index")); } return(View(studentSubjects)); }
public async Task <IActionResult> Create([Bind("ID,studentID,subjectID")] StudentSubjects studentSubjects) { if (ModelState.IsValid) { _context.Add(studentSubjects); await _context.SaveChangesAsync(); return(RedirectToAction("Index")); } return(View(studentSubjects)); }
public virtual async Task <ActionResult> AssignToSubject([FromRoute] Guid id, Guid subjectId) { var studentAssign = new StudentSubjects() { StudentId = id, SubjectId = subjectId }; await _context.StudentSubjects.AddAsync(studentAssign); await _context.SaveChangesAsync(); return(NoContent()); }
private decimal?GetAverageGradeByPeriod(GradePeriod period) { if (StudentSubjects.Any()) { var studentSubjectWithGradeInTerm = StudentSubjects.Where(s => s.Grades.Any(g => g.Period == period)).ToList(); if (studentSubjectWithGradeInTerm.Any()) { return(studentSubjectWithGradeInTerm.Average(s => s.Grades.Where(g => g.Period == period).Average(g => g.Value))); } } return(null); }
public List <StudentSubjects> FillStudentSubjectsCollection(List <Subject> subjectsToAdd, int studentId) { List <StudentSubjects> collection = new List <StudentSubjects>(); foreach (var subject in subjectsToAdd) { var student = this.studentRepository.All().Where(x => x.Id == studentId).FirstOrDefault(); StudentSubjects item = new StudentSubjects(); item.Subject = subject; item.SubjectId = subject.Id; item.Student = student; item.StudentId = studentId; collection.Add(item); } return(collection); }
public async Task <ActionResult> AddStudentAsync(StudentSubjects pair) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { await this._service.AddAsync(pair); await this._service.SaveAsync(); } catch (Exception ex) { return(Problem(detail: $"Failed to add subject id {pair.SubjectId} for student id {pair.StudentId}. Error: {ex.Message}. InnerException: {ex.InnerException?.Message}")); } return(Ok()); }
public static void SeedDatabase(IApplicationBuilder app) { using (var scope = app.ApplicationServices.GetRequiredService <IServiceScopeFactory>().CreateScope()) { var context = scope.ServiceProvider.GetRequiredService <ApplicationDbContext>(); var course = new Course() { Name = "Computer Science" }; context.Courses.Add(course); var teacher = new Teacher() { Name = "Albert", Salary = 875, Birthday = DateTime.UtcNow.AddYears(-40) }; var teacher2 = new Teacher() { Name = "Sebastian", Salary = 1875, Birthday = DateTime.UtcNow.AddYears(-55) }; context.Teachers.Add(teacher); context.Teachers.Add(teacher2); var student = new Student() { Name = "Albertina", Birthday = DateTime.UtcNow.AddYears(-18), RegistrationNumber = "50032866" }; var student2 = new Student() { Name = "Sebastianita", Birthday = DateTime.UtcNow.AddYears(-20), RegistrationNumber = "50032867" }; context.Students.Add(student); context.Students.Add(student2); var subject = new Subject() { Name = "Object Oriented Programming", Course = course, Teacher = teacher }; var subject2 = new Subject() { Name = "Algorithms", Course = course, Teacher = teacher2 }; var subject3 = new Subject() { Name = "Math", Course = course, Teacher = teacher }; context.Subjects.Add(subject); context.Subjects.Add(subject2); context.Subjects.Add(subject3); var studentSubject = new StudentSubjects() { Student = student, Subject = subject, Grade = 50 }; var studentSubject2 = new StudentSubjects() { Student = student2, Subject = subject, Grade = 75 }; var studentSubject3 = new StudentSubjects() { Student = student, Subject = subject2, Grade = 50 }; var studentSubject4 = new StudentSubjects() { Student = student2, Subject = subject3, Grade = 50 }; context.StudentSubjects.Add(studentSubject); context.StudentSubjects.Add(studentSubject2); context.StudentSubjects.Add(studentSubject3); context.StudentSubjects.Add(studentSubject4); context.SaveChanges(); } }
public ActionResult Dashboard() { string dashboardOutput = StudentWeb.GetStudentDetails(Convert.ToInt32(Session["UserId"].ToString())); JObject studentUnderParentparsing = JObject.Parse(dashboardOutput); // load login details in student general class StudentGeneralDetails _studentDetails = new StudentGeneralDetails(); _studentDetails.BoardName = (String)studentUnderParentparsing["Table"][0]["BoardName"]; _studentDetails.CityName = (String)studentUnderParentparsing["Table"][0]["CityName"]; _studentDetails.ClassName = (String)studentUnderParentparsing["Table"][0]["ClassName"]; _studentDetails.DistrictName = (String)studentUnderParentparsing["Table"][0]["DistrictName"]; _studentDetails.EmailAddress = (String)studentUnderParentparsing["Table"][0]["EmailAddress"]; _studentDetails.Name = (String)studentUnderParentparsing["Table"][0]["FirstName"]; _studentDetails.PhoneNumber = (String)studentUnderParentparsing["Table"][0]["PhoneNumber"]; _studentDetails.StateName = (String)studentUnderParentparsing["Table"][0]["StateName"]; _studentDetails.StudentId = (Int32)studentUnderParentparsing["Table"][0]["StudentId"]; _studentDetails.InstitutionName = (String)studentUnderParentparsing["Table"][0]["InstitutionName"]; // Create Object for class StudentDashboard _StudentDashboardDetails = new StudentDashboard(); StudentRank _StudentRankDetails = new StudentRank(); OverallAvailableTest _StudentOverallAvailableTest = new OverallAvailableTest(); OverallLastFiveTest _StudentOverallLastFiveTest = new OverallLastFiveTest(); // Get Dashboard Details with respect to student id form service String _GetStudentDashboardDetails = StudentWeb.StudentDashboardDetails(Convert.ToInt32(Session["UserId"].ToString())); // Get Student Rank Details form service with respect to student id String _GetStudentDashboardDetails1 = StudentWeb.GetStudentDashboard(Convert.ToInt32(Session["UserId"].ToString())); // Parse the student dashbord details form Json Student dashboard JObject Studentparsing = JObject.Parse(_GetStudentDashboardDetails); // parse the student rank details form Json Student dashboard Details1 JObject Studentparsing1 = JObject.Parse(_GetStudentDashboardDetails1); // int _studentPerformanceCount = Studentparsing["Table3"].Count(); _StudentRankDetails.CityRank = (Int32)Studentparsing1["Table"][0]["CityRank"]; _StudentRankDetails.DistrictRank = (Int32)Studentparsing1["Table"][0]["DistrictRank"]; _StudentRankDetails.InstitutionRank = (Int32)Studentparsing1["Table"][0]["InstitutionRank"]; _StudentRankDetails.StateRank = (Int32)Studentparsing1["Table"][0]["StateRank"]; int _SubjectPercentageCount = (Int32)Studentparsing["Table1"].Count(); List <SubjectPercentage> _SubjectPercentageList = new List <SubjectPercentage>(); for (int i = 0; i < _SubjectPercentageCount; i++) { SubjectPercentage _Subjectpercentage = new SubjectPercentage(); _Subjectpercentage.SubjectId = (Int32)Studentparsing["Table1"][i]["SubjectId"]; _Subjectpercentage.Percentage = (Int32)Studentparsing["Table1"][i]["Percentage"]; _Subjectpercentage.SubjectName = (String)Studentparsing["Table1"][i]["SubjectName"]; _SubjectPercentageList.Add(_Subjectpercentage); } List <OverallLastFiveTest> _LastFiveTestList = new List <OverallLastFiveTest>(); int _LastFiveTestCountCount = (Int32)Studentparsing["Table2"].Count(); if (_LastFiveTestCountCount > 5) { _LastFiveTestCountCount = 5; } for (int i = 0; i < _LastFiveTestCountCount; i++) { OverallLastFiveTest _LastFiveTest = new OverallLastFiveTest(); _LastFiveTest.SubjectID = (Int32)Studentparsing["Table2"][i]["SubjectId"]; _LastFiveTest.Percentage = (Int32)Studentparsing["Table2"][i]["Percentage"]; _LastFiveTest.SubjectName = (String)Studentparsing["Table2"][i]["SubjectName"]; _LastFiveTest.TestId = (Int32)Studentparsing["Table2"][i]["TestId"]; _LastFiveTest.TestType = (String)Studentparsing["Table2"][i]["TestType"]; _LastFiveTestList.Add(_LastFiveTest); } int _OverallAvailableTestCount = (Int32)Studentparsing["Table3"].Count(); //Studentparsing["Table3"].Count(); List <OverallAvailableTest> _OverallAvailableTestList = new List <OverallAvailableTest>(); //If Test Count is more than 5 show only five test //It is not last five test if (_OverallAvailableTestCount > 5) { _OverallAvailableTestCount = 5; } // adding five test details for (int i = 0; i < _OverallAvailableTestCount; i++) { OverallAvailableTest _OverallAvailableTest = new OverallAvailableTest(); _OverallAvailableTest.SubjectID = (Int32)Studentparsing["Table3"][i]["SubjectId"]; _OverallAvailableTest.SubjectName = (String)Studentparsing["Table3"][i]["SubjectName"]; _OverallAvailableTest.TestId = (Int32)Studentparsing["Table3"][i]["TestId"]; _OverallAvailableTest.TestType = (String)Studentparsing["Table3"][i]["TestType"]; _OverallAvailableTestList.Add(_OverallAvailableTest); } //ADding Subject in Global int _SubjectCount = (Int32)Studentparsing["Table4"].Count(); List <StudentSubjects> _SubjectDetailsList = new List <StudentSubjects>(); for (int i = 0; i < _SubjectCount; i++) { StudentSubjects _SubjectDetails = new StudentSubjects(); _SubjectDetails.SubjectName = (String)Studentparsing["Table4"][i]["SubjectName"]; _SubjectDetails.SubjectID = (Int32)Studentparsing["Table4"][i]["SubjectId"]; _SubjectDetailsList.Add(_SubjectDetails); } // Get the Rows Count in Good, Bad and Average int goodPerformingCount = Studentparsing["Table5"].Count(); // Good performace int averagePerformingCount = Studentparsing["Table6"].Count(); // Average performance int badPerformingCount = Studentparsing["Table7"].Count(); // Bad performance // Create Object for Good, Average, Bad list List <GoodPerformingSubject> _goodPerformingSubjectList = new List <GoodPerformingSubject>(); List <AveragePerformingSubject> _averagePerformingSubjectList = new List <AveragePerformingSubject>(); List <BadPerformingSubject> _badPerformingSubjectList = new List <BadPerformingSubject>(); // Add good performing into list #region Good Performing if (goodPerformingCount > 0) { if (goodPerformingCount > 5) { for (int i = 0; i < 5; i++) { GoodPerformingSubject _goodPerformingSubject = new GoodPerformingSubject(); _goodPerformingSubject.SubjectId = (Int32)Studentparsing["Table5"][i]["SubjectId"]; _goodPerformingSubject.SubjectName = (string)Studentparsing["Table5"][i]["SubjectName"]; _goodPerformingSubject.LessionId = (Int32)Studentparsing["Table5"][i]["LessionId"]; _goodPerformingSubject.LessionName = (string)Studentparsing["Table5"][i]["LessionName"]; _goodPerformingSubject.Topic = (string)Studentparsing["Table5"][i]["Topic"]; _goodPerformingSubject.Percentage = (Int32)Studentparsing["Table5"][i]["Percentage"]; _goodPerformingSubjectList.Add(_goodPerformingSubject); } } else { for (int i = 0; i < goodPerformingCount; i++) { GoodPerformingSubject _goodPerformingSubject = new GoodPerformingSubject(); _goodPerformingSubject.SubjectId = (Int32)Studentparsing["Table5"][i]["SubjectId"]; _goodPerformingSubject.SubjectName = (string)Studentparsing["Table5"][i]["SubjectName"]; _goodPerformingSubject.LessionId = (Int32)Studentparsing["Table5"][i]["LessionId"]; _goodPerformingSubject.LessionName = (string)Studentparsing["Table5"][i]["LessionName"]; _goodPerformingSubject.Topic = (string)Studentparsing["Table5"][i]["Topic"]; _goodPerformingSubject.Percentage = (Int32)Studentparsing["Table5"][i]["Percentage"]; _goodPerformingSubjectList.Add(_goodPerformingSubject); } } } #endregion // Add Average performing list #region Average Performing if (averagePerformingCount > 0) { if (averagePerformingCount > 5) { for (int i = 0; i < 5; i++) { AveragePerformingSubject _AveragePerformingSubject = new AveragePerformingSubject(); _AveragePerformingSubject.SubjectId = (Int32)Studentparsing["Table6"][i]["SubjectId"]; _AveragePerformingSubject.SubjectName = (string)Studentparsing["Table6"][i]["SubjectName"]; _AveragePerformingSubject.LessionId = (Int32)Studentparsing["Table6"][i]["LessionId"]; _AveragePerformingSubject.LessionName = (string)Studentparsing["Table6"][i]["LessionName"]; _AveragePerformingSubject.Topic = (string)Studentparsing["Table6"][i]["Topic"]; _AveragePerformingSubject.Percentage = (Int32)Studentparsing["Table6"][i]["Percentage"]; _averagePerformingSubjectList.Add(_AveragePerformingSubject); } } else { for (int i = 0; i < averagePerformingCount; i++) { AveragePerformingSubject _AveragePerformingSubject = new AveragePerformingSubject(); _AveragePerformingSubject.SubjectId = (Int32)Studentparsing["Table6"][i]["SubjectId"]; _AveragePerformingSubject.SubjectName = (string)Studentparsing["Table6"][i]["SubjectName"]; _AveragePerformingSubject.LessionId = (Int32)Studentparsing["Table6"][i]["LessionId"]; _AveragePerformingSubject.LessionName = (string)Studentparsing["Table6"][i]["LessionName"]; _AveragePerformingSubject.Topic = (string)Studentparsing["Table6"][i]["Topic"]; _AveragePerformingSubject.Percentage = (Int32)Studentparsing["Table6"][i]["Percentage"]; _averagePerformingSubjectList.Add(_AveragePerformingSubject); } } } #endregion // Add Bad Performing List #region Bad Performing if (badPerformingCount > 0) { if (badPerformingCount > 5) { for (int i = 0; i < 5; i++) { BadPerformingSubject _BadPerformingSubject = new BadPerformingSubject(); _BadPerformingSubject.SubjectId = (Int32)Studentparsing["Table7"][i]["SubjectId"]; _BadPerformingSubject.SubjectName = (string)Studentparsing["Table7"][i]["SubjectName"]; _BadPerformingSubject.LessionId = (Int32)Studentparsing["Table7"][i]["LessionId"]; _BadPerformingSubject.LessionName = (string)Studentparsing["Table7"][i]["LessionName"]; _BadPerformingSubject.Topic = (string)Studentparsing["Table7"][i]["Topic"]; _BadPerformingSubject.Percentage = (Int32)Studentparsing["Table7"][i]["Percentage"]; _badPerformingSubjectList.Add(_BadPerformingSubject); } } else { for (int i = 0; i < badPerformingCount; i++) { BadPerformingSubject _BadPerformingSubject = new BadPerformingSubject(); _BadPerformingSubject.SubjectId = (Int32)Studentparsing["Table7"][i]["SubjectId"]; _BadPerformingSubject.SubjectName = (string)Studentparsing["Table7"][i]["SubjectName"]; _BadPerformingSubject.LessionId = (Int32)Studentparsing["Table7"][i]["LessionId"]; _BadPerformingSubject.LessionName = (string)Studentparsing["Table7"][i]["LessionName"]; _BadPerformingSubject.Topic = (string)Studentparsing["Table7"][i]["Topic"]; _BadPerformingSubject.Percentage = (Int32)Studentparsing["Table7"][i]["Percentage"]; _badPerformingSubjectList.Add(_BadPerformingSubject); } } } #endregion _StudentDashboardDetails.OverallAvailableTest = _OverallAvailableTestList; _StudentDashboardDetails.OverallLastFiveTest = _LastFiveTestList; _StudentDashboardDetails.StudentRank = _StudentRankDetails; _StudentDashboardDetails.SubjectPercentage = _SubjectPercentageList; _StudentDashboardDetails.StudentGeneralDetails = _studentDetails; _StudentDashboardDetails.GoodPerformingSubject = _goodPerformingSubjectList; _StudentDashboardDetails.AveragePerformingSubject = _averagePerformingSubjectList; _StudentDashboardDetails.BadPerformingSubject = _badPerformingSubjectList; return(View(_StudentDashboardDetails)); }
public ActionResult Index(int StudentId) { GlobalStudentID = StudentId; StudentGeneralDetails objStudentLoginDetails = new StudentGeneralDetails(); StudentDashboard _StudentDashboardDetails = new StudentDashboard(); if (GlobalStudentID != 0) { String _GetStudentGeneralDetails = SupportWeb.GetStudentDetails(GlobalStudentID); JObject StudentGeneralDetailsparsing = JObject.Parse(_GetStudentGeneralDetails); objStudentLoginDetails.BoardName = (string)StudentGeneralDetailsparsing["Table"][0]["BoardName"]; objStudentLoginDetails.CityName = (string)StudentGeneralDetailsparsing["Table"][0]["CityName"]; objStudentLoginDetails.ClassName = (string)StudentGeneralDetailsparsing["Table"][0]["ClassName"]; objStudentLoginDetails.DistrictName = (string)StudentGeneralDetailsparsing["Table"][0]["DistrictName"]; objStudentLoginDetails.EmailAddress = (string)StudentGeneralDetailsparsing["Table"][0]["EmailAddress"]; objStudentLoginDetails.Name = (string)StudentGeneralDetailsparsing["Table"][0]["FirstName"]; objStudentLoginDetails.PhoneNumber = (string)StudentGeneralDetailsparsing["Table"][0]["PhoneNumber"]; objStudentLoginDetails.GroupId = (int)StudentGeneralDetailsparsing["Table"][0]["GroupId"]; objStudentLoginDetails.StudentId = GlobalStudentID; objStudentLoginDetails.InstitutionName = (string)StudentGeneralDetailsparsing["Table"][0]["InstitutionName"]; StudentRank _StudentRankDetails = new StudentRank(); OverallAvailableTest _StudentOverallAvailableTest = new OverallAvailableTest(); OverallLastFiveTest _StudentOverallLastFiveTest = new OverallLastFiveTest(); String _GetStudentDashboardDetails1 = SupportWeb.GetStudentDashboard(GlobalStudentID); String _GetStudentDashboardDetails = SupportWeb.StudentDashboardDetails(GlobalStudentID); JObject Studentparsing = JObject.Parse(_GetStudentDashboardDetails); JObject Studentparsing1 = JObject.Parse(_GetStudentDashboardDetails1); try { _StudentRankDetails.CityRank = (Int32)Studentparsing1["Table"][0]["CityRank"]; _StudentRankDetails.DistrictRank = (Int32)Studentparsing1["Table"][0]["DistrictRank"]; _StudentRankDetails.InstitutionRank = (Int32)Studentparsing1["Table"][0]["InstitutionRank"]; _StudentRankDetails.StateRank = (Int32)Studentparsing1["Table"][0]["StateRank"]; } catch { return(RedirectToAction("CheckStudentDetails", "CustomerSupport")); } int _SubjectPercentageCount = (Int32)Studentparsing["Table1"].Count(); List <SubjectPercentage> _SubjectPercentageList = new List <SubjectPercentage>(); for (int i = 0; i < _SubjectPercentageCount; i++) { SubjectPercentage _Subjectpercentage = new SubjectPercentage(); _Subjectpercentage.SubjectId = (Int32)Studentparsing["Table1"][i]["SubjectId"]; _Subjectpercentage.Percentage = (Int32)Studentparsing["Table1"][i]["Percentage"]; _Subjectpercentage.SubjectName = (String)Studentparsing["Table1"][i]["SubjectName"]; _SubjectPercentageList.Add(_Subjectpercentage); } List <OverallLastFiveTest> _LastFiveTestList = new List <OverallLastFiveTest>(); int _LastFiveTestCountCount = (Int32)Studentparsing["Table2"].Count(); for (int i = 0; i < _LastFiveTestCountCount; i++) { OverallLastFiveTest _LastFiveTest = new OverallLastFiveTest(); _LastFiveTest.SubjectID = (Int32)Studentparsing["Table2"][i]["SubjectId"]; _LastFiveTest.Percentage = (Int32)Studentparsing["Table2"][i]["Percentage"]; _LastFiveTest.SubjectName = (String)Studentparsing["Table2"][i]["SubjectName"]; _LastFiveTest.TestId = (Int32)Studentparsing["Table2"][i]["TestId"]; _LastFiveTest.TestType = (String)Studentparsing["Table2"][i]["TestType"]; _LastFiveTestList.Add(_LastFiveTest); } List <OverallAvailableTest> _OverallAvailableTestList = new List <OverallAvailableTest>(); for (int i = 0; i < 5; i++) { OverallAvailableTest _OverallAvailableTest = new OverallAvailableTest(); _OverallAvailableTest.SubjectID = (Int32)Studentparsing["Table3"][i]["SubjectId"]; _OverallAvailableTest.SubjectName = (String)Studentparsing["Table3"][i]["SubjectName"]; _OverallAvailableTest.TestId = (Int32)Studentparsing["Table3"][i]["TestId"]; _OverallAvailableTest.TestType = (String)Studentparsing["Table3"][i]["TestType"]; _OverallAvailableTestList.Add(_OverallAvailableTest); } //ADding Subject in Global int _SubjectCount = (Int32)Studentparsing["Table4"].Count(); List <StudentSubjects> _SubjectDetailsList = new List <StudentSubjects>(); for (int i = 0; i < _SubjectCount; i++) { StudentSubjects _SubjectDetails = new StudentSubjects(); _SubjectDetails.SubjectName = (String)Studentparsing["Table4"][i]["SubjectName"]; _SubjectDetails.SubjectID = (Int32)Studentparsing["Table4"][i]["SubjectId"]; _SubjectDetailsList.Add(_SubjectDetails); } _StudentDashboardDetails.StudentSubjects = _SubjectDetailsList; _StudentDashboardDetails.OverallAvailableTest = _OverallAvailableTestList; _StudentDashboardDetails.OverallLastFiveTest = _LastFiveTestList; _StudentDashboardDetails.StudentRank = _StudentRankDetails; _StudentDashboardDetails.SubjectPercentage = _SubjectPercentageList; _StudentDashboardDetails.StudentGeneralDetails = objStudentLoginDetails; return(View(_StudentDashboardDetails)); } else { _StudentDashboardDetails = null; return(View(_StudentDashboardDetails)); } }