public async Task <ActionResult> Add(TeacherActivity model, string submit) { if (model != null) { if (submit == "Thêm") { isAddNew = true; var entity = new TeacherActivity { ActivityId = model.ActivityId, TeacherId = model.TeacherId }; var existedEnitty = await _teacherActitvityService.IsTeacherRegisterActivity(model.TeacherId, model.ActivityId); if (existedEnitty) { SetAlert("Cán bộ đã tồn tại", "error"); } else { await _teacherActitvityService.AddTeacherActivityAsync(entity); SetAlert("Thêm thông tin thành công!", "success"); } return(RedirectToAction($"GetTeacherListByActivity/{model.ActivityId}")); } } return(RedirectToAction($"GetTeacherListByActivity/{model.ActivityId}")); }
public ActionResult Approve(int?id) { if (!HasSession()) { return(RedirectToAction("Index", "Home")); } Boolean IsChairman = Convert.ToBoolean(HttpContext.Session[Variables.IsChairmanSession]); if (!IsChairman || id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TeacherActivity activity = db.TeacherActivity.Where(p => p.id == id).FirstOrDefault(); string[] arr = activity.Content.Split(','); if (arr != null) { ViewBag.Faculty = arr[0]; ViewBag.Course = arr[1]; for (int i = 2; i < arr.Length; i++) { new Marks().SubmitMark(arr[0], arr[1], Convert.ToInt32(arr[i]), true); } } CourseStatus.UpdateCourseStatus(activity.CourseCode, activity.Session, true); activity.Approved = true; db.SaveChanges(); return(RedirectToAction("ApproveMarks", "Marks")); }
public ActionResult DetailsHistory(int?nid) { if (!HasSession()) { return(RedirectToAction("Index", "Home")); } if (nid == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } TeacherActivity activity = db.TeacherActivity.Where(p => p.id == nid).FirstOrDefault(); string[] arr = activity.Content.Split(','); List <Marks> marks = new List <Marks>(); if (arr != null) { ViewBag.Faculty = arr[0]; ViewBag.Course = arr[1]; for (int i = 2; i < arr.Length; i++) { marks.Add(new Marks().GetMark(arr[0], arr[1], Convert.ToInt32(arr[i]))); } } ViewBag.marks = marks; ViewBag.id = nid; ViewBag.ActivityId = activity.id; ViewBag.Approved = activity.Approved; return(View()); }
public async Task <TeacherActivity> AddTeacherActivityAsync(TeacherActivity model) { _dbContext.TeacherActivities.Add(model); await _dbContext.SaveChangesAsync(); return(model); }
public async Task GetMySubjects_gets_teaching_subject_title_not_null() { var service = new TeacherActivity(context); List <string> result = await service.GetMySubjects(1); Assert.IsNotNull(result[0]); }
public async Task GetMySubjects_gets_teaching_subject_title() { var service = new TeacherActivity(context); List <string> result = await service.GetMySubjects(1); Assert.AreEqual("Discrete Math", result[0]); }
public async Task GetAvailableSubjects_gets_available_subjects_by_teacher_id_is_equal() { var service = new TeacherActivity(context); List <Subject> result = await service.GetAvailableSubjects(1); Assert.AreEqual("Algorithm Theory", result[0].Title); }
public async Task GetAvailableSubjects_gets_available_subjects_by_teacher_id_is_not_null() { var service = new TeacherActivity(context); List <Subject> result = await service.GetAvailableSubjects(1); Assert.IsNotNull(result); }
public ActionResult DeleteMarksFromExcel(int?id, int dest) { if (!HasSession()) { return(RedirectToAction("Index", "Home")); } TeacherActivity activity = db.TeacherActivity.Find(id); string[] Ids = activity.Content.Split(','); Boolean isDeleted = new Marks().DeleteEntries(Ids); if (isDeleted) { activity.FilePath = null; TeacherActivity newActivity = new TeacherActivity(); newActivity.Name = activity.Name; newActivity.Designation = activity.Designation; newActivity.CourseCode = activity.CourseCode; newActivity.UserId = activity.UserId; newActivity.Time = DateTime.Now.ToString(); newActivity.Message = activity.Message.Replace("uploaded", "deleted").Replace("changed", "deleted"); db.TeacherActivity.Add(newActivity); db.SaveChanges(); } if (dest == 0) { return(RedirectToAction("Index", "History")); } else if (dest == 1) { return(RedirectToAction("ApproveMarks", "Marks")); } else { return(RedirectToAction("Index", "Teacher")); } }
public ActionResult UploadMark(int?activityId) { if (!HasSession()) { return(RedirectToAction("Index", "Home")); } Teacher teacher = HttpContext.Session[Variables.TeacherSession] as Teacher; ViewBag.courses = db.Courses.Where(dp => dp.CourseTeacherID == teacher.TeacherID).ToList(); ViewBag.faculties = db.Faculty.ToList(); ViewBag.all_session = db.AllSession.ToList(); if (activityId != null) { TeacherActivity activity = db.TeacherActivity.Where(p => p.id == activityId).FirstOrDefault(); string[] arr = activity.Content.Split(','); List <Marks> marks = new List <Marks>(); if (arr != null) { ViewBag.Faculty = arr[0]; ViewBag.Course = arr[1]; for (int i = 2; i < arr.Length; i++) { marks.Add(new Marks().GetMark(arr[0], arr[1], Convert.ToInt32(arr[i]))); } } ViewBag.Marks = marks; ViewBag.Course = arr[1]; ViewBag.Faculty = arr[0]; ViewBag.ActivityId = activityId; } return(View()); }
public ActionResult UploadMark(string faculty, string session, string course_code, HttpPostedFileBase file, string msg) { if (!HasSession()) { return(RedirectToAction("Index", "Home")); } Teacher teacher = HttpContext.Session[Variables.TeacherSession] as Teacher; if (faculty != null && session != null && course_code != null && file != null) { course_code = course_code.Trim().Replace(" ", "_").ToUpper(); string fileName = "", targetFileName = course_code + "_" + session.Replace("-", "_"); if ((file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName)) { //string fileContentType = Path.GetExtension(file.FileName).ToLower(); fileName = Path.GetFileName(file.FileName); if (fileName.ToLower().Contains(".xls") || fileName.ToLower().Contains(".xlsx")) { List <Marks> marks = new ExcelReader().readMarksFromExcel(file); if (marks != null) { string ValidityCheckRes = new Marks().IsValid(marks); if (ValidityCheckRes.Equals(Messasges.Valid)) { string InsertionRes = new Marks().InserMarkList(marks, faculty, course_code); ViewBag.Marks = marks; ViewBag.Course = course_code; ViewBag.Faculty = faculty; if (!InsertionRes.Contains(Messasges.InsertionFailed)) { ViewBag.Message = Messasges.DataUploadedSuccessfully; CourseStatus.AddCourseStatus(course_code, session, false); try { //targetFileName += "_" + DateTime.Now.ToString().Replace("/", "_").Replace(" ", "_").Replace(":", "_") + ".xlsx"; targetFileName += ".xlsx"; string path = Path.Combine(Server.MapPath("~/App_Data/Marks/"), targetFileName); file.SaveAs(path); ViewBag.FileInfo = targetFileName + " uploaded successfully!"; TeacherActivity activity = new TeacherActivity(); activity.Name = teacher.Name; activity.Designation = teacher.Department; activity.CourseCode = course_code; activity.Session = session; activity.UserId = teacher.TeacherID.ToString(); activity.Time = DateTime.Now.ToString(); msg = "Marks uploaded for: " + course_code + ", " + session + ".\n" + msg; activity.Message = msg; activity.Content = InsertionRes; activity.FilePath = path; db.TeacherActivity.Add(activity); db.SaveChanges(); TeacherActivity act = db.TeacherActivity.Where(p => p.Time == activity.Time).FirstOrDefault(); ViewBag.ActivityId = act.id; } catch (Exception ex) { ViewBag.Error = "ERROR:" + ex.Message.ToString(); } } else { ViewBag.Error = Messasges.DataUploadFailed; } } else { ViewBag.Error = ValidityCheckRes; } } else { ViewBag.Error = Messasges.InvalidExcelData; } } else { //format not supported ViewBag.Error = Messasges.InvalidExcelFileFormate; } } } else { ViewBag.Error = Messasges.RequiredFiledsMissing; } ViewBag.courses = db.Courses.Where(dp => dp.CourseTeacherID == teacher.TeacherID).ToList(); ViewBag.faculties = db.Faculty.ToList(); ViewBag.all_session = db.AllSession.ToList(); return(View()); }
public ActionResult ChangeExcelHistory(int id, HttpPostedFileBase file) { if (!HasSession()) { return(RedirectToAction("Index", "Home")); } TeacherActivity activity = db.TeacherActivity.Find(id); string[] Ids = activity.Content.Split(','); //string content = Ids[0] + "," + Ids[1]; if ((file.ContentLength > 0) && !string.IsNullOrEmpty(file.FileName)) { //string fileContentType = Path.GetExtension(file.FileName).ToLower(); string fileName = Path.GetFileName(file.FileName); if (fileName.ToLower().Contains(".xls") || fileName.ToLower().Contains(".xlsx")) { //delete old marks Boolean isDeleted = new Marks().DeleteEntries(Ids); //insert new marks List <Marks> marks = new ExcelReader().readMarksFromExcel(file); if (marks != null) { string ValidityCheckRes = new Marks().IsValid(marks); if (ValidityCheckRes.Equals(Messasges.Valid)) { string res = new Marks().InserMarkList(marks, Ids[0], Ids[1]); if (res.Contains(Messasges.InsertionFailed)) { ViewBag.Error = Messasges.DataUpdateFailed; } else { ViewBag.Message = Messasges.DataUpdatedSuccessfully; } try { file.SaveAs(activity.FilePath); TeacherActivity newActivity = new TeacherActivity(); newActivity.Name = activity.Name; newActivity.Designation = activity.Designation; newActivity.CourseCode = activity.CourseCode; newActivity.UserId = activity.UserId; newActivity.Time = DateTime.Now.ToString(); newActivity.Message = activity.Message.Replace("uploaded", "changed"); newActivity.Content = res; newActivity.FilePath = activity.FilePath; db.TeacherActivity.Add(newActivity); activity.FilePath = null; db.SaveChanges(); } catch (Exception ex) { ViewBag.FileInfo = "ERROR:" + ex.Message.ToString(); } return(RedirectToAction("Index", "History")); } else { ViewBag.Error = ValidityCheckRes; } } else { ViewBag.Error = Messasges.InvalidExcelData; } } else { //format not supported ViewBag.Error = Messasges.InvalidExcelFileFormate; } } else { ViewBag.Error = "No input data!"; } ViewBag.Id = id; return(View()); }
private void Seed(RateMyPDbContext context) { m_course1 = new Course { Id = Guid.NewGuid(), Name = "Komparchas", Credits = 5, Faculty = "MIF", CourseType = CourseType.BUS }; m_course2 = new Course { Id = Guid.NewGuid(), Name = "Duomenu strukturos", Credits = 10, Faculty = "MIF", CourseType = CourseType.Complimentary }; var course3 = new Course { Id = Guid.NewGuid(), Name = "malkos", Credits = 6, Faculty = "Zap", CourseType = CourseType.BUS }; context.Courses.AddRange(m_course1, m_course2, course3); m_teacher = new Teacher { Id = Guid.NewGuid(), FirstName = "AAA", LastName = "aaa", Description = "a desc", Rank = "Professor", Faculty = "MIF" }; var teacherSingleCourse = new Teacher { Id = Guid.NewGuid(), FirstName = "BBB", LastName = "bbb", Description = "b desc", Rank = "Professor", Faculty = "MIF" }; context.Teachers.AddRange(m_teacher, teacherSingleCourse); var teacherActivity1 = new TeacherActivity { Id = Guid.NewGuid(), TeacherId = m_teacher.Id, CourseId = m_course1.Id, DateStarted = DateTime.Now, LectureType = LectureType.Practice }; var teacherActivity2 = new TeacherActivity { Id = Guid.NewGuid(), TeacherId = m_teacher.Id, CourseId = m_course2.Id, DateStarted = DateTime.Now, LectureType = LectureType.Practice }; var teacherSingleCourseActivity = new TeacherActivity { Id = Guid.NewGuid(), TeacherId = teacherSingleCourse.Id, CourseId = course3.Id, DateStarted = DateTime.Now, LectureType = LectureType.Seminar }; context.TeacherActivities.AddRange(teacherActivity1, teacherActivity2, teacherSingleCourseActivity); context.SaveChanges(); }