public override void LiberarPedido(Pedido pedido) { if (pedido.Criador == Cargos.Operador) { //liberar o pedido Console.WriteLine("liberador pelo Operador"); } else Proximo.LiberarPedido(pedido); }
public override void LiberarPedido(Pedido pedido) { if (pedido.Criador < Cargos.Gerente) { //liberar o pedido Console.WriteLine("liberador pelo Gerente"); } else Proximo.LiberarPedido(pedido); }
static void Main(string[] args) { Pedido pedido = new Pedido(Cargos.Coordenador); LiberadorPedidos liberador = new LiberadorDePedidosOperador(); LiberadorPedidos liberadorCoordenador = new LiberadorDePedidosCoordenador(); LiberadorPedidos liberadorGerente = new LiberadorDePedidosGerente(); liberador.Proximo = liberadorCoordenador; liberadorCoordenador.Proximo = liberadorGerente; liberadorGerente.Proximo = liberadorCoordenador; liberador.LiberarPedido(pedido); Console.ReadKey(); }
public abstract void LiberarPedido(Pedido pedido);