// GET: EditMark_Teachers/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Mark_Teachers mark_Teachers = db.Mark_Teachers.Find(id); if (mark_Teachers == null) { return(HttpNotFound()); } List <Category_Teachers> cts = db.Category_Teachers.Where(c => c.Id_block == mark_Teachers.Сriteria_Teachers.Category_Teachers.Id_block).ToList(); List <Сriteria_Teachers> сrts = db.Сriteria_Teachers.Where(c => c.Id_Category == mark_Teachers.Сriteria_Teachers.Id_Category).ToList(); MarkTeacherViewModel mtvm = new MarkTeacherViewModel() { Categories = new SelectList(cts, "Id", "Name"), SelectedCategoryId = mark_Teachers.Сriteria_Teachers.Id_Category.ToString(), Criterias = new SelectList(сrts, "Id", "Name"), SelectedCriteriaId = mark_Teachers.Id_Criteria.ToString(), Kolvo_ed = (int)mark_Teachers.Kolvo_ed }; return(View(mtvm)); }
// POST: EditMark_Teachers/Edit/5 // To protect from overposting attacks, please enable the specific properties you want to bind to, for // more details see http://go.microsoft.com/fwlink/?LinkId=317598. //[HttpPost] //[ValidateAntiForgeryToken] //public ActionResult Edit(CriteriaListViewModel clvm) //{ // if (ModelState.IsValid) // { // db.Entry(clvm).State = EntityState.Modified; // db.SaveChanges(); // return RedirectToAction("Index"); // } // return View(clvm); //} // GET: EditMark_Teachers/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Mark_Teachers mark_Teachers = db.Mark_Teachers.Find(id); ViewBag.IdBlock = mark_Teachers.Сriteria_Teachers.Category_Teachers.Block_Teachers.Id; if (mark_Teachers == null) { return(HttpNotFound()); } List <Category_Teachers> cts = db.Category_Teachers.Where(c => c.Id_block == mark_Teachers.Сriteria_Teachers.Category_Teachers.Id_block).ToList(); List <Сriteria_Teachers> сrts = db.Сriteria_Teachers.Where(c => c.Id_Category == mark_Teachers.Сriteria_Teachers.Id_Category).ToList(); MarkTeacherViewModel mtvm = new MarkTeacherViewModel(); ViewBag.BlockStr = mark_Teachers.Сriteria_Teachers.Category_Teachers.Block_Teachers.Name; ViewBag.CategoryStr = mark_Teachers.Сriteria_Teachers.Category_Teachers.Name; ViewBag.CriteriaStr = mark_Teachers.Сriteria_Teachers.Name; ViewBag.Count = mark_Teachers.Kolvo_ed; return(View(mtvm)); }
// GET: EditMark_Teachers/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Mark_Teachers mark_Teachers = db.Mark_Teachers.Find(id); Mark_Teachers mark_Teachers1 = db.Mark_Teachers.Include(i => i.Status_Doc_Teacher).SingleOrDefault(i => i.Id == id); if (mark_Teachers == null) { return(HttpNotFound()); } return(View(mark_Teachers)); }
private void editMarkTeacher(int idCurrentTeacher, MarkObject m, Сriteria_Teachers selectedCriteria) { Mark_Teachers editMarkT = db.Mark_Teachers.Single( mt => mt.Id_teachers == idCurrentTeacher && mt.Id_Criteria == m.CriteriaId); List <Status_Doc_Teacher> oldFiles = db.Status_Doc_Teacher.Where(d => d.Id_Mark_Teacher == editMarkT.Id).ToList(); if (m.Count != editMarkT.Kolvo_ed.Value) { editMarkT.Kolvo_ed = m.Count; editMarkT.Kolvo_Mark = selectedCriteria.Mark * m.Count; editMarkT.Date = DateTime.Now; db.SaveChanges(); } refreshDocs(oldFiles, m, editMarkT); }
public ActionResult DeleteConfirmed(int id, int idBlock) { Status_Doc_Teacher doc = db.Status_Doc_Teacher.Single(d => d.Id_Mark_Teacher == id); db.Status_Doc_Teacher.Remove(doc); string fullPath = Request.MapPath("~/documents/" + doc.Link_Doc); if (System.IO.File.Exists(fullPath)) { System.IO.File.Delete(fullPath); } Mark_Teachers mark_Teachers = db.Mark_Teachers.Find(id); db.Mark_Teachers.Remove(mark_Teachers); db.SaveChanges(); return(RedirectToAction("Index/" + 1)); }
private void createMarkTeacher(int idCurrentTeacher, MarkObject m, Сriteria_Teachers selectedCriteria) { Mark_Teachers newMarkTeachers = new Mark_Teachers(); newMarkTeachers.Id_teachers = idCurrentTeacher; newMarkTeachers.Id_Criteria = m.CriteriaId; newMarkTeachers.Kolvo_ed = m.Count; if (m.NewFiles == null || m.NewFiles[0] == null) { newMarkTeachers.Status = -2; } else { newMarkTeachers.Status = 0; } newMarkTeachers.Kolvo_Mark = selectedCriteria.Mark * m.Count; newMarkTeachers.Date = DateTime.Now; if (m.NewFiles != null) { newMarkTeachers.Status_Doc_Teacher = new List <Status_Doc_Teacher>(); foreach (var item in m.NewFiles) { if (item != null) { var document = new Status_Doc_Teacher() { Link_Doc = Guid.NewGuid() + Path.GetFileName(item.FileName), Name = item.FileName, FileType = item.ContentType, FileContent = item.ContentLength }; newMarkTeachers.Status_Doc_Teacher.Add(document); item.SaveAs(Path.Combine(Server.MapPath("~/documents"), document.Link_Doc)); } } } db.Mark_Teachers.Add(newMarkTeachers); db.SaveChanges(); }
private void deleteMarkTeacher(int idCurrentTeacher, MarkObject m) { Mark_Teachers delMarkT = db.Mark_Teachers.Single( mt => mt.Id_teachers == idCurrentTeacher && mt.Id_Criteria == m.CriteriaId); if (m.IsRemoved != null) { List <Status_Doc_Teacher> delDocs = db.Status_Doc_Teacher.Where(d => d.Id_Mark_Teacher == delMarkT.Id).ToList(); foreach (var d in delDocs) { db.Status_Doc_Teacher.Remove(d); string fullPath = Request.MapPath("~/documents/" + d.Link_Doc); if (System.IO.File.Exists(fullPath)) { System.IO.File.Delete(fullPath); } } } db.Mark_Teachers.Remove(delMarkT); db.SaveChanges(); }
private void refreshDocs(List <Status_Doc_Teacher> oldFiles, MarkObject m, Mark_Teachers editMarkT) { bool isChanged = false; if (oldFiles.Count != 0) { for (int i = 0; i < m.IsRemoved.Count; i++) { if (m.IsRemoved[i]) { db.Status_Doc_Teacher.Remove(oldFiles[i]); string fullPath = Request.MapPath("~/documents/" + oldFiles[i].Link_Doc); if (System.IO.File.Exists(fullPath)) { System.IO.File.Delete(fullPath); } isChanged = true; } } } if (m.NewFiles != null) { if (oldFiles.Count == 0) { editMarkT.Status_Doc_Teacher = new List <Status_Doc_Teacher>(); } foreach (var nf in m.NewFiles) { if (nf != null) { var document = new Status_Doc_Teacher() { Link_Doc = Guid.NewGuid() + Path.GetFileName(nf.FileName), Name = nf.FileName, FileType = nf.ContentType, FileContent = nf.ContentLength }; editMarkT.Status_Doc_Teacher.Add(document); nf.SaveAs(Path.Combine(Server.MapPath("~/documents"), document.Link_Doc)); isChanged = true; } } } if (isChanged) { editMarkT.Date = DateTime.Now; int cntRemoved = 0; if (m.IsRemoved != null) { foreach (var r in m.IsRemoved) { if (r) { cntRemoved++; } } } bool bc = false; if (m.ExistingFiles != null) { if (m.ExistingFiles.Count == cntRemoved && (m.NewFiles == null || m.NewFiles[0] == null)) { editMarkT.Status = -2; bc = true; } } else if (m.NewFiles == null || m.NewFiles[0] == null) { editMarkT.Status = -2; bc = true; } if (!bc) { editMarkT.Status = 0; } } db.SaveChanges(); }