public void FinQuitarAlfombras_Event() { _Auto = EventoAnterior.EmpleadoQA.AutoActual; if (ColaQuitarAlfombra.Count > 0) { EmpleadoQA.TomarCliente(ColaQuitarAlfombra[0], Reloj); ColaQuitarAlfombra.RemoveAt(0); } else { EmpleadoQA.Liberar(); } // Se quita la alfombra Alfombra alfombra = EventoAnterior.EmpleadoQA.AutoActual._Alfombra; _Auto._Alfombra = null; if (EmpleadoAA.Estado == EstadoArea.Ocupado) { ColaAspirarAlfombra.Add(alfombra); } else { EmpleadoAA.TomarCliente(alfombra, Reloj); } //Se decide el lavado if (EmpleadoLavado1.Estado == EstadoArea.Ocupado && EmpleadoLavado2.Estado == EstadoArea.Ocupado) { ColaLavado.Add(_Auto); } else { if (EmpleadoLavado1.Estado == EstadoArea.Libre) { EmpleadoLavado1.TomarCliente(_Auto, Reloj); } else { EmpleadoLavado2.TomarCliente(_Auto, Reloj); } } }
public void FinAspirarAlfombras_Event() { _Auto = new Auto(Reloj, EventoAnterior.EmpleadoAA.AlfombraActual.nroAuto); Alfombra alfombra = EventoAnterior.EmpleadoAA.AlfombraActual; if (ColaAspirarAlfombra.Count > 0) { EmpleadoAA.TomarCliente(ColaAspirarAlfombra[0], Reloj); ColaAspirarAlfombra.RemoveAt(0); } else { EmpleadoAA.Liberar(); } if (EmpleadoPA.Estado == EstadoArea.EnEspera && EmpleadoPA.AutoActual.NroAuto == alfombra.nroAuto) { EmpleadoPA.SalirDeEspera(alfombra, Reloj); } else { ColaAlfombrasListas.Add(alfombra.nroAuto, alfombra); } }