private void buttonDeleteOrder_Click(object sender, EventArgs e) { DeleteOrderForm deleteOrderForm = new DeleteOrderForm(); deleteOrderForm.ShowDialog(); try { orderService.DeleteOrder(deleteOrderForm.ID); } catch (FormatException) { } //点弹窗的关闭时不弹出错误窗口 catch (ArgumentNullException) { } //点弹窗的关闭时不弹出错误窗口 catch (Exception error) { ErrorForm errorForm = new ErrorForm(error.Message); errorForm.ShowDialog(); } finally { orderServiceBindingSource.DataSource = new BindingList <Order>(orderService.orders); } }
static void Main(string[] args) { OrderService store = new OrderService(); store.AddOrder(); //添加商品 store.AddGood("apple", 10, 0); store.AddGood("banana", 10, 0); store.AddGood("ipone", 10, 0); store.AddGood("car", 10, 0); store.AddGood("water", 10, 0); //打印出所有商品 store.ShowOrderService(); Console.WriteLine(""); //删除一种商品 store.DeleteGoodByGoodName("car", 0); store.ShowOrderService(); //修改商品的名字 store.ChangeGoodDetailsName("apple", "changeApple", 0); store.ShowOrderService(); //修改商品的数量 store.ChangeGoodDetailsNumber("changeApple", 10000, 0); store.ShowOrderService(); //搜索某种商品——通过商品的名字 store.SortGood("water"); //搜索某种商品——通过商品的序号 store.SortGood(1, 0); //错误检测——改变商品数据 store.ChangeGoodDetailsName("aaa", "bbb", 1); //错误检测——寻找商品 store.SortGood("aaa"); store.SortGood(6, 0); //错误检测——删除商品 store.DeleteGoodByGoodName("aaaa", 0); store.DeleteGoodByGoodNumber(6, 0); //删除订单 store.DeleteOrder(0); store.ShowOrderService(); }
static void Main(string[] args) { try { OrderService orderService = new OrderService(); Console.WriteLine("共有3种食品"); Console.WriteLine("苹果 5元,香蕉 2.5元,火锅 100元"); //下面的代码可省去操作者的一步步操作,可直接显示结果 Goods goods1 = new Goods("苹果"); Goods goods2 = new Goods("香蕉"); Goods goods3 = new Goods("火锅"); Order order1 = new Order("周礼林", goods1, 1); Order order2 = new Order("周礼林", goods3, 2); Order order3 = new Order("张三", goods1, 1); orderService.AddOrder(order1); orderService.AddOrder(order2); orderService.AddOrder(order3); orderService.QueryOrderByCustomer("周礼林"); orderService.QueryOrderByGoods("苹果"); orderService.ModifyOrder(order1, "火锅", 5); orderService.ModifyOrder(order1, 3); orderService.DeleteOrder(order1); } catch (Exception e) { Console.WriteLine(e.Message); } //下面的函数可以做具体的一步步的操作,添加,查询,删除,修改 //Func(orderService); }
static void Main(string[] args) { Console.WriteLine("请开始创建你的订单表:"); while (OrderService.orderList.Count <= OrderService.orderList.Capacity) { OrderService.AddOrder(); Console.WriteLine("按任意键继续,按esc键停止添加。\n"); if (Console.ReadKey().Key == ConsoleKey.Escape) { break; } } OrderService.findOrderByCustomerName(); OrderService.DeleteOrder(); OrderService.findOrderByOrderNum(); OrderService.ChangeOrder(); OrderService.AddOrder(); OrderService.findOrderByProductName(); Console.WriteLine("按任意键退出..."); Console.ReadKey(); }
static void Main(string[] args) { Order order1 = new Order("2018100601", "陈1", "陈志鹏", "月饼", 2100, 100); //在控制台输出订单 1 的所有信息 Console.WriteLine(order1.ToString()); Console.WriteLine(); Order order2 = new Order("2018100602", "陈2", "陈志鹏", "方便面", 1000, 1000); Order order3 = new Order("2018100603", "陈3", "陈志鹏", "苹果", 1000, 2530); Order order4 = new Order("2018100604", "陈4", "陈志鹏", "草莓", 2045, 400); OrderService orderService = OrderService.GetInstance(); //定义一个订单服务类的实例,该实例是唯一的 orderService.AddOrder(order1); //添加订单 orderService.AddOrder(order2); orderService.AddOrder(order3); orderService.AddOrder(order4); Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); orderService.AlterOrderNumber(order1, "2018100701"); //修改订单 1 的订单号 orderService.AlterOrderGoodsName(order1, "香肠", 10); //修改订单 1 的商品名称及商品单价 orderService.AlterOrderClient(order1, "陈一"); //修改订单 1 的客户名称 orderService.AlterOrderGoodsCounts(order1, 20); //修改订单 1 的订购的商品数量 Console.WriteLine(); //在控制台输出现在订单 1 的所有信息 Console.WriteLine(order1.ToString()); Console.WriteLine(); //通过订单号查询订单信息,并在控制台输出所查询订单的所有信息 Console.WriteLine(orderService.MyToString(orderService.SearchOrderByOrderNumber("2018100603"))); Console.WriteLine(); //通过商品名称查询订单信息,并在控制台输出所查询订单的所有信息 Console.WriteLine(orderService.MyToString(orderService.SearchOrderByGoodsName("草莓"))); Console.WriteLine(); //通过客户名称查询订单信息,并在控制台输出所查询订单的所有信息 Console.WriteLine(orderService.MyToString(orderService.SearchOrderByOrderClient("陈2"))); Console.WriteLine(); Console.WriteLine("查询订单金额大于一万的订单,并按金额升序排列"); Console.WriteLine(orderService.MyToString(orderService.SearchOrderByOrderTotalPriceABig(10000))); Console.WriteLine(); Console.WriteLine("查询订单金额大于一万的订单,并按金额降序排列"); Console.WriteLine(orderService.MyToString(orderService.SearchOrderByOrderTotalPriceDBig(10000))); Console.WriteLine(); Console.WriteLine("查询订单金额小于一万的订单,并按金额升序排列"); Console.WriteLine(orderService.MyToString(orderService.SearchOrderByOrderTotalPriceASmall(10000))); Console.WriteLine(); Console.WriteLine("查询订单金额小于一万的订单,并按金额降序排列"); Console.WriteLine(orderService.MyToString(orderService.SearchOrderByOrderTotalPriceDSmall(10000))); Console.WriteLine(); orderService.DeleteOrder(order3); //删除订单 3 Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); orderService.DeleteOrder(order1); //删除订单 1 Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); }
static void Main(string[] args) { //测试 OrderService service = new OrderService(); //添加订单 Order myOrder01 = service.AddOrder("01", "Lily"); Order myOrder02 = service.AddOrder("02", "Mike"); try { //给订单添加条目(商品) myOrder01.AddProduct("apple"); myOrder01.AddProduct("sofa"); myOrder02.AddProduct("banana"); //修改订单中的内容 myOrder01.ChangeProduct("apple", "number", 12); //使apple的数量变为12 myOrder01.ChangeProduct("apple", "price", 5); //使apple单价变为5 myOrder01.ChangeProduct("sofa", "number", 3); myOrder01.ChangeProduct("sofa", "price", 5000); myOrder02.AddProduct("banana");//再增加一个banana myOrder02.ChangeProduct("banana", "price", 7); //显示订单内容 myOrder01.ShowOrder(); myOrder02.ShowOrder(); //按照客户名字查找订单 List <Order> myOrder = service.FindOrderByCustomer("Mike"); foreach (Order order in myOrder) { order.ShowOrder(); } //service.AddOrder("01","Lily"); //按照订单中的商品返回订单 List <Order> pdtOrder = service.FindOrderByProduct("banana"); //查找总额大于10000的订单 List <Order> bigOrder = service.FindOrderOverWan(); ////序列化订单 //// OrderService.Export(); //XmlSerializer xmlser = new XmlSerializer(typeof(List<Order>)); //string xmlFileName = "orders.xml"; //OrderService.XmlSerialize(xmlser, xmlFileName, OrderService.orderList); //Console.WriteLine("XML序列化订单:"); ////显示文本 //string xml = File.ReadAllText(xmlFileName); //Console.WriteLine(xml); ////反序列化订单 //List<Order> orderList2 = OrderService.XmlDeserialize(xmlser, xmlFileName) //as List<Order>; //foreach (Order order in OrderService.orderList) // Console.WriteLine(order); //序列化订单 service.Export(); //反序列化订单 service.Import("orders.xml"); //删除订单 service.DeleteOrder(myOrder01); service.DeleteOrder(myOrder02); } catch (MyException e) { Console.WriteLine(e.Message); Console.WriteLine("操作失败!"); } }
static void Main(string[] args) { Order order1 = new Order("2018100601", "陈1", "陈志鹏", "月饼", 21, 10); //在控制台输出订单 1 的所有信息 Console.WriteLine(order1.OrderNumber); Console.WriteLine(order1.OrderTime); Console.WriteLine(order1.Client); Console.WriteLine(order1.Creator); Console.WriteLine(order1.orderDetails.GoodsName); Console.WriteLine(order1.orderDetails.GoodsPrice); Console.WriteLine(order1.orderDetails.GoodsCounts); Console.WriteLine(order1.orderDetails.GetTotalPrice()); Console.WriteLine(); Order order2 = new Order("2018100602", "陈2", "陈志鹏", "方便面", 10, 10); Order order3 = new Order("2018100603", "陈3", "陈志鹏", "苹果", 10, 5.5); Order order4 = new Order("2018100604", "陈4", "陈志鹏", "草莓", 20.3, 3.2); Order noneOrder1 = new Order(); Order noneOrder2 = new Order(); Order noneOrder3 = new Order(); Order noneOrder4 = new Order(); OrderService orderService = OrderService.GetInstance(); //定义一个订单服务类的实例,该实例是唯一的 orderService.AddOrder(order1); //添加订单 orderService.AddOrder(order2); orderService.AddOrder(order3); orderService.AddOrder(order4); Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); orderService.AlterOrderNumber(order1, "2018100701"); //修改订单 1 的订单号 orderService.AlterOrderGoodsName(order1, "香肠", 10); //修改订单 1 的商品名称及商品单价 orderService.AlterOrderClient(order1, "陈一"); //修改订单 1 的客户名称 orderService.AlterOrderGoodsCounts(order1, 20); //修改订单 1 的订购的商品数量 Console.WriteLine(); //在控制台输出现在订单 1 的所有信息 Console.WriteLine(order1.OrderNumber); Console.WriteLine(order1.OrderTime); Console.WriteLine(order1.Client); Console.WriteLine(order1.Creator); Console.WriteLine(order1.orderDetails.GoodsName); Console.WriteLine(order1.orderDetails.GoodsPrice); Console.WriteLine(order1.orderDetails.GoodsCounts); Console.WriteLine(order1.orderDetails.GetTotalPrice()); Console.WriteLine(); orderService.SearchOrderByOrderNumber("2018100603", noneOrder1); //通过订单号查询订单信息,并保存在一个空的订单中 //在控制台输出所查询订单的所有信息 Console.WriteLine(noneOrder1.OrderNumber); Console.WriteLine(noneOrder1.OrderTime); Console.WriteLine(noneOrder1.Client); Console.WriteLine(noneOrder1.Creator); Console.WriteLine(noneOrder1.orderDetails.GoodsName); Console.WriteLine(noneOrder1.orderDetails.GoodsPrice); Console.WriteLine(noneOrder1.orderDetails.GoodsCounts); Console.WriteLine(noneOrder1.orderDetails.GetTotalPrice()); Console.WriteLine(); orderService.SearchOrderByGoodsName("草莓", noneOrder2); //通过商品名称查询订单信息,并保存在一个空的订单中 //在控制台输出所查询订单的所有信息 Console.WriteLine(noneOrder2.OrderNumber); Console.WriteLine(noneOrder2.OrderTime); Console.WriteLine(noneOrder2.Client); Console.WriteLine(noneOrder2.Creator); Console.WriteLine(noneOrder2.orderDetails.GoodsName); Console.WriteLine(noneOrder2.orderDetails.GoodsPrice); Console.WriteLine(noneOrder2.orderDetails.GoodsCounts); Console.WriteLine(noneOrder2.orderDetails.GetTotalPrice()); Console.WriteLine(); orderService.SearchOrderByOrderClient("陈2", noneOrder3); //通过客户名称查询订单信息,并保存在一个空的订单中 //在控制台输出所查询订单的所有信息 Console.WriteLine(noneOrder3.OrderNumber); Console.WriteLine(noneOrder3.OrderTime); Console.WriteLine(noneOrder3.Client); Console.WriteLine(noneOrder3.Creator); Console.WriteLine(noneOrder3.orderDetails.GoodsName); Console.WriteLine(noneOrder3.orderDetails.GoodsPrice); Console.WriteLine(noneOrder3.orderDetails.GoodsCounts); Console.WriteLine(noneOrder3.orderDetails.GetTotalPrice()); Console.WriteLine(); orderService.DeleteOrder(order3); //删除订单 3 Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); orderService.DeleteOrder(order1); //删除订单 1 Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); //订单操作的异常检测 //再次删除订单 3 try { orderService.DeleteOrder(order3); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(); //修改订单 3 的订单号 try { orderService.AlterOrderNumber(order3, "2018100703"); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(); //修改订单 3 的商品数量 try { orderService.AlterOrderGoodsCounts(order3, 1234567890); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(); //通过订单号查询订单信息,并保存在一个空的订单中(所查询订单已经被删除) try { orderService.SearchOrderByOrderNumber("2018100603", noneOrder4); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(); //通过客户名称查询订单信息,并保存在一个空的订单中(所查询订单已经被删除) try { orderService.SearchOrderByOrderClient("陈3", noneOrder4); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(); //再次添加订单 2 try { orderService.AddOrder(order2); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(); //添加订单 5,由于该订单不在订单表中,所以不会抛出异常 try { Order order5 = new Order("2018100605", "陈5", "陈志鹏", "芒果", 10.6, 2.2); orderService.AddOrder(noneOrder2); } catch (Exception e) { Console.WriteLine("出现了异常:{0}", e.Message); } Console.WriteLine(orderService.GetOrderCounts()); //输出现在订单表中订单的个数 Console.WriteLine(); }
//删除订单 private void button3_Click(object sender, EventArgs e) { os.DeleteOrder(KeyWord1); orderDetailsBindingSource.DataSource = os.GetAllOrders().Where(s => s.num != "\0"); }
public static void DeleteOrder() { 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); bool haveDeleted = true; switch (choose) { case 1: Console.Write("请输入流水号(格式:2018-1-1-1):"); haveDeleted = OrderService.DeleteOrder(Console.ReadLine()); break; case 2: Console.Write("请输入日期(格式:20180101):"); haveDeleted = OrderService.DeleteOrder(DateTime.ParseExact(Console.ReadLine(), "yyyyMMdd", System.Globalization.CultureInfo.CurrentCulture)); break; case 3: Console.Write("请输入客户名称:"); haveDeleted = OrderService.DeleteOrderByClientName(Console.ReadLine()); break; case 4: Console.Write("请输入商品名称:"); haveDeleted = OrderService.DeleteOrderByProductName(Console.ReadLine()); break; case 5: return; //返回主页 } if (haveDeleted) { Console.WriteLine(); Console.WriteLine(); Console.WriteLine("删除成功!"); } else { Console.WriteLine(); Console.WriteLine(); Console.WriteLine("删除失败!"); } } catch (Exception e) { Console.WriteLine(); Console.WriteLine(); Console.WriteLine(e.Message); Console.WriteLine("失败,请重试!"); } } }
static void Main(string[] args) { OrderService orderService = new OrderService(); int flag = 0; String fileName = @"D:\学习资料\大二上\C#\orders.xml"; while (true) { Console.WriteLine("请选择需要执行的操作(输入选项前的数字):"); Console.WriteLine("1.从xml文件导入订单列表"); Console.WriteLine("2.添加新订单"); Console.WriteLine("3.删除订单"); Console.WriteLine("4.查询订单"); Console.WriteLine("5.修改订单"); Console.WriteLine("6.查看订单列表"); Console.WriteLine("7.将订单导出为xml文件并退出"); try { flag = Int32.Parse(Console.ReadLine()); if (flag < 1 || flag > 7) { throw new OrderException(); } else { switch (flag) { case 1: orderService.Import(fileName); break; case 2: try { Console.WriteLine("请输入订单号:"); String ID = Console.ReadLine(); Console.WriteLine("请输入商品名:"); String productName = Console.ReadLine(); Console.WriteLine("请输入客户名:"); String clientName = Console.ReadLine(); Console.WriteLine("请输入客户电话号码:"); String clientPhone = Console.ReadLine(); Console.WriteLine("请输入订单金额:"); long money = long.Parse(Console.ReadLine()); Order newOrder = new Order(ID, productName, clientName, clientPhone, money); orderService.AddOrder(newOrder); Console.WriteLine("操作后订单列表:"); orderService.DisplayOrderList(); } catch (Exception e) { Console.WriteLine(e.Message); } break; case 3: try { Console.WriteLine("请输入要删除的订单的订单号:"); String ID = Console.ReadLine(); orderService.DeleteOrder(ID); Console.WriteLine("操作后订单列表:"); orderService.DisplayOrderList(); } catch (Exception e) { Console.WriteLine(e.Message); } break; case 4: int flag1 = 0; Console.WriteLine("请选择查询订单的依据(输入选项前的数字):"); Console.WriteLine("1.订单号"); Console.WriteLine("2.商品名"); Console.WriteLine("3.客户名"); Console.WriteLine("4.查询订单金额大于某个值的订单"); try { flag1 = Int32.Parse(Console.ReadLine()); //若输入不是数字则抛出异常 if (flag1 < 1 || flag1 > 4) { throw new OrderException(); //若输入不在1到3之内则抛出异常 } orderService.Search(flag1); break; } catch (Exception e) { Console.WriteLine(e.Message); } break; case 5: orderService.ReviseOrder(); break; case 6: orderService.DisplayOrderList(); break; case 7: orderService.Export(fileName); return; } } } catch (Exception) { Console.WriteLine("错误!输入有误"); } } }
static void Func(OrderService orderService) { Console.WriteLine("添加订单请输入:1"); Console.WriteLine("删除订单请输入:2"); Console.WriteLine("查询订单请输入:3"); Console.WriteLine("修改订单请输入:4"); try { int request = Convert.ToInt32(Console.ReadLine()); switch (request) { case 1: { Console.WriteLine("请输入姓名:"); string customer = Console.ReadLine(); Console.WriteLine("请输入商品名称:"); Goods goods = new Goods(Console.ReadLine()); Console.WriteLine("请输入购买商品的数目(整数):"); int count = Convert.ToInt32(Console.ReadLine()); Order order = new Order(customer, goods, count); orderService.AddOrder(order); break; } case 2: { Console.WriteLine("请输入要删除的订单号:"); Order order = orderService.QueryOrderByNumber(Convert.ToInt32(Console.ReadLine())); orderService.DeleteOrder(order); break; } case 3: { Console.WriteLine("按姓名查询请输入:1"); Console.WriteLine("按商品查询请输入:2"); Console.WriteLine("按订单号查询请输入:3"); int i = Convert.ToInt32(Console.ReadLine()); switch (i) { case 1: { Console.WriteLine("请输入姓名:"); orderService.QueryOrderByCustomer(Console.ReadLine()); break; } case 2: { Console.WriteLine("请输入商品:"); orderService.QueryOrderByGoods(Console.ReadLine()); break; } case 3: { Console.WriteLine("请输入订单号:"); orderService.QueryOrderByNumber(Convert.ToInt32(Console.ReadLine())); break; } } break; } case 4: { Console.WriteLine("请输入要修改的订单号:"); Order order = orderService.QueryOrderByNumber(Convert.ToInt32(Console.ReadLine())); Console.WriteLine("单修改商品种类请输入:1"); Console.WriteLine("单修改商品数量请输入:2"); Console.WriteLine("都要修改请输入:3"); int i = Convert.ToInt32(Console.ReadLine()); switch (i) { case 1: Console.WriteLine("请输入要修改为的商品种类:"); orderService.ModifyOrder(order, Console.ReadLine()); break; case 2: Console.WriteLine("请输入要修改为的商品数目:"); orderService.ModifyOrder(order, Convert.ToInt32(Console.ReadLine())); break; case 3: Console.WriteLine("请输入要修改为的商品种类:"); string goods = Console.ReadLine(); Console.WriteLine("请输入要修改为的商品数目:"); orderService.ModifyOrder(order, goods, Convert.ToInt32(Console.ReadLine())); break; } break; } } } catch { Console.WriteLine("你的输入有误,即将返回程序初始状态!"); Func(orderService); } Func(orderService); }