Example #1
0
        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"));
        }
Example #2
0
 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));
 }
Example #3
0
        // 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));
        }
Example #4
0
        // 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));
        }
Example #5
0
        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"));
        }