Example #1
0
        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);
        }