public ActionResult <BookingAdapterOut> Post([FromBody] BookingAdapterIn value)
 {
     try
     {
         BookingOrder booking = _bookingService.Create(new BookingOrder
         {
             Id                 = value.Id,
             Product            = _productService.Read(value.Product.Id),
             User               = _UserInfoservice.Read(value.User.Id),
             StartTimeOfBooking = DateConverter.FromUTCEpochToDatetime(value.StartTimeOfBooking),
             EndTimeOfBooking   = DateConverter.FromUTCEpochToDatetime(value.EndTimeOfBooking)
         });
         return(Created("" + booking.Id, new BookingAdapterOut
         {
             Id = booking.Id,
             Product = booking.Product,
             User = booking.User,
             StartTimeOfBooking = DateConverter.FromDatetimeToUTCEpoch(booking.StartTimeOfBooking),
             EndTimeOfBooking = DateConverter.FromDatetimeToUTCEpoch(booking.EndTimeOfBooking)
         }));
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }
        public ActionResult <IEnumerable <BookingAdapterOut> > Get([FromQuery] long start, long end, int productId)
        {
            try
            {
                List <BookingOrder> bookings;
                if (start == 0 && end == 0)
                {
                    bookings = _bookingService.ReadAll();
                }
                else
                {
                    bookings = _bookingService.ReadByWeek(DateConverter.FromUTCEpochToDatetime(start), DateConverter.FromUTCEpochToDatetime(end), productId);
                }

                List <BookingAdapterOut> bookingsOut = new List <BookingAdapterOut>();
                foreach (BookingOrder item in bookings)
                {
                    bookingsOut.Add(new BookingAdapterOut
                    {
                        Id                 = item.Id,
                        Product            = item.Product,
                        User               = item.User,
                        StartTimeOfBooking = DateConverter.FromDatetimeToUTCEpoch(item.StartTimeOfBooking),
                        EndTimeOfBooking   = DateConverter.FromDatetimeToUTCEpoch(item.EndTimeOfBooking)
                    });
                }
                return(Ok(bookings));
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
 public ActionResult <BookingAdapterOut> Get(int id)
 {
     try
     {
         BookingOrder booking = _bookingService.Read(id);
         return(Ok(new BookingAdapterOut
         {
             Id = booking.Id,
             Product = booking.Product,
             User = booking.User,
             StartTimeOfBooking = DateConverter.FromDatetimeToUTCEpoch(booking.StartTimeOfBooking),
             EndTimeOfBooking = DateConverter.FromDatetimeToUTCEpoch(booking.EndTimeOfBooking)
         }));
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }