public async Task Handle(DeleteIssueCommand command, CancellationToken cancellationToken)
        {
            var specification = new IssueSpecification(command.IssueId);
            var issue         = await _issueRepository.GetSingleOrDefaultAsync(specification);

            Check.NotNull(issue, nameof(issue));
            _issueRepository.Delete(issue);
            await _unitOfWork.SaveChangesAsync();
        }
Example #2
0
        public async Task <IssueDto> Handle(GetIssueByIdQuery query, CancellationToken cancellationToken)
        {
            var specification = new IssueSpecification(query.Id);
            var issue         = await _issueRepository.GetSingleOrDefaultAsync(specification);

            Check.NotNull(issue, nameof(issue));
            return(new IssueDto
            {
                Title = issue.Title,
                Description = issue.Title,
                Assignee = _mapperService.MapUserToUserDto(issue.Assignee),
                Status = issue.Status,
                Type = issue.Type,
                Reporter = _mapperService.MapUserToUserDto(issue.Reporter)
            });
        }