Esempio n. 1
0
        public string isConferenceRoomAvailable(string conferenceRoomId, DateTime startTime, DateTime endTime, string meetingToUpdateId = "-1")
        {
            BookingStatusViewModel status = new BookingStatusViewModel();

            status = BookingService.IsConferenceRoomAvailable(conferenceRoomId, startTime, endTime, meetingToUpdateId);
            return(JsonConvert.SerializeObject(status, Formatting.Indented));
        }
Esempio n. 2
0
        private string createBooking(HttpContext context)
        {
            BookingModel        booking = new BookingModel();
            NameValueCollection param   = context.Request.Params;

            booking.CreatedByMemberNodeId = param["create-member-id"];
            booking.ConferenceRoomNodeId  = param["create-conference-room"];
            booking.Title     = param["create-title"];
            booking.StartTime = ParseDateTime(param["create-start-date"]);
            booking.EndTime   = ParseDateTime(param["create-end-date"]);

            BookingStatusViewModel status = new BookingStatusViewModel();

            if (booking.StartTime == DateTime.MinValue || booking.EndTime == DateTime.MinValue)
            {
                status.Status  = "ERROR";
                status.Message = "Dates could not be parsed";
                return(JsonConvert.SerializeObject(status, Formatting.Indented));
            }

            BookingViewModel viewModel = BookingService.CreateBooking(booking);

            viewModel.ClassName = "booked-by-user";
            if (viewModel != null)
            {
                status.Status  = "SUCCESS";
                status.Booking = viewModel;
            }
            else
            {
                status.Status  = "EXCEPTION";
                status.Message = "Something went wrong during creation of booking.";
            }
            return(JsonConvert.SerializeObject(status, Formatting.Indented));
        }
Esempio n. 3
0
        /// <summary>
        /// 依照訂單Id查訂單狀態
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <BookingStatusViewModel> GetBookingStatusList(BookingIdModel model)
        {
            BookingStatusViewModel data = new BookingStatusViewModel();
            var query =
                from main in _passengerDb.Booking
                where main.BookingId == model.BookingId
                join status in _passengerDb.DispatchStatus on main.OrderNo equals status.OrderId into statuses
                from statusV in statuses.DefaultIfEmpty()
                select new BookingStatusViewModel
            {
                BookingId     = main.BookingId,
                ProcessStatus = main.ProcessStatus,
                FlowStatus    = statusV.FlowStatus,
                GetonTime     = statusV.GetonTime,
                GetoffTime    = statusV.GetoffTime,
                ArrivalTime   = statusV.ArrivalTime
            };

            if (query.Any())
            {
                data = query.First();
            }

            return(await Task.Run(() => data));
        }
Esempio n. 4
0
        private string deleteBooking(HttpContext context)
        {
            BookingStatusViewModel status = new BookingStatusViewModel();
            string id = context.Request.Params["delete-booking-id"];

            if (BookingService.DeleteBooking(id))
            {
                status.Status  = "SUCCESS";
                status.Message = id;
            }
            else
            {
                status.Status  = "EXCEPTION";
                status.Message = "Something went wrong during deletion of booking";
            }
            return(JsonConvert.SerializeObject(status, Formatting.Indented));
        }
Esempio n. 5
0
        public async Task <IHttpActionResult> QueryTripStatus(BookingIdModel SearchModel)
        {
            BookingStatusViewModel data = new BookingStatusViewModel();

            VerityResult result = new VerityResult();

            result = JudgeUserIdentifyNameToVerityResult();
            if (!result.IsOk)
            {
                return(ReturnResponseMessageResult(result, HttpStatusCode.Unauthorized));
            }

            data = await _bookingService.GetBookingStatusList(SearchModel);

            return(new ResponseMessageResult(
                       Request.CreateResponse(
                           HttpStatusCode.OK,
                           data
                           )));
        }
Esempio n. 6
0
        public static BookingStatusViewModel IsConferenceRoomAvailable(string conferenceRoomNodeId, DateTime startTime, DateTime endTime, string meetingToUpdateId)
        {
            BookingStatusViewModel status = new BookingStatusViewModel();

            status.Status = "SUCCESS";
            try
            {
                using (SqlConnection conn = new SqlConnection(ApplicationSettings.Instance.DBConnectionString))
                {
                    conn.Open();

                    using (SqlCommand cmd = new SqlCommand("SELECT startTime, endTime FROM [custom_booking] WHERE ConferenceRoomNodeId = @conferenceRoomNodeId AND ID != @Id AND startTime < @endTime AND @startTime < endTime", conn))
                    {
                        cmd.Parameters.Add("@conferenceRoomNodeId", SqlDbType.NVarChar).Value = conferenceRoomNodeId;
                        cmd.Parameters.Add("@Id", SqlDbType.NVarChar).Value         = meetingToUpdateId;
                        cmd.Parameters.Add("@endTime", SqlDbType.DateTime2).Value   = endTime;
                        cmd.Parameters.Add("@startTime", SqlDbType.DateTime2).Value = startTime;
                        SqlDataReader reader = cmd.ExecuteReader();
                        if (reader.Read())
                        {
                            status.Message = "RESERVED";
                        }
                        else
                        {
                            status.Message = "OPEN";
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                log.ErrorException("Error in IsConferenceRoomAvailable", ex);
                status.Status  = "EXCEPTION";
                status.Message = "Something went wrong during conference rooms availability.";
            }
            return(status);
        }