Exemplo n.º 1
0
        static void Main(string[] args)
        {
            #region //示例(订单明细)条目,四个测试条目
            //OrderDetails od1 = new OrderDetails
            //{
            //    Brand = Products.Apple,
            //    ProductsNum = 2,
            //    Price=8800,
            //};
            //OrderDetails od2 = new OrderDetails
            //{
            //    Brand = Products.HUAWEI,
            //    ProductsNum = 1,
            //    Price=3200,
            //};
            //OrderDetails od3 = new OrderDetails
            //{
            //    Brand = Products.OPPO,
            //    ProductsNum = 3,
            //    Price=3500,
            //};
            //OrderDetails od4 = new OrderDetails
            //{
            //    Brand = Products.SAMSUNG,
            //    ProductsNum = 2,
            //    Price=3800,
            //};
            #endregion

            #region //示例订单
            Order order1 = new Order
            {
                OrderNum   = "20181004001",
                ClientName = "Bob",
            };
            Order order2 = new Order
            {
                OrderNum   = "20181004002",
                ClientName = "Tom",
            };
            Order order3 = new Order
            {
                OrderNum   = "20181004003",
                ClientName = "Alice",
            }; Order order4 = new Order
            {
                OrderNum   = "20181004004",
                ClientName = "Alex",
            };
            #endregion

            #region//添加订单明细
            //直接add时创建对象
            order1.orderDetails = new List <OrderDetails>();
            order1.AddOrderDetails(new OrderDetails(Products.Apple, 3, 8800));
            order1.AddOrderDetails(new OrderDetails(Products.HUAWEI, 2, 2800));

            order2.orderDetails = new List <OrderDetails>();
            order2.AddOrderDetails(new OrderDetails(Products.OPPO, 1, 3200));
            order2.AddOrderDetails(new OrderDetails(Products.SAMSUNG, 4, 4800));

            order3.orderDetails = new List <OrderDetails>();
            order3.AddOrderDetails(new OrderDetails(Products.vivo, 1, 3000));

            order4.orderDetails = new List <OrderDetails>();
            order4.AddOrderDetails(new OrderDetails(Products.XIAOMI, 10, 2500));
            #endregion

            //订单服务,添加了两个订单
            OrderService.orders = new List <Order>();
            OrderService.AddOrder(order1);
            OrderService.AddOrder(order2);
            OrderService.AddOrder(order3);
            OrderService.AddOrder(order4);

            //订单删除条目
            try
            {
                order1.RemoveOrderDetails(order1.orderDetails[0]);
            }
            catch (ArgumentOutOfRangeException e)
            {
                Console.WriteLine("No such order details. ");
            }

            OrderService.RemoveOrder(order1);

            OrderService.ModifyClientName(order2, "kimmy");

            OrderService.DisplayAllOrders();

            try
            {
                OrderService.DisplayOrder(OrderService.FindOrderByOrderNum("20181004001"));
            }
            catch (DataException e)
            {
                Console.WriteLine(e.Message);
            }
            OrderService.FindOrderByClientName("Tom");

            OrderService.FindOrderByProductBrand(Products.SAMSUNG);
        }
Exemplo n.º 2
0
        public static void FindOrder()
        {
            while (true)
            {
                try
                {
                    Console.WriteLine();
                    Console.WriteLine();
                    Console.WriteLine("**************************查找订单**************************");
                    Console.WriteLine("1.根据流水号查找               2.查找某天对应所有订单");
                    Console.WriteLine("3.根据客户名查找对应所有订单   4.根据商品名称查找对应所有订单");
                    Console.WriteLine("5.返回主页");
                    int choose = 0;
                    Choose(ref choose, 1, 5);
                    int num = 0;           //通过其他方式查找的判断num,代表个数


                    switch (choose)
                    {
                    case 1:
                        int flag = -1;           //通过流水号查找的判断falg,-1无,其他值则表示位置
                        Console.Write("请输入流水号(格式:2018-1-1-1):");
                        flag = OrderService.FindOrder(Console.ReadLine());
                        if (flag == -1)
                        {
                            Console.WriteLine();
                            Console.WriteLine();
                            Console.WriteLine("未查找到!");
                        }
                        else
                        {
                            Console.WriteLine();
                            Console.WriteLine();
                            Console.WriteLine("共查找到1单!");
                        }
                        break;

                    case 2:
                        Console.Write("请输入日期(格式:20180101):");
                        num = OrderService.FindOrder(DateTime.ParseExact(Console.ReadLine(), "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture));
                        break;

                    case 3:
                        Console.Write("请输入客户名称:");
                        num = OrderService.FindOrderByClientName(Console.ReadLine());
                        break;

                    case 4:
                        Console.Write("请输入商品名称:");
                        num = OrderService.FindOrderByProductName(Console.ReadLine());
                        break;

                    case 5:
                        return;              //返回主页
                    }
                    if (choose != 1 && num > 0)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("共查找到{0}单!", num);
                    }
                    else if (choose != 1 && num == 0)
                    {
                        Console.WriteLine();
                        Console.WriteLine();
                        Console.WriteLine("未查找到!");
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine();
                    Console.WriteLine();
                    Console.WriteLine(e.Message);
                    Console.WriteLine("失败,请重试!");
                }
            }
        }