public IHttpActionResult CreateBooking(BookingApi booking) { try { if (booking != null) { booking.StartTime = new DateTime(booking.StartTime.Year, booking.StartTime.Month, booking.StartTime.Day, booking.StartTime.Hour, booking.StartTime.Minute, booking.StartTime.Second); booking.EndTime = new DateTime(booking.EndTime.Year, booking.EndTime.Month, booking.EndTime.Day, booking.EndTime.Hour, booking.EndTime.Minute, booking.EndTime.Second); var newBooking = Mapper.Map<BookingApi, BookingDto>(booking); newBooking.Specialist = Services.Users.GetUserById(booking.SpecialistId); newBooking.Customer = Services.Users.GetUserById(booking.CustomerId); newBooking.Specialization = newBooking.Specialist.Profile.Specializations.FirstOrDefault(); newBooking.IsApplyNoMinimumCharge = newBooking.Specialist.Profile.Specializations.FirstOrDefault().IsApplyNoMinimumCharge; if (BookingType.ASAP.Equals(newBooking.Type)) { newBooking.StartTime = DateTime.UtcNow; newBooking.EndTime = DateTime.UtcNow; } Services.Booking.Create(newBooking); // Reload alert and booking list NotifyHelper.ReloadAlert(newBooking.Specialist.UserName); NotifyHelper.ReloadAlert(newBooking.Customer.UserName); return Json(new { Success = true }); } else { Log.Error("Create booking false: Booking is null"); return Json(new { Success = false }); } } catch (Exception e) { Log.Error("Create booking CusId: " + booking.CustomerId + " - SpecId: " + booking.SpecialistId, e); return Json(new { Success = false }); } }
public IHttpActionResult UpdateBookingStatus(BookingApi booking) { bool isSuccess = false; bool isSpecialist = CurrentUser.Role.Equals(Role.Specialist); isSuccess = BookingHelper.UpdateBookingStatus(booking.Id, booking.Status, isSpecialist, Services); return Json(new { Success = isSuccess }); }
public IHttpActionResult RescheduleBooking(BookingApi rescheduleBooking) { //new date tiem because mobile send json with datetime contain kind "UTC", server will convert error rescheduleBooking.StartTime = new DateTime(rescheduleBooking.StartTime.Year, rescheduleBooking.StartTime.Month, rescheduleBooking.StartTime.Day, rescheduleBooking.StartTime.Hour, rescheduleBooking.StartTime.Minute, rescheduleBooking.StartTime.Second); rescheduleBooking.EndTime = new DateTime(rescheduleBooking.EndTime.Year, rescheduleBooking.EndTime.Month, rescheduleBooking.EndTime.Day, rescheduleBooking.EndTime.Hour, rescheduleBooking.EndTime.Minute, rescheduleBooking.EndTime.Second); bool isSuccess = false; isSuccess = BookingHelper.RescheduleBooking(rescheduleBooking.Id, rescheduleBooking.StartTime.ConvertToUTCTimeZone(), rescheduleBooking.EndTime.ConvertToUTCTimeZone(), rescheduleBooking.IsSpecialist, Services); return Json(new { Success = isSuccess }); }