コード例 #1
0
        static void Main(string[] args)
        {
            BL.BL_imp bL = BL.FactoryBl.GetIBL();
            Console.WriteLine("Press any key to start.\n");

            var yore_choise = Console.ReadLine(); Console.WriteLine(" ");

            while (Convert.ToInt32(yore_choise) != 5)
            {
                try
                {
                    Console.WriteLine("Choose a number from one to four");
                    Console.Write("1- If you are a customer\n" + "2 -If you own a unit\n" + "3-For order\n" + "4-Webmaster\n" + "5-Log off\n");
                    yore_choise = Console.ReadLine(); Console.WriteLine(" ");

                    switch (yore_choise)
                    {
                    case "0":
                        break;

                    case "1":     //"guestrequest":
                    {
                        Console.Write("1-If you want to create a hosting request\n" +
                                      "2 -If you want to see your order\n" +
                                      "3-If you want to change your order\n" +
                                      "4-If you want to delete your order\n" +
                                      "5-exite\n");
                        var choise2 = Console.ReadLine();

                        switch (choise2)
                        {
                        case "1":             //"create":
                            BE.GuestRequest temp = new BE.GuestRequest();
                            Console.WriteLine("what is your name?");
                            var name = Console.ReadLine();
                            temp.PrivateName = name;
                            Console.WriteLine("what is your last name?\n");
                            var lastname = Console.ReadLine();
                            temp.FamilyName = name;
                            Console.WriteLine("Please enter an email address\n");
                            var email = Console.ReadLine();
                            name             = emailGood(email);
                            temp.MailAddress = name;
                            //temp.RegistrationDate = DateTime.Now;
                            Console.WriteLine("When do you want to start your vacation?\n");
                            Console.WriteLine("day/month/yera\n");
                            temp.EntryDate = ReadDate();

                            Console.WriteLine("When do you want to end your vacation?\n");
                            Console.WriteLine("day/month/yera\n");
                            temp.ReleaseDate = ReadDate();

                            Console.Write("Which area do you want?\n" + "1-Jerusalem/2-Center/3-North/4-South\n");
                            temp.area = (BE.Enums.Area)ReadInt(1, 4);

                            Console.WriteLine("How many adults?");
                            temp.Adults = ReadInt(0, 100);

                            Console.WriteLine("How many children?");
                            temp.Children      = ReadInt(0, 100);
                            temp.numberOfGuest = temp.Adults + temp.Children;
                            Console.WriteLine("You want a pool");
                            Console.WriteLine("1-Must, 2-preferably, 3-not interested");
                            temp.pool = (BE.Enums.enum_1)ReadInt(1, 3);
                            Console.WriteLine("You want a Jacuzzi");
                            Console.WriteLine("1-Must, 2-preferably, 3-not interested");
                            temp.jacuzzi = (BE.Enums.enum_1)ReadInt(1, 3);
                            Console.WriteLine("You want a Window To Sea");
                            Console.WriteLine("1-Must, 2-preferably, 3-not interested");
                            temp.WindowToSea = (BE.Enums.enum_1)ReadInt(1, 3);
                            Console.WriteLine("You want a childrens Attractions");
                            Console.WriteLine("1-Must, 2-preferably, 3-not interested");
                            temp.childrensAttractions = (BE.Enums.enum_1)ReadInt(1, 3);
                            Console.WriteLine("You want a childrens garden");
                            Console.WriteLine("1-Must, 2-preferably, 3-not interested");
                            temp.garden = (BE.Enums.enum_1)ReadInt(1, 3);

                            Console.Write("Your site access number:\n");
                            Console.WriteLine(bL.CreateGuestRequest(temp));
                            break;

                        case "2":            //Read:
                            Console.WriteLine("What is your site access number?");
                            var id = Console.ReadLine();
                            Console.WriteLine(bL.ReadGuestRequest(Convert.ToInt32(id)).ToString());

                            break;

                        case "3":            //change
                            Console.WriteLine("What is your site access number?");
                            GuestRequest guestRequestChange = bL.ReadGuestRequest(Convert.ToInt32(Console.ReadLine()));
                            Console.WriteLine("What do you want to change?");
                            Console.Write("\n");
                            break;

                        case "4":            //Delete
                            Console.WriteLine("What is your site access number?");
                            var iddelete = Console.ReadLine();
                            bL.DeleteGuestRequest(Convert.ToInt32(iddelete));

                            break;

                        default:
                            Console.Write("ERORR\n");
                            break;
                        }

                        break;
                    }

                    case "2":    //hostingunit
                    {
                        Console.Write("1-If you want to create a hosting unit\n" +
                                      "2 -If you want to see your order\n" +
                                      "3-If you want to change your order\n" +
                                      "4-If you want to delete your order\n" +
                                      "5-exite\n");
                        var choise1 = Console.ReadLine();


                        switch (choise1)
                        {
                        case "1":             //"create":
                            HostingUnit temp = new HostingUnit();
                            Console.WriteLine("Unit name?");
                            temp.HostingUnitName = Console.ReadLine();
                            Console.Write("Where is the accommodation unit?\n" + "1-Center/2-Jerusalem/3-North/4-South");
                            temp.area = (Enums.Area)ReadInt(1, 4);
                            Console.Write("Is there a window to the sea?\n" + "1-Yes,0-no");
                            temp.WindowToTheSea = (Enums.Yes_No)ReadInt(0, 1);
                            Console.Write("Is there a pool?\n " + "1-Yes,0-no");
                            temp.ThereIsPool = (Enums.Yes_No)ReadInt(0, 1);
                            Console.Write("Is there a Disabled Accessible?\n " + "1-Yes,0-no");
                            temp.DisabledAccessible = (Enums.Yes_No)ReadInt(0, 1);
                            Console.Write("Is there a garden?\n " + "1-Yes,0-no");

                            Console.Write("Is there a garden?\n " + "1-Yes,0-no");
                            temp.childrensAttractions = (Enums.Yes_No)ReadInt(0, 1);
                            Console.Write("Is there a jacuzzi?\n " + "1-Yes,0-no");
                            temp.jacuzzi = (Enums.Yes_No)ReadInt(0, 1);
                            Console.Write("\n" + "1-Zimmer/2-guestRoom3-HotelRoom/4-encampment");
                            temp.resortType     = (Enums.ResortType)ReadInt(1, 4);
                            temp.numberOfPlaces = ReadInt(1, 50);

                            Console.WriteLine("the number of id is: ");
                            //  Console.WriteLine(   bL.CreateHostingUnit(temp));



                            break;

                        case "2":            //Read:
                            Console.WriteLine("What is your site access number?");
                            var id = Console.ReadLine();
                            Console.WriteLine(bL.ReadHostingUnit(Convert.ToInt32(id)).ToString());
                            break;

                        case "3":            //change

                            Console.WriteLine("What is your site access number?");
                            var iddelete = Console.ReadLine();
                            var temp1    = bL.ReadHostingUnit(Convert.ToInt32(iddelete));
                            Console.WriteLine("What do you want to change?");
                            Console.Write("1-Name of accommodation unit\n"
                                          + "2-The hosting occupancy\n" +
                                          "3-Details at the host\n");
                            switch (ReadInt(1, 3))
                            {
                            case 1:                    //name
                                Console.WriteLine("A new name is:");
                                temp1.HostingUnitName = Console.ReadLine();
                                break;

                            case 2:                    //daire
                                break;

                            case 3:                    //host
                                Console.Write("1-For approval to the bank \n" +
                                              "2-email\n" +
                                              "3-Fhone Number\n");
                                switch (ReadInt(1, 3))
                                {
                                case 1:

                                    temp1.Owner.CollectionClearance = (BE.Enums.Yes_No)ReadInt(0, 1);
                                    break;

                                case 2:
                                    Console.WriteLine("enter a new email");
                                    temp1.Owner.MailAddress = emailGood(Console.ReadLine());

                                    break;

                                case 3:
                                    Console.WriteLine("enter a new fhone");
                                    temp1.Owner.PhoneNumber = ReadInt(0500000000, 0580000000);
                                    break;
                                }
                                break;
                            }
                            bL.UpdateHostingUnit(temp1);
                            break;

                        case "4":            //delete
                            Console.WriteLine("What is your site access number?");
                            iddelete = Console.ReadLine();
                            bL.ReadHostingUnit(Convert.ToInt32(iddelete));
                            break;
                        }
                        break;
                    }

                    case "3":    //order
                    {
                        Console.Write("1-If you want to create a order\n" +
                                      "2 -If you want to see your order\n" +
                                      "3-If you want to change status\n" +
                                      "4-If you want to delete your order\n" +
                                      "5-exite\n");
                        var choise = Console.ReadLine();


                        switch (choise)
                        {
                        case "1":             //"create":
                            Order order = new Order();
                            Console.WriteLine("enter a hosting request ID number:  ");
                            order.GuestRequestKey = ReadInt(30000001, 399999999);
                            Console.WriteLine("enter a hosting unit ID number:  ");
                            order.HostingUnitKey = ReadInt(20000001, 299999999);
                            Console.WriteLine("The order number is:");
                            Console.WriteLine(bL.CreateOrder(order));
                            break;

                        case "2":            //Read:
                            Console.WriteLine("What is your site access number?");
                            var id = Console.ReadLine();
                            Console.WriteLine(bL.ReadOrder(Convert.ToInt32(id)).ToString());
                            break;

                        case "3":            //change
                            Console.WriteLine("What is your site access number?");
                            var iddelete = Console.ReadLine();
                            var temp     = bL.ReadOrder(Convert.ToInt32(iddelete));
                            Console.WriteLine("order status:");

                            Console.Write("new Statos: \n" +
                                          "1- open" + "2-closed" + "3-expired");
                            temp.orderStatus = (Enums.OrderStatus)ReadInt(1, 3);

                            bL.UpdateOrder(temp);

                            break;

                        case "4":            //delete
                            Console.WriteLine("What is your site access number?");
                            iddelete = Console.ReadLine();
                            bL.ReadOrder(Convert.ToInt32(iddelete));
                            break;
                        }
                        break;
                    }

                    case "4":    //Webmaster
                    {
                        Console.WriteLine("guest Requests Pool");
                        List <GuestRequest> guestRequestsPool = bL.AllGuestsWithPool();
                        printList(guestRequestsPool);
                        Console.WriteLine("Most Hosting");
                        //List < Int32 > MostHosting= bL.MostWantedHostingUnit();
                        //        printList(MostHosting);
                        List <HostingUnit> UnitsInJerusalemWithPoolAndDisabledAccess = bL.UnitsInJerusalemWithPoolAndDisabledAccess();
                        Console.WriteLine("Units In Jerusalem With Pool And Disabled Access ");
                        printList(UnitsInJerusalemWithPoolAndDisabledAccess);
                        List <Order> TheWaitingTimeExpired = bL.TheWaitingTimeExpired(BE.Configuration.SeveralDaysToExpireOrder);
                        Console.WriteLine("The Waiting Time Expired");
                        printList(TheWaitingTimeExpired);
                        Console.WriteLine("enter two day : day/month/year");
                        DateTime one = ReadDate(), two = ReadDate();
                        Console.WriteLine(bL.dates(one, two));
                        Console.WriteLine(bL.dates(one));
                        bL.groupHostsByUnitCount();
                        Console.WriteLine("enter number of HostingUnit 200000001-299999999");
                        List <Order> hostOrder = bL.dealWasClosed(bL.ReadHostingUnit(ReadInt(200000001, 299999999)));
                        printList(hostOrder);
                        Console.WriteLine("enter number of HostingUnit 200000001-299999999");
                        List <Order> Invitation_Sent = bL.InvitationSent(bL.ReadHostingUnit(ReadInt(200000001, 299999999)));
                        printList(Invitation_Sent);
                        Console.WriteLine("enter number of GuestRequest 100000001-199999999");
                        int numberOfOrdersForGuest = bL.numberOfOrdersForGuest(bL.ReadGuestRequest(ReadInt(100000001, 199999999)));
                        Console.WriteLine("enter number of HostingUnit 200000001-299999999");
                        int numberOfOrdersForHostingUnit           = bL.numberOfOrdersForHostingUnit(bL.ReadHostingUnit(ReadInt(200000001, 299999999)));
                        List <GuestRequest> guestRequestsJerusalem = bL.groupArea(Enums.Area.Jerusalem);
                        Console.WriteLine("enter number of GuestRequest 100000001-199999999");
                        List <GuestRequest> groupGuests      = bL.groupGuests(ReadInt(100000001, 199999999));
                        List <HostingUnit>  groupHostingUnit = bL.groupHostingUnit(Enums.Area.Jerusalem);


                        break;
                    }

                    default:
                        Console.Write("ERORR\n");
                        break;
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }