예제 #1
0
        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));
        }
예제 #2
0
        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);
        }