/// <summary>
        /// Редактировать бронь на комнату
        /// </summary>
        /// <param name="id">Идентификатор</param>
        /// <param name="mainDate">Дата</param>
        /// <param name="start">Время начала</param>
        /// <param name="end">Конечное время</param>
        /// <param name="room">Комната</param>
        /// <returns></returns>
        public void Edit(int id, DateTime mainDate, DateTime start, DateTime end, RoomInfo room)
        {
            orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
            if (orderRoom == null)
            {
                throw new ArgumentException("Не найден объект");
            }
            OrderRoomStatus status = OrderRoomStatus.FilingArmor;

            switch (orderRoom.Status)
            {
            case 1:
            {
                status = OrderRoomStatus.ReservationApproved;
                break;
            }

            case 2:
            {
                status = OrderRoomStatus.ReservationDeclined;
                break;
            }

            case 3:
            {
                status = OrderRoomStatus.ReservationMarkedForDeletionByManager;
                break;
            }
            }
            Check(mainDate, start, end, null, room, status, false);
            SetValue(mainDate, start, end, null, room, status, false);
        }
 /// <summary>
 /// Отклонить бронь
 /// </summary>
 /// <param name="id">Идентификатор</param>
 public void ReservationDeclined(int id)
 {
     orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
     if (orderRoom == null)
     {
         throw new ArgumentException("Не найден объект");
     }
     orderRoom.Status = 2;
     dataContent.SaveChanges();
 }
 /// <summary>
 /// Удалить бронь на комнатц
 /// </summary>
 /// <param name="id">Идентификатор</param>
 public void Delete(int id)
 {
     orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
     if (orderRoom == null)
     {
         throw new ArgumentException("Не найден объект");
     }
     dataContent.OrderRooms.Remove(orderRoom);
     dataContent.SaveChanges();
 }
Esempio n. 4
0
 private void OrderRoomToForm(OrderRoom orderRoom)
 {
     //ממירה את המידע בטנ"מ לקוח לטופס
     label_order_id.Text         = orderRoom.ID.ToString();
     label_order_roomNumber.Text = orderRoom.Room.RoomNumber;
     date_checkin.Value          = orderRoom.CheckinDate;
     date_checkout.Value         = orderRoom.CheckoutDate;
     order_date.Value            = orderRoom.OrderDate;
     textBox_comment.Text        = orderRoom.Comment;
     label_order_price.Text      = orderRoom.TotalPrice.ToString();
 }
 /// <summary>
 /// Редактировать бронь на комнату
 /// </summary>
 /// <param name="id">Идентификатор</param>
 /// <param name="mainDate">Дата</param>
 /// <param name="start">Время начала</param>
 /// <param name="end">Конечное время</param>
 /// <param name="room">Комната</param>
 /// <param name="status">Статус брони </param>
 /// <returns></returns>
 public void Edit(int id, DateTime mainDate, DateTime start, DateTime end,
                  RoomInfo room, OrderRoomStatus status)
 {
     orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
     if (orderRoom == null)
     {
         throw new ArgumentException("Не найден объект");
     }
     Check(mainDate, start, end, null, room, status, false);
     SetValue(mainDate, start, end, null, room, status, false);
 }
Esempio n. 6
0
        private OrderRoom FormToOrderRoom()
        {
            OrderRoom orderRoom = new OrderRoom();

            orderRoom.ID           = int.Parse(label_order_id.Text);
            orderRoom.Room         = (listBox_Rooms.SelectedItem as Room);
            orderRoom.CheckinDate  = date_checkin.Value.Date;
            orderRoom.CheckoutDate = date_checkout.Value.Date;
            orderRoom.OrderDate    = order_date.Value.Date;
            orderRoom.Client       = (listBox_Clients.SelectedItem as Client);
            orderRoom.Comment      = textBox_comment.Text;
            return(orderRoom);
        }
