public async Task <Issue> AddAsync(Issue issue) { var issueEntity = _mapper.Map <Data.Issues.Issue>(issue); issueEntity.Date = DateTime.Now; await _issueRepository.CreateAsync(issueEntity); return(_mapper.Map(issueEntity, issue)); }
public async Task <bool> CreateIssueByUserAsync(Issue issue, List <IssueType> types, string username, string projectName) { // post.Tags?.ForEach(x => x.TagName = x.TagName.ToLower()); if (issue == null) { return(false); } if (types != null) { await AddIssueTypes(issue, types).ConfigureAwait(false); } issue.Open = true; issue.ProjectId = _projectRepository.FindByCondition(p => p.Name == projectName && p.Creator.UserName == username).SingleOrDefault().Id; issue.Number = _issueRepository.FindByCondition(i => i.ProjectId == issue.ProjectId).Count(); await _issueRepository.CreateAsync(issue).ConfigureAwait(false); // var created = await _issuePostService.CreateIssuePostAsync(new IssuePost { Id = new Guid(), AuthorId = issue.AuthorId, Content = issue.Content, Number = 0, IssueId = issue.Id, CreatedAt = DateTime.UtcNow }).ConfigureAwait(false); var created = await _issueRepository.SaveAsync().ConfigureAwait(false); return(created > 0); }