Exemple #1
0
        private void RetornaTesteParaDiagnostico(List <Tecnico> Funcionarios, List <ProcederDiagnostico> ListaEspera, ContadorEstatistico Contador, List <IEvento> ListaEventos)
        {
            if (Funcionarios.Where(x => x.Ocupado == false).Count() > 0)
            {
                var evento = new ProcederDiagnostico()
                {
                    Equipamento = this.Equipamento,
                    Funcionario = Funcionarios.Where(x => x.Ocupado == false).FirstOrDefault(),
                    TempoEntradaEmFilaEspera = Contador.TempoAtual,
                    TempoEntrada             = Contador.TempoAtual
                };

                evento.AtualizarEstadoFuncionario(Funcionarios.ToList(), true);
                ListaEventos.Add(evento);
            }
            else
            {
                var evento = new ProcederDiagnostico()
                {
                    Equipamento = Equipamento,
                    TempoEntradaEmFilaEspera = Contador.TempoAtual
                };
                ListaEspera.Add(evento);
            }
        }
        private void AvancarProximoEvento(Simulador Sim)
        {
            Equipamento eq = GerarEquipamento(Sim);

            Sim.Equipamentos.Add(eq);

            if (Sim.Tecnicos.Where(x => x.Ocupado == false).Count() > 0)
            {
                var evento = new ProcederDiagnostico()
                {
                    Equipamento = eq,
                    Funcionario = Sim.Tecnicos.Where(x => x.Ocupado == false).FirstOrDefault(),
                    TempoEntradaEmFilaEspera = Sim.Contador.TempoAtual,
                    TempoEntrada             = Sim.Contador.TempoAtual
                };

                evento.AtualizarEstadoFuncionario(Sim.Tecnicos.ToList(), true);
                Sim.ListaEventos.Add(evento);
            }
            else
            {
                var evento = new ProcederDiagnostico()
                {
                    Equipamento = eq,
                    TempoEntradaEmFilaEspera = Sim.Contador.TempoAtual
                };
                Sim.ListaEsperaProcederDiagnostico.Add(evento);
            }
        }