Esempio n. 7
0
        private void Button_Delete_Order(object sender, EventArgs e)
        {
            OrderRoom orderRoom = FormToOrderRoom();

            if (orderRoom.ID == 0)
            {
                MessageBox.Show("Please choice an order to delete");
            }
            else
            {
                if (MessageBox.Show("Are you sure to delete the order: " + orderRoom.ID + " ? ", "Be Careful", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2, MessageBoxOptions.RightAlign | MessageBoxOptions.RtlReading) == System.Windows.Forms.DialogResult.Yes)
                {
                    orderRoom.Delete();
                    Clean_Form();
                    OrderRoomArrToForm();
                }
            }
        }
        /// <summary>
        /// Данные о брони
        /// </summary>
        /// <param name="id">Идентификатор</param>
        /// <returns></returns>
        public OrderRoomInfo GetOrderRoom(int id)
        {
            orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
            if (orderRoom == null)
            {
                return(null);
            }
            OrderRoomInfo orderRoomInfo = new OrderRoomInfo
            {
                ID       = orderRoom.ID,
                Start    = orderRoom.Start,
                End      = orderRoom.End,
                RoomID   = orderRoom.RoomID,
                MainDate = orderRoom.Start,
                UserID   = orderRoom.UserID,
                Status   = (OrderRoomStatus)orderRoom.Status
            };

            return(orderRoomInfo);
        }
 /// <summary>
 /// Подтвердить бронь проверка на наличие есть ли еще на брони на время
 /// вызывать перед ReservationApproved
 /// </summary>
 /// <param name="id">Идентификатор</param>
 public List <OrderRoomInfo> ChekReservationApproved(int id)
 {
     orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
     return(dataContent.OrderRooms.Where(x =>
                                         (x.ID != id && x.Start <= orderRoom.Start && x.End >= orderRoom.Start &&
                                          x.RoomID == orderRoom.RoomID && x.Status == 0) ||
                                         (x.ID != id && x.Start <= orderRoom.End && x.End >= orderRoom.End &&
                                          x.RoomID == orderRoom.RoomID && x.Status == 0) ||
                                         (x.ID != id && x.Start >= orderRoom.Start && x.End <= orderRoom.End &&
                                          x.RoomID == orderRoom.RoomID && x.Status == 0)).
            Select(m => new OrderRoomInfo
     {
         ID = m.ID,
         Start = m.Start,
         End = m.End,
         RoomID = m.RoomID,
         MainDate = m.Start,
         UserID = m.UserID,
         Status = (OrderRoomStatus)m.Status
     }).ToList());
 }
Esempio n. 10
0
 private void Button_Save(object sender, EventArgs e)
 {
     if (!CheckGood())
     {
         MessageBox.Show("You didn't write right,\n You need to: \n " + to_change, "TRY AGAIN", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error);
         All_White();
         to_change = "";
     }
     else
     {
         OrderRoom orderRoom = FormToOrderRoom();
         if (orderRoom.ID == 0)
         {
             if (orderRoom.Insert())
             {
                 MessageBox.Show("Order Details Saved");
                 Clean_Form();
                 OrderRoomArrToForm();
             }
             else
             {
                 MessageBox.Show("Cannot Save Order Details");
             }
         }
         else
         {
             if (orderRoom.Update())
             {
                 MessageBox.Show("Order Details UPDATED");
                 Clean_Form();
                 OrderRoomArrToForm();
             }
             else
             {
                 MessageBox.Show("Cannot UPDATE order Details");
             }
         }
     }
 }
Esempio n. 11
0
        /// <summary>
        /// Подтвердить бронь
        /// </summary>
        /// <param name="id">Идентификатор</param>
        public void ReservationApproved(int id)
        {
            orderRoom = dataContent.OrderRooms.FirstOrDefault(x => x.ID == id);
            if (orderRoom == null)
            {
                throw new ArgumentException("Не найден объект");
            }
            orderRoom.Status = 1;
            List <OrderRoom> orderRoomList = dataContent.OrderRooms.Where(x =>
                                                                          (x.ID != id && x.Start <= orderRoom.Start && x.End >= orderRoom.Start &&
                                                                           x.RoomID == orderRoom.RoomID && x.Status == 0) ||
                                                                          (x.ID != id && x.Start <= orderRoom.End && x.End >= orderRoom.End &&
                                                                           x.RoomID == orderRoom.RoomID && x.Status == 0) ||
                                                                          (x.ID != id && x.Start >= orderRoom.Start && x.End <= orderRoom.End &&
                                                                           x.RoomID == orderRoom.RoomID && x.Status == 0)).ToList();

            for (int i = 0; i < orderRoomList.Count; i++)
            {
                orderRoomList[i].Status = 2;
            }
            dataContent.SaveChanges();
        }
Esempio n. 12
0
        /// <summary>
        /// Дабавить/редактировать
        /// </summary>
        /// <param name="name">Наименование</param>
        /// <param name="seatsCount">Количество кресел</param>
        /// <param name="isProjector">Наличие проектора</param>
        /// <param name="isMarkerBoard">Наличие маркерной доски</param>
        /// <param name="isBlock">Заблокировать комнату</param>
        /// <param name="isNew">Новый</param>
        private void SetValue(DateTime mainDate, DateTime start, DateTime end,
                              UserInfo user, RoomInfo room, OrderRoomStatus status, bool isNew = true)
        {
            if (isNew)
            {
                orderRoom        = new OrderRoom();
                orderRoom.UserID = user.ID;
            }

            orderRoom.Start = new DateTime(mainDate.Year, mainDate.Month, mainDate.Day,
                                           start.Hour, start.Minute, start.Second);
            orderRoom.End = new DateTime(mainDate.Year, mainDate.Month, mainDate.Day,
                                         end.Hour, end.Minute, end.Second);
            orderRoom.RoomID = room.ID;
            orderRoom.Status = (int)status;

            if (isNew)
            {
                dataContent.OrderRooms.Add(orderRoom);
            }
            dataContent.SaveChanges();
        }