public Student getStudent(String Conditions) { List <String> itemList = new List <String>(); Student _stud = new Student(); itemList = FetchList(TPerson, "*", Conditions); _stud.USERNAME = itemList[0]; _stud.PASSWORD = itemList[1]; _stud.ID = itemList[2]; _stud.FIRSTNAME = itemList[3]; _stud.LASTNAME = itemList[4]; _stud.MAIL = itemList[5]; _stud.PHONE = itemList[6]; _stud.GENDER = (Gender)(Convert.ToInt32(itemList[7])); _stud.DEPT = (Department)(Convert.ToInt32(itemList[8])); //-------------------------------------------------------------------------------------------// itemList = FetchList(TStudent, "*", "id = " + _stud.ID); //-------------------------------------------------------------------------------------------// _stud.AVERAGE = Convert.ToSingle(itemList[1]); _stud.STATE = Convert.ToBoolean(itemList[2]); _stud.decrypt_books(itemList[3]); _stud.decrypt_courses(itemList[4]); _stud.decrypt_grades(itemList[5]); _stud.YEAR = (Year)(Convert.ToInt32(itemList[6])); _stud.SEMESTER = (Semester)(Convert.ToInt32(itemList[7])); return(_stud); }
public void updateGrade(String id, String cnum, String grade) { List <String> itemList = new List <String>(); Student stud = new Student(); itemList = FetchList(TStudent, "*", "id = " + id); String courses = itemList[4]; String grades = itemList[5]; courses = courses.Remove(courses.IndexOf(cnum), cnum.Length + 1); grades += cnum + "$" + grade + "#"; stud.decrypt_grades(grades); stud.calc_avg(); SimpleUpdate(TStudent, "courses = '" + courses + "', grades = '" + grades + "', average = " + stud.AVERAGE, "id = " + id); stud = getStudent("id = " + id); DataTable gdt = FetchTable(TCourse, "Course_Number", "Accademic_Year = " + (int)stud.YEAR + " and Semester = " + (int)stud.SEMESTER + " and (Department = 0 or Department = " + (int)stud.DEPT + ")").Tables[TCourse]; List <String> listok = new List <String>(); for (int i = 0; i < gdt.Rows.Count; i++) { listok.Add(gdt.Rows[i].ItemArray[0].ToString()); } for (int i = 0; i < listok.Count; i++) { Boolean flag = false; for (int j = 0; j < stud.GRADES.Count; j++) { if (stud.GRADES[j].CNUM == listok[i]) { flag = true; break; } } if (flag == false) { return; } } stud.Advance(); SimpleUpdate(TStudent, "_year = " + (int)stud.YEAR + ", Semester = " + (int)stud.SEMESTER, "id = " + id); }