public void Process(Order order) { System.Console.WriteLine("我们开始受理,准备备货!"); if (order.Minute < 30 && order.IsCancel) { System.Console.WriteLine("接受半个小时之内,可以取消订单!"); order.SetState(new CancelOrder()); order.Action(); } order.SetState(new AcceptAndDeliver()); order.TaskFinished = false; order.Action(); }
public void Process(Order order) { System.Console.WriteLine("我们货物已经准备好,可以发货了,不可以撤销订单!"); if (order.Minute < 30 && order.IsCancel) { System.Console.WriteLine("接受半个小时之内,可以取消订单!"); order.SetState(new CancelOrder()); order.Action(); } if (order.TaskFinished == false) { order.SetState(new ConfirmationReceipt()); order.Action(); } }
public void Process(Order order) { System.Console.WriteLine("检查货物,没问题可以就可以签收!"); order.SetState(new Success()); order.TaskFinished = false; order.Action(); }
public static void Main(String[] args) { //订单 Order order = new Order(); order.Minute = 9; order.Action(); //可以取消订单 order.IsCancel = true; order.Minute = 20; order.Action(); order.Minute = 33; order.Action(); order.Minute = 43; order.Action(); Console.Read(); }