public async Task <IActionResult> Pay(int id)
        {
            TicketBlModelResponse ticket = await _ticketsService.PayForTicket(id);

            return(Ok(
                       Mapper.Map <TicketApiModelResponse>(ticket)
                       ));
        }
        public async Task <IActionResult> GetById(int id)
        {
            TicketBlModelResponse ticket = await _ticketsService.GetTicketById(id);

            if (ticket == null)
            {
                return(NotFound());
            }

            return(Ok(
                       Mapper.Map <TicketApiModelResponse>(ticket)
                       ));
        }
        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)
                           ));
            }
        }