예제 #1
0
        public void FinSecado_Event()
        {
            _Auto = EmpleadoSecado.AutoActual;
            //La liberación de una estación de lavado se da recién cuando finaliza el secado
            if (EmpleadoLavado1.AutoActual != null && EmpleadoSecado.AutoActual.NroAuto == EmpleadoLavado1.AutoActual.NroAuto)
            {
                AdministrarEmpleado_FinSecado(EmpleadoLavado1);
            }
            else
            {
                AdministrarEmpleado_FinSecado(EmpleadoLavado2);
            }

            if (ColaSecado.Count > 0)
            {
                EmpleadoSecado.TomarCliente(ColaSecado[0], Reloj);
                ColaSecado.RemoveAt(0);
            }
            else
            {
                EmpleadoSecado.Liberar();
            }

            if (EmpleadoPA.Estado != EstadoArea.Libre)
            {
                ColaPonerAlfombra.Add(_Auto);
            }
            else
            {
                EmpleadoPA.TomarCliente(_Auto, Reloj, this);
            }
        }
예제 #2
0
        public void FinPonerAlfombras_Event()
        {
            _Auto = EmpleadoPA.AutoActual;

            if (ColaPonerAlfombra.Count > 0)
            {
                EmpleadoPA.TomarCliente(ColaPonerAlfombra[0], Reloj, this);
                ColaPonerAlfombra.RemoveAt(0);
            }
            else
            {
                EmpleadoPA.Liberar();
            }
        }