public LearniningCapacity GetStudentLearnCapacity(string _studentID, int _grade, int _semester = 3) { ScoreDA scoreDA = new ScoreDA(); double[] scoreLimit = { 8.0, 6.5, 5.0, 3.5, 2.0 }; LearniningCapacity learniningCapacity = new LearniningCapacity(); learniningCapacity.type = (AbstractLearn.Type)(_semester - 1); List <AverageScore> averageScores = new List <AverageScore>(); bool success = scoreDA.GetAverageScore(_studentID, _grade, averageScores); if (!success) { return(null); } int result = 5; if (averageScores[_semester - 1].Value == -1) { learniningCapacity.LearnCapacity = LearniningCapacity.HocLuc.ChuaXet; return(learniningCapacity); } else { for (int i = 0; i < scoreLimit.Length; i++) { if (averageScores[_semester - 1].Value >= scoreLimit[i]) { result = i; break; } } if (result < 4) { //xét điều kiện điểm từng môn List <Score> subjectScore = new List <Score>(); //cả năm if (_semester > 2) { List <Score> subjectScore2 = new List <Score>(); scoreDA.GetAllAverageSubjectScore(_studentID, _grade, 1, subjectScore); scoreDA.GetAllAverageSubjectScore(_studentID, _grade, 2, subjectScore2); for (int i = 0; i < subjectScore.Count; i++) { subjectScore[i].Value = (subjectScore[i].Value + subjectScore2[i].Value) / 2; if (subjectScore[i].Value < scoreLimit[result + 1]) { result++; break; } } } else { scoreDA.GetAllAverageSubjectScore(_studentID, _grade, _semester, subjectScore); for (int i = 0; i < subjectScore.Count; i++) { if (subjectScore[i].Value < scoreLimit[result + 1]) { result++; break; } } } } } learniningCapacity.LearnCapacity = (LearniningCapacity.HocLuc)result; return(learniningCapacity); }
public ScoreController() { scoreDA = new ScoreDA(); subjectDA = new SubjectDA(); }