public async Task <IActionResult> UpdateProjectBug([FromForm, Bind("ProjectId,BugId,Assignee,Title,Description,Priority,DueDate,Status")] UpdateProjectBugViewModel model) { if (!ModelState.IsValid) { var readProjectRequest = new ReadProjectRequest { ProjectId = model.ProjectId.Value }; var foundProject = await _projectApplicationService.Handle(readProjectRequest); model.TeamMembers = foundProject.TeamMembers .Select(user => new SelectListItem { Value = user.Id.ToString(), Text = user.FullName }) .ToList(); return(RedirectToAction(nameof(Details), new { projectId = model.ProjectId.Value })); } var updateProjectBugRequest = new UpdateProjectBugRequest { ProjectId = model.ProjectId.Value, BugId = model.BugId.Value, DueDate = model.DueDate.Value, Description = model.Description, Title = model.Title, Priority = model.Priority, Status = model.Status, Assignee = model.Assignee.Value }; await _projectApplicationService.Handle(updateProjectBugRequest); return(RedirectToAction(nameof(Details), new { projectId = model.ProjectId.Value })); }
public async Task <IActionResult> UpdateProjectBug([BindRequired] long?projectId, [BindRequired] long?bugId) { if (!ModelState.IsValid) { return(RedirectToAction(nameof(Details), new { projectId = projectId.Value })); } var readProjectRequest = new ReadProjectRequest { ProjectId = projectId.Value }; var foundProject = await _projectApplicationService.Handle(readProjectRequest); var readProjectBugRequest = new ReadProjectBugRequest { ProjectId = projectId.Value, BugId = bugId.Value }; var foundBug = await _projectApplicationService.Handle(readProjectBugRequest); var viewModel = new UpdateProjectBugViewModel { Assignee = foundBug.Assignee.Id, ProjectId = projectId, BugId = bugId, TeamMembers = foundProject.TeamMembers .Select(user => new SelectListItem { Value = user.Id.ToString(), Text = user.FullName }) .ToList(), Description = foundBug.Description, DueDate = foundBug.DueDate, Priority = foundBug.Priority, Status = foundBug.Status, Title = foundBug.Title }; return(View(viewModel)); }