public ActionResult AssignRoles(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } UserStory userStory = db.UserStories.Find(id); if (userStory == null) { return(HttpNotFound()); } // hr interface method has to be given here //ViewBag.Developers = db.Employees.ToList() // .Where(e => e.Position.EmpPosition == "Software Engineer") // .Select( // e => new { ID = e.ID, Name = e.FirstName + ' ' + e.LastName } // ); HRInterface hr = new clsHRFacade(); ViewBag.Developers = hr.GetDevelopers(); //ViewBag.Testers = db.Employees.ToList() // .Where(e => e.Position.EmpPosition == "Software Test Engineer") // .Select( // e => new { ID = e.ID, Name = e.FirstName + ' ' + e.LastName } // ); ViewBag.Testers = hr.GetTesters(); return(View(userStory)); }
//public ActionResult Edit([Bind(Include = "ID,Name,Description,CreatedBy,CreatedDate,StartDate,ExpectedEndDate,ActualEndDate,ProductBacklogID,ScrumMasterID")] ReleaseBacklog releaseBacklog, string[] selectedUserStories) public ActionResult Edit(int?id, string[] selectedUserStories, string ScrumMasterList) { ReleaseBacklog releaseBacklog = db.ReleaseBacklogs .Include(r => r.UserStories) .Where(r => r.ID == id) .Single(); if (ModelState.IsValid) { UpdateReleaseBacklogUserStories(selectedUserStories, releaseBacklog); if (ScrumMasterList != "") { releaseBacklog.EmployeeID = int.Parse(ScrumMasterList); ////hr interface method has to be given here //var emp = db.Employees.Find(int.Parse(ScrumMasterList)); //emp.Role = Role.ScrumMaster; //emp.ReleaseBacklogs.Add(releaseBacklog); HRInterface hr = new clsHRFacade(); hr.AssignScrumMaster(int.Parse(ScrumMasterList), releaseBacklog, db); } else { //var emp = db.Employees.Find(releaseBacklog.EmployeeID); //if (emp != null) //{ // if (emp.ReleaseBacklogs.Count == 1) // { // emp.Role = null; // } // emp.ReleaseBacklogs.Remove(releaseBacklog); //} HRInterface hr = new clsHRFacade(); hr.RemoveScrumMasterRole(releaseBacklog, db); releaseBacklog.EmployeeID = null; ////hr interface method has to be given here } db.Entry(releaseBacklog).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ProductBacklogID = new SelectList(db.ProductBacklogs, "ID", "Name", releaseBacklog.ProductBacklogID); PopulateAssignedUserStories(releaseBacklog); return(View(releaseBacklog)); }
public ActionResult Create([Bind(Include = "ID,Name,Description,CreatedBy,CreatedDate,StartDate,ExpectedEndDate,ActualEndDate,ProductBacklogID,EmployeeID")] ReleaseBacklog releaseBacklog, string[] selectedUserStories, string ScrumMasterList) { if (selectedUserStories != null) { releaseBacklog.UserStories = new List <UserStory>(); foreach (var userStory in selectedUserStories) { var userStoryToAdd = db.UserStories.Find(int.Parse(userStory)); releaseBacklog.UserStories.Add(userStoryToAdd); } } if (ScrumMasterList != "") { releaseBacklog.EmployeeID = int.Parse(ScrumMasterList); ////hr interface method has to be given here //var emp = db.Employees.Find(int.Parse(ScrumMasterList)); //emp.Role = Role.ScrumMaster; //emp.ReleaseBacklogs.Add(releaseBacklog); HRInterface hr = new clsHRFacade(); hr.AssignScrumMaster(int.Parse(ScrumMasterList), releaseBacklog, db); } releaseBacklog.CreatedBy = 1; releaseBacklog.CreatedDate = DateTime.Now; if (ModelState.IsValid) { db.ReleaseBacklogs.Add(releaseBacklog); db.SaveChanges(); return(RedirectToAction("Index")); } PopulateAssignedUserStories(releaseBacklog); ViewBag.ProductBacklogID = new SelectList(db.ProductBacklogs, "ID", "Name", releaseBacklog.ProductBacklogID); return(View(releaseBacklog)); }
// GET: ReleaseBacklog/Create public ActionResult Create() { ViewBag.ProductBacklogID = new SelectList(db.ProductBacklogs, "ID", "Name"); var releaseBacklog = new ReleaseBacklog(); releaseBacklog.UserStories = new List <UserStory>(); PopulateAssignedUserStories(releaseBacklog); // hr interface method has to be given here //ViewBag.ScrumMasters = db.Employees.ToList() // .Where(e => e.Position.EmpPosition == "Senior Software Engineer") // .Select( // e => new { ID = e.ID, Name = e.FirstName + ' ' + e.LastName } // ); HRInterface hr = new clsHRFacade(); ViewBag.ScrumMasters = hr.GetScrumMasters(); return(View()); }
// GET: ReleaseBacklog/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } // hr interface method has to be given here //ViewBag.ScrumMasters = db.Employees.ToList() // .Where(e => e.Position.EmpPosition == "Senior Software Engineer") // .Select( // e => new { ID = e.ID, Name = e.FirstName + ' ' + e.LastName } // ); HRInterface hr = new clsHRFacade(); ViewBag.ScrumMasters = hr.GetScrumMasters(); //ReleaseBacklog releaseBacklog = db.ReleaseBacklogs.Find(id); ReleaseBacklog releaseBacklog = db.ReleaseBacklogs .Include(r => r.UserStories) .Where(r => r.ID == id) .Single(); PopulateAssignedUserStories(releaseBacklog); if (releaseBacklog == null) { return(HttpNotFound()); } ViewBag.ProductBacklogID = new SelectList(db.ProductBacklogs, "ID", "Name", releaseBacklog.ProductBacklogID); return(View(releaseBacklog)); }
public ActionResult AssignRoles(string DeveloperList, string TesterList, [Bind(Include = "ID,Name,Description,CreatedBy,CreatedDate,StartDate,ExpectedEndDate,ActualEndDate,DevelopmentStatus,TestStatus,SprintID,ReleaseBacklogID,ProductBacklogID,DeveloperID,TesterID,DeveloperEstimateInHours,TesterEstimateInHours,DeveloperHoursCompleted,TesterHoursCompleted")] UserStory userStory, string DevID, string TesID) { if (ModelState.IsValid) { db.Entry(userStory).State = EntityState.Modified; if (DeveloperList != "") { userStory.DeveloperID = int.Parse(DeveloperList); userStory.DevelopmentStatus = USDevelopmentStatus.Assigned; ////hr interface method has to be given here //var emp = db.Employees.Find(int.Parse(DeveloperList)); //emp.Role = Role.Developer; //emp.UserStories.Add(userStory); HRInterface hr = new clsHRFacade(); hr.AssignDeveloper(int.Parse(DeveloperList), userStory, db); } else { if (DevID != "") { //var emp = db.Employees.Find(int.Parse(DevID)); //if (emp != null) //{ // if (emp.UserStories.Count == 1) // { // emp.Role = null; // } // emp.UserStories.Remove(userStory); //} HRInterface hr = new clsHRFacade(); hr.RemoveDeveloperRole(int.Parse(DevID), userStory, db); } userStory.DevelopmentStatus = USDevelopmentStatus.New; userStory.DeveloperID = null; ////hr interface method has to be given here } if (TesterList != "") { userStory.TesterID = int.Parse(TesterList); userStory.TestStatus = USTestStatus.Assigned; ////hr interface method has to be given here //var emp = db.Employees.Find(int.Parse(TesterList)); //emp.Role = Role.Tester; //emp.UserStories.Add(userStory); HRInterface hr = new clsHRFacade(); hr.AssignTester(int.Parse(TesterList), userStory, db); } else { if (TesID != "") { //var emp = db.Employees.Find(int.Parse(TesID)); //if (emp != null) //{ // if (emp.UserStories.Count == 1) // { // emp.Role = null; // } // emp.UserStories.Remove(userStory); //} HRInterface hr = new clsHRFacade(); hr.RemoveTesterRole(int.Parse(TesID), userStory, db); } userStory.TestStatus = USTestStatus.WaitingDevelopment; userStory.TesterID = null; ////hr interface method has to be given here } db.SaveChanges(); return(RedirectToAction("UserStories")); } return(View(userStory)); }