public async Task HandleAsync(GetGeneratedWeeklyReportPhrQuery request) { var getProjectQuery = new GetProjectQuery { ProjectId = request.ProjectId }; var getWeeklyReportQuery = new GetWeeklyReportPhrQuery() { ProjectId = request.ProjectId, NumberOfWeek = request.NumberOfWeek, Week = request.Week, Year = request.Year, NumberOfWeekNotShowClosedItem = request.NumberOfWeekNotShowClosedItem }; var weeklyReport = await _mediator.SendAsync(getWeeklyReportQuery); if (weeklyReport.BacklogItem != null) { weeklyReport.BacklogItemListReadOnly.Add(weeklyReport.BacklogItem); } if (weeklyReport.QualityReport != null) { weeklyReport.QualityReportListReadOnly.Add(weeklyReport.QualityReport); } var dto = new Dto { Project = await _mediator.SendAsync(getProjectQuery), WeeklyReport = weeklyReport }; request.Response = dto; }
public IActionResult Get(Guid id) { var query = new GetProjectQuery(id); var result = _bus.PublishQuery(query); if (result == null) { return(NotFound()); } var project = JsonConvert.DeserializeObject <ProjectViewModel>(result); return(Ok(project)); }
public IActionResult Delete(Guid id) { var query = new GetProjectQuery(id); var project = _bus.PublishQuery(query); // validation if (project == null) { return(NotFound()); } var command = new DeleteProjectCommand(id); _bus.PublishCommand(command); return(Ok()); }
public IActionResult Patch(Guid id, [FromBody] ProjectUpdateModel model) { var query = new GetProjectQuery(id); var project = _bus.PublishQuery(query); // validation if (project == null) { return(NotFound()); } var command = new UpdateProjectCommand(id, model.Title, model.Description); _bus.PublishCommand(command); return(Ok()); }
public IActionResult PostComment(Guid id, [FromBody] CommentPostModel model) { var query = new GetProjectQuery(id); var project = _bus.PublishQuery(query); // validation if (project == null) { return(NotFound()); } var command = new PostCommentOnProjectCommand(id, new Guid(User.GetClaim("id")), model.Content, DateTime.Now); _bus.PublishCommand(command); return(Ok()); }
public IActionResult Approve(Guid id, Guid userId) { var query = new GetProjectQuery(id); var project = _bus.PublishQuery(query); // validation if (project == null) { return(NotFound()); } var command = new ApproveTeamUserCommand(userId, id); _bus.PublishCommand(command); return(Ok()); }
public IActionResult Join(Guid id, [FromBody] Guid userId) { var query = new GetProjectQuery(id); var project = _bus.PublishQuery(query); // validation if (project == null) { return(NotFound()); } var command = new JoinTeamCommand(userId, id); _bus.PublishCommand(command); return(Ok()); }
public async Task ShouldGetProjectItem() { var createProjectCommand = new CreateProjectCommand("project1", true); var createProjectDto = await SendAsync(createProjectCommand); var getProjectListQuery = new GetProjectQuery(createProjectDto.Id); var getProjectListDto = await SendAsync(getProjectListQuery); getProjectListDto.ShouldNotBeNull(); getProjectListDto.Id.ShouldBe(createProjectDto.Id); getProjectListDto.IsEnabled.ShouldBe(true); getProjectListDto.Name.ShouldBe("project1"); var deleteProjectCommand = new DeleteProjectCommand(createProjectDto.Id); await SendAsync(deleteProjectCommand); }
public ActionResult EditProject(Guid projectId) { var query = new GetProjectQuery { ProjectId = projectId }; var project = mediator.Send(query); var model = new EditProjectModel() { ProjectId = projectId, Name = project.Name, ClientName = project.ClientName, Status = project.Status, StartDate = project.StartDate, ProjectOwner = project.ProjectOwner, Description = project.Description, IconId = project.IconId }; return(View(model)); }