예제 #1
0
 /// <summary>
 /// add room for administrator
 /// </summary>
 /// <param name="index">hotel index of the room to be added</param>
 /// <param name="roomType">type of room to add</param>
 /// <returns>transaction status</returns>
 public bool addRoom(int index, string roomType)
 {
     if (index >= 0 && app.hotels[index].RoomCapaCity > app.hotels[index].Rooms.Count)
     {
         int no = (app.hotels[index].Rooms.Count == 0) ? 100 : app.hotels[index].Rooms.Last().no + 1;
         app.hotels[index].Rooms.Add(RoomFactory.GetRoom(roomType, no, app.hotels[index].Star));
         return(true);
     }
     return(false);
 }
예제 #2
0
        /// <summary>
        /// Creating and adding Rooms by hotel Star
        /// </summary>
        /// <param name="hotel">hotel instance</param>
        private void addRoom(Hotel hotel)
        {
            switch (hotel.Star)
            {
            case 1:
            {
                int num = 100;
                for (int i = 0; i < hotel.RoomCapaCity / 2; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("SingleBedRoom", num, hotel.Star));
                }
                num = 200;
                for (int i = 0; i < hotel.RoomCapaCity - hotel.RoomCapaCity / 2; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwoBedRoom", num, hotel.Star));
                }
                //wrong room name
                try
                {
                    hotel.Rooms.Add(RoomFactory.GetRoom("Tsadasm", 518, hotel.Star));
                }
                catch (ProjeException e)
                {
                    e.notification = "App ->> AddRoom()";
                    Logger.writeExceptionLog(e.ToString());
                }

                break;
            }

            case 2:
            {
                int num = 100;
                for (int i = 0; i < hotel.RoomCapaCity / 3; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("SingleBedRoom", num, hotel.Star));
                }
                num = 200;
                for (int i = 0; i < hotel.RoomCapaCity / 3; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwoBedRoom", num, hotel.Star));
                }

                num = 300;
                for (int i = 0; i < hotel.RoomCapaCity - ((hotel.RoomCapaCity / 3) * 2); i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwinRoom", num, hotel.Star));
                }

                //null room name
                try
                {
                    hotel.Rooms.Add(RoomFactory.GetRoom(null, 312, hotel.Star));
                }
                catch (ProjeException e)
                {
                    e.notification = "App ->> AddRoom()";
                    Logger.writeExceptionLog(e.ToString());
                }
                break;
            }

            case 3:
            {
                int num = 100;
                for (int i = 0; i < hotel.RoomCapaCity / 4; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("SingleBedRoom", num, hotel.Star));
                }
                num = 200;
                for (int i = 0; i < hotel.RoomCapaCity / 4; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwoBedRoom", num, hotel.Star));
                }

                num = 300;
                for (int i = 0; i < hotel.RoomCapaCity / 4; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwinRoom", num, hotel.Star));
                }


                num = 400;
                for (int i = 0; i < hotel.RoomCapaCity - ((hotel.RoomCapaCity / 4) * 3); i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("ThreeBedRoom", num, hotel.Star));
                }

                //wrong room name
                try
                {
                    hotel.Rooms.Add(RoomFactory.GetRoom("adsadasda", 426, hotel.Star));
                }
                catch (ProjeException e)
                {
                    e.notification = "App ->> AddRoom()";
                    Logger.writeExceptionLog(e.ToString());
                }
                break;
            }

            case 4:
            {
                int num = 100;
                for (int i = 0; i < hotel.RoomCapaCity / 5; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("SingleBedRoom", num, hotel.Star));
                }
                num = 200;
                for (int i = 0; i < hotel.RoomCapaCity / 5; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwoBedRoom", num, hotel.Star));
                }

                num = 300;
                for (int i = 0; i < hotel.RoomCapaCity / 5; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwinRoom", num, hotel.Star));
                }


                num = 400;
                for (int i = 0; i < hotel.RoomCapaCity / 5; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("ThreeBedRoom", num, hotel.Star));
                }

                num = 500;
                for (int i = 0; i < hotel.RoomCapaCity - ((hotel.RoomCapaCity / 5) * 4); i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("FamilyRoom", num, hotel.Star));
                }

                //null room name
                try
                {
                    hotel.Rooms.Add(RoomFactory.GetRoom(null, 718, hotel.Star));
                }
                catch (ProjeException e)
                {
                    e.notification = "App ->> AddRoom()";
                    Logger.writeExceptionLog(e.ToString());
                }
                break;
            }

            case 5:
            {
                int num = 100;
                for (int i = 0; i < hotel.RoomCapaCity / 6; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("SingleBedRoom", num, hotel.Star));
                }
                num = 200;
                for (int i = 0; i < hotel.RoomCapaCity / 6; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwoBedRoom", num, hotel.Star));
                }

                num = 300;
                for (int i = 0; i < hotel.RoomCapaCity / 6; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("TwinRoom", num, hotel.Star));
                }


                num = 400;
                for (int i = 0; i < hotel.RoomCapaCity / 6; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("ThreeBedRoom", num, hotel.Star));
                }

                num = 500;
                for (int i = 0; i < hotel.RoomCapaCity / 6; i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("FamilyRoom", num, hotel.Star));
                }

                num = 600;
                for (int i = 0; i < hotel.RoomCapaCity - ((hotel.RoomCapaCity / 6) * 5); i++)
                {
                    num++;
                    hotel.Rooms.Add(RoomFactory.GetRoom("KingRoom", num, hotel.Star));
                }


                //wrong room name
                try
                {
                    hotel.Rooms.Add(RoomFactory.GetRoom("mustafa", 333, hotel.Star));
                }
                catch (ProjeException e)
                {
                    e.notification = "App ->> AddRoom()";
                    Logger.writeExceptionLog(e.ToString());
                }

                break;
            }
            }
        }