public IHttpActionResult PostTicket(Ticket ticket)
        {
            if (ticket == null)
            {
                return(BadRequest("ticket object is not present the request body"));
            }
            try
            {
                ticket.CreatedDate  = DateTime.Now;
                ticket.IsActive     = true;
                ticket.CreatedBy    = User.UserId;
                ticket.DueDate      = DateTime.Now.AddDays(8);
                ticket.StartDate    = DateTime.Now;
                ticket.OwnerId      = User.UserId;
                ticket.TicketNumber = "ticket-225";

                ticketsService.CreateTicket(ticket);

                var receiver  = authService.GetUsersAccount(ticket.AssignedTo);
                var receivers = new List <UserAccountModel>()
                {
                    receiver
                };
                Notifications.Notification.System <Ticket>(receivers, Notifications.Config.NotificationObjectType.TicketAction, User.UserId, "/Tickets/Management", ticket);

                var myTickets = ticketsService.GetMyTickets(User.UserId);
                var html      = Helpers.RenderPartial("~/Views/Shared/Partial/Tickets/MyTickets.cshtml", myTickets);
                return(Ok(html));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
        public IActionResult Create(TicketCreateModel ticketCreateModel)
        {
            if (ModelState.IsValid)
            {
                var domainModel = ticketCreateModel.ToModel();
                domainModel.UserId = int.Parse(User.FindFirst("Id").Value);
                var response = _ticketsService.CreateTicket(domainModel);

                return(RedirectToAction("Overview", "Ticket"));
            }
            else
            {
                return(View(ticketCreateModel));
            }
        }
 public ActionResult <TicketModel> CreateTicket([FromBody] TicketModel TicketModel)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(BadRequest(TicketModel));
         }
         var url           = HttpContext.Request.Host;
         var createdTicket = _Ticketservice.CreateTicket(TicketModel);
         return(CreatedAtRoute("GetTicket", new { TicketId = createdTicket.Id }, createdTicket));
     }
     catch (Exception ex)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, $"Something happend: {ex.Message}"));
     }
 }
        public async Task <IActionResult> Put([NotNull][FromBody] TicketApiModelRequest ticket)
        {
            TicketBlModelRequest ticketRequest = new TicketBlModelRequest
                                                 (
                HttpContext.User.GetUserId(),
                ticket.PriceId,
                Mapper.Map <ServiceApiModelRequestForTicket[], ServiceBlModelRequestForTicket[]>(ticket.Services)
                                                 );

            TicketBlModelResponse ticketResponse = await _ticketsService.CreateTicket(ticketRequest);

            if (ticketResponse == null)
            {
                return(BadRequest("This ticket already exists"));
            }
            else
            {
                return(Ok(
                           Mapper.Map <TicketApiModelResponse>(ticketResponse)
                           ));
            }
        }