public IssueCreationService(IProjectRepository projectRepository, ITrackerRepository trackerRepository, IIssueStatusRepository issueStatusRepository, IIssuePriorityRepository issuePriorityRepository, IUserRepository userRepository, IIssueRepository issueRepository) { _projectRepository = projectRepository; _trackerRepository = trackerRepository; _issueStatusRepository = issueStatusRepository; _issuePriorityRepository = issuePriorityRepository; _userRepository = userRepository; _issueRepository = issueRepository; }
public async Task<IActionResult> Create( CancellationToken cancellationToken, [FromBody] CreateIssuePriorityBinding binding, [FromServices] IIssuePriorityRepository issuePriorityRepository) { var issuePriority = await issuePriorityRepository.Get(binding.Id, cancellationToken); if (issuePriority != null) if (!issuePriority.Name.Equals(binding.Name)) throw new ApiException(HttpStatusCode.Conflict, ErrorCode.IssuePriorityAlreadyExists, "Issue priority already exists with other parameters"); issuePriority = new IssuePriority(binding.Id, binding.Name, binding.IsActive); await issuePriorityRepository.Save(issuePriority); return CreatedAtRoute("GetIssuePriorityAdminRoute", new { id = issuePriority.Id }, null); }