public async Task <IActionResult> CreateJournal(int ticketId, [FromBody] JournalCreateDto journalCreate) { Ticket ticket = await _repo.GetTicket(ticketId); if (ticket == null) { return(BadRequest(new { error = "Ticket not Found" })); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var createdAt = DateTime.Now; var createdById = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier).Value); User createdBy = await _userRepo.GetUser(createdById); var journal = new Journal { Entry = journalCreate.Entry, Ticket = ticket, CreatedBy = createdBy, CreatedAt = createdAt }; _repo.AddJournal(journal); if (await _repo.Save()) { var journalToReturn = _mapper.Map <JournalDetailDto>(journal); return(CreatedAtRoute("GetJournal", new { controller = "Tickets", ticketId = ticket.Id, id = journal.Id }, journalToReturn)); } return(BadRequest(new { error = "Error Creating Journal" })); }