public ActionResult DeleteConfirmed(int staff_id, int skill_id) { Staff_Skill staff_Skill = db.Staff_Skills.Find(staff_id, skill_id); db.Staff_Skills.Remove(staff_Skill); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Staff_ID,Skill_ID,Proficiency_ID,Created_On,Created_By,Modified_On,Modified_By")] Staff_Skill staff_Skill) { if (ModelState.IsValid) { db.Entry(staff_Skill).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.Proficiency_ID = new SelectList(db.Adm_Proficiencies, "Proficiency_ID", "Proficiency", staff_Skill.Proficiency_ID); ViewBag.Skill_ID = new SelectList(db.Ref_Skills, "ID", "Skill", staff_Skill.Skill_ID); ViewBag.Staff_ID = new SelectList(db.Staffs, "ID", "Staff_Name", staff_Skill.Staff_ID); return(View(staff_Skill)); }
// GET: Staff_Skill/Details/5 public ActionResult Details(int?staff_id, int?skill_id) { if (staff_id == null || skill_id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Staff_Skill staff_Skill = db.Staff_Skills.Find(staff_id, skill_id); if (staff_Skill == null) { return(HttpNotFound()); } return(View(staff_Skill)); }
// GET: Staff_Skill/Edit/5 public ActionResult Edit(int?staff_id, int?skill_id) { //int staffID; if (staff_id == null || skill_id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //staffID = (int) id; Staff_Skill staff_Skill = db.Staff_Skills.Include(x => x.Staff.Staff_Skill).SingleOrDefault(x => x.Staff_ID == staff_id && x.Skill_ID == skill_id); //Staff_Skill staff_Skill = db.Staff_Skills.SingleOrDefault(x => x.Staff_ID == id); if (staff_Skill == null) { return(HttpNotFound()); } ViewBag.Proficiency_ID = new SelectList(db.Adm_Proficiencies, "Proficiency_ID", "Proficiency", staff_Skill.Proficiency_ID); ViewBag.Skill_ID = new SelectList(db.Ref_Skills, "ID", "Skill", staff_Skill.Skill_ID); ViewBag.Staff_ID = new SelectList(db.Staffs, "ID", "Staff_Name", staff_Skill.Staff_ID); ViewBag.DateTime = DateTime.Now; return(View(staff_Skill)); }
public ActionResult ManageStaffSkillModal(StaffDashboardViewModel model) { if (ModelState.IsValid) { //Iterate over all skills user may have added/modified using client-filled form data foreach (var newStaffSkill in model.ManageSkillDataList) { //Staff has this skill and does not want to remove it (possible modification) if (newStaffSkill.HasSkill == true && newStaffSkill.RemoveSKill == false) { Staff_Skill skillToModify = new Staff_Skill(); skillToModify = db.Staff_Skills.Where(x => x.Staff_ID == newStaffSkill.StaffID) .Where(x => x.Skill_ID == newStaffSkill.SkillID).SingleOrDefault(); //User has modified the proficiency if (skillToModify.Proficiency_ID != newStaffSkill.ProficiencyID) { skillToModify.Proficiency_ID = newStaffSkill.ProficiencyID; skillToModify.Modified_By = getCurrentUserFullName(); skillToModify.Modified_On = System.DateTime.Now; db.Staff_Skills.Attach(skillToModify); var entry = db.Entry(skillToModify); entry.State = EntityState.Modified; } } //Staff has this skill and wants to remove it else if (newStaffSkill.HasSkill == true && newStaffSkill.RemoveSKill == true) { Staff_Skill skillToRemove = new Staff_Skill(); skillToRemove = db.Staff_Skills.Where(x => x.Staff_ID == newStaffSkill.StaffID) .Where(x => x.Skill_ID == newStaffSkill.SkillID).SingleOrDefault(); db.Staff_Skills.Attach(skillToRemove); db.Staff_Skills.Remove(skillToRemove); } //Staff does not have this skill else if (newStaffSkill.HasSkill == false) { //If the proficiency was selected, user wants to add this skill if (newStaffSkill.ProficiencyID != 0) { Staff_Skill newSkill = new Staff_Skill(); newSkill.Skill_ID = newStaffSkill.SkillID; newSkill.Staff_ID = newStaffSkill.StaffID; newSkill.Proficiency_ID = newStaffSkill.ProficiencyID; newSkill.Created_By = getCurrentUserFullName(); newSkill.Created_On = System.DateTime.Now; newSkill.Modified_By = getCurrentUserFullName(); newSkill.Modified_On = System.DateTime.Now; db.Staff_Skills.Add(newSkill); } } } } else { List <string> modelStateErrors = new List <string>(); foreach (ModelState modelState in ViewData.ModelState.Values) { foreach (ModelError error in modelState.Errors) { modelStateErrors.Add(error.ErrorMessage); } } } db.SaveChanges(); return(RedirectToAction("Index", "Staff")); }