public async Task <IActionResult> CreateTicketTopic([FromBody] CreateSupportTicketPriorityResource createSupportTicketPriorityReource) { if (ModelState.IsValid) { if (this.ticketPriorityRepository.IsPriorityExist(createSupportTicketPriorityReource.Name)) { ModelState.AddModelError("", $"Ticket priority with name ({createSupportTicketPriorityReource.Name}) is already exist!"); return(new BadRequestObjectResult(new BadRequestResource(ModelState))); } var supportTicketTopic = this.mapper.Map <CreateSupportTicketPriorityResource, SupportTicketPriority>(createSupportTicketPriorityReource); var loggedInUserId = User.FindFirstValue(ClaimTypes.NameIdentifier); this.ticketPriorityRepository.CreateTicketPriority(supportTicketTopic); await this.unitOfWork.CompleteAsync(); return(new OkObjectResult(new { message = $"New ticket priority has created with name ({supportTicketTopic.Name})" })); } return(new BadRequestObjectResult(new BadRequestResource(ModelState))); }
public async Task <IActionResult> UpdateTicketTopic([FromRoute] int ticketPriorityId, [FromBody] CreateSupportTicketPriorityResource createSupportTicketPriorityResource) { if (ModelState.IsValid) { var ticketTopic = await this.ticketPriorityRepository.FindTicketPriorityByIdAsync(ticketPriorityId); if (ticketTopic == null) { ModelState.AddModelError("", "Ticket priority not found"); return(new NotFoundObjectResult(new NotFoundResource(ModelState))); } if (this.ticketPriorityRepository.IsPriorityUpdatedNameExist( createSupportTicketPriorityResource.Name, ticketPriorityId)) { ModelState.AddModelError("", $"Ticket priority with name ({createSupportTicketPriorityResource.Name}) is already exist!"); return(new BadRequestObjectResult(new BadRequestResource(ModelState))); } this.mapper.Map <CreateSupportTicketPriorityResource, SupportTicketPriority>(createSupportTicketPriorityResource, ticketTopic); var loggedInUserId = User.FindFirstValue(ClaimTypes.NameIdentifier); this.ticketPriorityRepository.UpdateTicketPriority(ticketTopic); await this.unitOfWork.CompleteAsync(); return(new OkObjectResult(new { message = "Ticket priority has updated" })); } return(new BadRequestObjectResult(new BadRequestResource(ModelState))); }