예제 #1
0
        public void LlegadaCliente_Event()
        {
            var llegadaNueva = new Llegada();

            _LLegada = llegadaNueva;


            //Setea los datos del nuevo cliente
            var nAuto = new Auto(Reloj, EventoAnterior.ProximoCliente);

            if (EventoAnterior.ProximoCliente < MySettings.CantMaxClientes)
            {
                ProximoCliente = EventoAnterior.ProximoCliente + 1;
                llegadaNueva.CalcularProximaLlegada(Reloj);
            }
            else
            {
                ProximoCliente = 0;
                llegadaNueva.TiempoEntreLlegadas = TimeSpan.Zero;
                llegadaNueva.FechaProximaLlegada = DateTime.MinValue;
            }

            _Auto = nAuto;


            if (EmpleadoQA.Estado == EstadoArea.Ocupado)
            {
                ColaQuitarAlfombra.Add(nAuto);
            }
            else
            {
                EmpleadoQA.TomarCliente(_Auto, Reloj);
            }
        }
예제 #2
0
        public Evento(Evento ea)
        {
            _LLegada = new Llegada()
            {
                FechaProximaLlegada = ea._LLegada.FechaProximaLlegada
            };
            if (ea.ProximoCliente <= MySettings.CantMaxClientes)
            {
                ProximoCliente = ea.ProximoCliente;
            }


            ProximoCliente = ea.ProximoCliente;

            /*
             * ColaQuitarAlfombra = new List<Auto>(ea.ColaQuitarAlfombra);
             * ColaAspirarAlfombra = new List<Alfombra>(ea.ColaAspirarAlfombra);
             * ColaLavado = new List<Auto>(ea.ColaLavado);
             * ColaSecado = new List<Auto>(ea.ColaSecado);
             * ColaPonerAlfombra = new List<Auto>(ea.ColaPonerAlfombra);
             * ColaAlfombrasListas = new Hashtable(ea.ColaAlfombrasListas);
             */
            ColaQuitarAlfombra  = ea.ColaQuitarAlfombra;
            ColaAspirarAlfombra = ea.ColaAspirarAlfombra;
            ColaLavado          = ea.ColaLavado;
            ColaSecado          = ea.ColaSecado;
            ColaPonerAlfombra   = ea.ColaPonerAlfombra;
            ColaAlfombrasListas = ea.ColaAlfombrasListas;

            EmpleadoQA = new QuitarAlfombras()
            {
                Estado = ea.EmpleadoQA.Estado,
                FechaProximoFinAtencion = ea.EmpleadoQA.FechaProximoFinAtencion,
                AutoActual = ea.EmpleadoQA.AutoActual
            };
            EmpleadoAA = new AspirarAlfombras()
            {
                Estado = ea.EmpleadoAA.Estado,
                FechaProximoFinAtencion = ea.EmpleadoAA.FechaProximoFinAtencion,
                AlfombraActual          = ea.EmpleadoAA.AlfombraActual
            };
            EmpleadoLavado1 = new Lavado()
            {
                Estado = ea.EmpleadoLavado1.Estado,
                FechaProximoFinAtencion = ea.EmpleadoLavado1.FechaProximoFinAtencion,
                AutoActual = ea.EmpleadoLavado1.AutoActual
            };
            EmpleadoLavado2 = new Lavado()
            {
                Estado = ea.EmpleadoLavado2.Estado,
                FechaProximoFinAtencion = ea.EmpleadoLavado2.FechaProximoFinAtencion,
                AutoActual = ea.EmpleadoLavado2.AutoActual
            };
            EmpleadoSecado = new Secado()
            {
                Estado = ea.EmpleadoSecado.Estado,
                FechaProximoFinAtencion = ea.EmpleadoSecado.FechaProximoFinAtencion,
                AutoActual = ea.EmpleadoSecado.AutoActual
            };
            EmpleadoPA = new PonerAlfombras()
            {
                Estado = ea.EmpleadoPA.Estado,
                FechaProximoFinAtencion = ea.EmpleadoPA.FechaProximoFinAtencion,
                AutoActual = ea.EmpleadoPA.AutoActual
            };
        }