public ActionResult AddWork(HomeworkViewModel HVM) { checkLogin(); HVM.groupSelectList = (IEnumerable <SelectListItem>)Session["groupSelectList"]; HVM.typeSelectList = (IEnumerable <SelectListItem>)Session["typeSelectList"]; HVM.groupFilList = (IEnumerable <SelectListItem>)Session["groupFilList"]; HVM.typeFilList = (IEnumerable <SelectListItem>)Session["typeFilList"]; HVM.termFilList = (IEnumerable <SelectListItem>)Session["termFilList"]; HVM.viewList.Add(new HomeworkView() { ID = GS.getNewID(), name = HVM.newWork.NAME, group_id = HVM.newWork.STUDENT_GROUP, group_name = HVM.groupSelectList.Where(l => l.Value == HVM.newWork.STUDENT_GROUP.ToString()).FirstOrDefault().Text, date_assign = DateTime.Now, date_due = HVM.newWork.DUE_DATE, type_id = HVM.newWork.HOMEWORK_TYPE, type_name = HVM.typeSelectList.Where(l => l.Value == HVM.newWork.HOMEWORK_TYPE.ToString()).FirstOrDefault().Text, submission_ratio = 0, late_ratio = 0, full_mark = HVM.newWork.FULL_MARK }); HVM.newWork = new HOMEWORK(); ModelState.Clear(); TempData["showForm"] = true; TempData["showForm2"] = false; return(View("Homework", HVM)); }
internal List <HomeworkViewModel> getProgressByTeacherId(string teacherId) { using (SqlConnection sqlConnection = new SqlConnection(connectionString)) { using (SqlCommand command = new SqlCommand("sp_TeacherGetProgressByTeacher", sqlConnection)) { try { sqlConnection.Open(); command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@TeacherId", teacherId); SqlDataReader rdr = command.ExecuteReader(); List <HomeworkViewModel> progressList = new List <HomeworkViewModel>(); while (rdr.Read()) { HomeworkViewModel progress = new HomeworkViewModel(); progress.Id = Convert.ToInt32(rdr["Id"]); progress.StudentId = rdr["StudentId"].ToString(); progress.Attachement = rdr["Attachement"].ToString(); progress.LessonId = Convert.ToInt32(rdr["LessonId"]); progress.Passed = Convert.ToBoolean(rdr["Passed"]); progressList.Add(progress); } return(progressList); } catch (Exception ex) { throw ex; } } } }
public ActionResult Homework() { checkLogin(); HomeworkViewModel HVM = new HomeworkViewModel(); HVM.groupSelectList = StudentGroupService.getGroupSelectList(CP.currentTerm.ID); HVM.typeSelectList = HomeworkService.getTypeSelectList(); Session["groupSelectList"] = HVM.groupSelectList; Session["typeSelectList"] = HVM.typeSelectList; HVM.termFilList = genSelectList(CP.termSelectList, 0); HVM.groupFilList = genSelectList(HVM.groupSelectList, 0); HVM.typeFilList = genSelectList(HVM.typeSelectList, 0); Session["termFilList"] = HVM.termFilList; Session["groupFilList"] = HVM.groupFilList; Session["typeFilList"] = HVM.typeFilList; HVM.viewList = new List <HomeworkView>(); ModelState.Clear(); TempData["showForm2"] = false; TempData["showForm"] = false; return(View(HVM)); }
public async Task <IActionResult> Create([Bind("Name,Deadline,SubjectId")] HomeworkViewModel homeworkViewModel) { if (!ModelState.IsValid) { homeworkViewModel.Subjects = new SelectList(_context.Subjects.Where(s => s.ProfesorId == User.GetLoggedInUserId <string>()), "Id", "Name"); return(View(homeworkViewModel)); } var subject = await _context.Subjects.FindAsync(homeworkViewModel.SubjectId); if (subject == null || subject.ProfesorId != User.GetLoggedInUserId <string>()) { ModelState.AddModelError("Subject", "Subject not found"); homeworkViewModel.Subjects = new SelectList(_context.Subjects.Where(s => s.ProfesorId == User.GetLoggedInUserId <string>()), "Id", "Name"); return(View(homeworkViewModel)); } var homework = new Homework { Name = homeworkViewModel.Name, Deadline = homeworkViewModel.Deadline, SubjectId = homeworkViewModel.SubjectId }; _context.Homeworks.Add(homework); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Details), new { id = homework.Id })); }
// GET: Homework/Details/5 public async Task <IActionResult> Details(int id) { var homework = await _context.Homeworks .Include(h => h.Subject) .FirstOrDefaultAsync(m => m.Id == id); if (homework == null || (User.IsInRole("profesor") && homework.Subject.ProfesorId != User.GetLoggedInUserId <string>())) { return(NotFound()); } var homeworkViewModel = new HomeworkViewModel { Id = homework.Id, Name = homework.Name, Deadline = homework.Deadline, SubjectName = homework.Subject.Name }; if (User.IsInRole("profesor")) { homeworkViewModel.Submits = _context.SubmitedHomeworks .Include(sh => sh.Student) .Include(sh => sh.Document) .Where(sh => sh.HomeworkId == homework.Id) .Select(sh => new HomeworkReviewViewModel { StudentName = sh.Student.UserName, FileName = $"{sh.Document.Name}{sh.Document.Extension}" } ).ToList(); } return(View(homeworkViewModel)); }
public void AddHomework(HomeworkViewModel homework) { Homework homeworkToDAL = new Homework(homework.startDate, homework.endDate, homework.TeacherID, homework.Requirements); HomeworkRepository repository = new HomeworkRepository(); repository.AddHomework(homeworkToDAL); }
public ActionResult Homework(HomeworkViewModel HVM) { checkLogin(); HVM.groupSelectList = (IEnumerable <SelectListItem>)Session["groupSelectList"]; HVM.typeSelectList = (IEnumerable <SelectListItem>)Session["typeSelectList"]; HVM.groupFilList = (IEnumerable <SelectListItem>)Session["groupFilList"]; HVM.typeFilList = (IEnumerable <SelectListItem>)Session["typeFilList"]; HVM.termFilList = (IEnumerable <SelectListItem>)Session["termFilList"]; bool result = true; //inactive deleted view item foreach (var i in HVM.inactiveList) { if (result && i > 1) { result = false; result = DBS.InactiveRecord("HOMEWORK", i, CP.userID); } } //add new work from new view item foreach (var n in HVM.viewList) { if (result && n.ID < 1) { result = false; HOMEWORK newWork = new HOMEWORK() { NAME = n.name, STUDENT_GROUP = n.group_id, HOMEWORK_TYPE = n.type_id, DUE_DATE = n.date_due, FULL_MARK = n.full_mark, ADD_BY = CP.userID, ADD_DATE = DateTime.Now, ACTIVE = true }; result = DBS.addRecord(newWork); } } ModelState.Clear(); TempData["showForm"] = true; TempData["showForm2"] = false; if (result) { TempData[Constant.msg_success] = "Changes have been saved"; } else { TempData[Constant.msg_error] = "Changes have not been saved"; } return(Homework(HVM.SelectedTerm, HVM.SelectedGroup, HVM.SelectedType, HVM)); }
public IActionResult Create() { var model = new HomeworkViewModel { Subjects = new SelectList(_context.Subjects.Where(s => s.ProfesorId == User.GetLoggedInUserId <string>()), "Id", "Name"), Deadline = DateTime.Now }; return(View(model)); }
public ActionResult viewSubmission(HomeworkViewModel HVM, int HWV_id) { HVM.groupSelectList = (IEnumerable <SelectListItem>)Session["groupSelectList"]; HVM.typeSelectList = (IEnumerable <SelectListItem>)Session["typeSelectList"]; HVM.groupFilList = (IEnumerable <SelectListItem>)Session["groupFilList"]; HVM.typeFilList = (IEnumerable <SelectListItem>)Session["typeFilList"]; HVM.termFilList = (IEnumerable <SelectListItem>)Session["termFilList"]; HVM.submission_list = new List <Submission_view>(); HomeworkView view = HVM.viewList.Where(v => v.ID == HWV_id).First(); List <HOMEWORK_SUBMISSION_LIST> submissions = HWV_id > 0? DBS.findRecordsBySingleParm <HOMEWORK_SUBMISSION_LIST>("HOMEWORK", HWV_id): new List <HOMEWORK_SUBMISSION_LIST>(); List <STUDENT> students = StudentService.getStudentByGroup(view.group_id); if (students != null && students.Any()) { for (int s = 0; s < students.Count; s++) { Submission_view SV = new Submission_view(); SV.homework_id = (int)HWV_id; SV.student_id = students[s].ID; SV.group_id = view.group_id; SV.work_name = view.name; SV.group_name = view.group_name; SV.student_name = students[s].STUDENT_NAME; if (submissions != null && submissions.Exists(sub => sub.STUDENT == SV.student_id)) { HOMEWORK_SUBMISSION_LIST HSL = submissions.Where(sub => sub.STUDENT == SV.student_id).FirstOrDefault(); SV.QE_class = HSL.QE_CLASS; SV.QE_class_name = HSL.QE_CLASS_NAME; SV.class_num = HSL.CLASS_NUM; SV.mark = HSL.MARK; SV.remark = HSL.REMARK; SV.submit_date = HSL.ADD_DATE; SV.submission_id = HSL.ID; SV.contain = true; } else { ClassStudentMap map = ClassService.getClassStudentMapByStudent(students[s].ID); SV.QE_class = map.ID; SV.QE_class_name = map.FORM.ToString() + map.NAME; SV.class_num = map.CLASS_NUM; SV.contain = false; } HVM.submission_list.Add(SV); } } ModelState.Clear(); TempData["showForm2"] = true; TempData["showForm"] = false; return(View("Homework", HVM)); }
public async Task <ActionResult <HomeworkDTO> > Post(HomeworkViewModel homeworkViewModel) { if (homeworkViewModel == null) { return(BadRequest()); } var homework = _mapper.Map <HomeworkDTO>(homeworkViewModel); await _db.CreateAsync(homework); return(Ok(homeworkViewModel)); }
public IActionResult PAW(HomeworkViewModel model) { model = WrapStudentsData(model); model = WrapHomeworkDescriptionData(model); ViewData["Title"] = "Programarea Aplicatiilor Windows"; ViewData["Message"] = "Aici se vor incarca temele pentru disciplina Programarea Aplicatiilor Windows (PAW)"; ViewData["Details"] = "Se va incarca o arhiva .zip cu proiectul C#"; return(View(model)); }
public void Create(HomeworkViewModel model) { var context = new HomeworkDBEntities(); var item = new ORM.AccountBook(); item.Id = Guid.NewGuid(); item.Amounttt = (int)model.Amount; item.Categoryyy = model.Type; item.Remarkkk = model.Name; item.Dateee = model.CreateDate; context.AccountBook.Add(item); context.SaveChanges(); }
public HomeworkViewModel HomeworkDBModelToView(int homeworkId) { var _model = new HomeworkViewModel() { Homework = dataManager.Homeworks.GetHomeworkById(homeworkId), }; var _hmw = dataManager.Homeworks.GetAllHomeworks(true, true); if (_hmw.IndexOf(_hmw.FirstOrDefault(x => x.HomeworkId == _model.Homework.HomeworkId)) != _hmw.Count() - 1) { _model.NextHomework = _hmw.ElementAt(_hmw.IndexOf(_hmw.FirstOrDefault(x => x.HomeworkId == _model.Homework.HomeworkId)) + 1); } return(_model); }
private static async Task <HomeworkViewModel> ViewModel() { var homework = new HomeworkViewModel { Id = 1, StudentId = 1, LectureId = 1, StudentPresence = true, HomeworkPresence = true, Mark = 2, Date = DateTime.Now }; return(homework); }
public void Update(HomeworkViewModel model) { var context = new HomeworkDBEntities(); var item = context.AccountBook.Where(obj => model.ID == obj.Id).FirstOrDefault(); if (item != null) { item.Amounttt = (int)model.Amount; item.Categoryyy = model.Type; item.Remarkkk = model.Name; item.Dateee = model.CreateDate; context.SaveChanges(); } }
public int Add(HomeworkViewModel model) { HomeworkEntity he = new HomeworkEntity() { FileName = model.CsProject.FileName, HomeworkDescription = Context.HomeworkDescriptions.FirstOrDefault(t => t.ID == model.HomeworkDescriptionID), Student = Context.Students.FirstOrDefault(t => t.ID == model.StudentID), EvaluationResult = model.EvaluationResult }; Context.Homeworks.Add(he); Context.SaveChanges(); return(he.ID); }
private HomeworkViewModel WrapHomeworkDescriptionData(HomeworkViewModel model) { List <HomeworkDescriptionPreviewModel> homeworkDescriptionsPreview = new List <HomeworkDescriptionPreviewModel>(); IEnumerable <HomeworkDescriptionEntity> homeworkDescriptions = _repository.HomeworkDescriptionRepository.GetAll(); foreach (HomeworkDescriptionEntity hde in homeworkDescriptions) { homeworkDescriptionsPreview.Add(new HomeworkDescriptionPreviewModel() { ID = hde.ID, Fullname = hde.Name, FullDescription = hde.FullDescription }); } model.HomeworkDescriptions = homeworkDescriptionsPreview; return(model); }
//Utilitary methods private HomeworkViewModel WrapStudentsData(HomeworkViewModel model) { List <StudentPreviewModel> studentsPreview = new List <StudentPreviewModel>(); IEnumerable <StudentEntity> students = _repository.StudentRepository.GetAll(); foreach (StudentEntity student in students) { studentsPreview.Add(new StudentPreviewModel() { Fullname = student.Forename + " " + student.Surname, ID = student.ID }); } model.Students = studentsPreview; return(model); }
public async Task <IActionResult> PAW(HomeworkViewModel model, IList <IFormFile> files) { if (ModelState.IsValid) { model = WrapStudentsData(model); model = WrapHomeworkDescriptionData(model); //get homework info var homeworkDescriptionName = _repository.HomeworkDescriptionRepository.GetById(model.HomeworkDescriptionID).Name; var reflectionValidationFileName = _repository.HomeworkDescriptionRepository.GetById(model.HomeworkDescriptionID).ReflectionFile; var unitTestingFileName = _repository.HomeworkDescriptionRepository.GetById(model.HomeworkDescriptionID).UnitTestsFile; //student's homework folder var studentsHomeworkFolder = Path.Combine(Config.BasePathToCodeFiles, model.GetHomeworkDirectory()); var teachersHomeworkFolder = Path.Combine(Config.BasePathToValidationFiles, homeworkDescriptionName); //get validation files var reflectionFile = Path.Combine(Config.BasePathToValidationFiles, homeworkDescriptionName, reflectionValidationFileName); var unitTestingFile = Path.Combine(Config.BasePathToValidationFiles, homeworkDescriptionName, unitTestingFileName); try { HomeworkHelper.InitFolder(studentsHomeworkFolder, teachersHomeworkFolder); await ProcessZipUpload(model.CsProject, studentsHomeworkFolder); //compile and execute and then save data to DB Evaluation eval = await EvaluatorTaskFactory .CreateAndStart(new EvaluationTask(studentsHomeworkFolder, model.CsProject.FileName, reflectionFile, unitTestingFile)); model.StaticEvaluationResult = eval.StaticEvaluation.EvaluationResult; model.FunctionalEvaluationResult = eval.FunctionalEvaluation.EvaluationResult; TempData["evaluation"] = JsonConvert.SerializeObject(eval); //returns HomeworkID var homeworkID = _repository.HomeworkRepository.Add(model); return(RedirectToAction("Results", new { HomeworkID = homeworkID, model.StudentID })); } catch (Exception ex) { return(RedirectToAction("Error")); } } return(RedirectToAction("PAW")); }
public async Task <ActionResult <HomeworkDTO> > Put(HomeworkViewModel homeworkViewModel) { if (homeworkViewModel == null) { return(BadRequest()); } var homework = _mapper.Map <HomeworkDTO>(homeworkViewModel); if (!_db.Find(h => h.Id == homework.Id).Any()) { return(NotFound()); } await _db.UpdateAsync(homework); return(Ok(homeworkViewModel)); }
public ActionResult Create(HomeworkViewModel homework) { if (homework.endDate <= DateTime.Now) { ModelState.AddModelError("", "Please choose another end date!"); return(View()); } if (ModelState.IsValid) { try { HomeworkService service = new HomeworkService(); int id = Int32.Parse(Request.Cookies["UserSettings"].Values["UserID"]); homework.TeacherID = id; service.AddHomework(homework); } catch (Exception) { ModelState.AddModelError("", "Unable to save changes. Try again, and if the problem persists, see your system administrator."); return(View()); } try { StudentService studentService = new StudentService(); int id = Int32.Parse(Request.Cookies["UserSettings"].Values["UserID"]); List <StudInfoViewModel> studentsList = studentService.GetStudentsByTeacherID(id);//all students EmailNotification notification = new EmailNotification(new EmailSender()); foreach (var student in studentsList) { notification.NotifystudentWhenHomeworkIsCreated(student.Email, student.FirstName, homework.endDate); } } catch (Exception) { ModelState.AddModelError("", "Unable to send email to all students. Try again, and if the problem persists, see your system administrator."); return(RedirectToAction("MyHomeworks", "Teacher")); } } return(RedirectToAction("MyHomeworks", "Teacher")); }
public List <HomeworkViewModel> GetHomeworksByTeacherID(int id) { HomeworkRepository repo = new HomeworkRepository(); List <Homework> homeworkList = repo.GetAllHomeworksByTeacherID(id); List <HomeworkViewModel> newList = new List <HomeworkViewModel>(); foreach (var item in homeworkList) { HomeworkViewModel newHomework = new HomeworkViewModel() { TeacherID = item.TeacherID, HomeworkID = item.HomeworkID, startDate = item.StartDate, endDate = item.EndDate, Requirements = item.Requirements.ToString(), }; newList.Add(newHomework); } return(newList); }
public ActionResult Index() { var date = Utility.GetDBDate(); var viewmodel = new HomeworkViewModel(baseviewmodel); if (UserSuperGroups.STAFF.HasFlag(auth.group)) { if (!auth.perms.HasFlag(Permission.HOMEWORK_CREATE)) { return(ReturnNoPermissionView()); } viewmodel.editable = true; // get subjects teaching for current year viewmodel.subjects = new[] { new SelectListItem() { Text = "All", Value = "" } }.Union( repository.GetHomeworks(sessionid.Value, date.Year) .Select(x => x.subject) .Distinct() .Select(x => new SelectListItem() { Text = x.name, Value = x.id.ToString() })); viewmodel.homeworks = repository.GetHomeworks(sessionid.Value, date.Year) .OrderByDescending(x => x.id) .ToModel(true, date.Year); // handle disk space calculations viewmodel.DiskspaceUsed = viewmodel.homeworks.Sum(x => x.totalSize); viewmodel.DiskspaceLeft = Constants.MAX_DISK_SIZE - viewmodel.DiskspaceUsed; } else { viewmodel.editable = false; } return(View(viewmodel)); }
public ActionResult InactiveWork(HomeworkViewModel HVM, int HVM_id) { checkLogin(); HVM.groupSelectList = (IEnumerable <SelectListItem>)Session["groupSelectList"]; HVM.typeSelectList = (IEnumerable <SelectListItem>)Session["typeSelectList"]; HVM.groupFilList = (IEnumerable <SelectListItem>)Session["groupFilList"]; HVM.typeFilList = (IEnumerable <SelectListItem>)Session["typeFilList"]; HVM.termFilList = (IEnumerable <SelectListItem>)Session["termFilList"]; HVM.viewList.Remove(HVM.viewList.Where(v => v.ID == HVM_id).FirstOrDefault()); if (HVM_id > 0) { HVM.inactiveList.Add(HVM_id); } ModelState.Clear(); TempData["showForm"] = true; TempData["showForm2"] = false; return(View("Homework", HVM)); }
public async Task <IActionResult> Edit(int id) { var homework = await _context.Homeworks .Include(h => h.Subject) .FirstOrDefaultAsync(h => h.Id == id && h.Subject.ProfesorId == User.GetLoggedInUserId <string>()); if (homework == null) { return(NotFound()); } var homeworkViewModel = new HomeworkViewModel { Id = homework.Id, Name = homework.Name, Deadline = homework.Deadline, SubjectId = homework.SubjectId, Subjects = new SelectList(_context.Subjects, "Id", "Name", homework.SubjectId) }; return(View(homeworkViewModel)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,Deadline,SubjectId")] HomeworkViewModel homeworkViewModel) { if (!ModelState.IsValid) { homeworkViewModel.Subjects = new SelectList(_context.Subjects.Where(s => s.ProfesorId == User.GetLoggedInUserId <string>()), "Id", "Name"); return(View(homeworkViewModel)); } var homework = await _context.Homeworks .Include(h => h.Subject) .FirstOrDefaultAsync(h => h.Id == homeworkViewModel.Id && h.Subject.ProfesorId == User.GetLoggedInUserId <string>()); if (homework == null) { return(NotFound()); } homework.Name = homeworkViewModel.Name; homework.SubjectId = homeworkViewModel.SubjectId; homework.Deadline = homeworkViewModel.Deadline; await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Details), new { id = homeworkViewModel.Id })); }
public bool Update(HomeworkViewModel viewModel) { Homework homework = ViewModelToDomain(viewModel); return(homeworkService.Update(homework)); }
public HomeworkViewModel Post([FromBody] HomeworkViewModel homeworks) { return(this.homeworkMap.Create(homeworks)); }
public ActionResult Update(HomeworkViewModel model) { new HomeworkService().Update(model); return(RedirectToAction("Index")); }
public Homework ViewModelToDomain(HomeworkViewModel officeViewModel) { var model = this.mapper.Map <HomeworkViewModel, Homework>(officeViewModel); return(model); }