protected void btnUpdateGrades_Click(object sender, EventArgs e) { if (ValidatePage()) { string gradeName = txtGradeName.Text; string gradeDate = DateTime.ParseExact(txtGradeDate.Text, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture).ToString("yyyy/MM/dd"); int grd_id = Convert.ToInt32(Request.QueryString["grd_id"]); DataRow drTest = ch_gradesSvc.GetTest(grd_id); int les_id = Convert.ToInt32(drTest["les_id"].ToString()); ch_grades newGrades = new ch_grades(les_id, gradeName, gradeDate); lblErr.Text = ch_gradesSvc.UpdateGrade(grd_id, newGrades); ch_users_gradesSvc.DeleteUsersGradesByTest(grd_id); foreach (GridViewRow gvr in gvStudents.Rows) { int usr_id = Convert.ToInt32(((Label)gvr.FindControl("lbl_usr_id")).Text); int grd_num = Convert.ToInt32(((TextBox)gvr.FindControl("txtGrade")).Text); ch_users_grades usr_grd = new ch_users_grades(usr_id, grd_id, grd_num); ch_users_gradesSvc.AddUsrGrade(usr_grd); } if (lblErr.Text == "") { Response.Redirect("Grades.aspx"); } } }
protected void btnAddGrades_Click(object sender, EventArgs e) { if (ValidatePage()) { string gradeName = txtGradeName.Text; string gradeDate = DateTime.ParseExact(txtGradeDate.Text, "dd/MM/yyyy", System.Globalization.CultureInfo.InvariantCulture).ToString("yyyy/MM/dd"); int les_id = Convert.ToInt32(ddlLessons.SelectedValue); ch_grades newGrades = new ch_grades(les_id, gradeName, gradeDate); lblErr.Text = ch_gradesSvc.AddGrade(newGrades); int last_grd_id = ch_gradesSvc.GetMaxId(); foreach (GridViewRow gvr in gvStudents.Rows) { int usr_id = Convert.ToInt32(((Label)gvr.FindControl("lbl_usr_id")).Text); int grd_num = Convert.ToInt32(((TextBox)gvr.FindControl("txtGrade")).Text); ch_users_grades usr_grd = new ch_users_grades(usr_id, last_grd_id, grd_num); ch_users_gradesSvc.AddUsrGrade(usr_grd); } if (lblErr.Text == "") { Response.Redirect("Grades.aspx"); } } }
/// <summary> /// Update a grade record in the database by grd_id /// </summary> /// <param name="grd_id">grade id</param> /// <param name="newGrades">new grade to update</param> /// <returns>string of an error or a string.Empty if the action is completed</returns> public static string UpdateGrade(int grd_id, ch_grades newGrades) { string queryIsExist = "SELECT COUNT(grd_id) FROM ch_grades "; queryIsExist += "WHERE les_id = " + newGrades.les_Id + " AND grd_name = '" + newGrades.grd_Name + "'"; int num = Convert.ToInt32(Connect.MathAction(queryIsExist, "ch_grades")); if (num > 1) { return("כבר קיים מבחן בעל שם זהה באותו שיעור"); } string queryUpdate = "UPDATE ch_grades SET les_id = " + newGrades.les_Id + ", grd_name = '" + newGrades.grd_Name + "', grd_date = '" + newGrades.grd_Date + "' WHERE grd_id = " + grd_id; Connect.DoAction(queryUpdate, "ch_grades"); return(""); }
/// <summary> /// Adds a new record of grade to the database. /// </summary> /// <param name="newGrades">The grade to add</param> /// <returns>string of an error or a string.Empty if the action is completed</returns> public static string AddGrade(ch_grades newGrades) { string queryIsExist = "SELECT COUNT(grd_id) FROM ch_grades "; queryIsExist += "WHERE les_id = " + newGrades.les_Id + " AND grd_name = '" + newGrades.grd_Name + "'"; int num = Convert.ToInt32(Connect.MathAction(queryIsExist, "ch_grades")); if (num > 0) { return("כבר קיים מבחן בעל שם זהה באותו שיעור"); } string queryInsert = "INSERT INTO ch_grades(les_id, grd_name, grd_date) VALUES(" + newGrades.les_Id + ", '" + newGrades.grd_Name + "', '" + newGrades.grd_Date + "')"; Connect.DoAction(queryInsert, "ch_grades"); return(""); }